{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./node_modules/moment/locale sync ^\\.\\/.*$","./src/app/components/ViewPod/viewpod.component.html","./src/app/components/about/about.component.html","./src/app/components/app.component.html","./src/app/components/awb-booking-data/awb-booking-data.component.html","./src/app/components/awb-tracking/awb-tracking.component.html","./src/app/components/awbbagging/awbbagging.component.html","./src/app/components/awbbooking/awbbooking.component.html","./src/app/components/awbdivine/awbdivine.component.html","./src/app/components/awbhistory/awbhistory.component.html","./src/app/components/awbinscan/awbinscan.component.html","./src/app/components/awboutscan/awboutscan.component.html","./src/app/components/awbseriesmaster/awbseriesmaster.component.html","./src/app/components/badamaster/badamaster.component.html","./src/app/components/bill-print/bill-print.component.html","./src/app/components/bill-report/bill-report.component.html","./src/app/components/billing/billing.component.html","./src/app/components/bookingcommision/bookingcommision.component.html","./src/app/components/bookingvs-scan/bookingvs-scan.component.html","./src/app/components/citymaster/citymaster.component.html","./src/app/components/cons-report/cons-report.component.html","./src/app/components/controls/acn-update.component.html","./src/app/components/controls/addressmaster.component.html","./src/app/components/controls/banner-demo.component.html","./src/app/components/controls/combobox.component.html","./src/app/components/controls/confirmation-dialog.component.html","./src/app/components/controls/dailog-Quoterate-master.component.html","./src/app/components/controls/dailog-Quoterateba-master.component.html","./src/app/components/controls/dailog-rate-master.component.html","./src/app/components/controls/dialog-Quoteother-charge.component.html","./src/app/components/controls/dialog-mps.component.html","./src/app/components/controls/dialog-mpsinscan.component.html","./src/app/components/controls/dialog-other-charge.component.html","./src/app/components/controls/dialogmoneyreciept.component.html","./src/app/components/controls/dilog-rto.component.html","./src/app/components/controls/edit-awb.component.html","./src/app/components/controls/notifications-viewer.component.html","./src/app/components/controls/role-editor.component.html","./src/app/components/controls/roles-management.component.html","./src/app/components/controls/search-box.component.html","./src/app/components/controls/statistics-demo.component.html","./src/app/components/controls/todo-demo.component.html","./src/app/components/controls/user-info.component.html","./src/app/components/controls/user-preferences.component.html","./src/app/components/controls/users-management.component.html","./src/app/components/controls/wppoddialog.component.html","./src/app/components/customer-bill-payment/customer-bill-payment.component.html","./src/app/components/customer-book-email/customer-book-email.component.html","./src/app/components/customerprint/customerprint.component.html","./src/app/components/customers/customers.component.html","./src/app/components/custromer-master/custromer-master.component.html","./src/app/components/debaging/debaging.component.html","./src/app/components/delivery-comm-master/delivery-comm-master.component.html","./src/app/components/delivery-comm-wallet/delivery-comm-wallet.component.html","./src/app/components/delivery-commision/delivery-commision.component.html","./src/app/components/deliveryconfirmation/deliveryconfirmation.component.html","./src/app/components/deliveryoutscan/deliveryoutscan.component.html","./src/app/components/deliveryrunsheet/deliveryrunsheet.component.html","./src/app/components/delovery-out-scan-new/delovery-out-scan-new.component.html","./src/app/components/delvbill-print/delvbill-print.component.html","./src/app/components/delvbill-report/delvbill-report.component.html","./src/app/components/destinationdeliveryschedule/destinationdeliveryschedule.component.html","./src/app/components/divinedashboard/divinedashboard.component.html","./src/app/components/drs-report/drs-report.component.html","./src/app/components/expense-payment/expense-payment.component.html","./src/app/components/generatesticker/generatesticker.component.html","./src/app/components/home/home.component.html","./src/app/components/inscan/inscan.component.html","./src/app/components/itemissue/itemissue.component.html","./src/app/components/itemmaster/itemmaster.component.html","./src/app/components/itemrecieve/itemrecieve.component.html","./src/app/components/lablereport/lablereport.component.html","./src/app/components/lablereportDp/lablereportDp.component.html","./src/app/components/lablereportKart/lablereportKart.component.html","./src/app/components/lablereportMR/lablereportMR.component.html","./src/app/components/lastmiledeliveryhubs/lastmiledeliveryhubs.component.html","./src/app/components/load-dash-board-in/load-dash-board-in.component.html","./src/app/components/load-dash-board/load-dash-board.component.html","./src/app/components/loadmovement/loadmovement.component.html","./src/app/components/loadmovementnew/loadmovementnew.component.html","./src/app/components/loadreceivingprocess/loadreceivingprocess.component.html","./src/app/components/login/login.component.html","./src/app/components/manual-awb-manifest/manual-awb-manifest.component.html","./src/app/components/menifestreport/menifestreport.component.html","./src/app/components/multipletracking/multipletracking.component.html","./src/app/components/not-found/not-found.component.html","./src/app/components/ns-location/ns-location.component.html","./src/app/components/ns-partner/ns-partner.component.html","./src/app/components/officemaster/officemaster.component.html","./src/app/components/onlineorderdetails/onlineorderdetails.component.html","./src/app/components/orders/orders.component.html","./src/app/components/outscan/outscan.component.html","./src/app/components/paytm-checkout/paytm-checkout.component.html","./src/app/components/paytmtransaction-report/paytmtransaction-report.component.html","./src/app/components/pickup-dashboard/pickup-dashboard.component.html","./src/app/components/picuprequest-ack/picuprequest-ack.component.html","./src/app/components/pincodemaster/pincodemaster.component.html","./src/app/components/print-gatepass/print-gatepass.component.html","./src/app/components/print-manifest/print-manifest.component.html","./src/app/components/printsticker/printsticker.component.html","./src/app/components/productmaster/productmaster.component.html","./src/app/components/products/products.component.html","./src/app/components/productsticker/productsticker.component.html","./src/app/components/quote-customerprint/quote-customerprint.component.html","./src/app/components/quotecustomermaster/quotecustomermaster.component.html","./src/app/components/regionmaster/regionmaster.component.html","./src/app/components/reverse-booking/reverse-booking.component.html","./src/app/components/sale-dashboard/sale-dashboard.component.html","./src/app/components/settings/settings.component.html","./src/app/components/statemaster/statemaster.component.html","./src/app/components/tally-ledger-report/tally-ledger-report.component.html","./src/app/components/tally-ledger/tally-ledger.component.html","./src/app/components/tally-voucher/tally-voucher.component.html","./src/app/components/tariff-rate-master/tariff-rate-master.component.html","./src/app/components/teabookingdashboard/teabookingdashboard.component.html","./src/app/components/update-acn/update-acn.component.html","./src/app/components/update-pincode/update-pincode.component.html","./src/app/components/vendermaster/vendermaster.component.html","./src/app/components/vendor-rate/vendor-rate.component.html","./src/app/components/voucher-print/voucher-print.component.html","./src/app/components/whatsapppod/whatsapppod.component.html","./node_modules/tslib/tslib.es6.js","./src/app/app-error.handler.ts","./src/app/app-routing.module.ts","./src/app/app-toolbar/app-toolbar.service.ts","./src/app/app.module.ts","./src/app/assets/images/ballet.png","./src/app/assets/images/demo/banner1.png","./src/app/assets/images/demo/banner2.png","./src/app/assets/images/demo/banner3.png","./src/app/assets/images/demo/banner4.png","./src/app/assets/images/logos-02.png","./src/app/assets/scripts/alertify.js","./src/app/components/ViewPod/viewpod.component.scss","./src/app/components/ViewPod/viewpod.component.ts","./src/app/components/about/about.component.scss","./src/app/components/about/about.component.ts","./src/app/components/app.component.scss","./src/app/components/app.component.ts","./src/app/components/awb-booking-data/awb-booking-data.component.scss","./src/app/components/awb-booking-data/awb-booking-data.component.ts","./src/app/components/awb-tracking/awb-tracking.component.scss","./src/app/components/awb-tracking/awb-tracking.component.ts","./src/app/components/awbbagging/awbbagging.component.scss","./src/app/components/awbbagging/awbbagging.component.ts","./src/app/components/awbbooking/awbbooking.component.scss","./src/app/components/awbbooking/awbbooking.component.ts","./src/app/components/awbdivine/awbdivine.component.scss","./src/app/components/awbdivine/awbdivine.component.ts","./src/app/components/awbhistory/awbhistory.component.scss","./src/app/components/awbhistory/awbhistory.component.ts","./src/app/components/awbinscan/awbinscan.component.scss","./src/app/components/awbinscan/awbinscan.component.ts","./src/app/components/awboutscan/awboutscan.component.scss","./src/app/components/awboutscan/awboutscan.component.ts","./src/app/components/awbseriesmaster/awbseriesmaster.component.scss","./src/app/components/awbseriesmaster/awbseriesmaster.component.ts","./src/app/components/badamaster/badamaster.component.scss","./src/app/components/badamaster/badamaster.component.ts","./src/app/components/bill-print/bill-print.component.scss","./src/app/components/bill-print/bill-print.component.ts","./src/app/components/bill-report/bill-report.component.scss","./src/app/components/bill-report/bill-report.component.ts","./src/app/components/billing/billing.component.scss","./src/app/components/billing/billing.component.ts","./src/app/components/bookingcommision/bookingcommision.component.scss","./src/app/components/bookingcommision/bookingcommision.component.ts","./src/app/components/bookingvs-scan/bookingvs-scan.component.scss","./src/app/components/bookingvs-scan/bookingvs-scan.component.ts","./src/app/components/checkout.component.ts","./src/app/components/citymaster/citymaster.component.scss","./src/app/components/citymaster/citymaster.component.ts","./src/app/components/cons-report/cons-report.component.scss","./src/app/components/cons-report/cons-report.component.ts","./src/app/components/controls/acn-update.component.scss","./src/app/components/controls/acn-update.component.ts","./src/app/components/controls/addressmaster.component.scss","./src/app/components/controls/addressmaster.component.ts","./src/app/components/controls/banner-demo.component.ts","./src/app/components/controls/combobox.component.scss","./src/app/components/controls/combobox.component.ts","./src/app/components/controls/confirmation-dialog.component.scss","./src/app/components/controls/confirmation-dialog.component.ts","./src/app/components/controls/dailog-Quoterate-master.component.scss","./src/app/components/controls/dailog-Quoterate-master.component.ts","./src/app/components/controls/dailog-Quoterateba-master.component.scss","./src/app/components/controls/dailog-Quoterateba-master.component.ts","./src/app/components/controls/dailog-rate-master.component.scss","./src/app/components/controls/dailog-rate-master.component.ts","./src/app/components/controls/dialog-Quoteother-charge.component.scss","./src/app/components/controls/dialog-Quoteother-charge.component.ts","./src/app/components/controls/dialog-mps.component.scss","./src/app/components/controls/dialog-mps.component.ts","./src/app/components/controls/dialog-mpsinscan.component.scss","./src/app/components/controls/dialog-mpsinscan.component.ts","./src/app/components/controls/dialog-other-charge.component.scss","./src/app/components/controls/dialog-other-charge.component.ts","./src/app/components/controls/dialogmoneyreciept.component.scss","./src/app/components/controls/dialogmoneyreciept.component.ts","./src/app/components/controls/dilog-rto.component.scss","./src/app/components/controls/dilog-rto.component.ts","./src/app/components/controls/edit-awb.component.scss","./src/app/components/controls/edit-awb.component.ts","./src/app/components/controls/notifications-viewer.component.scss","./src/app/components/controls/notifications-viewer.component.ts","./src/app/components/controls/role-editor.component.scss","./src/app/components/controls/role-editor.component.ts","./src/app/components/controls/roles-management.component.scss","./src/app/components/controls/roles-management.component.ts","./src/app/components/controls/search-box.component.scss","./src/app/components/controls/search-box.component.ts","./src/app/components/controls/statistics-demo.component.scss","./src/app/components/controls/statistics-demo.component.ts","./src/app/components/controls/todo-demo.component.scss","./src/app/components/controls/todo-demo.component.ts","./src/app/components/controls/user-info.component.scss","./src/app/components/controls/user-info.component.ts","./src/app/components/controls/user-preferences.component.scss","./src/app/components/controls/user-preferences.component.ts","./src/app/components/controls/users-management.component.scss","./src/app/components/controls/users-management.component.ts","./src/app/components/controls/wppoddialog.component.scss","./src/app/components/controls/wppoddialog.component.ts","./src/app/components/customer-bill-payment/customer-bill-payment.component.scss","./src/app/components/customer-bill-payment/customer-bill-payment.component.ts","./src/app/components/customer-book-email/customer-book-email.component.scss","./src/app/components/customer-book-email/customer-book-email.component.ts","./src/app/components/customerprint/customerprint.component.scss","./src/app/components/customerprint/customerprint.component.ts","./src/app/components/customers/customers.component.scss","./src/app/components/customers/customers.component.ts","./src/app/components/custromer-master/custromer-master.component.scss","./src/app/components/custromer-master/custromer-master.component.ts","./src/app/components/debaging/debaging.component.scss","./src/app/components/debaging/debaging.component.ts","./src/app/components/delivery-comm-master/delivery-comm-master.component.scss","./src/app/components/delivery-comm-master/delivery-comm-master.component.ts","./src/app/components/delivery-comm-wallet/delivery-comm-wallet.component.scss","./src/app/components/delivery-comm-wallet/delivery-comm-wallet.component.ts","./src/app/components/delivery-commision/delivery-commision.component.scss","./src/app/components/delivery-commision/delivery-commision.component.ts","./src/app/components/deliveryconfirmation/deliveryconfirmation.component.scss","./src/app/components/deliveryconfirmation/deliveryconfirmation.component.ts","./src/app/components/deliveryoutscan/deliveryoutscan.component.scss","./src/app/components/deliveryoutscan/deliveryoutscan.component.ts","./src/app/components/deliveryrunsheet/deliveryrunsheet.component.scss","./src/app/components/deliveryrunsheet/deliveryrunsheet.component.ts","./src/app/components/delovery-out-scan-new/delovery-out-scan-new.component.scss","./src/app/components/delovery-out-scan-new/delovery-out-scan-new.component.ts","./src/app/components/delvbill-print/delvbill-print.component.scss","./src/app/components/delvbill-print/delvbill-print.component.ts","./src/app/components/delvbill-report/delvbill-report.component.scss","./src/app/components/delvbill-report/delvbill-report.component.ts","./src/app/components/destinationdeliveryschedule/destinationdeliveryschedule.component.scss","./src/app/components/destinationdeliveryschedule/destinationdeliveryschedule.component.ts","./src/app/components/divinedashboard/divinedashboard.component.scss","./src/app/components/divinedashboard/divinedashboard.component.ts","./src/app/components/drs-report/drs-report.component.scss","./src/app/components/drs-report/drs-report.component.ts","./src/app/components/expense-payment/expense-payment.component.scss","./src/app/components/expense-payment/expense-payment.component.ts","./src/app/components/generatesticker/generatesticker.component.scss","./src/app/components/generatesticker/generatesticker.component.ts","./src/app/components/home/home.component.scss","./src/app/components/home/home.component.ts","./src/app/components/inscan/inscan.component.scss","./src/app/components/inscan/inscan.component.ts","./src/app/components/itemissue/itemissue.component.scss","./src/app/components/itemissue/itemissue.component.ts","./src/app/components/itemmaster/itemmaster.component.scss","./src/app/components/itemmaster/itemmaster.component.ts","./src/app/components/itemrecieve/itemrecieve.component.scss","./src/app/components/itemrecieve/itemrecieve.component.ts","./src/app/components/lablereport/lablereport.component.scss","./src/app/components/lablereport/lablereport.component.ts","./src/app/components/lablereportDp/lablereportDp.component.scss","./src/app/components/lablereportDp/lablereportDp.component.ts","./src/app/components/lablereportKart/lablereportKart.component.scss","./src/app/components/lablereportKart/lablereportKart.component.ts","./src/app/components/lablereportMR/lablereportMR.component.scss","./src/app/components/lablereportMR/lablereportMR.component.ts","./src/app/components/lastmiledeliveryhubs/lastmiledeliveryhubs.component.scss","./src/app/components/lastmiledeliveryhubs/lastmiledeliveryhubs.component.ts","./src/app/components/load-dash-board-in/load-dash-board-in.component.scss","./src/app/components/load-dash-board-in/load-dash-board-in.component.ts","./src/app/components/load-dash-board/load-dash-board.component.scss","./src/app/components/load-dash-board/load-dash-board.component.ts","./src/app/components/loadmovement/loadmovement.component.scss","./src/app/components/loadmovement/loadmovement.component.ts","./src/app/components/loadmovementnew/loadmovementnew.component.scss","./src/app/components/loadmovementnew/loadmovementnew.component.ts","./src/app/components/loadreceivingprocess/loadreceivingprocess.component.scss","./src/app/components/loadreceivingprocess/loadreceivingprocess.component.ts","./src/app/components/login/login.component.scss","./src/app/components/login/login.component.ts","./src/app/components/manual-awb-manifest/manual-awb-manifest.component.scss","./src/app/components/manual-awb-manifest/manual-awb-manifest.component.ts","./src/app/components/menifestreport/menifestreport.component.scss","./src/app/components/menifestreport/menifestreport.component.ts","./src/app/components/multipletracking/multipletracking.component.scss","./src/app/components/multipletracking/multipletracking.component.ts","./src/app/components/not-found/not-found.component.scss","./src/app/components/not-found/not-found.component.ts","./src/app/components/ns-location/ns-location.component.scss","./src/app/components/ns-location/ns-location.component.ts","./src/app/components/ns-partner/ns-partner.component.scss","./src/app/components/ns-partner/ns-partner.component.ts","./src/app/components/officemaster/officemaster.component.scss","./src/app/components/officemaster/officemaster.component.ts","./src/app/components/onlineorderdetails/onlineorderdetails.component.scss","./src/app/components/onlineorderdetails/onlineorderdetails.component.ts","./src/app/components/orders/orders.component.scss","./src/app/components/orders/orders.component.ts","./src/app/components/outscan/outscan.component.scss","./src/app/components/outscan/outscan.component.ts","./src/app/components/paytm-checkout/merchant-config.ts","./src/app/components/paytm-checkout/paytm-checkout.component.scss","./src/app/components/paytm-checkout/paytm-checkout.component.ts","./src/app/components/paytmtransaction-report/paytmtransaction-report.component.scss","./src/app/components/paytmtransaction-report/paytmtransaction-report.component.ts","./src/app/components/pickup-dashboard/pickup-dashboard.component.scss","./src/app/components/pickup-dashboard/pickup-dashboard.component.ts","./src/app/components/picuprequest-ack/picuprequest-ack.component.scss","./src/app/components/picuprequest-ack/picuprequest-ack.component.ts","./src/app/components/pincodemaster/pincodemaster.component.scss","./src/app/components/pincodemaster/pincodemaster.component.ts","./src/app/components/print-gatepass/print-gatepass.component.scss","./src/app/components/print-gatepass/print-gatepass.component.ts","./src/app/components/print-manifest/print-manifest.component.scss","./src/app/components/print-manifest/print-manifest.component.ts","./src/app/components/printsticker/printsticker.component.scss","./src/app/components/printsticker/printsticker.component.ts","./src/app/components/productmaster/productmaster.component.scss","./src/app/components/productmaster/productmaster.component.ts","./src/app/components/products/products.component.scss","./src/app/components/products/products.component.ts","./src/app/components/productsticker/productsticker.component.scss","./src/app/components/productsticker/productsticker.component.ts","./src/app/components/quote-customerprint/quote-customerprint.component.scss","./src/app/components/quote-customerprint/quote-customerprint.component.ts","./src/app/components/quotecustomermaster/quotecustomermaster.component.scss","./src/app/components/quotecustomermaster/quotecustomermaster.component.ts","./src/app/components/regionmaster/regionmaster.component.scss","./src/app/components/regionmaster/regionmaster.component.ts","./src/app/components/reverse-booking/reverse-booking.component.scss","./src/app/components/reverse-booking/reverse-booking.component.ts","./src/app/components/sale-dashboard/sale-dashboard.component.scss","./src/app/components/sale-dashboard/sale-dashboard.component.ts","./src/app/components/settings/settings.component.scss","./src/app/components/settings/settings.component.ts","./src/app/components/statemaster/statemaster.component.scss","./src/app/components/statemaster/statemaster.component.ts","./src/app/components/tally-ledger-report/tally-ledger-report.component.scss","./src/app/components/tally-ledger-report/tally-ledger-report.component.ts","./src/app/components/tally-ledger/tally-ledger.component.scss","./src/app/components/tally-ledger/tally-ledger.component.ts","./src/app/components/tally-voucher/tally-voucher.component.scss","./src/app/components/tally-voucher/tally-voucher.component.ts","./src/app/components/tariff-rate-master/tariff-rate-master.component.scss","./src/app/components/tariff-rate-master/tariff-rate-master.component.ts","./src/app/components/teabookingdashboard/teabookingdashboard.component.scss","./src/app/components/teabookingdashboard/teabookingdashboard.component.ts","./src/app/components/update-acn/update-acn.component.scss","./src/app/components/update-acn/update-acn.component.ts","./src/app/components/update-pincode/update-pincode.component.scss","./src/app/components/update-pincode/update-pincode.component.ts","./src/app/components/vendermaster/vendermaster.component.scss","./src/app/components/vendermaster/vendermaster.component.ts","./src/app/components/vendor-rate/vendor-rate.component.scss","./src/app/components/vendor-rate/vendor-rate.component.ts","./src/app/components/voucher-print/voucher-print.component.scss","./src/app/components/voucher-print/voucher-print.component.ts","./src/app/components/whatsapppod/whatsapppod.component.scss","./src/app/components/whatsapppod/whatsapppod.component.ts","./src/app/constants/index.ts","./src/app/directives/autofocus.directive.ts","./src/app/directives/bootstrap-datepicker.directive.ts","./src/app/directives/bootstrap-select.directive.ts","./src/app/directives/bootstrap-tab.directive.ts","./src/app/directives/bootstrap-toggle.directive.ts","./src/app/directives/equal-validator.directive.ts","./src/app/directives/last-element.directive.ts","./src/app/models/citymaster.model.ts","./src/app/models/comm-request.model.ts","./src/app/models/index.ts","./src/app/models/notification.model.ts","./src/app/models/officemaster.model.ts","./src/app/models/permission.model.ts","./src/app/models/pincodemaster.model.ts","./src/app/models/productmaster.model.ts","./src/app/models/role.model.ts","./src/app/models/statemaster.model.ts","./src/app/models/user-edit.model.ts","./src/app/models/user-login.model.ts","./src/app/models/user.model.ts","./src/app/pipes/group-by.pipe.ts","./src/app/pipes/stringify-json.pipe.ts","./src/app/pipes/table-search.pipe.ts","./src/app/pipes/wallet-order.pipe.ts","./src/app/services/account-endpoint.service.ts","./src/app/services/account.service.ts","./src/app/services/alert.service.ts","./src/app/services/animations.ts","./src/app/services/app-title.service.ts","./src/app/services/app-translation.service.ts","./src/app/services/auth-guard.service.ts","./src/app/services/auth-storage.ts","./src/app/services/auth.service.ts","./src/app/services/checkout.services.ts","./src/app/services/configuration.service.ts","./src/app/services/customexcel.service.ts","./src/app/services/db-keys.ts","./src/app/services/endpoint-base.service.ts","./src/app/services/excel.service.ts","./src/app/services/jwt-helper.ts","./src/app/services/local-store-manager.service.ts","./src/app/services/masters-end-point.service.ts","./src/app/services/masters.service.ts","./src/app/services/notification-endpoint.service.ts","./src/app/services/notification.service.ts","./src/app/services/tally.service.ts","./src/app/services/tallyendpoint.service.ts","./src/app/services/theme-manager.ts","./src/app/services/transaction.service.ts","./src/app/services/transactionendpoint.service.ts","./src/app/services/utilities.ts","./src/app/services/window.services.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,wE;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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AAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gCAAgC;AAChC,6BAA6B;AAC7B,+BAA+B;AAC/B,gCAAgC;;AAE+C;AACf;AACN;AACqB;AACvB;AAe4E;AAC7D;AACV;AACG;AACtB;AACQ;AACI;AACA;AACI;AACF;AACoB;AACjC;AAEa;AACF;AACS;AACmC;AAC1B;AAChB;AACA;AACmB;AACrB;AACgB;AACU;AACpB;AACU;AAEE;AACG;AACL;AACO;AACM;AACA;AACQ;AAC3F,+EAA+E;AAC3B;AACY;AACJ;AAEE;AACJ;AACU;AACH;AACe;AACH;AACN;AACM;AACT;AACW;AACT;AACY;AACJ;AACY;AACU;AACpB;AACF;AACc;AACA;AACA;AACV;AACG;AAChC;AACkB;AACqB;AACT;AAGN;AACY;AACG;AACM;AACf;AACM;AACN;AACkB;AACrB;AACO;AACJ;AACA;AACG;AACgD;AAC7C;AACZ;AACH;AACwB;AACA;AACe;AACA;AAC1C;AAEkB;AACH;AACY;AACN;AAE7C;AACkD;AACvD;AACoC;AACK;AACf,CAAC,eAAe;AACrC;AACkE;AACb;AACW;AACjC;AACoB;AACC;AAChC;AAC2B;AACA;AAEd;AAC2B;AACT;AAChB;AACU;AACI;AACJ;AACmB;AACN;AACV;AACrC;AACuC;AAC1B;AACS;AAC4B;AAChB;AACE;AACe;AACD;AACD;AACF;AACK;AACb;AACR;AACJ;AACH;AACyB;AACf;AACT;AACK;AACK;AACR;AACX;AACoB;AACE;AACK;AACnB;AACF;AACE;AACN;AACS;AACC;AACJ;AACe;AACG;AACT;AACA;AACH;AACoB;AACd;AACU;AACP;AACS;AACZ;AAC1B;AAC6B;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AAuB,iB;;;;;;;;;;;ACAxC,iBAAiB,qBAAuB,iB;;;;;;;;;;;ACAxC,iBAAiB,qBAAuB,kB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAxC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA,oBAAoB;AACpB,oBAAoB;AACpB;AACA,mBAAmB,gCAAgC;AACnD;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA,gDAAgD,SAAS;AACzD,wGAAwG,IAAI;AAC5G,wFAAwF,IAAI;AAC5F,gGAAgG,QAAQ;AACxG,IAAI;AACJ;AACA,8CAA8C,SAAS;AACvD,6CAA6C,OAAO,KAAK,SAAS;AAClE;;AAEA;AACA;AACA,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA,aAAa,OAAO;AACpB;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA,cAAc,SAAS;AACvB;AACA,eAAe;AACf;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;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;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,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,MAAM;AACrB,eAAe,SAAS;AACxB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA,uCAAuC,SAAS;;AAEhD;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,4BAA4B,SAAS;AACrC,4BAA4B,IAAI,8BAA8B,QAAQ;AACtE;AACA;AACA,4BAA4B,SAAS;AACrC,4BAA4B,IAAI,8BAA8B,QAAQ;AACtE;AACA;AACA,4BAA4B,SAAS;AACrC,4BAA4B,IAAI;AAChC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;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,4BAA4B,mBAAmB,EAAE;AACjD,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB,eAAe,SAAS;AACxB,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,gBAAgB,2FAA2F;AAC3G;;AAEA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;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,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;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,IAAI;;AAEJ;AACA;AACA;AACA,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA,uDAAuD,KAAK;AAC5D;AACA;AACA,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB,eAAe,OAAO;AACtB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,sDAAsD,EAAE;AACnF;AACA,IAAI;;AAEJ;AACA;AACA;AACA,cAAc,OAAO;AACrB;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,eAAe;AACf;AAC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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\";","var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ps\": \"./node_modules/moment/locale/ar-ps.js\",\n\t\"./ar-ps.js\": \"./node_modules/moment/locale/ar-ps.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn-bd\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn-bd.js\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-in\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-in.js\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-sg\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./en-sg.js\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-mx\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-mx.js\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fil\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fil.js\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-deva\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-deva.js\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku-kmr\": \"./node_modules/moment/locale/ku-kmr.js\",\n\t\"./ku-kmr.js\": \"./node_modules/moment/locale/ku-kmr.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./oc-lnc\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./oc-lnc.js\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tk\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tk.js\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-mo\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-mo.js\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Delivery Run Sheet

\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
\\n \\n
\\n
\\n
\\n
\\n \\\"logo\\\"\\n
\\n
\\n \\n \\n
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n DRS No. :\\n \\n {{deliveryrunsheet}}\\n
\\n Date :\\n \\n {{drsdate}}\\n
\\n Time :\\n {{timee}}
\\n Del. Boy:\\n \\n {{delboyname}} \\n
\\n Mobileno:\\n \\n {{delboymob}} \\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
Address :
\\n\\n
\\n
\\n \\n\\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n
#Hub AWB. No. Party Name / Add. Signature Otp
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
{{list.srlno}}{{list.bookingbranch}}{{list.consignmentno}}{{list.consignmeename}}
\\n {{list.Product}}    Pices: {{list.pieces}}    Weight: {{list.weight}}kg
\\n Topay: 0             DOD: 0\\n\\n
\\n \\n \\n {{list.Consaddress}}
\\n \\n \\n \\n {{list.consMobileno}}\\n \\n
\\n \\n
\\n Recieved By:     {{recievername}}     | Delivered On:    {{Recievedon}}\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\r\\n
\\r\\n

{{'pageHeader.About' | translate}}

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

Welcome to QuickApp

\\r\\n

This application template provides a quick and convenient way to create ASP.NET Core 3.0 / Angular 8 applications

\\r\\n\\r\\n
Technologies
\\r\\n \\r\\n\\r\\n
\\r\\n
Features
\\r\\n
    \\r\\n
  • A complete backend and frontend project structure to build on, with login, user and permission-based role management integrated
  • \\r\\n
  • Clean and simple Angular/ASP.NET Core code to serve as a guide
  • \\r\\n
  • Data Access Layer built with the Repository and Unit of Work Pattern
  • \\r\\n
  • Code First Database
  • \\r\\n
  • A RESTful API Design
  • \\r\\n
  • Dialog and Notification Services
  • \\r\\n
  • Configuration Page and Configuration Service
  • \\r\\n
  • Integrated Internationaliztion
  • \\r\\n
  • Theming with SASS
  • \\r\\n
  • Ready-to-use email API
  • \\r\\n
  • Handling Access and Refresh Tokens with WebStorage (Bearer authentication) - No Cookies
  • \\r\\n
  • CRUD APIs
  • \\r\\n
  • etc.
  • \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n Get more templates\\r\\n\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Awb Booking

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Awb Booking Detail\\r\\n
\\r\\n
Get Booking Detail
\\r\\n
\\r\\n \\r\\n Awbno Wise\\r\\n Date Wise\\r\\n Yield Report\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{text}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n Print\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Cancel Awb\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Add Consignee

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

Add Consigner

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Awb Tracking

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Awbno:
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Awb No:\\r\\n \\r\\n \\r\\n \\r\\n Pickup Date:\\r\\n \\r\\n \\r\\n
\\r\\n Refrenceno:\\r\\n \\r\\n \\r\\n \\r\\n Weight:\\r\\n \\r\\n \\r\\n
\\r\\n Vol. Weight:\\r\\n \\r\\n \\r\\n \\r\\n Pieces:\\r\\n \\r\\n \\r\\n
\\r\\n Product:\\r\\n \\r\\n \\r\\n \\r\\n Mode:\\r\\n \\r\\n \\r\\n
\\r\\n Origin:\\r\\n \\r\\n \\r\\n \\r\\n Destination:\\r\\n \\r\\n \\r\\n
\\r\\n Status:\\r\\n \\r\\n \\r\\n \\r\\n Status Date:\\r\\n \\r\\n \\r\\n
\\r\\n Booking Office:\\r\\n \\r\\n \\r\\n \\r\\n Consignee:\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

AWB Bagging

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n AWB Details\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
AwbnoStickernoMpsno
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Delete\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Awb Booking

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

Balance : {{walletBalance | currency:\\\"INR\\\":\\\"symbol\\\"}}

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

Cash and Kart booking will adjusted from wallet

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Awb Booking\\r\\n\\r\\n
\\r\\n
\\r\\n
Booking Type
\\r\\n
\\r\\n \\r\\n Cash\\r\\n Credit\\r\\n Kart\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Cash\\r\\n Credit\\r\\n Topay\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Air\\r\\n Surface\\r\\n Train\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
Service Type:
\\r\\n
\\r\\n \\r\\n Domestic (Regular)\\r\\n Domestic (Priority)\\r\\n International\\r\\n \\r\\n
\\r\\n
Product:
\\r\\n
\\r\\n \\r\\n Document\\r\\n Parcel\\r\\n On Demand\\r\\n Critical\\r\\n Divine\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n DOD\\r\\n COD\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\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:\\r\\n \\r\\n \\r\\n 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 GMS\\r\\n KG\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Owner\\r\\n Carrier\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n ODA\\r\\n EDL\\r\\n NA\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Add Consignee

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

Add Consigner

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n

QR Code

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{list.officename}}\\r\\n \\r\\n \\r\\n \\r\\n Tracking 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
Item NameQuantityWeight
{{item.itemName}}{{item.quantity}}{{item.weight}}
\\r\\n \\r\\n
AWB No :{{list.awbno}}  [{{list.saleType}}]Content :{{list.content}}
Origin :{{list.Origin}}\\r\\n \\r\\n
Destination :{{list.Destination}}
Product :{{list.Product}}
Mode :{{list.Mode}}
Pieces :{{list.Pieces}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n {{list1.label1}}\\r\\n \\r\\n \\r\\n {{list1.label2}}\\r\\n
\\r\\n \\r\\n {{list1.label3}}\\r\\n \\r\\n \\r\\n {{list1.label4}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\n\"","export default \"

awbhistory works!

\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Awb InScan

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n InScan Process\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n Air\\n Surface\\n Train\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n AWB Details\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
AwbnoManifest No:
\\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n\\n \\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n\\n \\n
\\n \\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n

Awb OutScan

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n Hub OutScan Process\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n\\n \\n
\\n \\n
\\n \\n
\\n\\n
\\n\\n
\\n \\n
\\n \\n Air\\n Surface\\n Train\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n\\n
\\n
\\n AWB Details\\n
\\n \\n \\n \\n \\n \\n \\n \\n
Awbno
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n \\n \\n \\n \\n \\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n\\n \\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n\\n \\n
\\n \\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Awb Series In Stock For Printing

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n Kart\\r\\n Normal\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n Product Name is required\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Awb From is required\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Awb To is required\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Sticker From is required\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Sticker To is required\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

B A/D A Master

\\r\\n
\\r\\n
\\r\\n
\\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 A\\r\\n D A\\r\\n ECC\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Agency Name is required\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n Contact Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Identification Number is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Pan Number is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Phone 1 is required\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Mobile 1 Name is required\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Email-Id is required\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n GST No is required\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Deposit Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Deposit Amount is required\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Deposit Date is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Deposite Mode is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Bank Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Bank Name is required\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Account Name is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Account No is required\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n IFSC Code is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Control Office is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Generate Excel\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n ADD\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n \\r\\n Edit\\r\\n Approve\\r\\n Add Rate\\r\\n Add Other Charges\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Print Bill

\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n \\\"logo\\\"\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n\\n
\\n\\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n
\\n
\\n {{fullAdress}}\\n
\\n {{cityName}}-{{opincode}}\\n
\\n GST No: {{Gstno}}\\n
\\n
\\n\\n
\\n\\n
\\n
\\n\\n \\n \\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,
M/S {{customerName}}
{{HouseNo}},{{StreetName}}
{{City}} ({{StateName}})
GST NO:: {{gstnumber}} ({{StateName}})
\\n
\\n \\n\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Bill No:: {{billNo}}
Bill Date:: {{billDate}}
Bill Period:: {{billFrom}} To {{BillTo}}
Reverse Charges:: NO
HSN/SAC:: 996812
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n\\n \\n\\n\\n \\n \\n \\n \\n\\n\\n \\n\\n\\n \\n\\n \\n \\n \\n\\n\\n \\n\\n\\n \\n \\n \\n \\n\\n\\n \\n\\n\\n\\n\\n \\n \\n \\n\\n\\n\\n \\n \\n \\n \\n\\n\\n \\n\\n\\n\\n \\n \\n \\n \\n\\n\\n \\n\\n\\n\\n \\n \\n \\n \\n\\n\\n \\n\\n\\n\\n \\n \\n \\n \\n\\n\\n \\n\\n\\n \\n \\n \\n \\n\\n\\n \\n\\n\\n \\n \\n \\n \\n\\n\\n \\n\\n\\n\\n \\n \\n \\n \\n \\n\\n
1Freight Charges{{TotalFreight}}
2Other Charges{{OtherCharges}}
3Fuel Surcharge{{FuelSurcharge}}
4Taxable Amount{{TaxableAmount}}
Taxes
5CGST @9%{{CgstAmount}}
6SGST @9%{{SgstAmount}}
7IGST @18%{{IgstAmount}}
8Sub Total{{TotalAmount}}
9 +/-{{PlusMinus}}
10Grand Total{{roundvalue}}
\\n Payable Amount (In Words): {{valueinword}}\\n \\n Payable Amount: {{roundvalue}}\\n
\\n
\\n\\n
\\n\\n
\\n
\\n\\n
\\n TERMS AND CONDITIONS:\\n
\\n\\n
\\n
\\n
\\n

\\n 1. Any discrepancies should be brought to the notice of the company within seven days from the date of reciept of invoice.\\n\\n

\\n

\\n 2. Payment to be made by crossed/account payee,cheque/DD,online in favour of ONEX DELIVIRIES LLP.\\n

\\n \\n

\\n 3. Late payemnt are subject to an interest charges of 24% per annum.\\n

\\n

\\n 5. No payment is to be made in cash.\\n

\\n
\\n\\n
\\n
\\n
\\n Bank Details:\\n
\\n\\n
\\n
\\n
\\n

\\n Account Name : ONEX DELIVIRIES LLP\\n\\n

\\n

\\n Bank Name: HDFC BANK\\n

\\n

\\n Account No :50200056152172\\n

\\n

\\n IFSC Code : HDFC0001203\\n

\\n\\n
\\n\\n
\\n
\\n
\\n
\\n For ONEX DELIVIRIES LLP\\n
\\n \\n
\\n Authorised Signatury\\n
\\n
\\n
\\n
\\n \\\"logo\\\"\\n
\\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n
\\n
\\n {{fullAdress}}\\n
\\n {{cityName}}-{{opincode}}\\n
\\n GST No: {{Gstno}}\\n
\\n
\\n\\n
\\n
\\n
\\n \\n
\\n\\n
\\n\\n\\n\\n \\n \\n \\n \\n \\n \\n \\n
\\n \\n \\n\\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\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,
M/S {{customerName}}
{{HouseNo}},{{StreetName}}
{{City}} ({{StateName}})
GST NO:: {{gstnumber}} ({{StateName}})
\\n
\\n \\n\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Bill No:: {{billNo}}
Bill Date:: {{billDate}}
Bill Period:: {{billFrom}} To {{BillTo}}
Reverse Charges:: NO
HSN/SAC:: 996812
\\n
\\n S.No\\n \\n Date\\n \\n Awb No.\\n \\n Origin\\n \\n Destination\\n \\n Product\\n \\n Mode\\n \\n Actual Weight\\n \\n Charge Weight\\n \\n Frieght\\n \\n Other Charge\\n \\n Fuel Surcharge\\n \\n Total\\n
\\n {{item.sno}}\\n \\n {{item.awbDate}}\\n \\n {{item.awbno}}\\n \\n {{item.origin}}\\n \\n {{item.destCity}}\\n \\n {{item.product}}\\n \\n {{item.mode}}\\n \\n {{item.aweight}}\\n \\n {{item.cweight}}\\n \\n {{item.frieghtAmount}}\\n \\n {{item.otherCharges}}\\n \\n {{item.fuelSurcharge}}\\n \\n {{item.totalAmount}}\\n
\\n Grand Total\\n \\n {{TotalFreight}}\\n \\n {{OtherCharges}}\\n \\n {{FuelSurcharge}}\\n \\n {{TaxableAmount}}\\n
\\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n\\n\\n \\n \\n \\n \\n\\n\\n \\n \\n \\n\\n\\n \\n\\n\\n \\n \\n \\n\\n\\n \\n\\n\\n \\n \\n \\n\\n\\n \\n\\n\\n\\n \\n \\n \\n \\n \\n\\n
Taxes
SGST @9%{{CgstAmount}}
CGST @9%{{SgstAmount}}
IGST @18%{{IgstAmount}}
Sub Total{{TotalAmount}}
+/-{{PlusMinus}}
Grand Total{{roundvalue}}
\\n Payable Amount (In Words): {{valueinword}}\\n \\n Payable Amount: {{roundvalue}}\\n
\\n
\\n\\n \\n
\\n
\\n
\\n\\n
\\n TERMS AND CONDITIONS:\\n
\\n\\n
\\n
\\n
\\n

\\n 1. Any discrepancies should be brought to the notice of the company within seven days from the date of reciept of invoice.\\n\\n

\\n

\\n 2. Payment to be made by crossed/account payee,cheque/DD,onlie in favour of ONEX DELIVIRIES LLP.\\n

\\n \\n

\\n 3. Late payemnt are subject to an interest charges of 24% per annum.\\n

\\n

\\n 4. No payment is to be made in cash\\n

\\n
\\n\\n
\\n
\\n
\\n Bank Details:\\n
\\n\\n
\\n
\\n
\\n

\\n Account Name : ONEX DELIVIRIES LLP\\n\\n

\\n

\\n Bank Name: HDFC BANK\\n

\\n

\\n Account No :50200056152172\\n

\\n

\\n IFSC Code : HDFC0001203\\n

\\n\\n
\\n\\n
\\n
\\n
\\n
\\n For ONEX DELIVIRIES LLP\\n
\\n \\n
\\n \\n Authorised Signatury\\n
\\n\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Bill Report

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Gatepass Detail\\r\\n
\\r\\n
Bill Report
\\r\\n
\\r\\n \\r\\n Bill Wise\\r\\n BillDate Wise\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{text}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n Print\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n Cancel Bill\\r\\n \\r\\n\\r\\n \\r\\n -->\\r\\n \\r\\n \\r\\n Post Voucher\\r\\n \\r\\n\\r\\n \\r\\n -->\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Tally Sale Voucher
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer Name:
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer Ledger(Tally):
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Billno : {{vbillno}}
\\r\\n
Region : {{voffice}}
\\r\\n
\\r\\n
\\r\\n
Taxable Amount : {{vtaxAmount}}
\\r\\n
SGST Amount : {{cgstamount}}
\\r\\n
CGST Amount : {{sgstamount}}
\\r\\n
IGST Amount : {{igstamount}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Billing Module

\\n
\\n\\n
\\n\\n
\\n
\\n
\\n Office And Customer Information\\n
\\n \\n
\\n\\n \\n Cash\\n Credit\\n Kart\\n \\n
\\n \\n
\\n\\n \\n Provisional\\n Actual\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n Billing Information\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n Awb Detail\\n
\\n \\n \\n \\n \\n {{row.awbno}}\\n \\n
\\n
\\n
\\n Billing Summary\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n\\n
\\n \\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Booking Commission

\\r\\n
\\r\\n \\r\\n {{value | 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 \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Product NameCommision[%]Active From
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Product NameCommision[%]Active From
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Booking vs Scan

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

{{BookingButNotOut}}

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

Booking But Not Dispatch

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{OutButnotIn}}

\\r\\n

Dispatch But Not Reached

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{inButnotout}}

\\r\\n

Reached But Not Out

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{OfdButNotout}}

\\r\\n

OFD Done But Not Deliver

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n\\n
\\n

City Master

\\n
\\n
\\n
\\n \\n
\\n\\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n \\n\\n \\n \\n \\n \\n City Name is required\\n \\n \\n \\n \\n \\n \\n \\n State Name is required\\n \\n
\\n \\n \\n \\n \\n \\n Pin-Code is required\\n \\n \\n \\n \\n \\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n >\\n
\\n
\\n
\\n
\\n
\\n \\n\\n \\n \\n {{value}}\\n \\n \\n Add Pin-Code\\n \\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n
\\n

Pin-Code Master

\\n \\n
\\n\\n
\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n\\n \\n
\\n \\n\\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n
\\n\\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n
\\n\\n
\\n\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n
\\n
\\n\\n \\n
\\n \\n\\n
\\n
\\n
\\n\\n
\\n
\\n\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n\\n
\\n\\n
\\n
\\n\\n\\n \\n
\\n \\n\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n

Consignee Report

\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n\\n
\\n \\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n\\n\\n
\\n \\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
DateOriginConsignorAwbnoPcsWeightRemark
{{productCountryInfo.bookingDate}}{{productCountryInfo.origin}}{{productCountryInfo.customerName}}{{productCountryInfo.awbno}}{{productCountryInfo.pieces}}{{productCountryInfo.awbWeight}}{{productCountryInfo.remarks}}
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"

\\r\\n ACN Update\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n GatePassno\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n GatePass Weight\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n From City\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n To City\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Mode\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n TotalBag\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Vendore Code\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n Vendore Name\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n ACN No\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n Acn Weight\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n ACN Amount\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n Connected By\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n ACN Image\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"\\n\\n
\\n Address\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n\\n
\\n
\\n\\n\\n\\n\\n\"","export default \"
\\r\\n
\\r\\n \\r\\n \\r\\n \\\"ASP.NET\\\"\\r\\n
\\r\\n

\\r\\n Learn how to build ASP.NET apps that can run anywhere\\r\\n \\r\\n Learn More\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\\"Visual\\r\\n
\\r\\n

\\r\\n One platform for building modern web, native mobile and native desktop applications\\r\\n \\r\\n Learn More\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\\"Package\\r\\n
\\r\\n

\\r\\n Bring in libraries from NuGet and npm, and bundle with angular/cli\\r\\n \\r\\n Learn More\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\\"Eben\\r\\n
\\r\\n

\\r\\n Follow me on social media for updates and tips on using this startup project\\r\\n \\r\\n Learn More\\r\\n \\r\\n

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

Application uses

\\r\\n
    \\r\\n
  • Restful API backend using the cross platform ASP.NET Core MVC
  • \\r\\n
  • Client framework with Angular8 and typescript
  • \\r\\n
  • npm for managing client-side libraries
  • \\r\\n
  • Theming using Bootstrap
  • \\r\\n
  • Module bundling with Angular CLI
  • \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

Run & Deploy

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n \\r\\n Invalid Selection.\\r\\n
\\r\\n {{item}}\\r\\n
\\r\\n
\\r\\n\"","export default \"

\\r\\n {{title}}\\r\\n

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

Select ODA/EDL Area

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Recived Amount
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
Freight Amount
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
Gst Amount
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer GST No
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Payment Mode
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Tariff Amount
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Profit/Loss Amount
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

ADD Customer Rate Master

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
StateCityPincodeSlab1Rate1Slab2Rate2Slab3Rate3Addl.slabAddl.rate
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
Min. Chargable Wt. (Kg)
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
StateCityPincodeSlab1Rate1Slab2Rate2Slab3Rate3Addl.slabAddl.rate
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
Min. Chargable Wt. (Kg)
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
StateCityPincodeSlab1Rate1Slab2Rate2Slab3Rate3Addl.slabAddl.rate
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
Min. Chargable Wt. (Kg)
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
StateCityPincodeSlab1Rate1Slab2Rate2Slab3Rate3Addl.slabAddl.rate
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

ADD Kart Rate Master

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
StateCityPincodeSlab1Rate1Slab2Rate2Slab3Rate3Addl.slabAddl.rate
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
Min. Chargable Wt. (Kg)
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
StateCityPincodeSlab1Rate1Slab2Rate2Slab3Rate3Addl.slabAddl.rate
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
Min. Chargable Wt. (Kg)
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
StateCityPincodeSlab1Rate1Slab2Rate2Slab3Rate3Addl.slabAddl.rate
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
Min. Chargable Wt. (Kg)
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
StateCityPincodeSlab1Rate1Slab2Rate2Slab3Rate3Addl.slabAddl.rate
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n

Customer Rate Master

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CityPincodeSlab1Rate1Slab2Rate2PslabPrate
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CityPincodeSlab1Rate1Slab2Rate2PslabPrate
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CityPincodeSlab1Rate1Slab2Rate2PslabPrate
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CityPincodeSlab1Rate1Slab2Rate2PslabPrate
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CityPincodeSlab1Rate1Slab2Rate2PslabPrate
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CityPincodeSlab1Rate1Slab2Rate2PslabPrate
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CityPincodeSlab1Rate1Slab2Rate2PslabPrate
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Other Charges

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
ChargesProduct
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n {{option}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
From WeightTowtFrom ValueTo Value
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
StateCityPincode
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
Fix ChargesPerKg ChargesFixcharges(%)
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n \\r\\n Delete\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"

\\r\\n MPS\\r\\n

\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"

\\r\\n MPS\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n MPS No\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Other Charges

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
ChargesProductFrom WeightTowtFrom ValueTo ValueFix ChargesPerKg ChargesFixcharges(%)
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n {{option}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n

\\r\\n Awb Money Reciept\\r\\n

\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Recived Amount
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
Freight Amount
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
Gst Amount
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer GST No
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Payment Mode
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"

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

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n {{title}}\\r\\n
\\r\\n
Packect Recived At Hub:
\\r\\n
\\r\\n \\r\\n Yes\\r\\n No\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Recived By
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Further Action To Be Execute:
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Remark
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"

\\r\\n Awb Edit\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Awbno\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Current Weight\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Current Mode\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Current Product\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Current Destination\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Current Pincode\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Change Weight\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Change Mode\\r\\n
\\r\\n
\\r\\n \\r\\n Air\\r\\n Surface\\r\\n Train\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Change Product\\r\\n
\\r\\n
\\r\\n \\r\\n Document\\r\\n Parcel\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Change Pincode\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n ODA/Edl Charge\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n {{getPrintedDate(value)}}\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\"","export default \"
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n {{'roles.editor.RoleNameRequired' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n {{'roles.management.Edit' | translate}}\\r\\n {{'roles.management.Details' | translate}}\\r\\n {{canManageRoles ? '|' : ''}}\\r\\n {{'roles.management.Delete' | translate}}\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{'roles.management.RoleDetails' | translate:editingRoleName}}

\\r\\n

{{editingRoleName ? ('roles.management.EditRole' | translate:editingRoleName) : ('roles.management.NewRole' | translate)}}

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
{{label}}
{{d && d.label}}{{d && d.data[j]}}
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{'todoDemo.editor.NewTask' | translate}}

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'todoDemo.editor.TaskNameRequired' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n

{{user.jobTitle}}

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

{{user.userName}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'users.editor.UserNameRequired' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n {{'users.editor.PasswordHint' | translate}}\\r\\n \\r\\n \\r\\n {{'users.editor.CurrentPasswordRequired' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n

{{user.email}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'users.editor.EmailRequired' | translate}}\\r\\n \\r\\n \\r\\n {{'users.editor.InvalidEmail' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n

{{user.phoneNumber}}

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'users.editor.CurrentPasswordRequired' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'users.editor.NewPasswordRequired' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'users.editor.ConfirmationPasswordRequired' | translate}}\\r\\n \\r\\n \\r\\n {{'users.editor.PasswordMismatch' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n

\\r\\n \\r\\n {{role}}\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'users.editor.RoleRequired' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n

{{user.fullName}}

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

{{user.officeName}}

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

{{user.departmentName}}

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{'preferences.ReloadPreferencesHint' | translate}}

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

{{'preferences.LanguageHint' | translate}}

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

{{'preferences.HomePageHint' | translate}}

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

{{'preferences.ThemeHint' | translate}}

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

{{'preferences.DashboardStatisticsHint' | translate}}

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

{{'preferences.DashboardNotificationsHint' | translate}}

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

{{'preferences.DashboardTodoHint' | translate}}

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

{{'preferences.DashboardBannerHint' | translate}}

\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n {{role}}\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{'users.management.Edit' | translate}}|\\r\\n {{'users.management.Delete' | translate}}\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{'users.management.NewUser' | translate}}

\\r\\n

{{'users.management.EditUser' | translate:editingUserName}}

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"

\\r\\n POD Update\\r\\n

\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Customer Bill Payment

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Payment Detail\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n From Date :\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n To Date :\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n Post Voucher\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Tally Sale Voucher
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer Name:
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer Ledger(Tally):
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Billno : {{vbillno}}
\\r\\n
Region : {{voffice}}
\\r\\n
\\r\\n
\\r\\n
Taxable Amount : {{vtaxAmount}}
\\r\\n
SGST Amount : {{cgstamount}}
\\r\\n
CGST Amount : {{sgstamount}}
\\r\\n
IGST Amount : {{igstamount}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Customer Book Email

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Print Customer Details

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n\\n \\n \\n \\n \\n \\n
Customer Contract \\\"logo\\\"
\\n \\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n \\n \\n\\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n

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

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

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

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

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

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

\\n \\n \\n \\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n
\\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n\\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
{{list.ProductName}} (Minimum Chargable Weight :: {{list.FromWeight}} Kg )
DestinationSlab1Rate1Slab2Rate2Addl.slabAddl.rate
{{list.Destination}}{{list.Slab1}}{{list.Rate1}}{{list.Slab2}}{{list.Rate2}}{{list.Pslab}}{{list.Prate}}
\\n \\n \\n
\\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n\\n \\n
#Region NameMaped (City/State/PIN-Code)
{{list.Serialno}}{{list.RegionName}}{{list.mappedname}}
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n\"","export default \"
\\r\\n
\\r\\n

{{'pageHeader.Customers' | translate}}

\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n

Direct Party Sale

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n Client InFormation\\n\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n Services and Business Volume\\n
\\n
\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Product\\n
\\n \\n
\\n
\\n
\\n
Document Volume\\n \\n \\n \\n
Parcel Volume\\n \\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n\\n\\n
\\n
\\n Company InFormation\\n
\\n \\n
\\n \\n
\\n\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n Contact Detail-Billing\\n
\\n \\n
\\n \\n
\\n\\n\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n Pickup Point \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n Regional Details\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n Approval Details\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n
\\n
\\n \\n\\n \\n\\n \\n \\n Step One\\n \\n \\n\\n Step 1 content\\n \\n \\n \\n \\n \\n {{value}}\\n \\n \\n Add Region\\n\\n \\n \\n Add Rate\\n\\n \\n\\n \\n Other Charges\\n \\n \\n Approval by R.O\\n \\n \\n Print\\n\\n \\n \\n Delete\\n \\n
\\n
\\n
\\n\\n\\n \\n
\\n\\n
\\n
\\n
\\n

Add Rate

\\n \\n
\\n\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n
\\n
\\n \\n Regional\\n Destination\\n \\n
\\n\\n
\\n
\\n\\n
\\n
\\n \\n \\n
\\n \\n
\\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n \\n \\n \\n {{value}}\\n \\n\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Customer Region Master

\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n\\n \\n\\n \\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n\\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n\\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\\n \\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

AWB D-Bagging

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n Bag No is required\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n AWB Details\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
AwbnoStickerno
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Delivery Commision Master

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
BA/DA/Vendor
\\r\\n
\\r\\n
BA/DA/Vendore 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
ODA Pincodes
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Normal Pincodes
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
ODA Rate
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Noraml Rate
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{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
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Delivery Commision Master/Wallet Setting

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
BA/DA
\\r\\n
\\r\\n
BA/DA/Vendore 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
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
Normal Delivery Comm.
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
ODA Delivery Comm.
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Delivery Commision

\\n
\\n
\\n\\n
\\n
\\n
\\n B.A/D.A Information\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n Awb Detail\\n
\\n \\n \\n \\n \\n {{row.awbno}}\\n \\n
\\n
\\n
\\n Billing Summary\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n

Delivery Confirmation

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n Delivery Run Sheet Details\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n >\\n
\\n
\\n
\\n
\\n
\\n \\n \\n \\n {{value}}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n\\n \\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

DELIVERY OUTSCAN

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Delivery Out-Scan \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n DOX\\r\\n PAX\\r\\n PRIORITY\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n DA\\r\\n BA\\r\\n Vehicle\\r\\n FR\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n 1ST\\r\\n 2ND\\r\\n 3RD \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Yes\\r\\n No\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n Yes\\r\\n No\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Delivery Run Sheet

\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
\\n \\n
\\n
\\n
\\n
\\n \\\"logo\\\"\\n
\\n
\\n \\n \\n
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n DRS No. :\\n \\n {{deliveryrunsheet}}\\n
\\n Date :\\n \\n {{deliverydate}}\\n
\\n Time :\\n {{timee}}
\\n Del. Boy:\\n \\n {{delboyname}} \\n
\\n Mobileno:\\n \\n {{delboymob}} \\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
Address :
\\n\\n
\\n
\\n \\n\\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n
#Hub AWB. No. Party Name / Add. Signature Otp
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
{{list.srlno}}{{list.bookingbranch}}\\n {{list.consignmentno}}
\\n {{list.stickerno}}\\n
{{list.consignmeename}}
\\n {{list.Product}}    Pices: {{list.pieces}}    Weight: {{list.weight}}kg
\\n Topay: 0             DOD: 0\\n\\n
\\n \\n \\n {{list.Consaddress}}
\\n \\n \\n \\n {{list.consMobileno}}\\n \\n
Remarks
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n

Delivery OutScan

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n Delivery OutScan Process\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n\\n \\n
\\n\\n
\\n\\n
\\n
\\n \\n
\\n
\\n AWB Details\\n
\\n \\n \\n \\n \\n \\n \\n \\n
Awbno
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n \\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n \\n \\n
\\n\\n \\n
\\n \\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Print Bill

\\n
\\n
\\n
\\n\\n
\\n
\\n \\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n \\\"logo\\\"\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n\\n
\\n\\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n
\\n
\\n {{fullAdress}}\\n
\\n {{cityName}}-{{opincode}}\\n
\\n {{bstatename}}\\n
\\n GST No: {{Gstno}}\\n
\\n
\\n\\n
\\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,
M/S {{customerName}}
GST NO:: {{gstnumber}} ({{StateName}})
\\n
\\n \\n\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Bill No:: {{billNo}}
Bill Date:: {{billDate}}
Bill Period:: {{billFrom}} To {{BillTo}}
Reverse Charges:: NO
HSN/SAC:: 996812
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n\\n\\n\\n\\n\\n\\n \\n \\n\\n\\n \\n\\n\\n \\n\\n \\n \\n \\n \\n\\n
\\n S.No\\n \\n Date\\n \\n Awb No.\\n \\n DRS No\\n \\n Pieces\\n \\n Actual Weight\\n \\n Charge Weight\\n \\n IsODA\\n \\n Normal Comm.\\n \\n ODA Comm.\\n \\n ToTal Comm.\\n
\\n {{item.sno}}\\n \\n {{item.ofddate}}\\n \\n {{item.awbno}}\\n \\n {{item.drsNo}}\\n \\n {{item.pieces}}\\n \\n {{item.actualWeight}}\\n \\n {{item.chargeWeight}}\\n \\n {{item.isOda}}\\n \\n {{item.normalComm}}\\n \\n {{item.odaComm}}\\n \\n {{item.totalComm}}\\n
Total{{TotalFreight}}
\\n Payable Amount (In Words): {{valueinword}}\\n \\n Payable Amount: {{TotalFreight}}\\n
\\n
\\n\\n
\\n\\n
\\n
\\n\\n
\\n TERMS AND CONDITIONS:\\n
\\n\\n
\\n
\\n
\\n

\\n 1. Any discrepancies should be brought to the notice of the company within seven days from the date of reciept of invoice.\\n\\n

\\n \\n\\n

\\n 2. Late payemnt are subject to an interest charges of 24% per annum.\\n

\\n

\\n 3. No payment is to be made in cash.\\n

\\n
\\n\\n
\\n \\n
\\n \\n \\n\\n\\n\\n \\n \\n \\n\\n \\n
\\n \\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Delivery Bill Report

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Bill Detail\\r\\n
\\r\\n
Bill Report
\\r\\n
\\r\\n \\r\\n Bill Wise\\r\\n BillDate Wise\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{text}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n Print\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n Cancel Bill\\r\\n \\r\\n\\r\\n \\r\\n -->\\r\\n \\r\\n \\r\\n Post Voucher\\r\\n \\r\\n\\r\\n \\r\\n -->\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Tally Sale Voucher
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer Name:
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer Ledger(Tally):
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Billno : {{vbillno}}
\\r\\n
Region : {{voffice}}
\\r\\n
\\r\\n
\\r\\n
Taxable Amount : {{vtaxAmount}}
\\r\\n
SGST Amount : {{cgstamount}}
\\r\\n
CGST Amount : {{sgstamount}}
\\r\\n
IGST Amount : {{igstamount}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n

Destination Delivery Schedule

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n Destination Delivery Schedule\\n
\\n \\n
\\n \\n
\\n\\n \\n
\\n \\n
\\n
\\n\\n
\\n \\n
\\n\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n >\\n
\\n
\\n
\\n
\\n
\\n \\n\\n \\n
\\n
\\n
\\n
\\n
\\n\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Dashboard

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

{{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
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n

Manifest Report

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n DRS Detail\\n
\\n
Get DRS Detail
\\n
\\n \\n DRS No Wise\\n Date Wise\\n \\n
\\n
\\n
\\n
{{text}}
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n
\\n \\n\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n
\\n
\\n \\n \\n\\n \\n Print\\n\\n\\n \\n\\n \\n
\\n
\\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Daily Expense Payment

\\n
\\n
\\n\\n
\\n
\\n
\\n Expense Information\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n\\n \\n \\n\\n \\n Print\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Generate Sticker

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Print\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Dashboard

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

\\r\\n Wallet Balance : {{walletBalance | currency:\\\"INR\\\":\\\"symbol\\\"}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
DescriptionAmountType
{{item.description\\r\\n }}{{item.amount | currency:\\\"INR\\\":\\\"symbol\\\"}}\\r\\n \\r\\n {{ item.type }}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
Sale Dashboard
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{Booking}}

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

Booking

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{IncomingLoad}}

\\r\\n

Incoming Load

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{connected}}

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

Connected

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{OutForDelivery}}

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

Out For Delivery

\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{delivered}}

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

Delivered

\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n {{'home.NoWidgets1' | translate}} {{'settings.tab.Preferences' | translate}}\\r\\n {{'home.NoWidgets2' | translate}}\\r\\n

\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Booking In-Scan\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n In-Scan\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
ODA/EDL :
\\r\\n
\\r\\n \\r\\n ODA\\r\\n PARTIAL ODA\\r\\n EDL\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n KART\\r\\n Normal\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
Sale Type:
\\r\\n
\\r\\n \\r\\n Cash\\r\\n Credit\\r\\n Kart\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Air\\r\\n Surface\\r\\n Train\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n DOD\\r\\n COD\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Cash\\r\\n Credit\\r\\n Topay\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\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:\\r\\n \\r\\n \\r\\n 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 \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Owner\\r\\n Carrier\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Item Issue

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n B.A is required\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Date is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Items\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\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:Unit:Qty:Rate:Amount:
\\r\\n \\r\\n \\r\\n Item is required\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Please Fill Box

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Item Master

\\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 Name is required\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Item Unit is required\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Sgst is required\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Cgst is required\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Igst is required\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Hsn code is required\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Item Receive

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\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\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n

QR Code

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{list.officename}}\\r\\n \\r\\n \\r\\n \\r\\n Tracking Number
\\r\\n \\r\\n
\\r\\n \\r\\n
AWB No :{{list.awbno}}  [{{list.saleType}}]\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Content:{{list.content}}
\\r\\n\\r\\n
Booking Date :{{list.bookingdate}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Topay :{{list.istopay}}Topay Amount :{{list.topayAmt}}
\\r\\n
Origin :{{list.Origin}}\\r\\n \\r\\n
Destination :{{list.Destination}}
Product :{{list.Product}}
Mode :{{list.Mode}}
Pieces :{{list.Pieces}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n {{list1.label1}}\\r\\n \\r\\n \\r\\n {{list1.label2}}\\r\\n
\\r\\n \\r\\n {{list1.label3}}\\r\\n \\r\\n \\r\\n {{list1.label4}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n

QR Code

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{list.officename}}\\r\\n \\r\\n \\r\\n \\r\\n Tracking Number
\\r\\n \\r\\n
\\r\\n \\r\\n
AWB No :{{list.awbno}}  [{{list.saleType}}]Content :{{list.content}}
Booking Date :{{list.bookDate}}
Origin :{{list.Origin}}\\r\\n \\r\\n
Destination :{{list.Destination}}
Product :{{list.Product}}
Mode :{{list.Mode}}
Pieces :{{list.Pieces}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n {{list1.label1}}\\r\\n \\r\\n \\r\\n {{list1.label2}}\\r\\n
\\r\\n \\r\\n {{list1.label3}}\\r\\n \\r\\n \\r\\n {{list1.label4}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n

QR Code

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{list.officename}}\\r\\n \\r\\n \\r\\n \\r\\n Tracking Number
\\r\\n \\r\\n
\\r\\n \\r\\n
AWB No :{{list.awbno}}  [{{list.saleType}}]Content :{{list.content}}
Booking Date :{{list.bookDate}}
Origin :{{list.Origin}}\\r\\n \\r\\n
Destination :{{list.Destination}}
Product :{{list.Product}}
Mode :{{list.Mode}}
Pieces :{{list.Pieces}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n {{list1.label1}}\\r\\n \\r\\n \\r\\n {{list1.label2}}\\r\\n
\\r\\n \\r\\n {{list1.label3}}\\r\\n \\r\\n \\r\\n {{list1.label4}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n

QR Code

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{list.officename}}\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{awbno}}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n MONEY RECIEPT\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Freight Amount \\r\\n \\r\\n :\\r\\n \\r\\n \\r\\n {{freightamt}}\\r\\n \\r\\n
\\r\\n Gst Amount @18%\\r\\n \\r\\n :\\r\\n \\r\\n \\r\\n {{GstAmount}}\\r\\n \\r\\n
\\r\\n Payable Amount (inc.Tax)\\r\\n \\r\\n :\\r\\n \\r\\n \\r\\n {{Payable}}\\r\\n \\r\\n
\\r\\n Recived Amount (inc.Tax)\\r\\n \\r\\n :\\r\\n \\r\\n \\r\\n {{Payable}}\\r\\n \\r\\n
\\r\\n Pay Mode\\r\\n \\r\\n :\\r\\n \\r\\n \\r\\n {{Paymode}}\\r\\n \\r\\n
\\r\\n
AWB No :{{list.awbno}}  [{{list.saleType}}]Content :{{list.content}}
Booking Date :{{list.bookDate}}
Origin :{{list.Origin}}\\r\\n \\r\\n
Destination :{{list.Destination}}
Weight :{{list.Weight}}
Vol.Weight :{{list.volwt}}
Product :{{list.Product}}
Mode :{{list.Mode}}
Pieces :{{list.Pieces}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n {{list1.label1}}\\r\\n \\r\\n \\r\\n {{list1.label2}}\\r\\n
\\r\\n \\r\\n {{list1.label3}}\\r\\n \\r\\n \\r\\n {{list1.label4}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Last Mile Delivery Hubs

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Last Mile Delivery Hubs \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n DOX\\r\\n PARCELS\\r\\n PRIORITY\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n DEL BOY\\r\\n BIKERS\\r\\n VEHICLES\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n TOPAY\\r\\n DOD\\r\\n COD\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

Load Dashboard Inbound

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

\\r\\n {{InLoad}}\\r\\n

\\r\\n

Pre Alert

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n {{recvload}}\\r\\n

\\r\\n

Load Recieved

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{row.gatePassno}}\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

Load Dashboard Outbound

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

{{totalLoad}}

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

\\r\\n Load Out\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n {{InLoad}}\\r\\n

\\r\\n

Balance To Recieve

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n {{recvload}}\\r\\n

\\r\\n

Load Recieved

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{row.gatePassno}}\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Load Movement

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Load Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Bag Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n Vehicle Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Load Movement

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Load Movement Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Air\\r\\n Surface\\r\\n Train\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Bag Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n Print\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Bages Type\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Vendore Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Load Through Vehicles\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

LOAD RECEIVING

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Load Receiving Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Air\\r\\n Surface\\r\\n Train\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Gatepass Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Login\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Username is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Password is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Manual Awb Out Manifest

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Load Movement Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n

Manifest Report

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n Manifest Detail\\n
\\n
Get Manifest Detail
\\n
\\n \\n Manifest No Wise\\n Date Wise\\n \\n
\\n
\\n
\\n
{{text}}
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n \\n
\\n \\n\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n
\\n
\\n \\n \\n\\n \\n Print\\n\\n\\n \\n\\n \\n \\n UpdateACN\\n \\n\\n \\n \\n\\n\\n
\\n
\\n
\\n
\\n

Add Consignee

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

Add Consigner

\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n \\n\\n
\\n\\n \\n\\n
\\n\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Awb History

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n

{{'pageHeader.NotFound' | translate}}

\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{'notFound.404' | translate}}
\\r\\n
{{'notFound.pageNotFound' | translate}}
\\r\\n
{{'notFound.backToHome' | translate}}
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Ns-Location

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Ns-Location Details\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Pin-Code Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Ns-Partner

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Ns-Partner Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Air\\r\\n Surface\\r\\n Train\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n \\n
\\n
\\n
\\n >\\n
\\n
\\n
\\n \\n
\\n\\n\\n
\\n
\\n \\n \\n\\n \\n {{value}}\\n \\n\\n\\n \\n\\n\\n
\\n
\\n
\\n
\\n \\n \\n

OFFICE HUB BRANCH DATA FILE

\\n \\n \\n
\\n
\\n\\n\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n \\n\\n
\\n \\n
\\n \\n \\n\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n \\n\\n
\\n \\n
\\n \\n \\n\\n
\\n
\\n
\\n\\n\\n
\\n\\n
\\n \\n
\\n \\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n\\n
\\n
\\n \\n
\\n \\n \\n\\n
\\n \\n
\\n \\n \\n\\n
\\n
\\n
\\n
\\n
\\n\\n \\n
\\n \\n \\n\\n
\\n \\n
\\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n\\n \\n
\\n \\n \\n\\n\\n
\\n \\n
\\n \\n \\n\\n
\\n
\\n
\\n
\\n
\\n\\n \\n
\\n \\n \\n\\n
\\n \\n
\\n \\n \\n\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n\\n \\n
\\n \\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n
\\n
\\n \\n \\n
\\n \\n\\n\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n \\n\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Online Order Details

\\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n\\n\\n \\n {{value}}\\n \\n\\n\\n \\n Customer Details\\n Item Details\\n Book Now\\n \\n\\n\\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

{{Name}}

\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n\"","export default \"
\\r\\n
\\r\\n

{{'pageHeader.Orders' | translate}}

\\r\\n
\\r\\n\\r\\n
\\r\\n -- Sample Page --\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Out-Scan

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Out-Scan\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n\\r\\n
CHECKOUT VISIBILITY : {{isCheckoutVisible}}
\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Paytm Transaction Report

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n

Pickup Dashboard

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

{{totalpickup}}

\\r\\n

\\r\\n Today Pickup\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n {{Schedule}}\\r\\n

\\r\\n

Scheduled Pickuped

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n {{pickuped}}\\r\\n

\\r\\n

Total Pickuped

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n {{Booking}}\\r\\n

\\r\\n

Customer Wise Booking

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Add PickupBoy\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Assign Pickup

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Reverse Pickup Request Confirmation

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Accept/Decline\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Acknowledge

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"\\n\\n\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n \\n
\\n
\\n
\\n >\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n \\n \\n\\n \\n {{value}}\\n \\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Print Gatepass

\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n\\n
\\n\\n
\\n
\\n\\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n
\\n\\n \\\"logo\\\"\\n\\n \\n \\n \\n \\n \\n\\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n\\n\\n \\n\\n
From :{{From}}
To :{{To}}
Mode :{{Mode}}
No Of Bags :{{NoofBags}}Weight :{{AcnWt}} Kg
\\n
\\n \\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n
\\n
\\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n\\n \\n\\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
#Bag No.Nature Of Pkg Weight Bagsize Sealno
{{list.sno}}{{list.bagno}}{{list.bagtype}}{{list.bagWeight}}{{list.bagSize}}{{list.bagno}}
\\n Grnad Total\\n \\n {{AcnWt}}\\n
\\n Mother Bag/Poly Bag Deatils\\n
#Bagno.Awbno Weight MPSNoPcsDestination
{{list1.sno}}{{list1.bagno}}{{list1.awbno}}{{list1.awbWeight}} {{list1.mpsno}} {{list1.pieces}}{{list1.cityName}}
\\n
\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Awb Bagingdetail

\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n\\n
\\n \\n\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Print Manifest

\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n \\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n\\n \\n \\n \\n \\n \\n
\\n \\n\\n \\n\\n \\\"logo\\\"\\n\\n
\\n\\n\\n\\n \\n\\n \\n\\n\\n \\n \\n\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n
\\n Manifest Generated At \\n :\\n {{Hub}}\\n \\n Manifest No \\n :\\n {{Manifest}}\\n \\n Date \\n :{{Date}}
\\n Rec. From\\n :\\n {{ReceivingFrom}}\\n \\n Fwd To\\n :\\n {{ForwardedTo}}\\n \\n Mode\\n :\\n {{Mode}}\\n
Pieces :{{TotalPieces}}Prepared By :{{userName}}
\\n
\\n
\\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
#AWB No.Origin Destination WeightProductPieces
{{list.srlno}}{{list.AWBNo}} {{list.AWBNo}}{{list.Origin}}{{list.Destination}}{{list.Weight}}{{list.Product}}{{list.Pieces}}
\\n
\\n\\n
\\n
\\n\\n
\\n\\n\\n\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n\"","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n

Print Sticker

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{bacode}}
\\r\\n \\r\\n
\\r\\n
\\r\\n {{bacode}}
\\r\\n \\r\\n
\\r\\n
\\r\\n {{bacode}}
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\\"logo\\\"\\r\\n\\r\\n \\r\\n Client Code : \\r\\n
\\r\\n Org. \\r\\n :\\r\\n \\r\\n \\r\\n Dest. \\r\\n :\\r\\n \\r\\n
\\r\\n Pin.\\r\\n :\\r\\n \\r\\n \\r\\n Awb.\\r\\n :\\r\\n \\r\\n
PCS. :\\r\\n \\r\\n Mob.:\\r\\n \\r\\n
 
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\\"logo\\\"\\r\\n \\r\\n Client Code : \\r\\n
\\r\\n Org. \\r\\n :\\r\\n \\r\\n \\r\\n Dest. \\r\\n :\\r\\n \\r\\n
\\r\\n Pin.\\r\\n :\\r\\n \\r\\n \\r\\n Awb.\\r\\n :\\r\\n \\r\\n
PCS. :\\r\\n \\r\\n Mob.:\\r\\n \\r\\n
 
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Product Master

\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n \\n Product Type is required\\n \\n\\n
\\n \\n
\\n \\n \\n Product Type is required\\n \\n\\n
\\n \\n
\\n
\\n \\n
\\n \\n \\n Booking For s required\\n \\n\\n
\\n \\n
\\n \\n\\n \\n Service is required\\n \\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n >\\n
\\n
\\n
\\n
\\n
\\n \\n\\n \\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\r\\n
\\r\\n

{{'pageHeader.Products' | translate}}

\\r\\n
\\r\\n\\r\\n
\\r\\n -- Sample Page --\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Booking Product Sticker

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Print\\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Print Customer Details

\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n\\n \\n \\n \\n \\n \\n \\n
{{CustomerName}} Quotation \\\"logo\\\"
\\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n
\\n
\\n
\\n
\\n        \\n
\\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n

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

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

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

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

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

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

\\n \\n \\n \\n \\n \\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n
\\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
{{list.ProductName}} (Minimum Chargable Weight :: {{list.chgWeight}} Kg )
DestinationFrom WeightTo WeightSlab1Rate1Slab2Rate2Slab3Rate3Addl.slabAddl.rate
{{list.Destination}}{{list.FromWeight}}{{list.ToWeight}}{{list.Slab1}}{{list.Rate1}}{{list.Slab2}}{{list.Rate2}}{{list.Slab3}}{{list.Rate3}}{{list.Pslab}}{{list.Prate}}
\\n \\n \\n\\n
\\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n
Cahrge NameCharge %Charge PerKgFix Charge
{{list.chargeName}}{{list.charges_percent}}{{list.charges_perkg}}{{list.fixCharges}}
\\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
#Region NameMaped (City/State/PIN-Code)
{{list.Serialno}}{{list.RegionName}}{{list.mappedname}}
\\n \\n \\n \\n \\n
\\n Note - \\n All Our Service displayed in case you prefer to use on a regular basis any other services do contact our executive\\n for prefer rate or if you occasionally our normal tariff will be applicable for normal tariff visit our site https://www.one-x.in//\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n

Customer Quotation

\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n Client InFormation\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n \\n
\\n\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n Services and Business Volume\\n
\\n
\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Product\\n
\\n \\n
\\n
\\n
\\n
Document Volume\\n \\n \\n \\n
Parcel Volume\\n \\n \\n \\n
\\n
\\n
\\n\\n
\\n
\\n\\n\\n
\\n
\\n Company InFormation\\n
\\n \\n
\\n \\n
\\n\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n Contact Detail-Billing\\n
\\n \\n
\\n \\n
\\n\\n\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n\\n
\\n\\n
\\n
\\n
\\n
\\n
\\n Pickup Point \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n Regional Details\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n Approval Details\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n
\\n Customer Active/Inactive \\n
\\n \\n
\\n \\n
\\n
\\n \\n
\\n
\\n\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n \\n \\n \\n \\n
\\n
\\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n
\\n
\\n \\n \\n \\n {{value}}\\n \\n \\n \\n Add Rate\\n\\n \\n\\n \\n Other Charges\\n \\n \\n Approval by R.O\\n \\n \\n Print\\n \\n \\n Delete\\n \\n
\\n
\\n
\\n\\n\\n \\n
\\n\\n
\\n
\\n
\\n

Add Rate

\\n \\n
\\n\\n
\\n
\\n
\\n
\\n\\n\\n
\\n
\\n
\\n
\\n \\n Regional\\n Destination\\n \\n
\\n\\n
\\n
\\n\\n
\\n
\\n \\n \\n
\\n \\n
\\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n \\n \\n \\n {{value}}\\n \\n\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Customer Region Master

\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n \\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n\\n \\n\\n \\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n \\n\\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
Maped CityMaped StateMaped PIN-Code
\\n\\n \\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n
\\n \\n \\n
\\n \\n
\\n
\\n
\\n\\n
\\n
\\n
\\n
\\n \\n \\n
\\n
\\n
\\n
\\n
\\n\\n
\\n
\\n
\\n\\n\\n\\n\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Region Master

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Region Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n Region Name is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Local 1\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Local 2\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Within State\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n Within Region 1\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Within Region 2\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Zone 1\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Zone 2\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Metro 1\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Metro 2\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Special Station 1\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Special Station 2\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Diplomatic Station 1:\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Diplomatic Station 2:\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Dox\\r\\n Parcel\\r\\n Priority\\r\\n International\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Reverse Booking Request

\\n
\\n\\n
\\n\\n
\\n
\\n
\\n Pickup Details\\n
\\n\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n
\\n
\\n
\\n Frieght And Other Charges\\n
\\n\\n \\n
\\n \\n\\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n
\\n\\n
\\n
\\n \\n
\\n \\n
\\n \\n
\\n \\n Cash\\n Credit\\n Topay\\n \\n
\\n
\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n

Sale Dashboard

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

{{totalsale}}

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

\\r\\n {{saleheading}}\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n {{SaleBa}}\\r\\n

\\r\\n

B.A Which Have Sale

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{NotSaleBa}}

\\r\\n

B.A Which Have Not Sale

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n

{{'pageHeader.Settings' | translate}}

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

{{'settings.header.UserProfile' | translate}}

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

{{'settings.header.UserPreferences' | translate}}

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

{{'settings.header.UsersManagements' | translate}}

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

{{'settings.header.RolesManagement' | translate}}

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n {{value}}\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n Edit\\r\\n Delete\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

Add State

\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n State Code is required\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n State Name is required\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Tally Ledger Report

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Tally Voucher Creation

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Voucher Information\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Vocher Details\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Dr/CrLedgerAmountCost Center
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
Credit: {{ tCredit }} | Debit: {{ tDebit }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Tariff Rate Master

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Regional\\r\\n Destination\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Tea Booking Dashboard

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

{{BookingButNotOut}}

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

Booking But Not Dispatch

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{OutButnotIn}}

\\r\\n

Dispatch But Not Reached

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{inButnotout}}

\\r\\n

Reached But Not Out

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{OfdButNotout}}

\\r\\n

OFD Done But Not Deliver

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n More info \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Update Vendor ACN

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Gatepass Detail\\r\\n
\\r\\n
Gatepass Data
\\r\\n
\\r\\n \\r\\n Gatepass Wise\\r\\n Date Wise\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{text}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n Print\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n UpdateACN\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Vendor Master

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

Vendor Master

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Personal InFormation\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Air\\r\\n Surface\\r\\n Train\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Company InFormation\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Contact Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Bank Details\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Map Movement Station\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n PerKg\\r\\n PerBag\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n >\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{value}}\\r\\n \\r\\n \\r\\n Edit\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n

Vendor Rate Master

\\n
\\n
\\n
\\n
\\n
\\n Vendor InFormation\\n
\\n \\n
\\n \\n\\n\\n
\\n \\n
\\n \\n\\n\\n
\\n\\n
\\n
\\n \\n
\\n \\n\\n\\n
\\n \\n
\\n \\n\\n
\\n\\n
\\n Vendor Rate Air\\n
\\n
\\n \\n
\\n \\n\\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n\\n
\\n
\\n
\\n
\\n
\\n \\n
\\n \\n\\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n\\n
\\n \\n
\\n \\n\\n\\n
\\n
\\n
\\n\\n \\n
\\n \\n\\n\\n
\\n
\\n
\\n\\n \\n
\\n \\n
\\n
\\n
\\n Vendor Rate Surface/Train\\n
\\n
\\n \\n
\\n \\n\\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n \\n
\\n \\n\\n
\\n
\\n
\\n\\n \\n
\\n \\n\\n\\n
\\n
\\n
\\n\\n \\n
\\n \\n
\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
\\n \\n \\n \\n {{value}}\\n \\n \\n Edit\\n \\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\"","export default \"
\\n
\\n
\\n
\\n
\\n
\\n
\\n

Print Voucher

\\n
\\n
\\n
\\n\\n
\\n
\\n \\n
\\n
\\n \\n
\\n \\n
\\n
\\n
\\n \\n \\n \\n \\n \\n
\\n \\\"logo\\\"\\n
\\n
\\n {{fulladdress}}\\n
\\n {{cityName}}-{{opincode}}\\n
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
\\n {{VoucherType}} Voucher\\n
\\n STATION\\n \\n VOUCHER NO.\\n \\n {{voucherno}}\\n
\\n Region : {{officename}}\\n DATE {{vdate}}
\\n REFERENCE NO.\\n {{reference}}
\\n
\\n
\\n
\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
PARTCULARSDEBITCREDITRemarks
\\n {{item.drcr}}\\n \\n {{item.ledgerName}}\\n \\n {{item.dramount}}\\n \\n {{item.cramount}}\\n \\n {{item.referenceno}}\\n
\\n TOTAL\\n \\n {{totdr}}\\n \\n {{totcr}}\\n
\\n {{charamount}}\\n
\\n Narration: {{narration}}\\n
\\n For ONEX DELIVERIES LLP\\n
\\n Prepared By :{{userName}}\\n \\n Recieve By :\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n
\\n\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Whatsapp Pod

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n Upload Pod\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable, ErrorHandler } from '@angular/core';\r\nimport { AlertService, MessageSeverity } from './services/alert.service';\r\n\r\n\r\n@Injectable()\r\nexport class AppErrorHandler extends ErrorHandler {\r\n\r\n // private alertService: AlertService;\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n\r\n handleError(error: any) {\r\n // if (this.alertService == null) {\r\n // this.alertService = this.injector.get(AlertService);\r\n // }\r\n\r\n // this.alertService.showStickyMessage(\"Fatal Error!\", \"An unresolved error has occured. Please reload the page to correct this error\", MessageSeverity.warn);\r\n // this.alertService.showStickyMessage(\"Unhandled Error\", error.message || error, MessageSeverity.error, error);\r\n\r\n if (confirm('Fatal Error!\\nAn unresolved error has occured. Do you want to reload the page to correct this?\\n\\nError: ' + error.message)) {\r\n window.location.reload(true);\r\n }\r\n\r\n super.handleError(error);\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule, DefaultUrlSerializer, UrlSerializer, UrlTree } from '@angular/router';\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { CustomersComponent } from './components/customers/customers.component';\r\nimport { ProductsComponent } from './components/products/products.component';\r\nimport { OrdersComponent } from './components/orders/orders.component';\r\nimport { SettingsComponent } from './components/settings/settings.component';\r\nimport { AboutComponent } from './components/about/about.component';\r\nimport { NotFoundComponent } from './components/not-found/not-found.component';\r\nimport { AuthService } from './services/auth.service';\r\nimport { AuthGuard } from './services/auth-guard.service';\r\nimport { Utilities } from './services/utilities';\r\nimport { StateMasterComponent } from './components/statemaster/statemaster.component'\r\nimport { CityMasterComponent } from './components/citymaster/citymaster.component';\r\nimport { PincodemasterComponent } from './components/pincodemaster/pincodemaster.component';\r\nimport { officemasterComponent} from './components/officemaster/officemaster.component';\r\nimport { ProductmasterComponent } from './components/productmaster/productmaster.component';\r\nimport { AwbseriesmasterComponent } from './components/awbseriesmaster/awbseriesmaster.component';\r\nimport { ItemmasterComponent } from './components/itemmaster/itemmaster.component';\r\nimport { VendormasterComponent } from './components/vendermaster/vendermaster.component';\r\nimport { BadamasterComponent } from './components/badamaster/badamaster.component';\r\nimport {BookingcommisionComponent } from './components/bookingcommision/bookingcommision.component';\r\nimport { ItemissueComponent } from './components/itemissue/itemissue.component';\r\nimport { AwbbookingComponent } from './components/awbbooking/awbbooking.component'\r\nimport { AwbbaggingComponent } from './components/awbbagging/awbbagging.component'\r\nimport { ItemreceiveComponent } from './components/itemrecieve/itemrecieve.component';\r\nimport { DestinationdeliveryscheduleComponent } from './components/destinationdeliveryschedule/destinationdeliveryschedule.component';\r\nimport { LoadmovementComponent } from './components/loadmovement/loadmovement.component';\r\nimport { InscanComponent } from './components/inscan/inscan.component';\r\nimport { DebagingComponent } from './components/debaging/debaging.component';\r\nimport { OutscanComponent } from './components/outscan/outscan.component';\r\nimport { LoadmovementnewComponent } from './components/loadmovementnew/loadmovementnew.component';\r\nimport { LastmiledeliveryhubsComponent } from './components/lastmiledeliveryhubs/lastmiledeliveryhubs.component'\r\nimport { DeliveryoutscanComponent } from './components/deliveryoutscan/deliveryoutscan.component'\r\nimport { LoadreceivingprocessComponent } from './components/loadreceivingprocess/loadreceivingprocess.component'\r\nimport { RegionMasterComponent } from './components/regionmaster/regionmaster.component'\r\nimport {LablereportComponent} from './components/lablereport/lablereport.component'\r\nimport { AwboutscanComponent } from './components/awboutscan/awboutscan.component';\r\nimport { AwbinscanComponent } from './components/awbinscan/awbinscan.component';\r\nimport { DeloveryOutScanNewComponent } from './components/delovery-out-scan-new/delovery-out-scan-new.component';\r\nimport { DeliveryrunsheetComponent } from './components/deliveryrunsheet/deliveryrunsheet.component'\r\nimport { DeliveryconfirmationComponent } from './components/deliveryconfirmation/deliveryconfirmation.component'\r\nimport { AwbBookingDataComponent } from './components/awb-booking-data/awb-booking-data.component'\r\nimport {CustromerMasterComponent} from './components/custromer-master/custromer-master.component'\r\nimport { PrintManifestComponent } from './components/print-manifest/print-manifest.component';\r\nimport { MenifestreportComponent } from './components/menifestreport/menifestreport.component';\r\nimport { OnlineorderdetailsComponent } from './components/onlineorderdetails/onlineorderdetails.component';\r\nimport { DivinedashboardComponent } from './components/divinedashboard/divinedashboard.component';\r\nimport {BookingvsScanComponent} from './components/bookingvs-scan/bookingvs-scan.component'\r\nimport { LablereportDpComponent } from './components/lablereportDp/lablereportDp.component';\r\nimport { LablereportKartComponent } from './components/lablereportKart/lablereportKart.component';\r\nimport { LablereportMRComponent } from './components/lablereportMR/lablereportMR.component';\r\nimport { DeliveryCommMasterComponent } from './components/delivery-comm-master/delivery-comm-master.component';\r\nimport { viewpodComponent } from './components/ViewPod/viewpod.component'\r\nimport { AwbdivineComponent } from './components/awbdivine/awbdivine.component';\r\nimport { CustomerprintComponent } from './components/customerprint/customerprint.component';\r\nimport { SaleDashboardComponent } from './components/sale-dashboard/sale-dashboard.component';\r\nimport { QuoteCustomerprintComponent } from './components/quote-customerprint/quote-customerprint.component';\r\nimport { QuotecustomermasterComponent } from './components/quotecustomermaster/quotecustomermaster.component';\r\nimport { TeabookingdashboardComponent } from './components/teabookingdashboard/teabookingdashboard.component';\r\nimport { GeneratestickerComponent } from './components/generatesticker/generatesticker.component'\r\nimport { PrintstickerComponent } from './components/printsticker/printsticker.component'\r\nimport { CustomerBookEmailComponent } from './components/customer-book-email/customer-book-email.component';\r\nimport { NsLocationComponent } from './components/ns-location/ns-location.component';\r\nimport { NsPartnerComponent } from './components/ns-partner/ns-partner.component';\r\nimport { AwbTrackingComponent } from './components/awb-tracking/awb-tracking.component'\r\nimport { ProductstickerComponent } from './components/productsticker/productsticker.component'\r\nimport { VendorRateComponent } from './components/vendor-rate/vendor-rate.component'\r\nimport { BillingComponent } from './components/billing/billing.component'\r\nimport { PrintGatepassComponent } from './components/print-gatepass/print-gatepass.component';\r\nimport { MultipletrackingComponent } from './components/multipletracking/multipletracking.component';\r\nimport {UpdateACNComponent } from './components/update-acn/update-acn.component';\r\nimport {LoadDashBoardComponent } from './components/load-dash-board/load-dash-board.component';\r\nimport { BillPrintComponent } from './components/bill-print/bill-print.component';\r\nimport { BillReportComponent } from './components/bill-report/bill-report.component';\r\nimport { WhatsapppodComponent } from './components/whatsapppod/whatsapppod.component';\r\nimport { ReverseBookingComponent } from './components/reverse-booking/reverse-booking.component';\r\nimport { PicuprequestAckComponent } from './components/picuprequest-ack/picuprequest-ack.component';\r\nimport { TallyVoucherComponent } from './components/tally-voucher/tally-voucher.component';\r\nimport { VoucherPrintComponent } from './components/voucher-print/voucher-print.component';\r\nimport { TallyLedgerReportComponent } from './components/tally-ledger-report/tally-ledger-report.component';\r\nimport { LoadDashBoardInComponent } from './components/load-dash-board-in/load-dash-board-in.component';\r\nimport { ExpensePaymentComponent } from './components/expense-payment/expense-payment.component';\r\nimport { DeliveryCommisionComponent } from './components/delivery-commision/delivery-commision.component'\r\nimport { PaytmCheckoutComponent } from './components/paytm-checkout/paytm-checkout.component'\r\nimport { DelvbillReportComponent } from './components/delvbill-report/delvbill-report.component'\r\nimport { DelvbillPrintComponent } from './components/delvbill-print/delvbill-print.component'\r\nimport { DeliveryCommWalletComponent } from './components/delivery-comm-wallet/delivery-comm-wallet.component';\r\nimport { PaytmtransactionReportComponent } from './components/paytmtransaction-report/paytmtransaction-report.component';\r\nimport { PickupDashboardComponent } from './components/pickup-dashboard/pickup-dashboard.component'\r\nimport { ConsReportComponent } from './components/cons-report/cons-report.component'\r\nimport { CustomerBillPaymentComponent } from './components/customer-bill-payment/customer-bill-payment.component';\r\n\r\nexport class LowerCaseUrlSerializer extends DefaultUrlSerializer {\r\n parse(url: string): UrlTree {\r\n const possibleSeparators = /[?;#]/;\r\n const indexOfSeparator = url.search(possibleSeparators);\r\n let processedUrl: string;\r\n\r\n if (indexOfSeparator > -1) {\r\n const separator = url.charAt(indexOfSeparator);\r\n const urlParts = Utilities.splitInTwo(url, separator);\r\n urlParts.firstPart = urlParts.firstPart.toLowerCase();\r\n\r\n processedUrl = urlParts.firstPart + separator + urlParts.secondPart;\r\n } else {\r\n processedUrl = url.toLowerCase();\r\n }\r\n return super.parse(processedUrl);\r\n }\r\n}\r\nconst routes: Routes = [\r\n { path: '', component: HomeComponent, canActivate: [AuthGuard], data: { title: 'Home' } },\r\n { path: 'login', component: LoginComponent, data: { title: 'Login' } },\r\n { path: 'products', component: ProductsComponent, canActivate: [AuthGuard], data: { title: 'Products' } },\r\n { path: 'orders', component: OrdersComponent, canActivate: [AuthGuard], data: { title: 'Orders' } },\r\n { path: 'settings', component: SettingsComponent, canActivate: [AuthGuard], data: { title: 'Settings' } },\r\n { path: 'about', component: AboutComponent, data: { title: 'About Us' } },\r\n { path: 'statemaster', component: StateMasterComponent, canActivate: [AuthGuard], data: { title: 'State' } },\r\n { path: 'citymaster', component: CityMasterComponent, canActivate: [AuthGuard], data: { title: 'City' } },\r\n { path: 'pincodemaster', component: PincodemasterComponent, canActivate: [AuthGuard], data: { title: 'Pincode Master' } },\r\n { path: 'officemaster', component: officemasterComponent, canActivate: [AuthGuard], data: { title: 'Office Master' } },\r\n { path: 'productmaster', component: ProductmasterComponent, canActivate: [AuthGuard], data: { title: 'Product Master' } },\r\n { path: 'awbseriesmaster', component: AwbseriesmasterComponent, canActivate: [AuthGuard], data: { title: 'Awb Series In Stock For Printing' } },\r\n { path: 'itemmaster', component: ItemmasterComponent, canActivate: [AuthGuard], data: { title: 'Item Master' } },\r\n { path: 'customermaster', component:CustromerMasterComponent, canActivate: [AuthGuard], data: { title: 'Customer Master' } },\r\n { path: 'vendoremaster', component: VendormasterComponent, canActivate: [AuthGuard], data: { title: 'Vendore Master' } },\r\n { path: 'badamaster', component: BadamasterComponent, canActivate: [AuthGuard], data: { title: 'B.A/D.A Master' } },\r\n { path: 'bookingcommision', component: BookingcommisionComponent, canActivate: [AuthGuard], data: { title: 'Booking Commision Master' } },\r\n { path: 'itemissue', component: ItemissueComponent, canActivate: [AuthGuard], data: { title: \"Item Issue\" } },\r\n { path: 'awbbooking/:booktype', component: AwbbookingComponent, canActivate: [AuthGuard], data: { title: \"Awb Booking\" } },\r\n { path: 'awbbagging', component: AwbbaggingComponent, canActivate: [AuthGuard], data: { title: \"Awb Baging\" } },\r\n { path: 'itemrecieve', component: ItemreceiveComponent, canActivate: [AuthGuard], data: { title: \"Item Recieve\" } },\r\n { path: 'deliveryschedule', component: LastmiledeliveryhubsComponent, canActivate: [AuthGuard], data: { title: \"Booking And Destination Hub Mapping\" } },\r\n { path: 'loadmovement/:edittype', component: LoadmovementnewComponent, canActivate: [AuthGuard], data: { title: \"Load Movement\" } },\r\n { path: 'loadrecieve', component: LoadreceivingprocessComponent, canActivate: [AuthGuard], data: { title: \"Load Recieve Process\" } },\r\n { path: 'inscan', component: InscanComponent, canActivate: [AuthGuard], data: { title: \"Package Connection\" } },\r\n { path: 'awbdebaging', component: DebagingComponent, canActivate: [AuthGuard], data: { title: \"Awb De-Baging\" } },\r\n { path: 'outscan', component: DeloveryOutScanNewComponent, canActivate: [AuthGuard], data: { title: \"Delivery Outscan\" } },\r\n { path: 'RegionMaster', component: RegionMasterComponent, canActivate: [AuthGuard], data: { title: \"Region Master\" } },\r\n { path: 'awbprint', component: LablereportComponent, canActivate: [AuthGuard], data: { title: \"Awb Printing\" } },\r\n { path: 'awbprintdp', component: LablereportDpComponent, canActivate: [AuthGuard], data: { title: \"Awb Printing\" } },\r\n { path: 'awbprintkart', component: LablereportKartComponent, canActivate: [AuthGuard], data: { title: \"Awb Printing\" } },\r\n { path: 'awbprintmr', component: LablereportMRComponent, canActivate: [AuthGuard], data: { title: \"Awb MR Printing\" } },\r\n { path: 'awboutscan', component: AwboutscanComponent, canActivate: [AuthGuard], data: { title: \"Awb Outscan\" } },\r\n { path: 'awbinscan', component: AwbinscanComponent, canActivate: [AuthGuard], data: { title: \"Awb Inscan\" } },\r\n { path: 'awbdrs', component: DeliveryrunsheetComponent, canActivate: [AuthGuard], data: { title: \"Delivery Runsheet\" } },\r\n { path: 'dlvconfirm', component: DeliveryconfirmationComponent, canActivate: [AuthGuard], data: { title: \"POD\" } },\r\n { path: 'awbbookdet', component: AwbBookingDataComponent, canActivate: [AuthGuard], data: { title: \"Awb Booking Detail\" } },\r\n { path: 'printmanifest', component: PrintManifestComponent, canActivate: [AuthGuard], data: { title: \"Print Manifest\" } },\r\n { path: 'manifestreport', component: MenifestreportComponent, canActivate: [AuthGuard], data: { title: \"Manifest Report\" } },\r\n { path: 'onlineorderdetails', component: OnlineorderdetailsComponent, canActivate: [AuthGuard], data: { title: \"Online Order Details\" } },\r\n { path: 'divinedashboard', component: DivinedashboardComponent, canActivate: [AuthGuard], data: { title: \"Online Order Dashboard\" } },\r\n { path: 'bookvsscan', component: BookingvsScanComponent, canActivate: [AuthGuard], data: { title: \"Mis Dashboard\" } },\r\n { path: 'delvcommmaster', component: DeliveryCommMasterComponent, canActivate: [AuthGuard], data: { title: \"Delivery Commision\" } },\r\n { path: 'awbdivineprint', component: AwbdivineComponent, canActivate: [AuthGuard], data: { title: \"Awb Divine Print\" } },\r\n { path: 'customerprint', component: CustomerprintComponent, canActivate: [AuthGuard], data: { title: \"Customer Print\" } },\r\n { path: 'kartsale/:saletype', component: SaleDashboardComponent, canActivate: [AuthGuard], data: { title: \"Kart Sale\" } },\r\n { path: 'quotecust', component: QuotecustomermasterComponent, canActivate: [AuthGuard], data: { title: \"Quotation\" } },\r\n { path: 'quotecustprint', component: QuoteCustomerprintComponent, canActivate: [AuthGuard], data: { title: \"Quote Print\" } },\r\n { path: 'teadashboard', component: TeabookingdashboardComponent, canActivate: [AuthGuard], data: { title: \"Tea Sample\" } },\r\n { path: 'gensticker', component: GeneratestickerComponent, canActivate: [AuthGuard], data: { title: \"Generate Sticker\" } },\r\n { path: 'printsticker', component: PrintstickerComponent, canActivate: [AuthGuard], data: { title: \"Print Sticker\" } },\r\n { path: 'custemail', component: CustomerBookEmailComponent, canActivate: [AuthGuard], data: { title: \"Customer Book Email\" } },\r\n { path: 'nspartner', component: NsPartnerComponent, canActivate: [AuthGuard], data: { title: \"Network Share Component\" } },\r\n { path: 'nslocation', component: NsLocationComponent, canActivate: [AuthGuard], data: { title: \"Network Share Location\" } },\r\n { path: 'track', component: AwbTrackingComponent, canActivate: [AuthGuard], data: { title: \"Awb Tracking\" } },\r\n { path: 'psticker', component: ProductstickerComponent, canActivate: [AuthGuard], data: { title: \"Awb Tracking\" } },\r\n { path: 'vrate', component: VendorRateComponent, canActivate: [AuthGuard], data: { title: \"Vendor Rate\" } },\r\n { path: 'billing', component: BillingComponent, canActivate: [AuthGuard], data: { title: \"Billing\" } },\r\n { path: 'printgp', component: PrintGatepassComponent, canActivate: [AuthGuard], data: { title: \"Print Gatepass\" } },\r\n { path: 'awbhist', component: MultipletrackingComponent, canActivate: [AuthGuard], data: { title: \"Awb History\" } },\r\n { path: 'updacn', component: UpdateACNComponent, canActivate: [AuthGuard], data: { title: \"Update ACN\" } },\r\n { path: 'ldrdash', component: LoadDashBoardComponent, canActivate: [AuthGuard], data: { title: \"Load Dashboard\" } },\r\n { path: 'ldrdashin', component: LoadDashBoardInComponent, canActivate: [AuthGuard], data: { title: \"Load Dashboard\" } },\r\n { path: 'billprint', component :BillPrintComponent, canActivate: [AuthGuard], data: { title: \"Bill Print\" } },\r\n { path: 'billrep', component: BillReportComponent, canActivate: [AuthGuard], data: { title: \"Bill Report\" } },\r\n { path: 'wppod', component: WhatsapppodComponent, canActivate: [AuthGuard], data: { title: \"WhatsAppPod\" } },\r\n { path: 'revrse', component: ReverseBookingComponent, canActivate: [AuthGuard], data: { title: \"Reverse Booking\" } },\r\n { path: 'revrseack', component: PicuprequestAckComponent, canActivate: [AuthGuard], data: { title: \"Reverse Booking\" } },\r\n { path: 'tallyvoucher', component: TallyVoucherComponent, canActivate: [AuthGuard], data: { title: \"Tally Voucher\" } },\r\n { path: 'vchprint', component: VoucherPrintComponent, canActivate: [AuthGuard], data: { title: \"Voucher Print\" } },\r\n { path: 'tledgerrep', component: TallyLedgerReportComponent, canActivate: [AuthGuard], data: { title: \"Ledger Report\" } },\r\n { path: 'exppayment', component: ExpensePaymentComponent, canActivate: [AuthGuard], data: { title: \"Expense Payment\" } },\r\n { path: 'delvcomm', component: DeliveryCommisionComponent, canActivate: [AuthGuard], data: { title: \"Expense Payment\" } },\r\n { path: 'paytmcheckout', component: PaytmCheckoutComponent, canActivate: [AuthGuard], data: { title: \"Paytm Checkout\" } },\r\n { path: 'delvblreport', component: DelvbillReportComponent, canActivate: [AuthGuard], data: { title: \"Delivery Bill Report\" } },\r\n { path: 'delvblprint', component: DelvbillPrintComponent, canActivate: [AuthGuard], data: { title: \"Delivery Bill Report\" } },\r\n { path: 'delvwlt', component: DeliveryCommMasterComponent, canActivate: [AuthGuard], data: { title: \"Delivery Commision Rate\" } },\r\n { path: 'paytmtran', component: PaytmtransactionReportComponent, canActivate: [AuthGuard], data: { title: \"Paytm Transaction Report\" } },\r\n { path: 'pickpdash', component: PickupDashboardComponent, canActivate: [AuthGuard], data: { title: \"PickupDashboard\" } },\r\n { path: 'consrepo', component: ConsReportComponent, canActivate: [AuthGuard], data: { title: \"Consignee Report\" } },\r\n { path: 'custbillpay', component:CustomerBillPaymentComponent, canActivate: [AuthGuard], data: { title: \"Bill Payment\" } },\r\n\r\n\r\n { path: 'viewpod', component: viewpodComponent, data: { title: \"POD\" } },\r\n { path: 'home', redirectTo: '/', pathMatch: 'full' }, \r\n { path: '**', component: NotFoundComponent, data: { title: 'Page Not Found' } }, \r\n]; \r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule],\r\n providers: [\r\n AuthService,\r\n AuthGuard,\r\n { provide: UrlSerializer, useClass: LowerCaseUrlSerializer }]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Injectable } from '@angular/core';\nimport { Router, NavigationEnd, ActivatedRoute } from '@angular/router';\nimport { Title } from '@angular/platform-browser';\nimport { Observable } from 'rxjs';\nimport { map, filter, scan } from 'rxjs/operators';\n\nexport class AppMenuItem {\n path: string;\r\n title: string;\r\n icon: string;\r\n}\n@Injectable()\r\nexport class AppToolbarService {\r\n activeMenuItem$: Observable;\r\n\r\n constructor(private router: Router, private titleService: Title) {\r\n this.activeMenuItem$ = this.router.events.pipe(\r\n filter(e => e instanceof NavigationEnd),\r\n map(_ => this.router.routerState.root),\r\n map(route => {\r\n let active = this.lastRouteWithMenuItem(route.root);\r\n this.titleService.setTitle(active.title);\r\n return active;\r\n }));\r\n }\r\n getMenuItems(): AppMenuItem[] {\r\n return this.router.config\r\n .filter(route => route.data && route.data.title) //only add a menu item for routes with a title set.\r\n .map(route => {\r\n return {\r\n path: route.path,\r\n title: route.data.title,\r\n icon: route.data.icon\r\n };\r\n });\r\n }\r\n\r\n private lastRouteWithMenuItem(route: ActivatedRoute): AppMenuItem {\r\n let lastMenu = undefined;\r\n do { lastMenu = this.extractMenu(route) || lastMenu; }\r\n while ((route = route.firstChild));\r\n return lastMenu;\r\n }\r\n private extractMenu(route: ActivatedRoute): AppMenuItem {\r\n let cfg = route.routeConfig;\r\n return cfg && cfg.data && cfg.data.title\r\n ? { path: cfg.path, title: cfg.data.title, icon: cfg.data.icon }\r\n : undefined\r\n }\r\n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { NgModule, ErrorHandler, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { FormsModule,ReactiveFormsModule} from '@angular/forms';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport {\r\n MatCommonModule, MatSidenavModule, MatRippleModule, MatButtonModule,\r\n MatMenuModule,\r\n MatToolbarModule,\r\n MatIconModule,\r\n MatCardModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatDatepickerModule,\r\n MatDatepicker,\r\n MatNativeDateModule,\r\n MatRadioModule,\r\n MatSelectModule,\r\n MatOptionModule,\r\n MatSlideToggleModule, ErrorStateMatcher, ShowOnDirtyErrorStateMatcher,MatCheckboxModule,MatDialogModule } from '@angular/material'\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\nimport { OAuthModule, OAuthStorage } from 'angular-oauth2-oidc';\r\nimport { ToastaModule } from 'ngx-toasta';\r\nimport { ModalModule } from 'ngx-bootstrap/modal';\r\nimport { TooltipModule } from 'ngx-bootstrap/tooltip';\r\nimport { PopoverModule } from 'ngx-bootstrap/popover';\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\nimport { CarouselModule } from 'ngx-bootstrap/carousel';\r\nimport { ChartsModule, BaseChartDirective, ThemeService } from 'ng2-charts';\r\nimport { DatePipe } from '@angular/common';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppErrorHandler } from './app-error.handler';\r\nimport { AppTitleService } from './services/app-title.service';\r\nimport { AppTranslationService,TranslateLanguageLoader} from './services/app-translation.service';\r\nimport { ConfigurationService } from './services/configuration.service';\r\nimport { AlertService } from './services/alert.service';\r\nimport { ThemeManager } from './services/theme-manager';\r\nimport { LocalStoreManager } from './services/local-store-manager.service';\r\nimport { AuthStorage } from './services/auth-storage';\r\nimport { NotificationService } from './services/notification.service';\r\nimport { NotificationEndpoint } from './services/notification-endpoint.service';\r\nimport { AccountService } from './services/account.service';\r\nimport { AccountEndpoint } from './services/account-endpoint.service';\r\n\r\nimport { EqualValidator } from './directives/equal-validator.directive';\r\nimport { LastElementDirective } from './directives/last-element.directive';\r\nimport { AutofocusDirective } from './directives/autofocus.directive';\r\nimport { BootstrapTabDirective } from './directives/bootstrap-tab.directive';\r\nimport { BootstrapToggleDirective } from './directives/bootstrap-toggle.directive';\r\nimport { BootstrapSelectDirective } from './directives/bootstrap-select.directive';\r\nimport { BootstrapDatepickerDirective } from './directives/bootstrap-datepicker.directive';\r\n//import { OnReturnEnterDirective} from './directives/enterkey.focus.directive'\r\nimport { GroupByPipe } from './pipes/group-by.pipe';\r\nimport { StringifyJsonPipe } from './pipes/stringify-json.pipe';\r\nimport {WalletOrderPipe } from './pipes/wallet-order.pipe';\r\n\r\nimport { BsDatepickerModule } from 'ngx-bootstrap/datepicker';\r\nimport { AppComponent } from './components/app.component';\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { CustomersComponent } from './components/customers/customers.component';\r\nimport { ProductsComponent } from './components/products/products.component';\r\nimport { OrdersComponent } from './components/orders/orders.component';\r\nimport { SettingsComponent } from './components/settings/settings.component';\r\nimport { AboutComponent } from './components/about/about.component';\r\nimport { NotFoundComponent } from './components/not-found/not-found.component';\r\nimport { AppToolbarService } from './app-toolbar/app-toolbar.service';\r\nimport { BannerDemoComponent } from './components/controls/banner-demo.component';\r\nimport { TodoDemoComponent } from './components/controls/todo-demo.component';\r\nimport { StatisticsDemoComponent } from './components/controls/statistics-demo.component';\r\nimport { NotificationsViewerComponent } from './components/controls/notifications-viewer.component';\r\nimport { SearchBoxComponent } from './components/controls/search-box.component';\r\nimport { UserInfoComponent } from './components/controls/user-info.component';\r\nimport { UserPreferencesComponent } from './components/controls/user-preferences.component';\r\nimport { UsersManagementComponent } from './components/controls/users-management.component';\r\nimport { RolesManagementComponent } from './components/controls/roles-management.component';\r\nimport { RoleEditorComponent } from './components/controls/role-editor.component';\r\nimport {StateMasterComponent } from './components/statemaster/statemaster.component';\r\nimport { Masters } from './services/masters.service';\r\nimport { MastersEndPoint } from './services/masters-end-point.service';\r\nimport { PincodemasterComponent } from './components/pincodemaster/pincodemaster.component';\r\nimport { CityMasterComponent } from './components/citymaster/citymaster.component';\r\n//import { AutocompleteLibModule } from 'angular-ng-autocomplete';\r\nimport { Ng2CompleterModule } from 'ng2-completer';\r\nimport { ComboBoxComponent } from './components/controls/combobox.component';\r\nimport { officemasterComponent } from './components/officemaster/officemaster.component';\r\nimport { ProductmasterComponent } from './components/productmaster/productmaster.component';\r\nimport { AwbseriesmasterComponent } from './components/awbseriesmaster/awbseriesmaster.component';\r\nimport { ItemmasterComponent } from './components/itemmaster/itemmaster.component';\r\nimport { VendormasterComponent } from './components/vendermaster/vendermaster.component';\r\nimport { BadamasterComponent } from './components/badamaster/badamaster.component';\r\nimport { BookingcommisionComponent } from './components/bookingcommision/bookingcommision.component';\r\nimport { ItemissueComponent } from './components/itemissue/itemissue.component';\r\nimport { AddressmasterComponent } from './components/controls/addressmaster.component';\r\nimport { AwbbookingComponent } from './components/awbbooking/awbbooking.component';\r\nimport { AwbbaggingComponent } from './components/awbbagging/awbbagging.component';\r\nimport { ItemreceiveComponent } from './components/itemrecieve/itemrecieve.component';\r\nimport { DestinationdeliveryscheduleComponent } from './components/destinationdeliveryschedule/destinationdeliveryschedule.component';\r\nimport { LoadmovementComponent } from './components/loadmovement/loadmovement.component';\r\nimport { DebagingComponent } from './components/debaging/debaging.component';\r\nimport { OutscanComponent } from './components/outscan/outscan.component';\r\nimport { LoadmovementnewComponent } from './components/loadmovementnew/loadmovementnew.component';\r\nimport { DeliveryoutscanComponent } from './components/deliveryoutscan/deliveryoutscan.component';\r\nimport { LastmiledeliveryhubsComponent } from './components/lastmiledeliveryhubs/lastmiledeliveryhubs.component';\r\nimport { LoadreceivingprocessComponent } from './components/loadreceivingprocess/loadreceivingprocess.component';\r\nimport { InscanComponent } from './components/inscan/inscan.component';\r\nimport { BoldReportViewerModule } from '@boldreports/angular-reporting-components';\r\nimport { RegionMasterComponent } from './components/regionmaster/regionmaster.component';\r\nimport { LablereportComponent } from './components/lablereport/lablereport.component';\r\nimport { LablereportKartComponent } from './components/lablereportKart/lablereportKart.component';\r\nimport { LablereportDpComponent } from './components/lablereportDp/lablereportDp.component';\r\n\r\nimport { QRCodeModule } from 'angular2-qrcode';\r\nimport { ConfirmationDialogComponent } from './components/controls/confirmation-dialog.component'\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport {AwbinscanComponent} from './components/awbinscan/awbinscan.component';\r\nimport { AwboutscanComponent } from './components/awboutscan/awboutscan.component';\r\nimport { PrintService, ThermalPrintModule } from 'ng-thermal-print'; //add this line\r\nimport { NgxBarcodeModule } from 'ngx-barcode';\r\nimport { DeloveryOutScanNewComponent } from './components/delovery-out-scan-new/delovery-out-scan-new.component';\r\nimport { DeliveryrunsheetComponent } from './components/deliveryrunsheet/deliveryrunsheet.component'\r\nimport {DeliveryconfirmationComponent} from './components/deliveryconfirmation/deliveryconfirmation.component';\r\nimport { DilogRTOComponent } from './components/controls/dilog-rto.component';\r\nimport { AwbBookingDataComponent } from './components/awb-booking-data/awb-booking-data.component'\r\nimport { CustromerMasterComponent } from './components/custromer-master/custromer-master.component'\r\nimport {NgMultiSelectDropDownModule} from 'ng-multiselect-dropdown'\r\nimport { PrintManifestComponent } from './components/print-manifest/print-manifest.component';\r\nimport {MenifestreportComponent } from './components/menifestreport/menifestreport.component';\r\n\r\nimport { DialogMpsComponent } from './components/controls/dialog-mps.component';\r\nimport { OnlineorderdetailsComponent } from './components/onlineorderdetails/onlineorderdetails.component';\r\nimport { DivinedashboardComponent } from './components/divinedashboard/divinedashboard.component';\r\nimport { DrsReportComponent } from './components/drs-report/drs-report.component';\r\nimport {BookingvsScanComponent} from './components/bookingvs-scan/bookingvs-scan.component';\r\nimport { DialogmoneyrecieptComponent } from './components/controls/dialogmoneyreciept.component'\r\nimport { LablereportMRComponent } from './components/lablereportMR/lablereportMR.component';\r\nimport { DeliveryCommMasterComponent } from './components/delivery-comm-master/delivery-comm-master.component';\r\nimport { TariffRateMasterComponent } from './components/tariff-rate-master/tariff-rate-master.component';\r\nimport { DailogRateMasterComponent } from './components/controls/dailog-rate-master.component';\r\nimport { AccordionModule } from 'ngx-bootstrap/accordion';\r\nimport { DialogOtherChargeComponent } from './components/controls/dialog-other-charge.component';\r\nimport {viewpodComponent} from './components/ViewPod/viewpod.component'\r\nimport { AwbdivineComponent } from './components/awbdivine/awbdivine.component';\r\nimport { ManualAwbManifestComponent } from './components/manual-awb-manifest/manual-awb-manifest.component';\r\nimport { CustomerprintComponent } from './components/customerprint/customerprint.component';\r\nimport { SaleDashboardComponent } from './components/sale-dashboard/sale-dashboard.component';\r\nimport { QuotecustomermasterComponent } from './components/quotecustomermaster/quotecustomermaster.component'\r\nimport { QuoteCustomerprintComponent } from './components/quote-customerprint/quote-customerprint.component'\r\nimport { DialogQuoteOtherChargeComponent } from './components/controls/dialog-Quoteother-charge.component';\r\nimport { DailogQuoteRateMasterComponent } from './components/controls/dailog-Quoterate-master.component';\r\nimport { TeabookingdashboardComponent } from './components/teabookingdashboard/teabookingdashboard.component';\r\nimport { GeneratestickerComponent } from './components/generatesticker/generatesticker.component'\r\nimport { PrintstickerComponent } from './components/printsticker/printsticker.component';\r\nimport { NsLocationComponent } from './components/ns-location/ns-location.component';\r\nimport { NsPartnerComponent} from './components/ns-partner/ns-partner.component';\r\nimport { CustomerBookEmailComponent } from './components/customer-book-email/customer-book-email.component'\r\nimport { DialogMpsinscanComponent } from './components/controls/dialog-mpsinscan.component';\r\nimport { AwbhistoryComponent } from './components/awbhistory/awbhistory.component';\r\nimport { AwbTrackingComponent } from './components/awb-tracking/awb-tracking.component';\r\nimport {ProductstickerComponent} from './components/productsticker/productsticker.component';\r\nimport { VendorRateComponent } from './components/vendor-rate/vendor-rate.component';\r\nimport { BillingComponent } from './components/billing/billing.component';\r\nimport { PrintGatepassComponent } from './components/print-gatepass/print-gatepass.component';\r\nimport { LoadDashBoardComponent } from './components/load-dash-board/load-dash-board.component';\r\nimport { MultipletrackingComponent } from './components/multipletracking/multipletracking.component';\r\nimport { UpdateACNComponent } from './components/update-acn/update-acn.component';\r\nimport { AcnUpdateComponent } from './components/controls/acn-update.component';\r\nimport { BillPrintComponent } from './components/bill-print/bill-print.component';\r\nimport { EditAwbComponent } from './components/controls/edit-awb.component';\r\nimport { BillReportComponent } from './components/bill-report/bill-report.component';\r\nimport { WhatsapppodComponent } from './components/whatsapppod/whatsapppod.component';\r\nimport { WppoddialogComponent } from './components/controls/wppoddialog.component'\r\nimport { ReverseBookingComponent } from './components/reverse-booking/reverse-booking.component';\r\nimport { PicuprequestAckComponent } from './components/picuprequest-ack/picuprequest-ack.component';\r\nimport { TallyVoucherComponent } from './components/tally-voucher/tally-voucher.component';\r\nimport { VoucherPrintComponent } from './components/voucher-print/voucher-print.component';\r\nimport { TallyLedgerComponent } from './components/tally-ledger/tally-ledger.component';\r\nimport { TallyLedgerReportComponent } from './components/tally-ledger-report/tally-ledger-report.component';\r\nimport { UpdatePincodeComponent } from './components/update-pincode/update-pincode.component';\r\nimport { LoadDashBoardInComponent } from './components/load-dash-board-in/load-dash-board-in.component';\r\nimport { ExpensePaymentComponent } from './components/expense-payment/expense-payment.component';\r\nimport { DeliveryCommisionComponent } from './components/delivery-commision/delivery-commision.component';\r\nimport { PaytmCheckoutComponent } from './components/paytm-checkout/paytm-checkout.component';\r\nimport { CheckoutComponent } from './components/checkout.component';\r\nimport { DelvbillReportComponent } from './components/delvbill-report/delvbill-report.component';\r\nimport { DelvbillPrintComponent } from './components/delvbill-print/delvbill-print.component';\r\nimport { DeliveryCommWalletComponent } from './components/delivery-comm-wallet/delivery-comm-wallet.component';\r\nimport { DailogQuoteRatebaMasterComponent } from './components/controls/dailog-Quoterateba-master.component';\r\nimport { PaytmtransactionReportComponent } from './components/paytmtransaction-report/paytmtransaction-report.component';\r\nimport {ImageCropperModule } from 'ngx-image-cropper';\r\nimport { PickupDashboardComponent } from './components/pickup-dashboard/pickup-dashboard.component';\r\nimport { ConsReportComponent } from './components/cons-report/cons-report.component';\r\nimport { TableSearchPipe } from './pipes/table-search.pipe';\nimport { CustomerBillPaymentComponent } from './components/customer-bill-payment/customer-bill-payment.component'\r\n\r\n//import { PrintService } from 'ng-thermal-print'; //add this line\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n AppRoutingModule,\r\n NgxPrintModule,\r\n ThermalPrintModule,\r\n NgxBarcodeModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useClass: TranslateLanguageLoader\r\n }\r\n }),\r\n NgMultiSelectDropDownModule.forRoot(),\r\n NgxDatatableModule,\r\n OAuthModule.forRoot(),\r\n ToastaModule.forRoot(),\r\n TooltipModule.forRoot(),\r\n PopoverModule.forRoot(),\r\n BsDropdownModule.forRoot(),\r\n CarouselModule.forRoot(),\r\n ModalModule.forRoot(),\r\n BsDatepickerModule.forRoot(), \r\n ChartsModule,\r\n MatCommonModule, MatSidenavModule, MatRippleModule, MatButtonModule,\r\n MatMenuModule,\r\n MatToolbarModule,\r\n MatIconModule,\r\n MatCardModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatDatepickerModule, \r\n MatNativeDateModule,\r\n MatRadioModule,\r\n MatSelectModule,\r\n MatOptionModule,\r\n MatCheckboxModule,\r\n MatRadioModule,\r\n MatSlideToggleModule,\r\n QRCodeModule,\r\n MatDialogModule,\r\n MatButtonModule,\r\n AccordionModule.forRoot(),\r\n ImageCropperModule\r\n \r\n ],\r\n declarations: [\r\n AppComponent,\r\n LoginComponent,\r\n HomeComponent,\r\n CustomersComponent,\r\n ProductsComponent,\r\n OrdersComponent,\r\n SettingsComponent,\r\n UsersManagementComponent, UserInfoComponent, UserPreferencesComponent,\r\n RolesManagementComponent, RoleEditorComponent,\r\n AboutComponent,\r\n StateMasterComponent,\r\n PincodemasterComponent,\r\n CityMasterComponent,\r\n officemasterComponent,\r\n ProductmasterComponent,\r\n AwbseriesmasterComponent,\r\n ItemmasterComponent,\r\n VendormasterComponent,\r\n BadamasterComponent,\r\n ItemissueComponent,\r\n BookingcommisionComponent,\r\n AwbbookingComponent,\r\n AwbbaggingComponent,\r\n ItemreceiveComponent,\r\n DestinationdeliveryscheduleComponent,\r\n LastmiledeliveryhubsComponent,\r\n LoadmovementComponent,\r\n LoadmovementnewComponent,\r\n LoadreceivingprocessComponent,\r\n InscanComponent,\r\n DebagingComponent,\r\n OutscanComponent,\r\n DeliveryoutscanComponent,\r\n RegionMasterComponent,\r\n NotFoundComponent,\r\n NotificationsViewerComponent,\r\n SearchBoxComponent,\r\n StatisticsDemoComponent, TodoDemoComponent, BannerDemoComponent, ComboBoxComponent, AddressmasterComponent,\r\n EqualValidator,\r\n LastElementDirective,\r\n AutofocusDirective,\r\n BootstrapTabDirective,\r\n BootstrapToggleDirective,\r\n BootstrapSelectDirective,\r\n BootstrapDatepickerDirective,\r\n GroupByPipe,\r\n StringifyJsonPipe,\r\n WalletOrderPipe,\r\n LablereportComponent,\r\n LablereportKartComponent,\r\n LablereportDpComponent,\r\n ConfirmationDialogComponent,\r\n AwbinscanComponent,\r\n AwboutscanComponent,\r\n DeloveryOutScanNewComponent,\r\n DeliveryrunsheetComponent,\r\n DeliveryconfirmationComponent,\r\n DilogRTOComponent,\r\n AwbBookingDataComponent,\r\n CustromerMasterComponent,\r\n PrintManifestComponent,\r\n DialogMpsComponent,\r\n MenifestreportComponent,\r\n OnlineorderdetailsComponent,\r\n DivinedashboardComponent,\r\n DrsReportComponent,\r\n BookingvsScanComponent,\r\n LablereportMRComponent,\r\n DialogmoneyrecieptComponent,\r\n DeliveryCommMasterComponent,\r\n TariffRateMasterComponent,\r\n DailogRateMasterComponent,\r\n DialogOtherChargeComponent,\r\n viewpodComponent,\r\n AwbdivineComponent,\r\n ManualAwbManifestComponent,\r\n CustomerprintComponent,\r\n SaleDashboardComponent,\r\n QuotecustomermasterComponent,\r\n QuoteCustomerprintComponent,\r\n DialogQuoteOtherChargeComponent,\r\n DailogQuoteRateMasterComponent,\r\n TeabookingdashboardComponent,\r\n GeneratestickerComponent,\r\n PrintstickerComponent,\r\n NsLocationComponent,\r\n NsPartnerComponent,\r\n CustomerBookEmailComponent,\r\n DialogMpsinscanComponent,\r\n AwbhistoryComponent,\r\n AwbTrackingComponent,\r\n ProductstickerComponent,\r\n VendorRateComponent,\r\n BillingComponent,\r\n PrintGatepassComponent,\r\n LoadDashBoardComponent,\r\n MultipletrackingComponent,\r\n UpdateACNComponent,\r\n AcnUpdateComponent,\r\n BillPrintComponent,\r\n EditAwbComponent,\r\n BillReportComponent,\r\n WhatsapppodComponent,\r\n WppoddialogComponent,\r\n ReverseBookingComponent,\r\n PicuprequestAckComponent,\r\n TallyVoucherComponent,\r\n VoucherPrintComponent,\r\n TallyLedgerComponent,\r\n TallyLedgerReportComponent,\r\n UpdatePincodeComponent,\r\n LoadDashBoardInComponent,\r\n ExpensePaymentComponent,\r\n DeliveryCommisionComponent,\r\n PaytmCheckoutComponent,\r\n CheckoutComponent,\r\n DelvbillReportComponent,\r\n DelvbillPrintComponent,\r\n DeliveryCommWalletComponent,\r\n DailogQuoteRatebaMasterComponent,\r\n PaytmtransactionReportComponent,\r\n PickupDashboardComponent,\r\n ConsReportComponent,\r\n TableSearchPipe,\r\n CustomerBillPaymentComponent\r\n ],\r\n entryComponents: [\r\n ConfirmationDialogComponent,\r\n DilogRTOComponent,\r\n DialogMpsComponent,\r\n DialogmoneyrecieptComponent,\r\n DailogRateMasterComponent,\r\n DialogOtherChargeComponent,\r\n DialogQuoteOtherChargeComponent,\r\n DailogQuoteRateMasterComponent,\r\n DialogMpsinscanComponent,\r\n AcnUpdateComponent,\r\n EditAwbComponent,\r\n WppoddialogComponent,\r\n DailogQuoteRatebaMasterComponent\r\n\r\n ],\r\n exports: [\r\n MatCommonModule, MatSidenavModule, MatRippleModule, MatButtonModule,\r\n MatMenuModule,\r\n MatToolbarModule,\r\n MatIconModule,\r\n MatCardModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatRadioModule,\r\n MatSelectModule,\r\n MatOptionModule,\r\n MatSlideToggleModule,\r\n MatDialogModule,\r\n MatButtonModule\r\n ],\r\n providers: [\r\n { provide: ErrorHandler, useClass: AppErrorHandler },\r\n { provide: OAuthStorage, useClass: AuthStorage },\r\n AlertService,\r\n ThemeManager,\r\n ConfigurationService,\r\n AppTitleService,\r\n AppTranslationService,\r\n NotificationService,\r\n NotificationEndpoint,\r\n AccountService,\r\n AccountEndpoint,\r\n LocalStoreManager,\r\n Masters,\r\n MastersEndPoint,\r\n AppToolbarService,\r\n ThemeService,\r\n PrintService,\r\n DatePipe,\r\n WalletOrderPipe\r\n ],\r\n bootstrap: [AppComponent],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\r\n})\r\nexport class AppModule {\r\n}\r\n","module.exports = __webpack_public_path__ + \"ballet.png\";","module.exports = __webpack_public_path__ + \"banner1.png\";","module.exports = __webpack_public_path__ + \"banner2.png\";","module.exports = __webpack_public_path__ + \"banner3.png\";","module.exports = __webpack_public_path__ + \"banner4.png\";","module.exports = __webpack_public_path__ + \"logos-02.png\";","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\n/**\r\n * alertify\r\n * An unobtrusive customizable JavaScript notification system\r\n *\r\n * @author Fabien Doiron \r\n * @copyright Fabien Doiron 2013\r\n * @license MIT \r\n * @link http://fabien-d.github.com/alertify.js/\r\n * @module alertify\r\n * @version 0.3.11\r\n */\r\n(function (global, undefined) {\r\n\t\"use strict\";\r\n\r\n\tvar document = global.document,\r\n\t Alertify;\r\n\r\n\tAlertify = function () {\r\n\r\n\t\tvar _alertify = {},\r\n\t\t dialogs = {},\r\n\t\t isopen = false,\r\n\t\t keys = { ENTER: 13, ESC: 27, SPACE: 32 },\r\n\t\t queue = [],\r\n\t\t $, btnCancel, btnOK, btnReset, btnResetBack, btnFocus, elCallee, elCover, elDialog, elLog, form, input, getTransitionEvent;\r\n\r\n\t\t/**\r\n\t\t * Markup pieces\r\n\t\t * @type {Object}\r\n\t\t */\r\n\t\tdialogs = {\r\n\t\t\tbuttons : {\r\n\t\t\t\tholder : \"\",\r\n\t\t\t\tsubmit : \"\",\r\n\t\t\t\tok : \"\",\r\n\t\t\t\tcancel : \"\"\r\n\t\t\t},\r\n\t\t\tinput : \"
\",\r\n\t\t\tmessage : \"

{{message}}

\",\r\n\t\t\tlog : \"
{{message}}
\"\r\n\t\t};\r\n\r\n\t\t/**\r\n\t\t * Return the proper transitionend event\r\n\t\t * @return {String} Transition type string\r\n\t\t */\r\n\t\tgetTransitionEvent = function () {\r\n\t\t\tvar t,\r\n\t\t\t type,\r\n\t\t\t supported = false,\r\n\t\t\t el = document.createElement(\"fakeelement\"),\r\n\t\t\t transitions = {\r\n\t\t\t\t \"WebkitTransition\" : \"webkitTransitionEnd\",\r\n\t\t\t\t \"MozTransition\" : \"transitionend\",\r\n\t\t\t\t \"OTransition\" : \"otransitionend\",\r\n\t\t\t\t \"transition\" : \"transitionend\"\r\n\t\t\t };\r\n\r\n\t\t\tfor (t in transitions) {\r\n\t\t\t\tif (el.style[t] !== undefined) {\r\n\t\t\t\t\ttype = transitions[t];\r\n\t\t\t\t\tsupported = true;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn {\r\n\t\t\t\ttype : type,\r\n\t\t\t\tsupported : supported\r\n\t\t\t};\r\n\t\t};\r\n\r\n\t\t/**\r\n\t\t * Shorthand for document.getElementById()\r\n\t\t *\r\n\t\t * @param {String} id A specific element ID\r\n\t\t * @return {Object} HTML element\r\n\t\t */\r\n\t\t$ = function (id) {\r\n\t\t\treturn document.getElementById(id);\r\n\t\t};\r\n\r\n\t\t/**\r\n\t\t * Alertify private object\r\n\t\t * @type {Object}\r\n\t\t */\r\n\t\t_alertify = {\r\n\r\n\t\t\t/**\r\n\t\t\t * Labels object\r\n\t\t\t * @type {Object}\r\n\t\t\t */\r\n\t\t\tlabels : {\r\n\t\t\t\tok : \"OK\",\r\n\t\t\t\tcancel : \"Cancel\"\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Delay number\r\n\t\t\t * @type {Number}\r\n\t\t\t */\r\n\t\t\tdelay : 5000,\r\n\r\n\t\t\t/**\r\n\t\t\t * Whether buttons are reversed (default is secondary/primary)\r\n\t\t\t * @type {Boolean}\r\n\t\t\t */\r\n\t\t\tbuttonReverse : false,\r\n\r\n\t\t\t/**\r\n\t\t\t * Which button should be focused by default\r\n\t\t\t * @type {String}\t\"ok\" (default), \"cancel\", or \"none\"\r\n\t\t\t */\r\n\t\t\tbuttonFocus : \"ok\",\r\n\r\n\t\t\t/**\r\n\t\t\t * Set the transition event on load\r\n\t\t\t * @type {[type]}\r\n\t\t\t */\r\n\t\t\ttransition : undefined,\r\n\r\n\t\t\t/**\r\n\t\t\t * Set the proper button click events\r\n\t\t\t *\r\n\t\t\t * @param {Function} fn [Optional] Callback function\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\taddListeners : function (fn) {\r\n\t\t\t\tvar hasOK = (typeof btnOK !== \"undefined\"),\r\n\t\t\t\t hasCancel = (typeof btnCancel !== \"undefined\"),\r\n\t\t\t\t hasInput = (typeof input !== \"undefined\"),\r\n\t\t\t\t val = \"\",\r\n\t\t\t\t self = this,\r\n\t\t\t\t ok, cancel, common, key, reset;\r\n\r\n\t\t\t\t// ok event handler\r\n\t\t\t\tok = function (event) {\r\n\t\t\t\t\tif (typeof event.preventDefault !== \"undefined\") event.preventDefault();\r\n\t\t\t\t\tcommon(event);\r\n\t\t\t\t\tif (typeof input !== \"undefined\") val = input.value;\r\n\t\t\t\t\tif (typeof fn === \"function\") {\r\n\t\t\t\t\t\tif (typeof input !== \"undefined\") {\r\n\t\t\t\t\t\t\tfn(true, val);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse fn(true);\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// cancel event handler\r\n\t\t\t\tcancel = function (event) {\r\n\t\t\t\t\tif (typeof event.preventDefault !== \"undefined\") event.preventDefault();\r\n\t\t\t\t\tcommon(event);\r\n\t\t\t\t\tif (typeof fn === \"function\") fn(false);\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// common event handler (keyup, ok and cancel)\r\n\t\t\t\tcommon = function (event) {\r\n\t\t\t\t\tself.hide();\r\n\t\t\t\t\tself.unbind(document.body, \"keyup\", key);\r\n\t\t\t\t\tself.unbind(btnReset, \"focus\", reset);\r\n\t\t\t\t\tif (hasOK) self.unbind(btnOK, \"click\", ok);\r\n\t\t\t\t\tif (hasCancel) self.unbind(btnCancel, \"click\", cancel);\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// keyup handler\r\n\t\t\t\tkey = function (event) {\r\n\t\t\t\t\tvar keyCode = event.keyCode;\r\n\t\t\t\t\tif ((keyCode === keys.SPACE && !hasInput) || (hasInput && keyCode === keys.ENTER)) ok(event);\r\n\t\t\t\t\tif (keyCode === keys.ESC && hasCancel) cancel(event);\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// reset focus to first item in the dialog\r\n\t\t\t\treset = function (event) {\r\n\t\t\t\t\tif (hasInput) input.focus();\r\n\t\t\t\t\telse if (!hasCancel || self.buttonReverse) btnOK.focus();\r\n\t\t\t\t\telse btnCancel.focus();\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// handle reset focus link\r\n\t\t\t\t// this ensures that the keyboard focus does not\r\n\t\t\t\t// ever leave the dialog box until an action has\r\n\t\t\t\t// been taken\r\n\t\t\t\tthis.bind(btnReset, \"focus\", reset);\r\n\t\t\t\tthis.bind(btnResetBack, \"focus\", reset);\r\n\t\t\t\t// handle OK click\r\n\t\t\t\tif (hasOK) this.bind(btnOK, \"click\", ok);\r\n\t\t\t\t// handle Cancel click\r\n\t\t\t\tif (hasCancel) this.bind(btnCancel, \"click\", cancel);\r\n\t\t\t\t// listen for keys, Cancel => ESC\r\n\t\t\t\tthis.bind(document.body, \"keyup\", key);\r\n\t\t\t\tif (!this.transition.supported) {\r\n\t\t\t\t\tthis.setFocus();\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Bind events to elements\r\n\t\t\t *\r\n\t\t\t * @param {Object} el HTML Object\r\n\t\t\t * @param {Event} event Event to attach to element\r\n\t\t\t * @param {Function} fn Callback function\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\tbind : function (el, event, fn) {\r\n\t\t\t\tif (typeof el.addEventListener === \"function\") {\r\n\t\t\t\t\tel.addEventListener(event, fn, false);\r\n\t\t\t\t} else if (el.attachEvent) {\r\n\t\t\t\t\tel.attachEvent(\"on\" + event, fn);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Use alertify as the global error handler (using window.onerror)\r\n\t\t\t *\r\n\t\t\t * @return {boolean} success\r\n\t\t\t */\r\n\t\t\thandleErrors : function () {\r\n\t\t\t\tif (typeof global.onerror !== \"undefined\") {\r\n\t\t\t\t\tvar self = this;\r\n\t\t\t\t\tglobal.onerror = function (msg, url, line) {\r\n\t\t\t\t\t\tself.error(\"[\" + msg + \" on line \" + line + \" of \" + url + \"]\", 0);\r\n\t\t\t\t\t};\r\n\t\t\t\t\treturn true;\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Append button HTML strings\r\n\t\t\t *\r\n\t\t\t * @param {String} secondary The secondary button HTML string\r\n\t\t\t * @param {String} primary The primary button HTML string\r\n\t\t\t *\r\n\t\t\t * @return {String} The appended button HTML strings\r\n\t\t\t */\r\n\t\t\tappendButtons : function (secondary, primary) {\r\n\t\t\t\treturn this.buttonReverse ? primary + secondary : secondary + primary;\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Build the proper message box\r\n\t\t\t *\r\n\t\t\t * @param {Object} item Current object in the queue\r\n\t\t\t *\r\n\t\t\t * @return {String} An HTML string of the message box\r\n\t\t\t */\r\n\t\t\tbuild : function (item) {\r\n\t\t\t\tvar html = \"\",\r\n\t\t\t\t type = item.type,\r\n\t\t\t\t message = item.message,\r\n\t\t\t\t css = item.cssClass || \"\";\r\n\r\n\t\t\t\thtml += \"
\";\r\n\t\t\t\thtml += \"Reset Focus\";\r\n\r\n\t\t\t\tif (_alertify.buttonFocus === \"none\") html += \"\";\r\n\r\n\t\t\t\t// doens't require an actual form\r\n\t\t\t\tif (type === \"prompt\") html += \"
\";\r\n\r\n\t\t\t\thtml += \"
\";\r\n\t\t\t\thtml += dialogs.message.replace(\"{{message}}\", message);\r\n\r\n\t\t\t\tif (type === \"prompt\") html += dialogs.input;\r\n\r\n\t\t\t\thtml += dialogs.buttons.holder;\r\n\t\t\t\thtml += \"
\";\r\n\r\n\t\t\t\tif (type === \"prompt\") html += \"
\";\r\n\r\n\t\t\t\thtml += \"Reset Focus\";\r\n\t\t\t\thtml += \"
\";\r\n\r\n\t\t\t\tswitch (type) {\r\n\t\t\t\tcase \"confirm\":\r\n\t\t\t\t\thtml = html.replace(\"{{buttons}}\", this.appendButtons(dialogs.buttons.cancel, dialogs.buttons.ok));\r\n\t\t\t\t\thtml = html.replace(\"{{ok}}\", this.labels.ok).replace(\"{{cancel}}\", this.labels.cancel);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"prompt\":\r\n\t\t\t\t\thtml = html.replace(\"{{buttons}}\", this.appendButtons(dialogs.buttons.cancel, dialogs.buttons.submit));\r\n\t\t\t\t\thtml = html.replace(\"{{ok}}\", this.labels.ok).replace(\"{{cancel}}\", this.labels.cancel);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"alert\":\r\n\t\t\t\t\thtml = html.replace(\"{{buttons}}\", dialogs.buttons.ok);\r\n\t\t\t\t\thtml = html.replace(\"{{ok}}\", this.labels.ok);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\telDialog.className = \"alertify alertify-\" + type + \" \" + css;\r\n\t\t\t\telCover.className = \"alertify-cover\";\r\n\t\t\t\treturn html;\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Close the log messages\r\n\t\t\t *\r\n\t\t\t * @param {Object} elem HTML Element of log message to close\r\n\t\t\t * @param {Number} wait [optional] Time (in ms) to wait before automatically hiding the message, if 0 never hide\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\tclose : function (elem, wait) {\r\n\t\t\t\t// Unary Plus: +\"2\" === 2\r\n\t\t\t\tvar timer = (wait && !isNaN(wait)) ? +wait : this.delay,\r\n\t\t\t\t self = this,\r\n\t\t\t\t hideElement, transitionDone;\r\n\r\n\t\t\t\t// set click event on log messages\r\n\t\t\t\tthis.bind(elem, \"click\", function () {\r\n\t\t\t\t\thideElement(elem);\r\n\t\t\t\t});\r\n\t\t\t\t// Hide the dialog box after transition\r\n\t\t\t\t// This ensure it doens't block any element from being clicked\r\n\t\t\t\ttransitionDone = function (event) {\r\n\t\t\t\t\tevent.stopPropagation();\r\n\t\t\t\t\t// unbind event so function only gets called once\r\n\t\t\t\t\tself.unbind(this, self.transition.type, transitionDone);\r\n\t\t\t\t\t// remove log message\r\n\t\t\t\t\telLog.removeChild(this);\r\n\t\t\t\t\tif (!elLog.hasChildNodes()) elLog.className += \" alertify-logs-hidden\";\r\n\t\t\t\t};\r\n\t\t\t\t// this sets the hide class to transition out\r\n\t\t\t\t// or removes the child if css transitions aren't supported\r\n\t\t\t\thideElement = function (el) {\r\n\t\t\t\t\t// ensure element exists\r\n\t\t\t\t\tif (typeof el !== \"undefined\" && el.parentNode === elLog) {\r\n\t\t\t\t\t\t// whether CSS transition exists\r\n\t\t\t\t\t\tif (self.transition.supported) {\r\n\t\t\t\t\t\t\tself.bind(el, self.transition.type, transitionDone);\r\n\t\t\t\t\t\t\tel.className += \" alertify-log-hide\";\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\telLog.removeChild(el);\r\n\t\t\t\t\t\t\tif (!elLog.hasChildNodes()) elLog.className += \" alertify-logs-hidden\";\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t\t\t// never close (until click) if wait is set to 0\r\n\t\t\t\tif (wait === 0) return;\r\n\t\t\t\t// set timeout to auto close the log message\r\n\t\t\t\tsetTimeout(function () { hideElement(elem); }, timer);\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Create a dialog box\r\n\t\t\t *\r\n\t\t\t * @param {String} message The message passed from the callee\r\n\t\t\t * @param {String} type Type of dialog to create\r\n\t\t\t * @param {Function} fn [Optional] Callback function\r\n\t\t\t * @param {String} placeholder [Optional] Default value for prompt input field\r\n\t\t\t * @param {String} cssClass [Optional] Class(es) to append to dialog box\r\n\t\t\t *\r\n\t\t\t * @return {Object}\r\n\t\t\t */\r\n\t\t\tdialog : function (message, type, fn, placeholder, cssClass) {\r\n\t\t\t\t// set the current active element\r\n\t\t\t\t// this allows the keyboard focus to be resetted\r\n\t\t\t\t// after the dialog box is closed\r\n\t\t\t\telCallee = document.activeElement;\r\n\t\t\t\t// check to ensure the alertify dialog element\r\n\t\t\t\t// has been successfully created\r\n\t\t\t\tvar check = function () {\r\n\t\t\t\t\tif ((elLog && elLog.scrollTop !== null) && (elCover && elCover.scrollTop !== null)) return;\r\n\t\t\t\t\telse check();\r\n\t\t\t\t};\r\n\t\t\t\t// error catching\r\n\t\t\t\tif (typeof message !== \"string\") throw new Error(\"message must be a string\");\r\n\t\t\t\tif (typeof type !== \"string\") throw new Error(\"type must be a string\");\r\n\t\t\t\tif (typeof fn !== \"undefined\" && typeof fn !== \"function\") throw new Error(\"fn must be a function\");\r\n\t\t\t\t// initialize alertify if it hasn't already been done\r\n\t\t\t\tthis.init();\r\n\t\t\t\tcheck();\r\n\r\n\t\t\t\tqueue.push({ type: type, message: message, callback: fn, placeholder: placeholder, cssClass: cssClass });\r\n\t\t\t\tif (!isopen) this.setup();\r\n\r\n\t\t\t\treturn this;\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Extend the log method to create custom methods\r\n\t\t\t *\r\n\t\t\t * @param {String} type Custom method name\r\n\t\t\t *\r\n\t\t\t * @return {Function}\r\n\t\t\t */\r\n\t\t\textend : function (type) {\r\n\t\t\t\tif (typeof type !== \"string\") throw new Error(\"extend method must have exactly one paramter\");\r\n\t\t\t\treturn function (message, wait) {\r\n\t\t\t\t\tthis.log(message, type, wait);\r\n\t\t\t\t\treturn this;\r\n\t\t\t\t};\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Hide the dialog and rest to defaults\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\thide : function () {\r\n\t\t\t\tvar transitionDone,\r\n\t\t\t\t self = this;\r\n\t\t\t\t// remove reference from queue\r\n\t\t\t\tqueue.splice(0,1);\r\n\t\t\t\t// if items remaining in the queue\r\n\t\t\t\tif (queue.length > 0) this.setup(true);\r\n\t\t\t\telse {\r\n\t\t\t\t\tisopen = false;\r\n\t\t\t\t\t// Hide the dialog box after transition\r\n\t\t\t\t\t// This ensure it doens't block any element from being clicked\r\n\t\t\t\t\ttransitionDone = function (event) {\r\n\t\t\t\t\t\tevent.stopPropagation();\r\n\t\t\t\t\t\t// unbind event so function only gets called once\r\n\t\t\t\t\t\tself.unbind(elDialog, self.transition.type, transitionDone);\r\n\t\t\t\t\t};\r\n\t\t\t\t\t// whether CSS transition exists\r\n\t\t\t\t\tif (this.transition.supported) {\r\n\t\t\t\t\t\tthis.bind(elDialog, this.transition.type, transitionDone);\r\n\t\t\t\t\t\telDialog.className = \"alertify alertify-hide alertify-hidden\";\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\telDialog.className = \"alertify alertify-hide alertify-hidden alertify-isHidden\";\r\n\t\t\t\t\t}\r\n\t\t\t\t\telCover.className = \"alertify-cover alertify-cover-hidden\";\r\n\t\t\t\t\t// set focus to the last element or body\r\n\t\t\t\t\t// after the dialog is closed\r\n\t\t\t\t\telCallee.focus();\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Initialize Alertify\r\n\t\t\t * Create the 2 main elements\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\tinit : function () {\r\n\t\t\t\t// ensure legacy browsers support html5 tags\r\n\t\t\t\tdocument.createElement(\"nav\");\r\n\t\t\t\tdocument.createElement(\"article\");\r\n\t\t\t\tdocument.createElement(\"section\");\r\n\t\t\t\t// cover\r\n\t\t\t\tif ($(\"alertify-cover\") == null) {\r\n\t\t\t\t\telCover = document.createElement(\"div\");\r\n\t\t\t\t\telCover.setAttribute(\"id\", \"alertify-cover\");\r\n\t\t\t\t\telCover.className = \"alertify-cover alertify-cover-hidden\";\r\n\t\t\t\t\tdocument.body.appendChild(elCover);\r\n\t\t\t\t}\r\n\t\t\t\t// main element\r\n\t\t\t\tif ($(\"alertify\") == null) {\r\n\t\t\t\t\tisopen = false;\r\n\t\t\t\t\tqueue = [];\r\n\t\t\t\t\telDialog = document.createElement(\"section\");\r\n\t\t\t\t\telDialog.setAttribute(\"id\", \"alertify\");\r\n\t\t\t\t\telDialog.className = \"alertify alertify-hidden\";\r\n\t\t\t\t\tdocument.body.appendChild(elDialog);\r\n\t\t\t\t}\r\n\t\t\t\t// log element\r\n\t\t\t\tif ($(\"alertify-logs\") == null) {\r\n\t\t\t\t\telLog = document.createElement(\"section\");\r\n\t\t\t\t\telLog.setAttribute(\"id\", \"alertify-logs\");\r\n\t\t\t\t\telLog.className = \"alertify-logs alertify-logs-hidden\";\r\n\t\t\t\t\tdocument.body.appendChild(elLog);\r\n\t\t\t\t}\r\n\t\t\t\t// set tabindex attribute on body element\r\n\t\t\t\t// this allows script to give it focus\r\n\t\t\t\t// after the dialog is closed\r\n\t\t\t\tdocument.body.setAttribute(\"tabindex\", \"0\");\r\n\t\t\t\t// set transition type\r\n\t\t\t\tthis.transition = getTransitionEvent();\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Show a new log message box\r\n\t\t\t *\r\n\t\t\t * @param {String} message The message passed from the callee\r\n\t\t\t * @param {String} type [Optional] Optional type of log message\r\n\t\t\t * @param {Number} wait [Optional] Time (in ms) to wait before auto-hiding the log\r\n\t\t\t *\r\n\t\t\t * @return {Object}\r\n\t\t\t */\r\n\t\t\tlog : function (message, type, wait) {\r\n\t\t\t\t// check to ensure the alertify dialog element\r\n\t\t\t\t// has been successfully created\r\n\t\t\t\tvar check = function () {\r\n\t\t\t\t\tif (elLog && elLog.scrollTop !== null) return;\r\n\t\t\t\t\telse check();\r\n\t\t\t\t};\r\n\t\t\t\t// initialize alertify if it hasn't already been done\r\n\t\t\t\tthis.init();\r\n\t\t\t\tcheck();\r\n\r\n\t\t\t\telLog.className = \"alertify-logs\";\r\n\t\t\t\tthis.notify(message, type, wait);\r\n\t\t\t\treturn this;\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Add new log message\r\n\t\t\t * If a type is passed, a class name \"alertify-log-{type}\" will get added.\r\n\t\t\t * This allows for custom look and feel for various types of notifications.\r\n\t\t\t *\r\n\t\t\t * @param {String} message The message passed from the callee\r\n\t\t\t * @param {String} type [Optional] Type of log message\r\n\t\t\t * @param {Number} wait [Optional] Time (in ms) to wait before auto-hiding\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\tnotify : function (message, type, wait) {\r\n\t\t\t\tvar log = document.createElement(\"article\");\r\n\t\t\t\tlog.className = \"alertify-log\" + ((typeof type === \"string\" && type !== \"\") ? \" alertify-log-\" + type : \"\");\r\n\t\t\t\tlog.innerHTML = message;\r\n\t\t\t\t// append child\r\n\t\t\t\telLog.appendChild(log);\r\n\t\t\t\t// triggers the CSS animation\r\n\t\t\t\tsetTimeout(function() { log.className = log.className + \" alertify-log-show\"; }, 50);\r\n\t\t\t\tthis.close(log, wait);\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Set properties\r\n\t\t\t *\r\n\t\t\t * @param {Object} args Passing parameters\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\tset : function (args) {\r\n\t\t\t\tvar k;\r\n\t\t\t\t// error catching\r\n\t\t\t\tif (typeof args !== \"object\" && args instanceof Array) throw new Error(\"args must be an object\");\r\n\t\t\t\t// set parameters\r\n\t\t\t\tfor (k in args) {\r\n\t\t\t\t\tif (args.hasOwnProperty(k)) {\r\n\t\t\t\t\t\tthis[k] = args[k];\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Common place to set focus to proper element\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\tsetFocus : function () {\r\n\t\t\t\tif (input) {\r\n\t\t\t\t\tinput.focus();\r\n\t\t\t\t\tinput.select();\r\n\t\t\t\t}\r\n\t\t\t\telse btnFocus.focus();\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Initiate all the required pieces for the dialog box\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\tsetup : function (fromQueue) {\r\n\t\t\t\tvar item = queue[0],\r\n\t\t\t\t self = this,\r\n\t\t\t\t transitionDone;\r\n\r\n\t\t\t\t// dialog is open\r\n\t\t\t\tisopen = true;\r\n\t\t\t\t// Set button focus after transition\r\n\t\t\t\ttransitionDone = function (event) {\r\n\t\t\t\t\tevent.stopPropagation();\r\n\t\t\t\t\tself.setFocus();\r\n\t\t\t\t\t// unbind event so function only gets called once\r\n\t\t\t\t\tself.unbind(elDialog, self.transition.type, transitionDone);\r\n\t\t\t\t};\r\n\t\t\t\t// whether CSS transition exists\r\n\t\t\t\tif (this.transition.supported && !fromQueue) {\r\n\t\t\t\t\tthis.bind(elDialog, this.transition.type, transitionDone);\r\n\t\t\t\t}\r\n\t\t\t\t// build the proper dialog HTML\r\n\t\t\t\telDialog.innerHTML = this.build(item);\r\n\t\t\t\t// assign all the common elements\r\n\t\t\t\tbtnReset = $(\"alertify-resetFocus\");\r\n\t\t\t\tbtnResetBack = $(\"alertify-resetFocusBack\");\r\n\t\t\t\tbtnOK = $(\"alertify-ok\") || undefined;\r\n\t\t\t\tbtnCancel = $(\"alertify-cancel\") || undefined;\r\n\t\t\t\tbtnFocus = (_alertify.buttonFocus === \"cancel\") ? btnCancel : ((_alertify.buttonFocus === \"none\") ? $(\"alertify-noneFocus\") : btnOK),\r\n\t\t\t\tinput = $(\"alertify-text\") || undefined;\r\n\t\t\t\tform = $(\"alertify-form\") || undefined;\r\n\t\t\t\t// add placeholder value to the input field\r\n\t\t\t\tif (typeof item.placeholder === \"string\" && item.placeholder !== \"\") input.value = item.placeholder;\r\n\t\t\t\tif (fromQueue) this.setFocus();\r\n\t\t\t\tthis.addListeners(item.callback);\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Unbind events to elements\r\n\t\t\t *\r\n\t\t\t * @param {Object} el HTML Object\r\n\t\t\t * @param {Event} event Event to detach to element\r\n\t\t\t * @param {Function} fn Callback function\r\n\t\t\t *\r\n\t\t\t * @return {undefined}\r\n\t\t\t */\r\n\t\t\tunbind : function (el, event, fn) {\r\n\t\t\t\tif (typeof el.removeEventListener === \"function\") {\r\n\t\t\t\t\tel.removeEventListener(event, fn, false);\r\n\t\t\t\t} else if (el.detachEvent) {\r\n\t\t\t\t\tel.detachEvent(\"on\" + event, fn);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\talert : function (message, fn, cssClass) { _alertify.dialog(message, \"alert\", fn, \"\", cssClass); return this; },\r\n\t\t\tconfirm : function (message, fn, cssClass) { _alertify.dialog(message, \"confirm\", fn, \"\", cssClass); return this; },\r\n\t\t\textend : _alertify.extend,\r\n\t\t\tinit : _alertify.init,\r\n\t\t\tlog : function (message, type, wait) { _alertify.log(message, type, wait); return this; },\r\n\t\t\tprompt : function (message, fn, placeholder, cssClass) { _alertify.dialog(message, \"prompt\", fn, placeholder, cssClass); return this; },\r\n\t\t\tsuccess : function (message, wait) { _alertify.log(message, \"success\", wait); return this; },\r\n\t\t\terror : function (message, wait) { _alertify.log(message, \"error\", wait); return this; },\r\n\t\t\tset : function (args) { _alertify.set(args); },\r\n\t\t\tlabels : _alertify.labels,\r\n\t\t\tdebug : _alertify.handleErrors\r\n\t\t};\r\n\t};\r\n\r\n\t// AMD and window support\r\n\tif (typeof define === \"function\") {\r\n\t\tdefine([], function () { return new Alertify(); });\r\n\t} else if (typeof global.alertify === \"undefined\") {\r\n\t\tglobal.alertify = new Alertify();\r\n\t}\r\n\r\n}(window));\r\n","export default \"#deliveryrunsheet {\\n font-family: Arial, Helvetica, sans-serif;\\n /*border-collapse: collapse;*/\\n width: 100%;\\n}\\n\\n#deliveryrunshee td, #deliveryrunshee th {\\n /* border: 1px solid #000;*/\\n padding: 3px;\\n}\\n\\n#deliveryrunshee th {\\n padding-top: 12px;\\n padding-bottom: 12px;\\n text-align: left;\\n color: #fff;\\n}\\n\\n.center {\\n text-align: center;\\n}\\n\\n.right {\\n text-align: right;\\n}\\n\\n.color {\\n color: #000;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9WaWV3UG9kL0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXFZpZXdQb2RcXHZpZXdwb2QuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvVmlld1BvZC92aWV3cG9kLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0UseUNBQUE7RUFDQSw2QkFBQTtFQUNBLFdBQUE7QUNBRjs7QURHQTtFQUNDLDJCQUFBO0VBQ0MsWUFBQTtBQ0FGOztBRE9BO0VBQ0UsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0VBRUEsV0FBQTtBQ0xGOztBRE9BO0VBQ0Usa0JBQUE7QUNKRjs7QURPQTtFQUNFLGlCQUFBO0FDSkY7O0FETUE7RUFDRSxXQUFBO0FDSEYiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL1ZpZXdQb2Qvdmlld3BvZC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4jZGVsaXZlcnlydW5zaGVldCB7XHJcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgLypib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyovXHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbiNkZWxpdmVyeXJ1bnNoZWUgdGQsICNkZWxpdmVyeXJ1bnNoZWUgdGgge1xyXG4gLyogYm9yZGVyOiAxcHggc29saWQgIzAwMDsqL1xyXG4gIHBhZGRpbmc6IDNweDtcclxufVxyXG5cclxuLy8gI2RlbGl2ZXJ5cnVuc2hlZSB0cjpudGgtY2hpbGQoZXZlbil7YmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjt9XHJcblxyXG4vLyAjZGVsaXZlcnlydW5zaGVlIHRyOmhvdmVyIHtiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO31cclxuXHJcbiNkZWxpdmVyeXJ1bnNoZWUgdGgge1xyXG4gIHBhZGRpbmctdG9wOiAxMnB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogIzE0MmM0YztcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG4uY2VudGVye1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnJpZ2h0e1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcbi5jb2xvcntcclxuICBjb2xvcjogIzAwMDtcclxufVxyXG4iLCIjZGVsaXZlcnlydW5zaGVldCB7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAvKmJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7Ki9cbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNkZWxpdmVyeXJ1bnNoZWUgdGQsICNkZWxpdmVyeXJ1bnNoZWUgdGgge1xuICAvKiBib3JkZXI6IDFweCBzb2xpZCAjMDAwOyovXG4gIHBhZGRpbmc6IDNweDtcbn1cblxuI2RlbGl2ZXJ5cnVuc2hlZSB0aCB7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uY29sb3Ige1xuICBjb2xvcjogIzAwMDtcbn0iXX0= */\"","import { Component, OnInit, ViewChild, ElementRef, TemplateRef } from '@angular/core';\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { QRCodeComponent } from 'angular2-qrcode'\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ConfigurationService } from 'src/app/services/configuration.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { isNullOrUndefined } from 'util';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-viewpod',\r\n templateUrl: './viewpod.component.html',\r\n styleUrls: ['./viewpod.component.scss']\r\n})\r\nexport class viewpodComponent implements OnInit {\r\n\r\n appLogo = require('../../assets/images/logos-02.png');\r\n deliberyrunsheet: runsheet[] = [];\r\n drsno: string = \"\";\r\n deliverydate: any;\r\n deliveryrunsheet: any;\r\n delofficename: any;\r\n officecode: any;\r\n delboyname: any;\r\n delboymob: any;\r\n awbno: any;\r\n elementType = 'svg';\r\n width = 2;\r\n height = 25;\r\n marginLeft = -20;\r\n textMargin = 1;\r\n imageURL = \"\";\r\n drsdate = \"\";\r\n recievername = \"\";\r\n Recievedon = \"\";\r\n\r\n constructor(private transaction: TransactionService, private alertService: AlertService, private configurations: ConfigurationService, private authService: AuthService, public router: ActivatedRoute, private _router: Router) {\r\n\r\n\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss');\r\n ngOnInit() {\r\n this.deliverydate = this.datee;\r\n this.awbno = '';\r\n this.router.queryParams \r\n .subscribe(params => {\r\n this.drsno = params.drsno;\r\n this.awbno = params.awbno\r\n }\r\n );\r\n if (this.drsno.length > 0) {\r\n\r\n this.transaction.Getgendrsweb(this.drsno).subscribe(result => this.onGetSucessdrsData(result), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n loaddata() {\r\n\r\n }\r\n\r\n onGetSucessdrsData(result: any) {\r\n var tmp = result\r\n var rn: runsheet = new runsheet()\r\n for (let i = 0; i < result.length; i++) {\r\n if (!isNullOrUndefined(this.awbno)) {\r\n if (this.awbno != result[i].awbno) {\r\n continue;\r\n }\r\n }\r\n this.delofficename = result[i].scanOfficeid + \" | Code: \" + result[i].officeCode;\r\n this.officecode = result[i].officeCode;\r\n rn.bookingbranch = result[i].officename;\r\n this.deliveryrunsheet = result[i].drsno;//\r\n var drsdate_ = result[i].drsdate.substring(0, 10);\r\n var reversedText = \"\";\r\n const chars = drsdate_.split(\"-\")\r\n for (let i = chars.length - 1; i >= 0; i--) {\r\n if (reversedText == '') {\r\n reversedText = reversedText + chars[i];\r\n }\r\n else {\r\n reversedText = reversedText +\"-\"+ chars[i];\r\n }\r\n \r\n }\r\n this.drsdate = reversedText\r\n this.delboyname = result[i].name + \" | Code: NA \" \r\n this.delboymob = result[i].mobileno;\r\n var tmpstring = isNullOrUndefined(result[i].signImage) ? \" \" : result[i].signImage;\r\n this.imageURL = \"data:image/png;base64,\" + tmpstring;\r\n this.recievername = result[i].reciverName\r\n this.Recievedon = \"Date::\" + reversedText + \", Time::\"+result[i].createdOn.split(\"T\")[1].substring(0,5)\r\n rn = new runsheet();\r\n rn.consignmeename = result[i].consName \r\n rn.Consaddress = result[i].houseNo + \" , \" + result[i].streetName + \" , \" + result[i].city + \"-\" + result[i].pincode;\r\n rn.consignmentno = result[i].awbno;\r\n rn.consMobileno = result[i].consMobileno\r\n rn.srlno = (i + 1).toString();\r\n rn.Product = result[i].productType + \" \" + result[i].product\r\n rn.pieces = result[i].pieces.toString()\r\n rn.weight = result[i].awbWeight.toString();\r\n if (this.deliberyrunsheet.length == 0) {\r\n this.deliberyrunsheet[0] = rn;\r\n }\r\n else {\r\n this.deliberyrunsheet.push(rn);\r\n }\r\n\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n\r\n\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n\r\n}\r\nexport class runsheet {\r\n public srlno: string\r\n public consignmentno: string\r\n public bookingbranch: string\r\n public weight: string\r\n public consignmeename: string\r\n public Product: string\r\n public pieces: string\r\n public Consaddress: string\r\n public consMobileno: string\r\n}\r\n\r\n\r\n","export default \".pageHeader {\\n margin-bottom: 30px;\\n}\\n\\n.reduced-font {\\n line-height: 1.4;\\n}\\n\\n.bg-features {\\n border-radius: 0.25rem;\\n padding: 0.5rem;\\n margin-bottom: 0.5rem;\\n}\\n\\n.bg-features ul {\\n position: relative;\\n z-index: 100;\\n}\\n\\n.bg-features .logo {\\n font-size: 200px;\\n position: absolute;\\n top: 2rem;\\n right: 10px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9hYm91dC9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxhYm91dFxcYWJvdXQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYWJvdXQvYWJvdXQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxtQkFBQTtBQ0NKOztBREVBO0VBQ0ksZ0JBQUE7QUNDSjs7QURFQTtFQUNJLHNCQUFBO0VBQ0EsZUFBQTtFQUNBLHFCQUFBO0FDQ0o7O0FERUE7RUFDSSxrQkFBQTtFQUNBLFlBQUE7QUNDSjs7QURFQTtFQUNJLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsV0FBQTtBQ0NKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9hYm91dC9hYm91dC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5wYWdlSGVhZGVyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5yZWR1Y2VkLWZvbnQge1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLmJnLWZlYXR1cmVzIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XHJcbiAgICBwYWRkaW5nOiAwLjVyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbn1cclxuXHJcbi5iZy1mZWF0dXJlcyB1bCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbn1cclxuXHJcbi5iZy1mZWF0dXJlcyAubG9nbyB7XHJcbiAgICBmb250LXNpemU6IDIwMHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAycmVtO1xyXG4gICAgcmlnaHQ6IDEwcHg7XHJcbn1cclxuIiwiLnBhZ2VIZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4ucmVkdWNlZC1mb250IHtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLmJnLWZlYXR1cmVzIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5iZy1mZWF0dXJlcyB1bCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAwO1xufVxuXG4uYmctZmVhdHVyZXMgLmxvZ28ge1xuICBmb250LXNpemU6IDIwMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMnJlbTtcbiAgcmlnaHQ6IDEwcHg7XG59Il19 */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'about',\r\n templateUrl: './about.component.html',\r\n styleUrls: ['./about.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class AboutComponent {\r\n}\r\n","export default \".app-container.app-component {\\n height: 100%;\\n}\\n\\n.footer-height.app-component {\\n height: 40px;\\n}\\n\\nfooter.app-component {\\n width: 100%;\\n height: 40px;\\n line-height: 40px;\\n background-color: #f5f5f5;\\n}\\n\\n.navbar-brand.app-component > img {\\n height: 30px;\\n}\\n\\n.navbar.app-component .nav-pills > .active > a,\\n.navbar.app-component .nav-pills > .active > a:hover,\\n.navbar.app-component .nav-pills > .active > a:focus {\\n background-color: #efefef;\\n color: #808080;\\n}\\n\\n.navbar.app-component .nav-pills > li > a {\\n font-weight: bold;\\n padding-top: 0.4rem;\\n padding-bottom: 0.4rem;\\n color: white;\\n}\\n\\n.dropdown-menu > li > a {\\n font-weight: bold;\\n color: white;\\n}\\n\\n.navbar.app-component .nav-link,\\n.navbar.app-component .navbar-text {\\n color: white;\\n}\\n\\n@media screen and (max-width: 991px) {\\n .navbar.app-component .nav-pills > li + li {\\n margin-left: 0;\\n margin-top: 1px;\\n }\\n}\\n\\n@media screen and (min-width: 992px) {\\n .navbar.app-component .nav-pills > li + li {\\n margin-left: 2px;\\n }\\n}\\n\\n.prebootShow.app-component {\\n opacity: 1 !important;\\n}\\n\\n.prebootStep.app-component {\\n opacity: 0;\\n transition: 0.5s ease-in-out all;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxhcHAuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYXBwLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0ksWUFBQTtBQ0RKOztBRE1BO0VBQ0ksWUFUVztBQ01mOztBRE1BO0VBQ0ksV0FBQTtFQUNBLFlBZFc7RUFlWCxpQkFmVztFQWdCWCx5QkFBQTtBQ0hKOztBRE9BO0VBQ0ksWUFBQTtBQ0pKOztBRE9BOzs7RUFHSSx5QkFBQTtFQUNBLGNBQUE7QUNKSjs7QURRQTtFQUNFLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxzQkFBQTtFQUNBLFlBQUE7QUNMRjs7QURPQTtFQUNFLGlCQUFBO0VBR0EsWUFBQTtBQ05GOztBRFFBOztFQUVJLFlBQUE7QUNMSjs7QURTQTtFQUNJO0lBQ0ksY0FBQTtJQUNBLGVBQUE7RUNOTjtBQUNGOztBRFNBO0VBQ0k7SUFDSSxnQkFBQTtFQ1BOO0FBQ0Y7O0FEV0E7RUFDSSxxQkFBQTtBQ1RKOztBRFlBO0VBQ0ksVUFBQTtFQUNBLGdDQUFBO0FDVEoiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2FwcC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIiRmb290ZXJIZWlnaHQ6IDQwcHg7XHJcblxyXG4uYXBwLWNvbnRhaW5lci5hcHAtY29tcG9uZW50IHtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuXHJcblxyXG4uZm9vdGVyLWhlaWdodC5hcHAtY29tcG9uZW50IHtcclxuICAgIGhlaWdodDogJGZvb3RlckhlaWdodDtcclxufVxyXG5cclxuZm9vdGVyLmFwcC1jb21wb25lbnQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6ICRmb290ZXJIZWlnaHQ7XHJcbiAgICBsaW5lLWhlaWdodDogJGZvb3RlckhlaWdodDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XHJcbn1cclxuXHJcblxyXG4ubmF2YmFyLWJyYW5kLmFwcC1jb21wb25lbnQgPiBpbWcge1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG59XHJcblxyXG4ubmF2YmFyLmFwcC1jb21wb25lbnQgLm5hdi1waWxscyA+IC5hY3RpdmUgPiBhLFxyXG4ubmF2YmFyLmFwcC1jb21wb25lbnQgLm5hdi1waWxscyA+IC5hY3RpdmUgPiBhOmhvdmVyLFxyXG4ubmF2YmFyLmFwcC1jb21wb25lbnQgLm5hdi1waWxscyA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XHJcbiAgICBjb2xvcjogIzgwODA4MDtcclxufVxyXG5cclxuXHJcbi5uYXZiYXIuYXBwLWNvbXBvbmVudCAubmF2LXBpbGxzID4gbGkgPiBhIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBwYWRkaW5nLXRvcDogMC40cmVtO1xyXG4gIHBhZGRpbmctYm90dG9tOiAwLjRyZW07XHJcbiAgY29sb3I6IHdoaXRlXHJcbn1cclxuLmRyb3Bkb3duLW1lbnUgID4gbGkgPiBhIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICAvL3BhZGRpbmctdG9wOiAwLjRyZW07XHJcbiAvLyBwYWRkaW5nLWJvdHRvbTogMC40cmVtO1xyXG4gIGNvbG9yOiB3aGl0ZVxyXG59XHJcbi5uYXZiYXIuYXBwLWNvbXBvbmVudCAubmF2LWxpbmssXHJcbi5uYXZiYXIuYXBwLWNvbXBvbmVudCAubmF2YmFyLXRleHQge1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcclxuICAgIC5uYXZiYXIuYXBwLWNvbXBvbmVudCAubmF2LXBpbGxzID4gbGkgKyBsaSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gICAgLm5hdmJhci5hcHAtY29tcG9uZW50IC5uYXYtcGlsbHMgPiBsaSArIGxpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnByZWJvb3RTaG93LmFwcC1jb21wb25lbnQge1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucHJlYm9vdFN0ZXAuYXBwLWNvbXBvbmVudCB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNpdGlvbjogLjVzIGVhc2UtaW4tb3V0IGFsbDtcclxufVxyXG4iLCIuYXBwLWNvbnRhaW5lci5hcHAtY29tcG9uZW50IHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZm9vdGVyLWhlaWdodC5hcHAtY29tcG9uZW50IHtcbiAgaGVpZ2h0OiA0MHB4O1xufVxuXG5mb290ZXIuYXBwLWNvbXBvbmVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xufVxuXG4ubmF2YmFyLWJyYW5kLmFwcC1jb21wb25lbnQgPiBpbWcge1xuICBoZWlnaHQ6IDMwcHg7XG59XG5cbi5uYXZiYXIuYXBwLWNvbXBvbmVudCAubmF2LXBpbGxzID4gLmFjdGl2ZSA+IGEsXG4ubmF2YmFyLmFwcC1jb21wb25lbnQgLm5hdi1waWxscyA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuLm5hdmJhci5hcHAtY29tcG9uZW50IC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gIGNvbG9yOiAjODA4MDgwO1xufVxuXG4ubmF2YmFyLmFwcC1jb21wb25lbnQgLm5hdi1waWxscyA+IGxpID4gYSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nLXRvcDogMC40cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC40cmVtO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLm5hdmJhci5hcHAtY29tcG9uZW50IC5uYXYtbGluayxcbi5uYXZiYXIuYXBwLWNvbXBvbmVudCAubmF2YmFyLXRleHQge1xuICBjb2xvcjogd2hpdGU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5uYXZiYXIuYXBwLWNvbXBvbmVudCAubmF2LXBpbGxzID4gbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMXB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAubmF2YmFyLmFwcC1jb21wb25lbnQgLm5hdi1waWxscyA+IGxpICsgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gIH1cbn1cbi5wcmVib290U2hvdy5hcHAtY29tcG9uZW50IHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4ucHJlYm9vdFN0ZXAuYXBwLWNvbXBvbmVudCB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IDAuNXMgZWFzZS1pbi1vdXQgYWxsO1xufSJdfQ== */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, ViewEncapsulation, OnInit, OnDestroy, ViewChildren, AfterViewInit, QueryList, ElementRef } from '@angular/core';\r\nimport { Router, NavigationStart } from '@angular/router';\r\nimport { ToastaService, ToastaConfig, ToastOptions, ToastData } from 'ngx-toasta';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { MatMenuModule} from '@angular/material/menu'\r\nimport { AppToolbarService,AppMenuItem} from '../app-toolbar/app-toolbar.service'\r\nimport { AlertService, AlertDialog, DialogType, AlertCommand, AlertMessage, MessageSeverity } from '../services/alert.service';\r\nimport { NotificationService } from '../services/notification.service';\r\nimport { AppTranslationService } from '../services/app-translation.service';\r\nimport { AccountService } from '../services/account.service';\r\nimport { LocalStoreManager } from '../services/local-store-manager.service';\r\nimport { AppTitleService } from '../services/app-title.service';\r\nimport { AuthService } from '../services/auth.service';\r\nimport { ConfigurationService } from '../services/configuration.service';\r\nimport { Permission } from '../models/permission.model';\r\nimport { LoginComponent } from '../components/login/login.component';\r\nimport { Masters } from '../services/masters.service';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { BADAMaster } from './badamaster/badamaster.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n\r\n\r\nconst alertify: any = require('../assets/scripts/alertify.js');\r\n\r\ndeclare var jQuery :any\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent implements OnInit, AfterViewInit {\r\n\r\n isAppLoaded: boolean;\r\n isUserLoggedIn: boolean;\r\n shouldShowLoginModal: boolean;\r\n removePrebootScreen: boolean;\r\n newNotificationCount = 0;\r\n appTitle = '';\r\n appLogo = require('../assets/images/logos-02.png');\r\n public officeName: string = '';\r\n public departmentname: string = '';\r\n public officeanddepartment: string = '';\r\n stickyToasties: number[] = [];\r\n public IsBaDalogin: boolean = false;\r\n public BaType: string ='';\r\n public ShowBookingMenuOnly: boolean = false;\r\n public Officecode: string = \"\";\r\n \r\n\r\n dataLoadingConsecutiveFailures = 0;\r\n notificationsLoadingSubscription: any;\r\n\r\n @ViewChildren('loginModal,loginControl')\r\n modalLoginControls: QueryList;\r\n\r\n loginModal: ModalDirective;\r\n loginControl: LoginComponent;\r\n\r\n gT = (key: string | Array, interpolateParams?: Object) => this.translationService.getTranslation(key, interpolateParams);\r\n\r\n get notificationsTitle() {\r\n if (this.newNotificationCount) {\r\n return `${this.gT('app.Notifications')} (${this.newNotificationCount} ${this.gT('app.New')})`;\r\n } else {\r\n return this.gT('app.Notifications');\r\n }\r\n }\r\n\r\n\r\n constructor(\r\n public storageManager: LocalStoreManager,\r\n private toastaService: ToastaService,\r\n private toastaConfig: ToastaConfig,\r\n private accountService: AccountService,\r\n private alertService: AlertService,\r\n private notificationService: NotificationService,\r\n private appTitleService: AppTitleService,\r\n private authService: AuthService,\r\n private translationService: AppTranslationService,\r\n public configurations: ConfigurationService,\r\n public router: Router,\r\n private master:Masters ) {\r\n\r\n storageManager.initialiseStorageSyncListener();\r\n\r\n this.toastaConfig.theme = 'bootstrap';\r\n this.toastaConfig.position = 'bottom-right';\r\n this.toastaConfig.limit = 2;\r\n this.toastaConfig.showClose = true;\r\n this.toastaConfig.showDuration = false;\r\n this.toastaConfig.timeout = 100;\r\n\r\n this.appTitleService.appName = this.appTitle;\r\n\r\n }\r\n\r\n\r\n ngAfterViewInit() {\r\n\r\n this.modalLoginControls.changes.subscribe((controls: QueryList) => {\r\n controls.forEach(control => {\r\n if (control) {\r\n if (control instanceof LoginComponent) {\r\n this.loginControl = control;\r\n this.loginControl.modalClosedCallback = () => this.loginModal.hide();\r\n } else {\r\n this.loginModal = control;\r\n this.loginModal.show();\r\n }\r\n }\r\n });\r\n });\r\n }\r\n\r\n \r\n onLoginModalShown() {\r\n this.alertService.showStickyMessage('Session Expired', 'Your Session has expired. Please log in again', MessageSeverity.info);\r\n }\r\n\r\n\r\n onLoginModalHidden() {\r\n this.alertService.resetStickyMessage();\r\n this.loginControl.reset();\r\n this.shouldShowLoginModal = false;\r\n\r\n if (this.authService.isSessionExpired) {\r\n this.alertService.showStickyMessage('Session Expired', 'Your Session has expired. Please log in again to renew your session', MessageSeverity.warn);\r\n }\r\n }\r\n\r\n\r\n onLoginModalHide() {\r\n this.alertService.resetStickyMessage();\r\n }\r\n\r\n\r\n ngOnInit() {\r\n\r\n (function ($) {\r\n $(document).ready(function () {\r\n $(\"#sidebar\").mCustomScrollbar({\r\n theme: \"minimal\"\r\n });\r\n\r\n $('#dismiss, .overlay').on('click', function () {\r\n $('#sidebar').removeClass('active');\r\n $('.overlay').removeClass('active');\r\n });\r\n $('.menu-list>.menu-content>ul>li>a').on('click', function () {\r\n $('#sidebar').removeClass('active');\r\n $('.overlay').removeClass('active');\r\n });\r\n $('#sidebarCollapse').on('click', function () {\r\n $('#sidebar').addClass('active');\r\n $('.overlay').addClass('active');\r\n $('.collapse.in').toggleClass('in');\r\n $('a[aria-expanded=true]').attr('aria-expanded', 'false');\r\n });\r\n });\r\n })(jQuery);\r\n\r\n\r\n\r\n this.isUserLoggedIn = this.authService.isLoggedIn;\r\n \r\n \r\n // 0.5 extra sec to display preboot/loader information. Preboot screen is removed 0.5 sec later\r\n setTimeout(() => this.isAppLoaded = true, 500);\r\n //setTimeout(() => this.removePrebootScreen = true, 1000);\r\n\r\n setTimeout(() => {\r\n if (this.isUserLoggedIn) {\r\n this.alertService.resetStickyMessage();\r\n \r\n // if (!this.authService.isSessionExpired)\r\n //this.alertService.showMessage('Login', `Welcome back ${this.userName}!`, MessageSeverity.default);\r\n // else\r\n // this.alertService.showStickyMessage(\"Session Expired\", \"Your Session has expired. Please log in again\", MessageSeverity.warn);\r\n }\r\n }, 2000);\r\n\r\n\r\n this.alertService.getDialogEvent().subscribe(alert => this.showDialog(alert));\r\n this.alertService.getMessageEvent().subscribe(message => this.showToast(message));\r\n\r\n this.authService.reLoginDelegate = () => this.shouldShowLoginModal = true;\r\n\r\n this.authService.getLoginStatusEvent().subscribe(isLoggedIn => {\r\n this.isUserLoggedIn = isLoggedIn;\r\n\r\n\r\n if (this.isUserLoggedIn) {\r\n this.initNotificationsLoading();\r\n } else {\r\n this.unsubscribeNotifications();\r\n }\r\n if (this.isUserLoggedIn) {\r\n this.getuserdata();\r\n }\r\n\r\n setTimeout(() => {\r\n if (!this.isUserLoggedIn) {\r\n this.alertService.showMessage('Session Ended!', '', MessageSeverity.default);\r\n }\r\n }, 500);\r\n });\r\n }\r\n\r\n\r\n ngOnDestroy() {\r\n this.unsubscribeNotifications();\r\n }\r\n\r\n\r\n private unsubscribeNotifications() {\r\n if (this.notificationsLoadingSubscription) {\r\n this.notificationsLoadingSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n initNotificationsLoading() {\r\n\r\n this.notificationsLoadingSubscription = this.notificationService.getNewNotificationsPeriodically()\r\n .subscribe(notifications => {\r\n this.dataLoadingConsecutiveFailures = 0;\r\n this.newNotificationCount = notifications.filter(n => !n.isRead).length;\r\n },\r\n error => {\r\n this.alertService.logError(error);\r\n\r\n if (this.dataLoadingConsecutiveFailures++ < 20) {\r\n setTimeout(() => this.initNotificationsLoading(), 5000);\r\n } else {\r\n this.alertService.showStickyMessage('Load Error', 'Loading new notifications from the server failed!', MessageSeverity.error);\r\n }\r\n });\r\n }\r\n\r\n\r\n markNotificationsAsRead() {\r\n\r\n const recentNotifications = this.notificationService.recentNotifications;\r\n\r\n if (recentNotifications.length) {\r\n this.notificationService.readUnreadNotification(recentNotifications.map(n => n.id), true)\r\n .subscribe(response => {\r\n for (const n of recentNotifications) {\r\n n.isRead = true;\r\n }\r\n\r\n this.newNotificationCount = recentNotifications.filter(n => !n.isRead).length;\r\n },\r\n error => {\r\n this.alertService.logError(error);\r\n this.alertService.showMessage('Notification Error', 'Marking read notifications failed', MessageSeverity.error);\r\n\r\n });\r\n }\r\n }\r\n showDialog(dialog: AlertDialog) {\r\n\r\n alertify.set({\r\n labels: {\r\n ok: dialog.okLabel || 'OK',\r\n cancel: dialog.cancelLabel || 'Cancel'\r\n }\r\n });\r\n\r\n switch (dialog.type) {\r\n case DialogType.alert:\r\n alertify.alert(dialog.message);\r\n\r\n break;\r\n case DialogType.confirm:\r\n alertify\r\n .confirm(dialog.message, (e) => {\r\n if (e) {\r\n dialog.okCallback();\r\n } else {\r\n if (dialog.cancelCallback) {\r\n dialog.cancelCallback();\r\n }\r\n }\r\n });\r\n\r\n break;\r\n case DialogType.prompt:\r\n alertify\r\n .prompt(dialog.message, (e, val) => {\r\n if (e) {\r\n dialog.okCallback(val);\r\n } else {\r\n if (dialog.cancelCallback) {\r\n dialog.cancelCallback();\r\n }\r\n }\r\n }, dialog.defaultValue);\r\n\r\n break;\r\n }\r\n }\r\n showToast(alert: AlertCommand) {\r\n\r\n if (alert.operation == 'clear') {\r\n for (const id of this.stickyToasties.slice(0)) {\r\n this.toastaService.clear(id);\r\n }\r\n\r\n return;\r\n }\r\n\r\n const toastOptions: ToastOptions = {\r\n title: alert.message.summary,\r\n msg: alert.message.detail,\r\n };\r\n\r\n\r\n if (alert.operation == 'add_sticky') {\r\n toastOptions.timeout = 0;\r\n\r\n toastOptions.onAdd = (toast: ToastData) => {\r\n this.stickyToasties.push(toast.id);\r\n };\r\n\r\n toastOptions.onRemove = (toast: ToastData) => {\r\n const index = this.stickyToasties.indexOf(toast.id, 0);\r\n\r\n if (index > -1) {\r\n this.stickyToasties.splice(index, 1);\r\n }\r\n\r\n if (alert.onRemove) {\r\n alert.onRemove();\r\n }\r\n\r\n toast.onAdd = null;\r\n toast.onRemove = null;\r\n };\r\n } else {\r\n toastOptions.timeout = 4000;\r\n }\r\n switch (alert.message.severity) {\r\n case MessageSeverity.default: this.toastaService.default(toastOptions); break;\r\n case MessageSeverity.info: this.toastaService.info(toastOptions); break;\r\n case MessageSeverity.success: this.toastaService.success(toastOptions); break;\r\n case MessageSeverity.error: this.toastaService.error(toastOptions); break;\r\n case MessageSeverity.warn: this.toastaService.warning(toastOptions); break;\r\n case MessageSeverity.wait: this.toastaService.wait(toastOptions); break;\r\n }\r\n }\r\n logout() {\r\n this.departmentname = '';\r\n this.officeanddepartment = ''//this.officeName + ' ( ' + this.departmentname + ' ) '\r\n this.authService.logout();\r\n this.authService.redirectLogoutUser();\r\n }\r\n getYear() {\r\n return new Date().getUTCFullYear();\r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName :'';\r\n }\r\n\r\n getuserdata() {\r\n this.accountService.getUser().subscribe(user => this.onCurrentUserDataLoadSuccessful(user), error => this.onCurrentUserDataLoadFailed(error))\r\n }\r\n \r\n get fullName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.fullName : '';\r\n }\r\n onCurrentUserDataLoadSuccessful(data: any) {\r\n this.officeName = data.officeName;\r\n this.storageManager.saveSessionData(this.officeName, \"User_Office\")\r\n this.storageManager.saveSessionData(data.departmentName, \"User_Department\")\r\n this.departmentname = data.departmentName;\r\n this.officeanddepartment = this.officeName + ' ( ' + this.departmentname + ' ) '\r\n this.CheckisBalogin(this.userName)\r\n\r\n }\r\n onCurrentUserDataLoadFailed(error) {\r\n this.officeName = ''\r\n this.departmentname=''\r\n }\r\n CheckisBalogin(username: string) {\r\n this.master.getOfficefromuser(username).subscribe(Bada => this.getsucessbadab(Bada), error => this.onCurrentUserDataLoadFailed(error))\r\n }\r\n getsucessbadab(adata?: any) {\r\n this.BaType = \"\";\r\n this.storageManager.saveSessionData(adata, \"BaLoginData\")\r\n\r\n this.Officecode = adata[0].officeCode\r\n\r\n if (!isNullOrUndefined(adata) && adata.length > 0){\r\n if (adata[0].officeCode == this.userName) {\r\n this.storageManager.saveSessionData(adata[0].agencyName,\"User_Office\")\r\n \r\n this.officeName = \"ONE-X Daily Sale\";\r\n if (adata[0].batype == \"ECC\") {\r\n this.departmentname = \"Express Collection Center\"\r\n this.BaType = adata[0].batype;\r\n this.ShowBookingMenuOnly = true;\r\n }\r\n else {\r\n this.departmentname = \"Business Associate\"\r\n this.BaType = adata[0].batype;\r\n this.ShowBookingMenuOnly = false;\r\n\r\n }\r\n this.officeanddepartment = this.officeName //+ ' ( ' + this.departmentname + ' ) '\r\n this.BaType = adata[0].batype;\r\n if (this.BaType == 'BA' || this.BaType == 'ECC') {\r\n this.IsBaDalogin = true;\r\n }\r\n else\r\n {\r\n this.IsBaDalogin = false;\r\n }\r\n }\r\n }\r\n else {\r\n this.IsBaDalogin = false;\r\n }\r\n\r\n }\r\n\r\n get canViewCustomers() {\r\n return this.accountService.userHasPermission(Permission.viewUsersPermission); // eg. viewCustomersPermission\r\n }\r\n\r\n get canViewProducts() {\r\n return this.accountService.userHasPermission(Permission.viewUsersPermission); // eg. viewProductsPermission\r\n }\r\n get canViewOrders() {\r\n return true; // eg. viewOrdersPermission\r\n }\r\n}\r\n","export default \":host ::ng-deep .row-color1 {\\n background-color: darkred;\\n color: white;\\n}\\n\\n:host ::ng-deep .row-color2 {\\n background-color: darkgreen;\\n color: white;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9hd2ItYm9va2luZy1kYXRhL0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXGF3Yi1ib29raW5nLWRhdGFcXGF3Yi1ib29raW5nLWRhdGEuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYXdiLWJvb2tpbmctZGF0YS9hd2ItYm9va2luZy1kYXRhLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSwyQkFBQTtFQUNBLFlBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYXdiLWJvb2tpbmctZGF0YS9hd2ItYm9va2luZy1kYXRhLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IxIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrcmVkO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZ3JlZW47XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcbiIsIjpob3N0IDo6bmctZGVlcCAucm93LWNvbG9yMSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtyZWQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2dyZWVuO1xuICBjb2xvcjogd2hpdGU7XG59Il19 */\"","\r\nimport { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { MatDialog } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { LablereportComponent } from '../lablereport/lablereport.component';\r\nimport { ExcelService } from '../../services/excel.service'\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\n\r\n@Component({\r\n selector: 'app-awb-booking-data',\r\n templateUrl: './awb-booking-data.component.html',\r\n styleUrls: ['./awb-booking-data.component.scss']\r\n})\r\nexport class AwbBookingDataComponent implements OnInit {\r\n editedawbbookingdetals: awbbookingdetals = new awbbookingdetals();\r\n columns: any[] = [];\r\n rows : awbbookingdetals[]= [];\r\n bookingdata: any[] = [];\r\n addrow: awbbookingdetals[] = [];\r\n rowsCache: awbbookingdetals[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditMode = false;\r\n bookingTypeDetail = \"0\"\r\n typee: string = \"0\";\r\n isawbno: boolean;\r\n isDatewise: boolean;\r\n text=\"\";\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n isbutton= false;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n constructor(public dialog: MatDialog, private excelService: ExcelService, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService)\r\n { \r\n\r\n \r\n \r\n }\r\n @ViewChild('f', { static: false })\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 20, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'awbno', name: 'Awbno', width: 30 },\r\n { prop: 'BookDate', name: 'Book Date', width: 30 },\r\n { prop: 'origin', name: 'Origin', width: 30 },\r\n { prop: 'destination', name: 'Destination', width: 70 },\r\n { prop: 'Weight', name: 'weight', width: 20 },\r\n { prop: 'printStatus', name: 'Print Status', width:50 },\r\n\r\n ];\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.Insertawkbooking();\r\n \r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : 'userid';\r\n }\r\n cancelAwb(row: awbbookingdetals)\r\n {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_InsertAwbcance'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"awbno\"\r\n pr.PropertyValue = row.awbno;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"UserId\";\r\n pr.PropertyValue = this.userId.toLowerCase();\r\n Req.LstParameter = Parameter;\r\n Parameter[1] = pr;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(_result => {\r\n if (_result[0].isCancel == true) {\r\n this.rows.forEach((awb, index, arr) => {\r\n if (awb.awbno == row.awbno) {\r\n this.rows.splice(index, 1);\r\n }\r\n\r\n });\r\n this.rowsCache = [...this.rows];\r\n this.alertService.showMessage(\"Awb Cancel\", _result[0].message, MessageSeverity.success);\r\n }\r\n else {\r\n this.alertService.showMessage(\"Awb Cancel\", _result[0].message, MessageSeverity.error);\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n getRowClass = (row) => {\r\n return {\r\n 'row-color1': row.printStatus == 'Yes',\r\n 'row-color2': row.printStatus == 'No',\r\n };\r\n }\r\n Insertawkbooking() {\r\n this.rows = [];\r\n this.rowsCache = [];\r\n if (this.typee == \"0\")\r\n {\r\n this.transaction.GetAwbBookingDetail(\"\", null, null).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n if (this.typee == \"1\") {\r\n\r\n this.transaction.GetAwbBookingDetail((document.getElementById('awbno')).value, null, null).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n if (this.typee == \"2\") {\r\n\r\n var fromdt = (document.getElementById('fromdate')).value;\r\n var todt = (document.getElementById('todate')).value;\r\n\r\n var fromdate = fromdt.substr(6, 4) + \"-\" + fromdt.substr(3, 2) + \"-\" + fromdt.substr(0, 2);// new Date(parseInt(fromdt.substr(6, 4)), parseInt(fromdt.substr(3, 2)), parseInt(fromdt.substr(0, 2))).toString();\r\n var toDate = todt.substr(6, 4) + \"-\" + todt.substr(3, 2) + \"-\" + todt.substr(0, 2);//new Date(parseInt(todt.substr(6, 4)), parseInt(todt.substr(3, 2)), parseInt(todt.substr(0, 2))).toString();\r\n\r\n this.transaction.GetAwbBookingDetail(\"\", fromdate, toDate).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n if (this.typee == \"3\") {\r\n\r\n this.GetYieldReport();\r\n }\r\n }\r\n GetYieldReport() {\r\n var fromdt = (document.getElementById('fromdate')).value;\r\n var todt = (document.getElementById('todate')).value;\r\n\r\n var fromdate = fromdt.substr(6, 4) + \"-\" + fromdt.substr(3, 2) + \"-\" + fromdt.substr(0, 2);// new Date(parseInt(fromdt.substr(6, 4)), parseInt(fromdt.substr(3, 2)), parseInt(fromdt.substr(0, 2))).toString();\r\n var toDate = todt.substr(6, 4) + \"-\" + todt.substr(3, 2) + \"-\" + todt.substr(0, 2);//new Date(parseInt(todt.substr(6, 4)), parseInt(todt.substr(3, 2)), parseInt(todt.substr(0, 2))).\r\n this.transaction.GetYieldReport(fromdate, toDate).subscribe(result => this.ongetyieldsuceessreport(result), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n ongetyieldsuceessreport(result:any) {\r\n var data = result;\r\n const blob = result;\r\n const url = window.URL.createObjectURL(blob);\r\n //JSON.stringify(blob)\r\n // Create a link to trigger the download\r\n const a = document.createElement('a');\r\n a.href = url;\r\n a.download = \"AwbsaleYield.xlsx\"; // File name for the download\r\n a.click();\r\n URL.revokeObjectURL(a.href); // Clean up the URL object\r\n this.alertService.showMessage(\"Yied Report\", \"File downloaded\", MessageSeverity.success);\r\n }\r\n\r\n\r\n onGetSucessAwbbookingData(result: any) {\r\n\r\n if (result.length > 0) {\r\n //this.bookingdata = result[0];\r\n this.rows = [] as awbbookingdetals[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as awbbookingdetals[];\r\n this.bookingdata = result;\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbbookingdetals();\r\n this.addrow[0].awbno = result[index].awbno;\r\n this.addrow[0].orderno = result[index].stickerNo;\r\n this.addrow[0].BookDate = result[index].awbInscanDate;\r\n this.addrow[0].origin = result[index].origin;\r\n this.addrow[0].destination = result[index].destPincode + \" - \" + result[index].destcity;\r\n this.addrow[0].Weight = result[index].awbWeight\r\n this.addrow[0].saleType = result[index].saleType\r\n this.addrow[0].printStatus = result[index].printStatus\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new awbbookingdetals();\r\n tmp.awbno = result[index].awbno;\r\n tmp.orderno = result[index].stickerNo;\r\n tmp.BookDate = result[index].awbInscanDate;\r\n tmp.origin = result[index].origin;\r\n tmp.destination = result[index].destPincode + \" - \" + result[index].destcity;\r\n tmp.Weight = result[index].awbWeight;\r\n tmp.saleType = result[index].saleType;\r\n tmp.printStatus = result[index].printStatus\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n\r\n\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n generateExcel() {\r\n var data = []\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n data[index] = [this.bookingdata[index].awbno, this.bookingdata[index].awbInscanDate,\r\n this.bookingdata[index].officename,\r\n this.bookingdata[index].batype,\r\n this.bookingdata[index].stickerNo,\r\n this.bookingdata[index].saleType,\r\n this.bookingdata[index].pieces,\r\n this.bookingdata[index].lenth,\r\n this.bookingdata[index].width,\r\n this.bookingdata[index].height,\r\n this.bookingdata[index].awbWeight,\r\n this.bookingdata[index].volumetricWeight,\r\n this.bookingdata[index].awbChargedWeight,\r\n this.bookingdata[index].origin,\r\n this.bookingdata[index].destPincode,\r\n this.bookingdata[index].destcity,\r\n this.bookingdata[index].awbContent,\r\n this.bookingdata[index].fovRisk,\r\n this.bookingdata[index].isTopay, \r\n this.bookingdata[index].awbMode,\r\n this.bookingdata[index].paymentMode,\r\n this.bookingdata[index].consignmentValue,\r\n this.bookingdata[index].ewayBillno,\r\n this.bookingdata[index].clientCode,\r\n this.bookingdata[index].bookingFor,\r\n this.bookingdata[index].status,\r\n this.bookingdata[index].statusdate,\r\n this.bookingdata[index].consName,\r\n this.bookingdata[index].consMobileno,\r\n this.bookingdata[index].totalAmount,\r\n this.bookingdata[index].billno\r\n\r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Widths = [];\r\n this.excelService.header = [\"Awbno\", \"Booking Date\", \"Officename\", \"Office Type\",\"Refrenceno\", \"SaleType\",\r\n \"Pieces\", \"Lenth\", \"width\", \"Height\", \"Actual Weight\",\r\n \"volumetricWeight\", \"Charged Weight\",\"Origin\",\r\n \"Dest Pincode\", \"Dest City\", \"AwbContent\", \r\n \"FovRisk\", \"IsTopay\",\r\n \"Mode\", \"PaymentMode\", \"ConsignmentValue\", \"EwayBillno\", \"ClientCode\", \r\n \"Product\",\"Status\",\"Status Date\",\"Consignee\",\"Mobileno\",\"Sale Amount\",\"Bill No\" ]\r\n this.excelService.title = \"Awb Sale\";\r\n this.excelService.Sheetname = \"Awb Sale\";\r\n this.excelService.generateExcel();\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.awbno));\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n consignee(row: any) {\r\n this.isEditModeconsignee = true;\r\n this.consigneeeditorModal.show();\r\n }\r\n consignor(row: any) {\r\n this.isEditModeconsigner = true;\r\n this.consignereditorModal.show();\r\n }\r\n awbprint(row: any) {\r\n if (row.orderno.includes(\"ONE_X\"))\r\n {\r\n this.router.navigate(['/awbdivineprint'], {\r\n queryParams: {\r\n awbno: row.awbno,\r\n module: 'Detail',\r\n orderNo: row.orderno\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n if (!row.orderno.includes(\"ONE_X\"))\r\n {\r\n if (row.saleType == 'CASH' || row.saleType == 'TOPAY' ) {\r\n\r\n this.router.navigate(['/awbprint'], {\r\n queryParams: {\r\n awbno: row.awbno,\r\n module: 'Detail'\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n }\r\n if (row.saleType == 'DP') {\r\n\r\n this.router.navigate(['/awbprintdp'], {\r\n queryParams: {\r\n awbno: row.awbno,\r\n module: 'Detail'\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n if (row.saleType == 'Kart') {\r\n\r\n this.router.navigate(['/awbprintkart'], {\r\n queryParams: {\r\n awbno: row.awbno,\r\n module: 'Detail'\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n\r\n\r\n //this.router.navigate(['/awbprint'], {\r\n // queryParams: {\r\n // awbno: row.awbno,\r\n // module:'Detail'\r\n \r\n // }\r\n //}); // define your component where \r\n }\r\n //ConrInit() {\r\n // (document.getElementById('city')).value = isNullOrUndefined(this.addressConr.city) ? \"\" : this.addressConr.city;\r\n // (document.getElementById('state')).value = isNullOrUndefined(this.addressConr.stateName) ? \"\" : this.addressConr.stateName;\r\n // (document.getElementById('houseNo')).value = isNullOrUndefined(this.addressConr.houseNo) ?\"\":this.addressConr.houseNo;\r\n // (document.getElementById('streetName')).value = isNullOrUndefined(this.addressConr.streetName)?\"\":this.addressConr.streetName;\r\n // (document.getElementById('pincode')).value = isNullOrUndefined(this.addressConr.pincode)?\"\":this.addressConr.pincode;\r\n // (document.getElementById(\"landMark\")).value = isNullOrUndefined(this.addressConr.landMark) ? \"\" : this.addressConr.landMark;\r\n // (document.getElementById(\"consignername\")).value = isNullOrUndefined(this.editedawkbooking.consignername) ? \"\" : this.editedawkbooking.consignername ;\r\n // (document.getElementById(\"consignerMobileno\")).value = isNullOrUndefined(this.editedawkbooking.consignerMobileno) ? \"\" : this.editedawkbooking.consignerMobileno;\r\n // (document.getElementById('consignerMobileno')).focus();\r\n\r\n //}\r\n //ConeInit() {\r\n\r\n // (document.getElementById('city')).value = isNullOrUndefined(this.addressCone.city) ? \"\" : this.addressCone.city;;\r\n // (document.getElementById('state')).value = isNullOrUndefined(this.addressCone.stateName) ? \"\" : this.addressCone.stateName;\r\n // (document.getElementById('houseNo')).value = isNullOrUndefined(this.addressCone.houseNo) ? \"\" : this.addressCone.houseNo;\r\n // (document.getElementById('streetName')).value = isNullOrUndefined(this.addressCone.streetName) ? \"\" : this.addressCone.streetName;\r\n // (document.getElementById('pincode')).value = isNullOrUndefined(this.addressCone.pincode) ? \"\" : this.addressCone.pincode;\r\n // (document.getElementById(\"landMark\")).value = isNullOrUndefined(this.addressCone.landMark) ? \"\" : this.addressCone.landMark;\r\n // (document.getElementById(\"consigneename\")).value = isNullOrUndefined(this.editedawkbooking.consigneename) ? \"\" : this.editedawkbooking.consigneename;\r\n // (document.getElementById(\"consigneeMobleno\")).value = isNullOrUndefined(this.editedawkbooking.consigneeMobleno) ? \"\" : this.editedawkbooking.consigneeMobleno;\r\n // (document.getElementById(\"clOffice\")).value = isNullOrUndefined(this.editedawkbooking.clOffice) ? \"\" : this.editedawkbooking.clOffice;\r\n // (document.getElementById('consigneeMobleno')).focus();\r\n\r\n //}\r\n\r\n //ConsignerHidden() {\r\n // this.isEditModeconsigner = false;\r\n // this.addressConr.city = (document.getElementById('city')).value;\r\n // this.addressConr.stateName = (document.getElementById('state')).value;\r\n // this.addressConr.houseNo = (document.getElementById('houseNo')).value;\r\n // this.addressConr.streetName = (document.getElementById('streetName')).value;\r\n // this.addressConr.pincode = (document.getElementById('pincode')).value;\r\n // this.addressConr.landMark = (document.getElementById(\"landMark\")).value;\r\n // this.editedawkbooking.consignername = (document.getElementById(\"consignername\")).value;\r\n // this.editedawkbooking.consignerMobileno = (document.getElementById(\"consignerMobileno\")).value;\r\n\r\n \r\n // this.consignereditorModal.hide();\r\n // (document.getElementById('linkcons')).focus();\r\n\r\n //}\r\n //ConsigneeHidden() {\r\n // this.isEditModeconsignee = false;\r\n // this.addressCone.city = (document.getElementById('city')).value\r\n // this.addressCone.stateName = (document.getElementById('state')).value\r\n // this.addressCone.houseNo = (document.getElementById('houseNo')).value\r\n // this.addressCone.streetName = (document.getElementById('streetName')).value\r\n // this.addressCone.pincode = (document.getElementById('pincode')).value\r\n // this.addressCone.landMark = (document.getElementById(\"landMark\")).value\r\n // this.editedawkbooking.consigneename = (document.getElementById(\"consigneename\")).value\r\n // this.editedawkbooking.consigneeMobleno = (document.getElementById(\"consigneeMobleno\")).value\r\n // this.editedawkbooking.clOffice = (document.getElementById(\"clOffice\")).value\r\n\r\n // this.consigneeeditorModal.hide();\r\n // if (this.bookingType == '2' || this.bookingType == '4') {\r\n // (document.getElementById('clientCode')).focus();\r\n\r\n // }\r\n // else { (document.getElementById('awbContent')).focus(); }\r\n //} \r\n funHide()\r\n {\r\n var typeee=this.typee ==\"1\" ?\"1\":\"2\";\r\n if(typeee ==\"1\")\r\n {\r\n this.isawbno=true;\r\n this.text=\"Awbno\";\r\n this.isDatewise= false;\r\n this.isbutton=true;\r\n }else{\r\n this.text=\"Date Range\";\r\n this.isawbno=false;\r\n this.isDatewise= true;\r\n this.isbutton=true;\r\n }\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\nexport class awbbookingdetals{\r\n \r\n public awbno: string\r\n public orderno: string\r\n public fromdate:string\r\n public todate: string\r\n public BookDate: string\r\n public origin :string\r\n public destination: string \r\n public Weight: string\r\n public saleType: string;\r\n public printStatus: string;\r\n}\r\n\r\n","export default \".track {\\n position: relative;\\n background-color: #ddd;\\n height: 2px;\\n display: flex;\\n margin-bottom: 60px;\\n margin-top: 50px;\\n}\\n\\n.table th, .table td {\\n padding: 0.25rem;\\n vertical-align: central;\\n border-top: 1px solid #dee2e6;\\n background-color: blanchedalmond;\\n font-weight: 700;\\n}\\n\\n.track .step {\\n flex-grow: 1;\\n width: 25%;\\n margin-top: -30px;\\n text-align: left;\\n position: relative;\\n flex-direction: column;\\n}\\n\\n.track .step.active:before {\\n background: #20a149;\\n}\\n\\n.track .step::before {\\n height: 2px;\\n position: absolute;\\n content: \\\"\\\";\\n width: 100%;\\n left: 0;\\n top: 30px;\\n}\\n\\n.track .step.active .icon {\\n background: #20a149;\\n color: #fff;\\n}\\n\\n.track .step.active .icon .dot {\\n background: #fbbd19;\\n}\\n\\n.track .icon {\\n display: inline-block;\\n width: 60px;\\n height: 60px;\\n line-height: 60px;\\n position: relative;\\n border-radius: 100%;\\n background: #ddd;\\n text-align: center;\\n}\\n\\n.track .icon .dot {\\n content: \\\" \\\";\\n width: 14px;\\n height: 14px;\\n background: #fff;\\n border-radius: 50px;\\n position: absolute;\\n top: 12px;\\n left: 13px;\\n}\\n\\n.track .step.active .text {\\n font-weight: 400;\\n color: #000;\\n white-space: nowrap;\\n}\\n\\n.track .text {\\n display: block;\\n margin-top: 7px;\\n white-space: nowrap;\\n}\\n\\n.itemside {\\n position: relative;\\n display: flex;\\n width: 100%;\\n}\\n\\n.itemside .aside {\\n position: relative;\\n flex-shrink: 0;\\n}\\n\\n.img-sm {\\n width: 80px;\\n height: 80px;\\n padding: 7px;\\n}\\n\\nul.row, ul.row-sm {\\n list-style: none;\\n padding: 0;\\n}\\n\\n.itemside .info {\\n padding-left: 15px;\\n padding-right: 7px;\\n}\\n\\n.itemside .title {\\n display: block;\\n margin-bottom: 5px;\\n color: #212529;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n.btn-warning {\\n color: #ffffff;\\n background-color: #ee5435;\\n border-color: #ee5435;\\n border-radius: 1px;\\n}\\n\\n.btn-warning:hover {\\n color: #ffffff;\\n background-color: #ff2b00;\\n border-color: #ff2b00;\\n border-radius: 1px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9hd2ItdHJhY2tpbmcvRDpcXE9uZXhXZWJcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xcYXdiLXRyYWNraW5nXFxhd2ItdHJhY2tpbmcuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYXdiLXRyYWNraW5nL2F3Yi10cmFja2luZy5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSxXQUFBO0VBR0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7QUNDRjs7QURDQTtFQUNFLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSw2QkFBQTtFQUNBLGdDQUFBO0VBQ0EsZ0JBQUE7QUNFRjs7QURDQTtFQUNFLFlBQUE7RUFDQSxVQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7QUNFRjs7QURDQTtFQUNFLG1CQUFBO0FDRUY7O0FEQ0E7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsV0FBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0FDRUY7O0FEQ0E7RUFDRSxtQkFBQTtFQUNBLFdBQUE7QUNFRjs7QURDQTtFQUNFLG1CQUFBO0FDRUY7O0FEQ0E7RUFDRSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBQ0VGOztBRENBO0VBQ0UsWUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7QUNFRjs7QURFQTtFQUNFLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0FDQ0Y7O0FERUE7RUFDRSxjQUFBO0VBQ0EsZUFBQTtFQUNBLG1CQUFBO0FDQ0Y7O0FERUE7RUFDRSxrQkFBQTtFQUdBLGFBQUE7RUFDQSxXQUFBO0FDQ0Y7O0FERUE7RUFDRSxrQkFBQTtFQUVBLGNBQUE7QUNDRjs7QURFQTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtBQ0NGOztBREVBO0VBQ0UsZ0JBQUE7RUFDQSxVQUFBO0FDQ0Y7O0FERUE7RUFDRSxrQkFBQTtFQUNBLGtCQUFBO0FDQ0Y7O0FERUE7RUFDRSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0FDQ0Y7O0FERUE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QUNDRjs7QURFQTtFQUNFLGNBQUE7RUFDQSx5QkFBQTtFQUNBLHFCQUFBO0VBQ0Esa0JBQUE7QUNDRjs7QURFQTtFQUNFLGNBQUE7RUFDQSx5QkFBQTtFQUNBLHFCQUFBO0VBQ0Esa0JBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYXdiLXRyYWNraW5nL2F3Yi10cmFja2luZy5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi50cmFjayB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XHJcbiAgaGVpZ2h0OiAycHg7XHJcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gIG1hcmdpbi10b3A6IDUwcHhcclxufVxyXG4udGFibGUgdGgsIC50YWJsZSB0ZCB7XHJcbiAgcGFkZGluZzogMC4yNXJlbTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogY2VudHJhbDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOmJsYW5jaGVkYWxtb25kO1xyXG4gIGZvbnQtd2VpZ2h0OjcwMDtcclxufVxyXG5cclxuLnRyYWNrIC5zdGVwIHtcclxuICBmbGV4LWdyb3c6IDE7XHJcbiAgd2lkdGg6IDI1JTtcclxuICBtYXJnaW4tdG9wOiAtMzBweDtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4udHJhY2sgLnN0ZXAuYWN0aXZlOmJlZm9yZSB7XHJcbiAgYmFja2dyb3VuZDogIzIwYTE0OVxyXG59XHJcblxyXG4udHJhY2sgLnN0ZXA6OmJlZm9yZSB7XHJcbiAgaGVpZ2h0OiAycHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDMwcHhcclxufVxyXG5cclxuLnRyYWNrIC5zdGVwLmFjdGl2ZSAuaWNvbiB7XHJcbiAgYmFja2dyb3VuZDogIzIwYTE0OTtcclxuICBjb2xvcjogI2ZmZlxyXG59XHJcblxyXG4udHJhY2sgLnN0ZXAuYWN0aXZlIC5pY29uIC5kb3Qge1xyXG4gIGJhY2tncm91bmQ6ICNmYmJkMTk7XHJcbn1cclxuXHJcbi50cmFjayAuaWNvbiB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiA2MHB4O1xyXG4gIGhlaWdodDogNjBweDtcclxuICBsaW5lLWhlaWdodDogNjBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICBiYWNrZ3JvdW5kOiAjZGRkO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnRyYWNrIC5pY29uIC5kb3Qge1xyXG4gIGNvbnRlbnQ6ICcgJztcclxuICB3aWR0aDogMTRweDtcclxuICBoZWlnaHQ6IDE0cHg7XHJcbiAgYmFja2dyb3VuZDogI2ZmZjtcclxuICBib3JkZXItcmFkaXVzOiA1MHB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDEycHg7XHJcbiAgbGVmdDogMTNweDtcclxufVxyXG5cclxuXHJcbi50cmFjayAuc3RlcC5hY3RpdmUgLnRleHQge1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgY29sb3I6ICMwMDA7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRyYWNrIC50ZXh0IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tdG9wOiA3cHg7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLml0ZW1zaWRlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICB3aWR0aDogMTAwJVxyXG59XHJcblxyXG4uaXRlbXNpZGUgLmFzaWRlIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XHJcbiAgZmxleC1zaHJpbms6IDBcclxufVxyXG5cclxuLmltZy1zbSB7XHJcbiAgd2lkdGg6IDgwcHg7XHJcbiAgaGVpZ2h0OiA4MHB4O1xyXG4gIHBhZGRpbmc6IDdweFxyXG59XHJcblxyXG51bC5yb3csIHVsLnJvdy1zbSB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBwYWRkaW5nOiAwXHJcbn1cclxuXHJcbi5pdGVtc2lkZSAuaW5mbyB7XHJcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDdweFxyXG59XHJcblxyXG4uaXRlbXNpZGUgLnRpdGxlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgY29sb3I6ICMyMTI1MjlcclxufVxyXG5cclxucCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtXHJcbn1cclxuXHJcbi5idG4td2FybmluZyB7XHJcbiAgY29sb3I6ICNmZmZmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlNTQzNTtcclxuICBib3JkZXItY29sb3I6ICNlZTU0MzU7XHJcbiAgYm9yZGVyLXJhZGl1czogMXB4XHJcbn1cclxuXHJcbi5idG4td2FybmluZzpob3ZlciB7XHJcbiAgY29sb3I6ICNmZmZmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMmIwMDtcclxuICBib3JkZXItY29sb3I6ICNmZjJiMDA7XHJcbiAgYm9yZGVyLXJhZGl1czogMXB4XHJcbn1cclxuIiwiLnRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICBoZWlnaHQ6IDJweDtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICBtYXJnaW4tdG9wOiA1MHB4O1xufVxuXG4udGFibGUgdGgsIC50YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDAuMjVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBjZW50cmFsO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhbmNoZWRhbG1vbmQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi50cmFjayAuc3RlcCB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgd2lkdGg6IDI1JTtcbiAgbWFyZ2luLXRvcDogLTMwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnRyYWNrIC5zdGVwLmFjdGl2ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMjBhMTQ5O1xufVxuXG4udHJhY2sgLnN0ZXA6OmJlZm9yZSB7XG4gIGhlaWdodDogMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDMwcHg7XG59XG5cbi50cmFjayAuc3RlcC5hY3RpdmUgLmljb24ge1xuICBiYWNrZ3JvdW5kOiAjMjBhMTQ5O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnRyYWNrIC5zdGVwLmFjdGl2ZSAuaWNvbiAuZG90IHtcbiAgYmFja2dyb3VuZDogI2ZiYmQxOTtcbn1cblxuLnRyYWNrIC5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBsaW5lLWhlaWdodDogNjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50cmFjayAuaWNvbiAuZG90IHtcbiAgY29udGVudDogXCIgXCI7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMnB4O1xuICBsZWZ0OiAxM3B4O1xufVxuXG4udHJhY2sgLnN0ZXAuYWN0aXZlIC50ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwMDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50cmFjayAudGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiA3cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5pdGVtc2lkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLml0ZW1zaWRlIC5hc2lkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uaW1nLXNtIHtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbiAgcGFkZGluZzogN3B4O1xufVxuXG51bC5yb3csIHVsLnJvdy1zbSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5pdGVtc2lkZSAuaW5mbyB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogN3B4O1xufVxuXG4uaXRlbXNpZGUgLnRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgY29sb3I6ICMyMTI1Mjk7XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uYnRuLXdhcm5pbmcge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlNTQzNTtcbiAgYm9yZGVyLWNvbG9yOiAjZWU1NDM1O1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG59XG5cbi5idG4td2FybmluZzpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYyYjAwO1xuICBib3JkZXItY29sb3I6ICNmZjJiMDA7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbn0iXX0= */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n @Component({\r\n selector: 'app-awb-tracking',\r\n templateUrl: './awb-tracking.component.html',\r\n styleUrls: ['./awb-tracking.component.scss'],\r\n encapsulation: ViewEncapsulation.None \r\n})\r\nexport class AwbTrackingComponent implements OnInit {\r\n\r\n awbno: string = \"\";\r\n loadingIndicator = false;\r\n\r\n constructor(private datepipe: DatePipe, public router: ActivatedRoute,private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private localstre: LocalStoreManager, private ServiceMaster: Masters) {\r\n }\r\n ngOnInit() {\r\n $('#divbar').html(\"
\" +\r\n \"
Booked
\" +\r\n \"
In-Transit
\" +\r\n \"
Out For Delivery
\" +\r\n \"
Delivered
\" +\r\n \"
\")\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.awbno = params.awbno;\r\n if (!isNullOrUndefined(this.awbno)) {\r\n $('#txtawbno').val(this.awbno)\r\n this.Trackawb()\r\n }\r\n });\r\n }\r\n Trackawb() {\r\n this.awbno = $('#txtawbno').val().toString();\r\n if (this.awbno.length < 10) {\r\n $('#txtawbno').focus();\r\n this.alertService.showMessage(\"Awbno\", \"Invalid Awbno\", MessageSeverity.error);\r\n return;\r\n }\r\n $('#rowactdetail').html(\"\");\r\n\r\n $('#lblawbno').text(\"\");\r\n $('#lblpkpdate').text(\"\");\r\n $('#lblRefno').text(\"\");\r\n $('#LblWeight').text(\"\");\r\n $('#LblvWeight').text(\"\");\r\n $('#LblPieces').text(\"\");\r\n $('#lblProduct').text(\"\");\r\n $('#Lblmode').text(\"\");\r\n $('#LblOrigin').text(\"\");\r\n $('#LblDestination').text(\"\");\r\n $('#LblStatus').text(\"\");\r\n $('#LblConsignee').html(\"\");\r\n $('#LblStatusdt').text(\"\");\r\n $('#lblbookOffice').text(\"\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getInernalTracking'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Awbno\"\r\n pr.PropertyValue = this.awbno;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Awbtype\";\r\n pr.PropertyValue = \"AWB\";\r\n Req.LstParameter = Parameter;\r\n Parameter[1] = pr;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(_result => {\r\n if (_result.table.length > 0) {\r\n $('#lblawbno').text(_result.table[0].awbno);\r\n $('#lblpkpdate').text(this.datepipe.transform(new Date(_result.table[0].bookDate), \"dd/MM/yyyy\"));\r\n $('#lblRefno').text(_result.table[0].referenceno);\r\n $('#LblWeight').text(_result.table[0].awbWeight);\r\n $('#LblvWeight').text(_result.table[0].volumetricWeight);\r\n $('#LblPieces').text(_result.table[0].pieces);\r\n $('#lblProduct').text(_result.table[0].product);\r\n $('#Lblmode').text(_result.table[0].awbMode);\r\n $('#LblOrigin').text(_result.table[0].origin);\r\n $('#LblDestination').text(_result.table[0].destination);\r\n $('#LblStatus').text(_result.table[0].status);\r\n const Htmlstr: string = _result.table[0].consName + '
' + _result.table[0].houseNo + '
' + _result.table[0].streetName + '
' \r\n + _result.table[0].conscity + \"-\" + _result.table[0].conspincode.toString() + '
' + _result.table[0].stateName + '
' + 'Mobileno - ' + _result.table[0].consMobileno\r\n $('#LblConsignee').html(Htmlstr);\r\n $('#lblbookOffice').text(_result.table[0].bookOffice);\r\n $('#LblStatusdt').text(this.datepipe.transform(new Date(_result.table[0].statusdate), \"dd/MM/yyyy\"));\r\n if (_result.table[0].status.toUpperCase() == \"BOOKED\") {\r\n $('#divbar').html(\"
\" +\r\n \"
Booked
\" +\r\n \"
In-Transit
\" +\r\n \"
Out For Delivery
\" +\r\n \"
Delivered
\" +\r\n \"
\");\r\n }\r\n if (_result.table[0].status.toUpperCase() == \"DELIVERED\") {\r\n $('#divbar').html(\"
\" +\r\n \"
Booked
\" +\r\n \"
In-Transit
\" +\r\n \"
Out For Delivery
\" +\r\n \"
Delivered
\" +\r\n \"
\")\r\n }\r\n if (_result.table[0].status.toUpperCase() == \"OUT FOR DELIVERY\") {\r\n $('#divbar').html(\"
\" +\r\n \"
Booked
\" +\r\n \"
In-Transit
\" +\r\n \"
Out For Delivery
\" +\r\n \"
Delivered
\" +\r\n \"
\")\r\n }\r\n if (_result.table[0].status.toUpperCase() == \"IN-TRANSIT\" || _result.table[0].status.toUpperCase() == \"DISPATCHED\" || _result.table[0].status.toUpperCase() == \"HUB CONNECTION\") {\r\n $('#divbar').html(\"
\" +\r\n \"
Booked
\" +\r\n \"
In-Transit
\" +\r\n \"
Out For Delivery
\" +\r\n \"
Delivered
\" +\r\n \"
\")\r\n }\r\n let CardDetail: string = \"\";\r\n CardDetail = \"
\" +\r\n\r\n \"
\" +\r\n \"\" +\r\n \"\" +\r\n \"\" +\r\n \"\" +\r\n \"\" +\r\n \"\" +\r\n \"\"\r\n \"\" +\r\n \"\";\r\n\r\n\r\n if (_result.table1.length > 0) {\r\n CardDetail += \"\" + \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n\r\n }\r\n if (_result.table2.length > 0) {\r\n _result.table2.forEach((md, ind, arr) => {\r\n\r\n CardDetail += \"\" + \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n\r\n\r\n });\r\n }\r\n if (_result.table3.length > 0) {\r\n _result.table3.forEach((md, ind, arr) => {\r\n\r\n CardDetail += \"\" + \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n\r\n });\r\n }\r\n if (_result.table4.length > 0) {\r\n _result.table4.forEach((md, ind, arr) => {\r\n\r\n CardDetail += \"\" + \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n\r\n });\r\n }\r\n if (_result.table5.length > 0) {\r\n _result.table5.forEach((md, ind, arr) => {\r\n\r\n CardDetail += \"\" + \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n CardDetail += \"\";\r\n\r\n });\r\n\r\n }\r\n //CardDetail += \"\" + \"\";\r\n //CardDetail += \"\"; \r\n $('#rowactdetail').html(CardDetail + \"
ActivityDateLocationOffice
\" + _result.table1[0].action + \"\" + this.datepipe.transform(new Date(_result.table1[0].date), \"dd/MM/yyyy HH:mm:ss\") + \"\" + _result.table1[0].location + \"\" + _result.table1[0].office + \"
\" + md.action + \"\" + this.datepipe.transform(new Date(md.date), \"dd/MM/yyyy HH:mm:ss\") + \"\" + md.location + \"\" + md.office + \"
\" + md.action + \"\" + this.datepipe.transform(new Date(md.date), \"dd/MM/yyyy HH:mm:ss\") + \"\" + md.location + \"\" + md.office + \"
\" + md.action + \"\" + this.datepipe.transform(new Date(md.date), \"dd/MM/yyyy HH:mm:ss\") + \"\" + md.location + \"\" + md.office + \"
\" + md.action + \"\" + this.datepipe.transform(new Date(md.date), \"dd/MM/yyyy HH:mm:ss\") + \"\" + md.location + \"\" + md.office + \"
\" + \"Consignee\" + \"\" + awbtrack.table[0].ConsName+\"
\" +\r\n // awbtrack.table[0].HouseNo+\",\"+ awbtrack.table[0].StreetName+\"
\"+\r\n // awbtrack.table[0].conscity+\"-\"+ awbtrack.table[0].conspincode+\"
\"+\r\n // awbtrack.table[0].StateName +\"-\"+ awbtrack.table[0].ConsMobileno\r\n // + \"
\");\r\n\r\n }\r\n else {\r\n this.alertService.showMessage(\"Tracking\", \"No record found..\", MessageSeverity.info);\r\n $('#divbar').html(\"
\" +\r\n \"
Booked
\" +\r\n \"
In-Transit
\" +\r\n \"
Out For Delivery
\" +\r\n \"
Delivered
\" +\r\n \"
\")\r\n }\r\n\r\n\r\n }, error => this.onDataLoadFailed(error));\r\n\r\n }\r\n onDataLoadFailed(error: any) {\r\n //this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYXdiYmFnZ2luZy9hd2JiYWdnaW5nLmNvbXBvbmVudC5zY3NzIn0= */\"","\r\nimport { AfterViewInit, ElementRef, ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n//import {document} from 'ngx-bootstrap'\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { from } from 'rxjs';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-awb-bagging',\r\n templateUrl: './awbbagging.component.html',\r\n styleUrls: ['./awbbagging.component.scss']\r\n})\r\nexport class AwbbaggingComponent implements OnInit,AfterViewInit {\r\n\r\n editedawbbagging: awbbagging = new awbbagging();\r\n\r\n columns: any[] = [];\r\n rows: awbbagging[] = [];\r\n addrow: awbbagging[] = [];\r\n rowsCache: awbbagging[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditMode = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n tabledate: any[] = [];\r\n \r\n public timeLeft: any;\r\n public timerId: any;\r\n checkinout: boolean = true;\r\n constructor(private configurations: ConfigurationService, private transaction: TransactionService, private localstre: LocalStoreManager, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n\r\n this.editedawbbagging.OfficeName = logindata[0].officename;\r\n\r\n this.timeLeft = \"30\";\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'Awbno', name: 'AWB No', width: 100 },\r\n { prop: 'stickerNo', name: 'Sticker No', width: 100 },\r\n { prop: 'pieces', name: 'Pieces', width: 100 },\r\n { prop: 'awbWeight', name: 'Weight', width: 100 },\r\n { prop: 'destPincode', name: 'Destination Pin-Code', width: 150 },\r\n { prop: 'mpsno', name: 'MPS No', width: 150 },\r\n { prop: 'Awbno',name: 'Action', width: 125, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n $('#mpsno').val('');\r\n //this.loaddata();\r\n //this.actionsTemplate.elementRef\r\n }\r\n ngAfterViewInit() {\r\n \r\n //this.rows.push(new awbbagging());\r\n }\r\n \r\n \r\n \r\n loaddata() {\r\n this.loadingIndicator = true;\r\n // this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n }\r\n LoadSucessdata(bagging: awbbagging[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n bagging.forEach((prod, index, items) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...bagging];\r\n this.rows = bagging;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve awb bagging from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n DeleteRow(row:awbbagging) {\r\n this.rows.forEach((value, index, arr) => {\r\n if (value.Awbno == row.Awbno) {\r\n this.rows.splice(index, 1);\r\n }\r\n this.rows = [...this.rows];\r\n });\r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n this.rows.forEach((value, index, arr) => {\r\n totalpiece += parseInt(value.pieces);\r\n totalWeight += parseFloat(value.awbWeight);\r\n totalNoofAwb += 1\r\n\r\n });\r\n this.editedawbbagging.NoofAwb = totalNoofAwb;\r\n this.editedawbbagging.TotalWeight = totalWeight;\r\n this.editedawbbagging.TotalPieces = totalpiece;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n awb.TotalPieces = totalpiece;\r\n awb.TotalWeight = totalWeight;\r\n awb.NoofAwb = totalNoofAwb;\r\n });\r\n\r\n }\r\n\r\n Insertawbbagging() {\r\n if (isNullOrUndefined(this.editedawbbagging.OfficeName)) {\r\n (document.getElementById('OfficeName')).focus();\r\n return;\r\n }\r\n if (this.rows.length <= 0) {\r\n this.showErrorAlert(\"Awbno\", \"No Record To Save\")\r\n\r\n return;\r\n }\r\n \r\n var BagType = $('#baggingtype option:selected').text();\r\n\r\n if (BagType == undefined || BagType == \"\" || BagType == \"0\" || BagType == null) {\r\n this.showErrorAlert(\"Bag\", \"Please Enter Bag Type \")\r\n return;\r\n }\r\n var BagNo = $(\"#BagNo\").val();\r\n\r\n\r\n var SerialNo = $(\"#SerialNo\").val();\r\n if (SerialNo == undefined || SerialNo == \"\" || SerialNo == \"0\" || SerialNo == null) {\r\n this.showErrorAlert(\"Serial\", \"Please Enter Serial No \")\r\n return;\r\n }\r\n var baggingtype = $(\"#bagtype option:selected\").text();\r\n if (baggingtype == undefined || baggingtype == \"\" || baggingtype == \"0\" || baggingtype == null) {\r\n this.showErrorAlert(\"baggingtype\", \"Please Enter Bagging Type\")\r\n return;\r\n }\r\n var BagWeight = $(\"#BagWeight\").val();\r\n if (BagWeight == undefined || BagWeight == \"\" || BagWeight == \"0\" || BagWeight == null) {\r\n this.showErrorAlert(\"Weight\", \"Please Enter Bag Weight\")\r\n return;\r\n }\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_CheckBagnoExist'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Bagno\";\r\n pr.PropertyValue = SerialNo;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length <= 0) {\r\n this.transaction.PostAwbBagging(BagType, BagNo, SerialNo, baggingtype, BagWeight, this.rows).subscribe(Result => this.saveSuccessHelper(Result), error => this.saveFailedHelper(error))\r\n }\r\n else {\r\n this.showErrorAlert(\"Bag\", \"Bagno already exist ,please enter diffrent bagno \")\r\n this.isLoading = false;\r\n\r\n }\r\n\r\n }, error => this.onDataLoadFailed(error));\r\n\r\n\r\n this.isLoading = false;\r\n\r\n \r\n }\r\n\r\n private saveSuccessHelper(awbInScanss?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.editedawbbagging.Awbno = awbInScanss[0].Awbno;\r\n this.alertService.showMessage('Success', `awbbagging \\\"${this.editedawbbagging.OfficeName}\\\" was Saved successfully`, MessageSeverity.success);\r\n this.editedawbbagging = new awbbagging();\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n $(\"#bagtype\").get(0).selectedIndex = 0;\r\n $(\"#bagsize\").get(0).selectedIndex = 0;\r\n $(\"#baggingtype\").get(0).selectedIndex = 0;\r\n this.rows = [];\r\n }\r\n \r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n\r\n\r\n\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onEditorModalHidden() {\r\n this.editorModal.hide();\r\n }\r\n awbbaggingdetails_mps(event: any) {\r\n var tmp: string = event.target.value;\r\n var Awbrow = this.rows.find(e => e.mpsno === tmp)\r\n if (isNullOrUndefined(Awbrow)) {\r\n Awbrow = this.rows.find(e => e.mpsno === tmp)\r\n\r\n }\r\n if (isNullOrUndefined(tmp) || tmp == '') {\r\n event.target.focus();\r\n return;\r\n }\r\n if (!isNullOrUndefined(Awbrow) && (Awbrow.mpsno == tmp)) {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Already Exist\")\r\n return;\r\n }\r\n this.OngetSuceesInout(tmp);\r\n }\r\n\r\n awbbaggingdetails(event: any) {\r\n var tmp: string = event.target.value;\r\n var Awbrow = this.rows.find(e => e.Awbno === tmp)\r\n if (isNullOrUndefined(Awbrow)) {\r\n Awbrow = this.rows.find(e => e.Awbno === tmp)\r\n\r\n }\r\n if (isNullOrUndefined(tmp) || tmp == '') {\r\n event.target.focus();\r\n return;\r\n }\r\n if (!isNullOrUndefined(Awbrow) && (Awbrow.Awbno == tmp)) {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Already Exist\")\r\n return;\r\n }\r\n this.OngetSuceesInout(tmp)\r\n }\r\n OngetSuceesInout(awbno: string) {\r\n if (awbno.length >= 10) {\r\n if ($('#bagsize').val() == '0') {\r\n this.showErrorAlert(\"Bag Size\", \"Please Select Bag Size\")\r\n return\r\n }\r\n this.transaction.getAwbbookingDetail(awbno).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n }\r\n\r\n onGetSucessAwbbookingData(result: any) {\r\n\r\n if (result.length > 0) {\r\n if (this.editedawbbagging.Awbno == '' || isNullOrUndefined($('#Awbno').val())){\r\n this.editedawbbagging.Awbno = result[0].awbno;\r\n $('#Awbno').val(result[0].awbno)\r\n }\r\n if ($('#mpsno').val() != '') {\r\n if (parseFloat(result[0].mpsweight) == 0 ) {\r\n this.showErrorAlert(\"MPS\", \"No mps detail found !\")\r\n return;\r\n }\r\n }\r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n for (let i = 0; i < result.length; i++) {\r\n //this.editedawbbagging = result[i];\r\n if (result[i].isOutforDelivery || result[i].isDelivered) {\r\n continue;\r\n }\r\n if ($('#mpsno').val() == '') {\r\n var tmpawb: string = this.editedawbbagging.Awbno;\r\n var Awbrow = this.rows.find(e => e.Awbno === tmpawb)\r\n if (!isNullOrUndefined(Awbrow) && (Awbrow.Awbno == tmpawb)) {\r\n continue;\r\n }\r\n }\r\n else {\r\n let tmpawb: string = $('#mpsno').val();\r\n var Awbrow = this.rows.find(e => e.mpsno === tmpawb)\r\n if (!isNullOrUndefined(Awbrow) && (Awbrow.mpsno == tmpawb)) {\r\n continue;\r\n }\r\n }\r\n\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbbagging();\r\n this.addrow[0].OfficeName = $(\"#OfficeName\").val();\r\n this.addrow[0].BagType = $(\"#baggingtype option:selected\").text();;\r\n this.addrow[0].BagNo = $(\"#BagNo\").val();\r\n this.addrow[0].SerialNo = $(\"#SerialNo\").val();\r\n this.addrow[0].Awbno = result[i].awbno; // $(\"#Awbno\").val();\r\n this.addrow[0].stickerNo = result[i].stickerNo;\r\n this.addrow[0].bagsize = $('#bagsize option:selected').text();\r\n if ($('#mpsno').val() == '') {\r\n this.addrow[0].pieces = result[i].pieces;\r\n this.addrow[0].awbWeight = result[i].awbWeight;\r\n }\r\n else {\r\n this.addrow[0].pieces = '1';\r\n this.addrow[0].awbWeight = result[i].mpsweight;\r\n }\r\n this.addrow[0].destPincode = result[i].destPincode;\r\n this.addrow[0].BagingFor = $(\"#bagtype option:selected\").text();\r\n this.addrow[0].mpsno = $(\"#mpsno\").val();\r\n this.rows[0] = this.addrow[0];\r\n }\r\n else {\r\n var tmp = new awbbagging();\r\n tmp.OfficeName = $(\"#OfficeName\").val();\r\n tmp.BagType = $(\"#baggingtype option:selected\").text();\r\n tmp.BagNo = $(\"#BagNo\").val();\r\n tmp.SerialNo = $(\"#SerialNo\").val();\r\n tmp.Awbno = result[i].awbno;\r\n tmp.bagsize = $('#bagsize option:selected').text();\r\n tmp.stickerNo = result[i].stickerNo;\r\n if ($('#mpsno').val() == '') {\r\n tmp.pieces = result[i].pieces;\r\n tmp.awbWeight = result[i].awbWeight;\r\n }\r\n else {\r\n tmp.pieces = '1';\r\n tmp.awbWeight = result[i].mpsweight;\r\n }\r\n tmp.mpsno = $(\"#mpsno\").val();\r\n tmp.destPincode = result[i].destPincode;\r\n tmp.BagingFor = $(\"#bagtype option:selected\").text()\r\n\r\n this.rows.push(tmp);\r\n }\r\n\r\n }\r\n \r\n \r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n if (awb.pieces == '' || awb.pieces == 'NaN') {\r\n totalpiece = parseInt(totalpiece) + parseInt('0');\r\n } else {\r\n totalpiece = parseInt(totalpiece) + parseInt(awb.pieces);\r\n }\r\n if (awb.awbWeight == '' || awb.awbWeight == 'NaN') {\r\n totalWeight = parseFloat(totalWeight) + parseFloat('0');\r\n } else {\r\n totalWeight = parseFloat(totalWeight) + parseFloat(awb.awbWeight);\r\n }\r\n totalNoofAwb = index + 1;\r\n });\r\n this.editedawbbagging.NoofAwb = totalNoofAwb;\r\n this.editedawbbagging.TotalWeight = totalWeight;\r\n this.editedawbbagging.TotalPieces = totalpiece;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n awb.TotalPieces = totalpiece;\r\n awb.TotalWeight = totalWeight;\r\n awb.NoofAwb = totalNoofAwb;\r\n });\r\n\r\n this.rows = [...this.rows]\r\n $('#Awbno').val('');\r\n $('#Awbno').focus();\r\n $('#mpsno').val('');\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.editedawbbagging.OfficeName = logindata[0].officename;\r\n this.editedawbbagging.Awbno=''\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n\r\n }\r\n\r\n funShowWeight() {\r\n //$('#txtidInterval').val(\"30\");\r\n //$(\"#btnsubmit\").prop(\"disabled\", true);\r\n //this.timerId = setInterval(this.countdown, 1000);\r\n }\r\n countdown() {\r\n if (parseInt($('#txtidInterval').val()) == 0) {\r\n //$(\"#BagWeight\").val(\"10\"); for testing only\r\n }\r\n if (parseInt($('#txtidInterval').val()) == -1) {\r\n if ($(\"#BagWeight\").val() == \"\" || $(\"#BagWeight\").val() == null) {\r\n $(\"#btnsubmit\").prop(\"disabled\", true);\r\n $(\"#SerialNo\").val(\"\");\r\n } else {\r\n $(\"#btnsubmit\").prop(\"disabled\", false);\r\n }\r\n } else {\r\n this.timeLeft = parseInt($('#txtidInterval').val())\r\n this.timeLeft--;\r\n parseInt($('#txtidInterval').val(this.timeLeft))\r\n }\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n\r\nexport class awbbagging {\r\n constructor(OfficeName?: string, BagType?: string, BagNo?: string, Awbno?: string, stickerNo?: string\r\n , pieces?: string, Weight?: string, DestPincode?: string, NoofAwb?: string, TotalWeight?: string\r\n , TotalVolWeight?: string, TotalPieces?: string, SerialNo?: string, BagWeight?: string) {\r\n this.OfficeName = OfficeName;\r\n this.BagType = BagType;\r\n this.BagNo = BagNo;\r\n this.Awbno = Awbno;\r\n this.stickerNo = stickerNo;\r\n this.pieces = pieces;\r\n this.awbWeight = Weight;\r\n this.destPincode = DestPincode;\r\n this.NoofAwb = NoofAwb;\r\n this.TotalWeight = TotalWeight;\r\n this.TotalVolWeight = TotalVolWeight;\r\n this.TotalPieces = TotalPieces;\r\n this.SerialNo = SerialNo;\r\n this.BagWeight = BagWeight;\r\n };\r\n public OfficeName: string\r\n public toOffice:string\r\n public BagingFor: string\r\n public BagType: string\r\n public BagNo: string\r\n public Awbno: string\r\n public stickerNo: string\r\n public pieces: string\r\n public awbWeight: string\r\n public destPincode: string\r\n public NoofAwb: string\r\n public TotalWeight: string\r\n public TotalVolWeight: string\r\n public TotalPieces: string\r\n public SerialNo: string\r\n public BagWeight: string\r\n public bagtype: string\r\n public baggingtype: string\r\n public bagsize: string\r\n public mpsno: string;\r\n\r\n}\r\n","export default \".mat-radio-button ~ .mat-radio-button {\\n margin-left: 16px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9hd2Jib29raW5nL0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXGF3YmJvb2tpbmdcXGF3YmJvb2tpbmcuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYXdiYm9va2luZy9hd2Jib29raW5nLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsaUJBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYXdiYm9va2luZy9hd2Jib29raW5nLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm1hdC1yYWRpby1idXR0b24gfiAubWF0LXJhZGlvLWJ1dHRvbiB7XHJcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XHJcbn1cclxuIiwiLm1hdC1yYWRpby1idXR0b24gfiAubWF0LXJhZGlvLWJ1dHRvbiB7XG4gIG1hcmdpbi1sZWZ0OiAxNnB4O1xufSJdfQ== */\"","import { Route } from '@angular/compiler/src/core';\r\nimport { AfterViewInit, ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatRadioButton, MatRadioChange } from '@angular/material';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\n//import { document } from 'ngx-bootstrap/utils';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Address } from '../controls/addressmaster.component';\r\nimport { AwbMoneyReceipt, ConfirmationDialogComponent, ConfirmDialogModel } from '../controls/confirmation-dialog.component'\r\nimport { DialogMpsComponent, ConfirmDialogMpsModels, MPStransaction } from '../controls/dialog-mps.component'\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service'\r\nimport { MatDialogConfig } from '@angular/material'\r\nimport { isUndefined } from 'ngx-bootstrap/chronos/utils/type-checks';\r\nimport { isNull } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { TallyService } from '../../services/tally.service';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-awbbooking',\r\n templateUrl: './awbbooking.component.html',\r\n styleUrls: ['./awbbooking.component.scss']\r\n})\r\nexport class AwbbookingComponent implements OnInit, AfterViewInit {\r\n\r\n editedawkbooking: awkbooking = new awkbooking();\r\n columns: any[] = [];\r\n rows: awkbooking[] = [];\r\n rowsCache: awkbooking[] = [];\r\n pindata: any[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n actionresult = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n LoadMode = \"1\";\r\n booktype: number = 0;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n displayedFirstImage;\r\n displayedSecondImage;\r\n IstariffAccepted: boolean = false;\r\n msg: any;\r\n public officearr: any[] = [];\r\n public DestArr: any[] = [];\r\n this: any = this\r\n bookingType: string\r\n bookings: string[] = ['Cash', 'Credit', 'Topay', 'Cod', 'Dod']\r\n istopay: boolean = false;\r\n Servicetype: string;\r\n ProductType: string;\r\n opPayMode: string = \"0\"\r\n airsurface: string;\r\n ispripority: boolean = false;\r\n isparcel: boolean = false;\r\n isOpenTopay: boolean = true;\r\n odaedl: string = \"3\";\r\n volwtapp: any = false;\r\n teasample: any = false;\r\n Vas: string = \"\";\r\n coddod: string = \"\";\r\n Searchpincodecity: string = \"\";\r\n owncarrier: string = \"3\";\r\n orgcity: any = \"\";\r\n Unit: string = \"0\";\r\n addressCone: Address = new Address();\r\n addressConr: Address = new Address();\r\n Badata: any = null;\r\n Pindata: any = null;\r\n topaysale: any = null;\r\n IsdodSale: any = null;\r\n iscodeSale: any = null;\r\n Ispriority: any = null;\r\n isparcelService: any = null;\r\n arrcust: any[] = [];\r\n dialogRef: any;\r\n IsECC = false;\r\n IsBA = false;\r\n IsRO = true;\r\n walletBalance: any =\"0\";\r\n walletlogo = require('../../assets/images/ballet.png');\r\n constructor(public dialog: MatDialog, private tally: TallyService, private troute: ActivatedRoute, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService) {\r\n\r\n }\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n @ViewChild('Cash', { static: true })\r\n cashRB: MatRadioButton;\r\n @ViewChild('Credit', { static: true })\r\n creditRB: MatRadioButton;\r\n @ViewChild('Topay', { static: true })\r\n TopayRB: MatRadioButton;\r\n @ViewChild('Cod', { static: true })\r\n CodRB: MatRadioButton;\r\n @ViewChild('Dod', { static: true })\r\n DodRB: MatRadioButton;\r\n\r\n ngOnInit() {\r\n\r\n this.troute.params.subscribe(params => {\r\n this.booktype = params.booktype;\r\n });\r\n this.checkwalletblance();\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n //if (_Balogindata[0].officeCode != '000001' && _Balogindata[0].officeCode != 'B000007' && _Balogindata[0].officeCode != '000002' && _Balogindata[0].officeCode != 'B000127' ) {\r\n // this.booktype = 0;\r\n //}\r\n\r\n if (this.booktype == 1) {\r\n $('#awbNo').removeAttr(\"disabled\")\r\n }\r\n else {\r\n $('#awbNo').attr(\"disabled\", \"disabled\");\r\n }\r\n this.bookingType = \"0\";\r\n this.Servicetype = \"0\";\r\n this.ProductType = \"0\";\r\n this.airsurface = \"0\";\r\n this.isparcel = true;\r\n this.isOpenTopay = true;\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'stickerNo', name: 'Sticker No', width: 100 },\r\n { prop: 'awbNo', name: 'Awb No', width: 100 },\r\n { prop: 'clientCode', name: 'Client Code', width: 100 },\r\n { prop: 'destpinCode', name: 'dest Pin-Code', width: 100 },\r\n { prop: 'awbWeight', name: 'Awb Weight', width: 100 },\r\n { prop: 'pieces', name: 'Pieces', width: 100 },\r\n { prop: 'length', name: 'Length', width: 100 },\r\n { prop: 'pinCode', name: 'Pin-Code', width: 100 },\r\n { prop: 'width', name: 'Width', width: 50 },\r\n { prop: 'height', name: 'Height', width: 50 },\r\n { prop: 'awbValue', name: 'Awb Value', width: 50 },\r\n { prop: 'fovRisk', name: 'Fov Risk', width: 50 },\r\n { prop: 'awbMode', name: 'Awb Mode', width: 50 },\r\n ];\r\n // this.loaddata();\r\n }\r\n\r\n confirmDialog_MPS(mes: any, pieces: any, unit: any, mps: MPStransaction[], callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogMpsModels(\"MPS\", message, pieces, unit, true, '', mps, this.airsurface,);\r\n this.dialogRef = this.dialog.open(DialogMpsComponent, {\r\n disableClose: true,\r\n minWidth: \"800px\",\r\n minHeight: \"400px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n\r\n confirmDialog(mes: any, callback: any, tamount: any): void {\r\n const message = mes;\r\n\r\n const dialogData = new ConfirmDialogModel(\"Know Your Earning\", message, false, \"Save\", this.editedawkbooking.saleType, tamount);\r\n\r\n this.dialogRef = this.dialog.open(ConfirmationDialogComponent, {\r\n maxWidth: \"400px\",\r\n data: dialogData,\r\n disableClose: true\r\n });\r\n\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnResultofmodel(dialogResult) });\r\n }\r\n confirmDialog_edl(mes: any, callback: any, tamount: any): void {\r\n const message = mes;\r\n\r\n const dialogData = new ConfirmDialogModel(\"ODA/EDL\", message, true, \"Yes\", this.editedawkbooking.saleType, tamount, this.editedawkbooking.destpinCode);\r\n\r\n this.dialogRef = this.dialog.open(ConfirmationDialogComponent, {\r\n maxWidth: \"400px\",\r\n data: dialogData,\r\n disableClose: true\r\n });\r\n\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnEdlResultofmodel(dialogResult) });\r\n }\r\n\r\n ngAfterViewInit() {\r\n //if (!this.DodRB.checked && !this.CodRB.checked && !this.TopayRB.checked && !this.creditRB.checked && !this.cashRB.checked) {\r\n // this.cashRB.checked = true;\r\n this.Badata = this.localstre.getData(\"BaLoginData\");\r\n if (this.Badata[0].batype == 'BA' || this.Badata[0].batype == 'ECC') {\r\n (document.getElementById('rowwallet')).style.setProperty(\"visibility\", \"unset\");\r\n }\r\n else {\r\n (document.getElementById('rowwallet')).style.setProperty(\"visibility\", \"hidden\");\r\n }\r\n this.IsECC = false;\r\n this.IsRO = false;\r\n this.IsBA = false;\r\n this.editedawkbooking.requestNo = \"\";\r\n if (this.Badata[0].batype == \"ECC\") {\r\n this.bookingType = \"1\";\r\n this.opPayMode = \"1\"\r\n this.Servicetype = \"0\";\r\n this.ProductType = \"0\";\r\n this.airsurface = \"0\";\r\n this.isparcel = true;\r\n this.IsECC = true;\r\n this.IsRO = false;\r\n this.IsBA = false;\r\n }\r\n else\r\n if (this.Badata[0].batype == \"BA\") {\r\n this.bookingType = \"0\";\r\n this.opPayMode = \"0\"\r\n this.Servicetype = \"0\";\r\n this.ProductType = \"0\";\r\n this.airsurface = \"0\";\r\n this.isparcel = true;\r\n this.IsECC = false;\r\n this.IsRO = false;\r\n this.IsBA = true;\r\n }\r\n else {\r\n\r\n this.bookingType = \"0\";\r\n this.opPayMode = \"0\"\r\n this.Servicetype = \"0\";\r\n this.ProductType = \"0\";\r\n this.airsurface = \"0\";\r\n this.isparcel = true;\r\n this.IsECC = false;\r\n this.IsRO = true;\r\n this.IsBA = false;\r\n }\r\n\r\n $(document).ready(function () {\r\n $('input[type=checkbox][name=volwtapp]').change(function () {\r\n if ($(this).prop(\"checked\")) {\r\n (document.getElementById('volsection')).style.setProperty(\"visibility\", \"unset\");\r\n\r\n }\r\n else {\r\n (document.getElementById('volsection')).style.setProperty(\"visibility\", \"hidden\");\r\n\r\n }\r\n });\r\n $('input[type=checkbox][name=teasample]').change(function () {\r\n if ($(this).prop(\"checked\")) {\r\n (document.getElementById('awbContent')).value = \"Tea Sample\";\r\n\r\n }\r\n else {\r\n (document.getElementById('awbContent')).value = \"\";\r\n (document.getElementById('awbContent')).focus();\r\n\r\n }\r\n });\r\n });\r\n (document.getElementById('clientCode')).value = 'Retail';\r\n (document.getElementById('clientCode')).disabled = true;\r\n (document.getElementById('ClientName')).value = 'N.A';\r\n this.editedawkbooking.ClientName = 'NA';\r\n if (!isNullOrUndefined(this.Badata)) {\r\n this.editedawkbooking.bookoffice = this.Badata[0].officename;\r\n (document.getElementById('bookoffice')).disabled = true;\r\n\r\n }\r\n else {\r\n this.editedawkbooking.bookoffice = this.localstre.getData(\"User_Office\");\r\n (document.getElementById('bookoffice')).disabled = true;\r\n }\r\n this.editedawkbooking.clientCode = 'Retail';\r\n this.editedawkbooking.awbWeight = '250';\r\n this.editedawkbooking.pieces = '1';\r\n if (this.booktype == 0) {\r\n this.editedawkbooking.stickerNo = 'NA';\r\n }\r\n else {\r\n this.editedawkbooking.stickerNo = '';\r\n }\r\n }\r\n showChkState(event) {\r\n if ($('#teasample').prop(\"checked\") && this.pindata[0].isTeaService.trim() == 'Y') {\r\n (document.getElementById('awbContent')).value = \"Tea Sample\";\r\n\r\n }\r\n else {\r\n (document.getElementById('awbContent')).value = \"\";\r\n (document.getElementById('awbContent')).focus();\r\n\r\n }\r\n }\r\n Checkpincode(event: any) {\r\n var tmp: string = (document.getElementById('search')).value\r\n this.addressCone = new Address();\r\n if (!isNullOrUndefined(tmp) && tmp.length >= 6) {\r\n this.ServiceMaster.GetPincodeByPincode(tmp).subscribe(pindata => this.GetSuccessPIndata(pindata), error => this.onDataLoadFailed(error))\r\n }\r\n\r\n }\r\n CheckAwbno(event: any) {\r\n if (this.booktype == 1 && $('#awbNo').val().toString().length == 10) {\r\n var tmpawbno = $('#awbNo').val()\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_CheckAwbno'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Awbno\"\r\n pr.PropertyValue = tmpawbno;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"OfficeId\"\r\n pr.PropertyValue = this.Badata[0].officeid;\r\n Parameter[1] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (!result[0].checkawb) {\r\n $('#awbNo').val('')\r\n this.alertService.showStickyMessage(\"Awbno\", result[0].errMessage, MessageSeverity.error)\r\n $('#awbNo').focus();\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n }\r\n else if (this.booktype == 1 && $('#awbNo').val().toString().length < 10) {\r\n this.alertService.showStickyMessage(\"Awbno\", \"Enter Valid Awbno\", MessageSeverity.error)\r\n $('#awbNo').focus();\r\n }\r\n }\r\n Checkstickerno(event: any) {\r\n if (this.booktype == 1 && $('#stickerNo').val().toString().length == 10 && $('#stickerNo').val().toString().substring(0, 1) == \"S\") {\r\n var tmpawbno = $('#stickerNo').val()\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_CheckStickerno'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"stickerno\"\r\n pr.PropertyValue = tmpawbno;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"officeid\"\r\n pr.PropertyValue = this.Badata[0].officeid;\r\n Parameter[1] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (!result[0].checksticker) {\r\n $('#stickerNo').val('')\r\n this.alertService.showStickyMessage(\"Sticker No\", result[0].errMessage, MessageSeverity.error)\r\n $('#stickerNo').focus();\r\n\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n }\r\n else if (this.booktype == 1 && ($('#stickerNo').val().toString().length < 10 || $('#stickerNo').val().toString().substring(0, 1) != \"S\")) {\r\n //this.alertService.showStickyMessage(\"Sticker No\", \"Enter Valid Sticker No#\", MessageSeverity.error)\r\n var tmpawbno = $('#stickerNo').val()\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_GetBaProductSticker'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"stickerno\"\r\n pr.PropertyValue = tmpawbno;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n if (result[0].officeId != this.Badata[0].officeid) {\r\n this.alertService.showStickyMessage(\"Sticker No\", \"This sticker is not belonging to this office\", MessageSeverity.error)\r\n $('#stickerNo').val('');\r\n $('#stickerNo').focus();\r\n return;\r\n }\r\n if (result[0].mode == \"Air\") {\r\n this.airsurface = \"1\"\r\n }\r\n else {\r\n if (result[0].mode == \"Surface\") {\r\n this.airsurface = \"2\"\r\n }\r\n else {\r\n this.airsurface = \"3\"\r\n }\r\n }\r\n\r\n if (result[0].productName.includes(\"Priority\") == true) {\r\n this.Servicetype = \"3\";\r\n }\r\n else {\r\n if (result[0].productName.includes(\"International\") == true) {\r\n this.Servicetype = \"2\";\r\n }\r\n else {\r\n\r\n this.Servicetype = \"1\";\r\n }\r\n }\r\n\r\n if (result[0].productName.includes(\"Document\") == true) {\r\n this.ProductType = \"1\";\r\n }\r\n else {\r\n if (result[0].productName.includes(\"Parcel\") == true) {\r\n this.ProductType = \"2\";\r\n }\r\n else {\r\n if (result[0].productName.includes(\"Demand\") == true) {\r\n this.ProductType = \"3\";\r\n }\r\n else {\r\n if (result[0].productName.includes(\"Divine\") == true) {\r\n this.ProductType = \"5\";\r\n }\r\n else {\r\n this.ProductType = \"4\";\r\n }\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n this.alertService.showStickyMessage(\"Sticker No\", \"Enter Valid Sticker No#\", MessageSeverity.error)\r\n $('#stickerNo').val('');\r\n $('#stickerNo').focus();\r\n\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n GetSuccessPIndata(pindata: any) {\r\n this.pindata = pindata;\r\n\r\n if (this.booktype == 1) {\r\n $('#awbNo').removeAttr(\"disabled\")\r\n }\r\n else {\r\n $('#awbNo').attr(\"disabled\", \"disabled\");\r\n }\r\n var tmmm = pindata\r\n if (isNullOrUndefined(pindata)) {\r\n this.showErrorAlert('Pincode', \"Pincode Is Non-Servicable,Cannot Proceed\");\r\n\r\n (document.getElementById('formbody')).style.setProperty(\"visibility\", \"hidden\");\r\n return;\r\n }\r\n if (isNullOrUndefined(pindata) || isNullOrUndefined(pindata[0])) {\r\n this.showErrorAlert('Pincode', \"Pincode Is Non-Servicable,Cannot Proceed\");\r\n (document.getElementById('formbody')).style.setProperty(\"visibility\", \"hidden\");\r\n }\r\n else {\r\n if (pindata[0].isNonServiceable.trim() == \"Y\") {\r\n this.showErrorAlert('Pincode', \"Pincode Is Non-Servicable,Cannot Proceed\");\r\n (document.getElementById('formbody')).style.setProperty(\"visibility\", \"hidden\");\r\n\r\n }\r\n else {\r\n (document.getElementById('formbody')).style.setProperty(\"visibility\", \"unset\");\r\n this.Searchpincodecity = pindata[0].pinCode + \" - \" + pindata[0].cityName;\r\n this.editedawkbooking.destpinCode = this.Searchpincodecity;\r\n this.editedawkbooking.OdaEdl = pindata[0].isODAlocation == \"Y \" ? \"ODA\" : pindata[0].isEDLlocation == \"Y \" ? \"EDL\" : \"NA\";\r\n this.odaedl = this.editedawkbooking.OdaEdl == \"ODA\" ? \"1\" : this.editedawkbooking.OdaEdl == \"EDL\" ? \"2\" : \"3\";\r\n (document.getElementById('linkconr')).focus();\r\n this.Pindata = pindata\r\n if (pindata[0].isTeaService.trim() == 'N') {\r\n this.alertService.showDialog(\"Tea sample booking not allowed for this pincode , Booking allowed other then tea booking\")\r\n }\r\n else {\r\n this.alertService.showDialog(\"Tea sample booking allowed for this pincode\")\r\n }\r\n if (this.IsBA) {\r\n $('#Kart').focus()\r\n\r\n }\r\n else {\r\n $('#Cash').focus();\r\n }\r\n if (pindata[0].isCODservice == \"N \") {\r\n this.iscodeSale = false;\r\n }\r\n else {\r\n this.iscodeSale = true;\r\n }\r\n if (pindata[0].isDODService == \"N \") {\r\n this.IsdodSale = false;\r\n }\r\n else {\r\n this.IsdodSale = true;;\r\n }\r\n if (pindata[0].isParcelService == \"N \") {\r\n this.isparcelService = false;\r\n }\r\n else {\r\n this.isparcelService = true;\r\n }\r\n if (pindata[0].isPriorityService == \"N \") {\r\n this.ispripority = false;\r\n }\r\n else {\r\n this.ispripority = true;\r\n }\r\n if (pindata[0].isTopayService == \"N \") {\r\n this.topaysale = false;\r\n }\r\n else {\r\n this.topaysale = true;\r\n }\r\n }\r\n }\r\n }\r\n RbSelectionchange(mrChange: MatRadioChange) {\r\n\r\n if (mrChange.value == '3') {\r\n this.istopay = true;\r\n this.Servicetype = \"1\";\r\n this.ispripority = false;\r\n }\r\n else {\r\n this.istopay = false;\r\n }\r\n\r\n if (mrChange.value == '2') {\r\n (document.getElementById('clientCode')).value = '';\r\n (document.getElementById('clientCode')).disabled = false;\r\n (document.getElementById('ClientName')).value = '';\r\n\r\n }\r\n else\r\n if (mrChange.value == '4') {\r\n (document.getElementById('clientCode')).value = 'Kart';\r\n (document.getElementById('clientCode')).disabled = true;\r\n (document.getElementById('ClientName')).value = 'Kart Sale';\r\n }\r\n else {\r\n (document.getElementById('clientCode')).value = 'Retail';\r\n (document.getElementById('clientCode')).disabled = true;\r\n (document.getElementById('ClientName')).value = 'N.A';\r\n this.editedawkbooking.ClientName = 'N.A';\r\n\r\n\r\n }\r\n }\r\n RbSelectionchange_service(mrChange: MatRadioChange) {\r\n\r\n if (mrChange.value == '3' || mrChange.value == '2') {\r\n this.ispripority = true;\r\n this.ProductType = \"1\";\r\n this.isparcel = false;\r\n }\r\n else {\r\n this.ispripority = false;\r\n this.ProductType = \"2\";\r\n this.isparcel = true;\r\n }\r\n }\r\n\r\n RbSelectionchange_topay(mrChange: MatRadioChange) {\r\n\r\n if (mrChange.value == '3') {\r\n this.isOpenTopay = false;\r\n\r\n }\r\n else {\r\n this.isOpenTopay = true;\r\n $('#topayAmt').val('');\r\n }\r\n }\r\n\r\n\r\n\r\n RbSelectionchange_coddod(mrChange: MatRadioChange) {\r\n this.coddod = mrChange.value;\r\n }\r\n RbSelectionchange_Product(mrChange: MatRadioChange) {\r\n if (mrChange.value == \"1\") {\r\n this.isparcel = false;\r\n this.owncarrier = '3';\r\n this.editedawkbooking.awbValue = \"0\";\r\n }\r\n else {\r\n this.isparcel = true;\r\n\r\n }\r\n\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n LoadSucessdata(awkbooking: awkbooking[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n awkbooking.forEach((prod, index, awkbooking) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...awkbooking];\r\n this.rows = awkbooking;\r\n }\r\n SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('city')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n (document.getElementById('city')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n (document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n gethelplist($event, name: string) {\r\n if (name == 'alloffice') {\r\n this.ServiceMaster.getHelplist(name).subscribe(result => this.onhelpDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n $('#bookoffice').autocomplete({\r\n source: this.officearr,\r\n delay: 10\r\n });\r\n $('#clOffice').autocomplete({\r\n source: this.officearr,\r\n delay: 10\r\n });\r\n }\r\n if (name == 'Destination') {\r\n this.ServiceMaster.getHelplist(name).subscribe(result => this.onhelpDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n $('#destpinCode').autocomplete({\r\n source: this.officearr,\r\n delay: 500\r\n });\r\n }\r\n }\r\n getorgcity(bookoffice: string) {\r\n this.transaction.getorgcity(bookoffice).subscribe(city => this.ongetcitysuccess(city), error => this.onDataLoadFailed(error));\r\n }\r\n getconsadress(event: any) {\r\n var tmp: string = event.target.value;\r\n if (isNullOrUndefined(tmp)) {\r\n event.target.focus();\r\n return;\r\n }\r\n if (!isNullOrUndefined(tmp) && tmp.length >= 10) {\r\n this.transaction.getconsaddress(event.target.value).subscribe(city => this.ongetconsaddresssuccess(city), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n getconradress(event: any) {\r\n var tmp: string = event.target.value;\r\n if (isNullOrUndefined(tmp)) {\r\n event.target.focus();\r\n return;\r\n }\r\n if (!isNullOrUndefined(tmp) && tmp.length >= 10) {\r\n this.transaction.getconraddress(event.target.value).subscribe(city => this.ongetconraddresssuccess(city), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n ongetconsaddresssuccess(add: any) {\r\n if (!isNullOrUndefined(add) && !isNullOrUndefined(add.consName)) {\r\n\r\n this.addressCone.city = add.city != this.Pindata[0].cityName ? this.Pindata[0].cityName : add.city;\r\n this.addressCone.houseNo = add.houseNo;\r\n this.addressCone.landMark = add.landMark;\r\n this.addressCone.pincode = add.pincode != (document.getElementById('search')).value ? (document.getElementById('search')).value : add.pincode;\r\n this.addressCone.stateName = add.stateName != this.Pindata[0].stateName ? this.Pindata[0].stateName : add.stateName;\r\n this.addressCone.streetName = add.streetName;\r\n this.editedawkbooking.consigneename = add.consName;\r\n this.editedawkbooking.consigneeMobleno = add.consMobileno;\r\n if (!isNullOrUndefined(this.editedawkbooking.consigneename)) {\r\n (document.getElementById('city')).value = isNullOrUndefined(this.addressCone.city) ? \"\" : this.addressCone.city;\r\n (document.getElementById('state')).value = isNullOrUndefined(this.addressCone.stateName) ? \"\" : this.addressCone.stateName;\r\n (document.getElementById('houseNo')).value = isNullOrUndefined(this.addressCone.houseNo) ? \"\" : this.addressCone.houseNo;\r\n (document.getElementById('streetName')).value = isNullOrUndefined(this.addressCone.streetName) ? \"\" : this.addressCone.streetName;\r\n (document.getElementById('pincode')).value = isNullOrUndefined(this.addressCone.pincode) ? \"\" : this.addressCone.pincode;\r\n (document.getElementById(\"landMark\")).value = isNullOrUndefined(this.addressCone.landMark) ? \"\" : this.addressCone.landMark;\r\n (document.getElementById(\"consigneename\")).value = isNullOrUndefined(this.editedawkbooking.consigneename) ? \"\" : this.editedawkbooking.consigneename;\r\n (document.getElementById(\"consigneeMobleno\")).value = isNullOrUndefined(this.editedawkbooking.consigneeMobleno) ? \"\" : this.editedawkbooking.consigneeMobleno;\r\n }\r\n }\r\n }\r\n ongetconraddresssuccess(add: any) {\r\n if (!isNullOrUndefined(add) && !isNullOrUndefined(add.conrName)) {\r\n this.addressConr.city = add.city;\r\n this.addressConr.houseNo = add.houseNo;\r\n this.addressConr.landMark = add.landMark;\r\n this.addressConr.pincode = add.pincode;\r\n this.addressConr.stateName = add.stateName;\r\n this.addressConr.streetName = add.streetName;\r\n this.editedawkbooking.consignername = add.conrName;\r\n this.editedawkbooking.consignerMobileno = add.conrMobileno;\r\n if (!isNullOrUndefined(this.editedawkbooking.consignername)) {\r\n (document.getElementById('city')).value = isNullOrUndefined(this.addressConr.city) ? \"\" : this.addressConr.city;\r\n (document.getElementById('state')).value = isNullOrUndefined(this.addressConr.stateName) ? \"\" : this.addressConr.stateName;\r\n (document.getElementById('houseNo')).value = isNullOrUndefined(this.addressConr.houseNo) ? \"\" : this.addressConr.houseNo;\r\n (document.getElementById('streetName')).value = isNullOrUndefined(this.addressConr.streetName) ? \"\" : this.addressConr.streetName;\r\n (document.getElementById('pincode')).value = isNullOrUndefined(this.addressConr.pincode) ? \"\" : this.addressConr.pincode;\r\n (document.getElementById(\"landMark\")).value = isNullOrUndefined(this.addressConr.landMark) ? \"\" : this.addressConr.landMark;\r\n (document.getElementById(\"consignername\")).value = isNullOrUndefined(this.editedawkbooking.consignername) ? \"\" : this.editedawkbooking.consignername;\r\n (document.getElementById(\"consignerMobileno\")).value = isNullOrUndefined(this.editedawkbooking.consignerMobileno) ? \"\" : this.editedawkbooking.consignerMobileno;\r\n }\r\n }\r\n }\r\n ongetcitysuccess(city: any) {\r\n this.orgcity = city;\r\n }\r\n onhelpDatagetSuccessful(states: string[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.officearr = states;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n Insertawkbooking(): any {\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetPrintStatus'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Officeid\"\r\n pr.PropertyValue = _Balogindata[0].officeid\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(_result => {\r\n if (_result.length <= 0) {\r\n var kartcash = this.bookingType == \"4\" ? \"Kart\" : this.opPayMode == \"3\" ? \"TOPAY\" : this.bookingType == \"2\" ? \"DP\" : \"CASH\";\r\n if ((_Balogindata[0].batype == 'BA' || _Balogindata[0].batype == 'ECC') && (kartcash == 'Kart' || kartcash == 'CASH') && (_Balogindata[0].isballetApply == true)) {\r\n if (!isNullOrUndefined(_Balogindata)) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'GetWalletBalance';\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"UserId\"\r\n pr.PropertyValue = _Balogindata[0].officeid;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(wresult => {\r\n if (!isNullOrUndefined(wresult) && wresult.length > 0) {\r\n if (parseFloat(wresult[0].balance) > 0) {\r\n this.editedawkbooking.awbMode = this.airsurface == \"1\" ? \"Air\" : this.airsurface == \"2\" ? \"Surface\" : \"Train\";\r\n this.editedawkbooking.Booktype = this.bookingType == \"4\" ? \"Kart\" : \"Normal\"\r\n this.editedawkbooking.saleType = this.bookingType == \"4\" ? \"Kart\" : this.opPayMode == \"3\" ? \"TOPAY\" : this.bookingType == \"2\" ? \"DP\" : \"CASH\"\r\n this.editedawkbooking.bookoffice = (document.getElementById('bookoffice')).value;\r\n this.editedawkbooking.ServiceType = this.Servicetype == \"1\" ? \"Domestic\" : this.Servicetype == \"2\" ? \"International\" : \"Priority\";\r\n switch (this.editedawkbooking.ServiceType) {\r\n case \"Priority\":\r\n this.editedawkbooking.ProductName = this.ProductType == \"1\" ? \"Priority Document\" : this.ProductType == \"2\" ? \"Priority Parcel\"\r\n : this.ProductType == \"3\" ? \"Priority On Demand\" : this.ProductType == \"4\" ? \"Priority High Value\" : \"\";\r\n break;\r\n case \"International\":\r\n this.editedawkbooking.ProductName = this.ProductType == \"1\" ? \"International Dox\" : this.ProductType == \"2\" ? \"International Parcel\"\r\n : this.ProductType == \"3\" ? \"International On Demand\" : this.ProductType == \"4\" ? \"International High Value\" : \"\";\r\n break;\r\n case \"Domestic\":\r\n this.editedawkbooking.ProductName = this.ProductType == \"1\" ? \"Document\" : this.ProductType == \"2\" ? \"Parcel\"\r\n : this.ProductType == \"3\" ? \"On Demand\" : this.ProductType == \"4\" ? \"High Value\" : \"Divine\";\r\n break;\r\n }\r\n if (this.teasample && this.pindata[0].isTeaService.trim() != 'Y') {\r\n this.alertService.showMessage(\"Tea Booking\", \"You cannot done tea booking for this pincode\", MessageSeverity.error)\r\n return;\r\n }\r\n\r\n this.editedawkbooking.ValueaddedService = this.Vas == \"1\" ? 'DOD' : this.Vas == \"2\" ? 'COD' : \"NA\";\r\n this.editedawkbooking.CodDodAmount = (document.getElementById('CodDodAmt')).value;\r\n this.editedawkbooking.stickerNo = (document.getElementById('stickerNo')).value;\r\n this.editedawkbooking.clientCode = (document.getElementById('clientCode')).value;\r\n this.editedawkbooking.ClientName = (document.getElementById('ClientName')).value;\r\n this.editedawkbooking.awbContent = this.teasample ? 'Tea Sample' : (document.getElementById('awbContent')).value;\r\n this.editedawkbooking.length = (document.getElementById('length')).value;\r\n this.editedawkbooking.width = (document.getElementById('width')).value;\r\n this.editedawkbooking.height = (document.getElementById('height')).value;\r\n this.editedawkbooking.destpinCode = (document.getElementById('destpinCode')).value;\r\n this.editedawkbooking.awbWeight = (document.getElementById('awbWeight')).value;\r\n this.editedawkbooking.pieces = (document.getElementById('pieces')).value;\r\n this.editedawkbooking.awbValue = (document.getElementById('awbValue')).value;\r\n this.editedawkbooking.EwayBillno = (document.getElementById('ewaybillno')).value;\r\n this.editedawkbooking.Paymentmode = this.opPayMode == '1' ? 'CASH' : this.opPayMode == '2' ? 'CREDIT' : 'TOPAY'\r\n this.editedawkbooking.length = isNullOrUndefined(this.editedawkbooking.length) || this.editedawkbooking.length == \"\" ? \"0\" : this.editedawkbooking.length\r\n this.editedawkbooking.width = isNullOrUndefined(this.editedawkbooking.width) || this.editedawkbooking.width == \"\" ? \"0\" : this.editedawkbooking.width\r\n this.editedawkbooking.height = isNullOrUndefined(this.editedawkbooking.height) || this.editedawkbooking.height == \"\" ? \"0\" : this.editedawkbooking.height\r\n this.editedawkbooking.CodDodAmount = isNullOrUndefined(this.editedawkbooking.CodDodAmount) || this.editedawkbooking.CodDodAmount == \"\" ? \"0\" : this.editedawkbooking.CodDodAmount\r\n this.editedawkbooking.awbValue = isNullOrUndefined(this.editedawkbooking.awbValue) || this.editedawkbooking.awbValue == \"\" ? \"0\" : this.editedawkbooking.awbValue\r\n this.editedawkbooking.requestNo = (document.getElementById('requestNo')).value;\r\n if (isNullOrUndefined(this.editedawkbooking.EwayBillno)) {\r\n this.editedawkbooking.EwayBillno = \"NA\";\r\n\r\n }\r\n if (this.editedawkbooking.awbContent.toUpperCase().includes(\"TEA\") && this.pindata[0].isTeaService.trim() != 'Y') {\r\n this.alertService.showMessage(\"Tea Booking\", \"You cannot done tea booking for this pincode\", MessageSeverity.error)\r\n return;\r\n }\r\n\r\n if (this.editedawkbooking.clientCode == '') {\r\n (document.getElementById('clientCode')).focus;\r\n return;\r\n }\r\n this.calvolwt();\r\n this.editedawkbooking.Conradress = this.addressConr;\r\n this.editedawkbooking.Consadress = this.addressCone;\r\n this.editedawkbooking.fovRisk = this.owncarrier == \"1\" ? \"Owner\" : this.owncarrier == \"2\" ? \"Carrier\" : \"NA\"\r\n this.editedawkbooking.OdaEdl = this.odaedl == \"1\" ? \"ODA\" : this.odaedl == \"2\" ? \"EDL\" : \"NA\";\r\n if (!this.validateData()) {\r\n return false;\r\n\r\n }\r\n if (this.Unit == \"1\") {\r\n\r\n this.editedawkbooking.awbWeight = (parseFloat((document.getElementById('awbWeight')).value) / 1000).toFixed(3).toString();\r\n\r\n }\r\n if (parseFloat(this.editedawkbooking.awbWeight) <= 0) {\r\n this.showErrorAlert(\"Awb Weight\", \"Please Enter Weight\")\r\n return;\r\n }\r\n //added by Sandeep 26 March 20222\r\n this.editedawkbooking.topayAmt = (document.getElementById('topayAmt')).value;\r\n if (this.opPayMode == \"3\") {\r\n if (this.editedawkbooking.topayAmt == \"\" || this.editedawkbooking.topayAmt == \"0\") {\r\n this.showErrorAlert(\"Topay Amount\", \"Please Enter Topay Amount\")\r\n return;\r\n }\r\n\r\n }\r\n if (this.editedawkbooking.topayAmt == \"\") {\r\n this.editedawkbooking.topayAmt = \"0\"\r\n }\r\n if (isNullOrUndefined(this.editedawkbooking.topayAmt)) {\r\n this.editedawkbooking.topayAmt = \"0\"\r\n }\r\n //End by Sandeep 26 March 20222\r\n\r\n this.getorgcity(this.editedawkbooking.bookoffice);\r\n\r\n this.IstariffAccepted = false;\r\n this.transaction.GetTariff(this.editedawkbooking.bookoffice, this.isparcel == false ? '0' : this.editedawkbooking.awbValue, this.editedawkbooking.ProductName,\r\n this.editedawkbooking.awbMode,\r\n this.editedawkbooking.Booktype,\r\n (parseFloat(this.editedawkbooking.awbWeight) < (isNaN(parseFloat(this.editedawkbooking.calvolwt)) ? 0 : parseFloat(this.editedawkbooking.calvolwt))) ? this.editedawkbooking.calvolwt : this.editedawkbooking.awbWeight,\r\n this.editedawkbooking.destpinCode, this.editedawkbooking.fovRisk == \"Owner\" ? \"Fov\" : \"Risk\").subscribe(tdata => this.OnSucessCalTariff(tdata), error => this.CaltariffError(error))\r\n\r\n\r\n }\r\n else {\r\n this.showErrorAlert(\"Wallet ballance\", \"Balance not sufficient for booking \");\r\n }\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n\r\n }\r\n }\r\n else {\r\n this.editedawkbooking.awbMode = this.airsurface == \"1\" ? \"Air\" : this.airsurface == \"2\" ? \"Surface\" : \"Train\";\r\n this.editedawkbooking.Booktype = this.bookingType == \"4\" ? \"Kart\" : \"Normal\"\r\n this.editedawkbooking.saleType = this.bookingType == \"4\" ? \"Kart\" : this.opPayMode == \"3\" ? \"TOPAY\" : this.bookingType == \"2\" ? \"DP\" : \"CASH\"\r\n this.editedawkbooking.bookoffice = (document.getElementById('bookoffice')).value;\r\n this.editedawkbooking.ServiceType = this.Servicetype == \"1\" ? \"Domestic\" : this.Servicetype == \"2\" ? \"International\" : \"Priority\";\r\n switch (this.editedawkbooking.ServiceType) {\r\n case \"Priority\":\r\n this.editedawkbooking.ProductName = this.ProductType == \"1\" ? \"Priority Document\" : this.ProductType == \"2\" ? \"Priority Parcel\"\r\n : this.ProductType == \"3\" ? \"Priority On Demand\" : this.ProductType == \"4\" ? \"Priority High Value\" : \"\";\r\n break;\r\n case \"International\":\r\n this.editedawkbooking.ProductName = this.ProductType == \"1\" ? \"International Dox\" : this.ProductType == \"2\" ? \"International Parcel\"\r\n : this.ProductType == \"3\" ? \"International On Demand\" : this.ProductType == \"4\" ? \"International High Value\" : \"\";\r\n break;\r\n case \"Domestic\":\r\n this.editedawkbooking.ProductName = this.ProductType == \"1\" ? \"Document\" : this.ProductType == \"2\" ? \"Parcel\"\r\n : this.ProductType == \"3\" ? \"On Demand\" : this.ProductType == \"4\" ? \"High Value\" : \"Divine\";\r\n break;\r\n }\r\n if (this.teasample && this.pindata[0].isTeaService.trim() != 'Y') {\r\n this.alertService.showMessage(\"Tea Booking\", \"You cannot done tea booking for this pincode\", MessageSeverity.error)\r\n return;\r\n }\r\n\r\n this.editedawkbooking.ValueaddedService = this.Vas == \"1\" ? 'DOD' : this.Vas == \"2\" ? 'COD' : \"NA\";\r\n this.editedawkbooking.CodDodAmount = (document.getElementById('CodDodAmt')).value;\r\n this.editedawkbooking.stickerNo = (document.getElementById('stickerNo')).value;\r\n this.editedawkbooking.clientCode = (document.getElementById('clientCode')).value;\r\n this.editedawkbooking.ClientName = (document.getElementById('ClientName')).value;\r\n this.editedawkbooking.awbContent = this.teasample ? 'Tea Sample' : (document.getElementById('awbContent')).value;\r\n this.editedawkbooking.length = (document.getElementById('length')).value;\r\n this.editedawkbooking.width = (document.getElementById('width')).value;\r\n this.editedawkbooking.height = (document.getElementById('height')).value;\r\n this.editedawkbooking.destpinCode = (document.getElementById('destpinCode')).value;\r\n this.editedawkbooking.awbWeight = (document.getElementById('awbWeight')).value;\r\n this.editedawkbooking.pieces = (document.getElementById('pieces')).value;\r\n this.editedawkbooking.awbValue = (document.getElementById('awbValue')).value;\r\n this.editedawkbooking.EwayBillno = (document.getElementById('ewaybillno')).value;\r\n this.editedawkbooking.Paymentmode = this.opPayMode == '1' ? 'CASH' : this.opPayMode == '2' ? 'CREDIT' : 'TOPAY'\r\n this.editedawkbooking.length = isNullOrUndefined(this.editedawkbooking.length) || this.editedawkbooking.length == \"\" ? \"0\" : this.editedawkbooking.length\r\n this.editedawkbooking.width = isNullOrUndefined(this.editedawkbooking.width) || this.editedawkbooking.width == \"\" ? \"0\" : this.editedawkbooking.width\r\n this.editedawkbooking.height = isNullOrUndefined(this.editedawkbooking.height) || this.editedawkbooking.height == \"\" ? \"0\" : this.editedawkbooking.height\r\n this.editedawkbooking.CodDodAmount = isNullOrUndefined(this.editedawkbooking.CodDodAmount) || this.editedawkbooking.CodDodAmount == \"\" ? \"0\" : this.editedawkbooking.CodDodAmount\r\n this.editedawkbooking.awbValue = isNullOrUndefined(this.editedawkbooking.awbValue) || this.editedawkbooking.awbValue == \"\" ? \"0\" : this.editedawkbooking.awbValue\r\n this.editedawkbooking.requestNo = (document.getElementById('requestNo')).value;\r\n if (isNullOrUndefined(this.editedawkbooking.EwayBillno)) {\r\n this.editedawkbooking.EwayBillno = \"NA\";\r\n\r\n }\r\n if (this.editedawkbooking.awbContent.toUpperCase().includes(\"TEA\") && this.pindata[0].isTeaService.trim() != 'Y') {\r\n this.alertService.showMessage(\"Tea Booking\", \"You cannot done tea booking for this pincode\", MessageSeverity.error)\r\n return;\r\n }\r\n\r\n if (this.editedawkbooking.clientCode == '') {\r\n (document.getElementById('clientCode')).focus;\r\n return;\r\n }\r\n this.calvolwt();\r\n this.editedawkbooking.Conradress = this.addressConr;\r\n this.editedawkbooking.Consadress = this.addressCone;\r\n this.editedawkbooking.fovRisk = this.owncarrier == \"1\" ? \"Owner\" : this.owncarrier == \"2\" ? \"Carrier\" : \"NA\"\r\n this.editedawkbooking.OdaEdl = this.odaedl == \"1\" ? \"ODA\" : this.odaedl == \"2\" ? \"EDL\" : \"NA\";\r\n if (!this.validateData()) {\r\n return false;\r\n\r\n }\r\n if (this.Unit == \"1\") {\r\n\r\n this.editedawkbooking.awbWeight = (parseFloat((document.getElementById('awbWeight')).value) / 1000).toFixed(3).toString();\r\n\r\n }\r\n if (parseFloat(this.editedawkbooking.awbWeight) <= 0) {\r\n this.showErrorAlert(\"Awb Weight\", \"Please Enter Weight\")\r\n return;\r\n }\r\n //added by Sandeep 26 March 20222\r\n this.editedawkbooking.topayAmt = (document.getElementById('topayAmt')).value;\r\n if (this.opPayMode == \"3\") {\r\n if (this.editedawkbooking.topayAmt == \"\" || this.editedawkbooking.topayAmt == \"0\") {\r\n this.showErrorAlert(\"Topay Amount\", \"Please Enter Topay Amount\")\r\n return;\r\n }\r\n\r\n }\r\n if (this.editedawkbooking.topayAmt == \"\") {\r\n this.editedawkbooking.topayAmt = \"0\"\r\n }\r\n if (isNullOrUndefined(this.editedawkbooking.topayAmt)) {\r\n this.editedawkbooking.topayAmt = \"0\"\r\n }\r\n //End by Sandeep 26 March 20222\r\n\r\n this.getorgcity(this.editedawkbooking.bookoffice);\r\n\r\n this.IstariffAccepted = false;\r\n this.transaction.GetTariff(this.editedawkbooking.bookoffice, this.isparcel == false ? '0' : this.editedawkbooking.awbValue, this.editedawkbooking.ProductName,\r\n this.editedawkbooking.awbMode,\r\n this.editedawkbooking.Booktype,\r\n (parseFloat(this.editedawkbooking.awbWeight) < (isNaN(parseFloat(this.editedawkbooking.calvolwt)) ? 0 : parseFloat(this.editedawkbooking.calvolwt))) ? this.editedawkbooking.calvolwt : this.editedawkbooking.awbWeight,\r\n this.editedawkbooking.destpinCode, this.editedawkbooking.fovRisk == \"Owner\" ? \"Fov\" : \"Risk\").subscribe(tdata => this.OnSucessCalTariff(tdata), error => this.CaltariffError(error))\r\n\r\n }\r\n }\r\n else {\r\n this.showErrorAlert(\"Awb Print\", \"Some awb is pending for print ,Please print it first \");\r\n this.router.navigate(['/awbbookdet'])\r\n }\r\n\r\n }, error => this.onDataLoadFailed(error));\r\n\r\n this.checkwalletblance();\r\n\r\n\r\n }\r\n MpsParcel(event: any) {\r\n var val = event.target.value;\r\n if (parseInt(val) > 1) {\r\n if (this.Unit == \"0\") {\r\n this.showErrorAlert(\"Unit\", \"Please Select Unit \")\r\n return;\r\n }\r\n if (this.airsurface == \"0\") {\r\n this.showErrorAlert(\"Transit Mode\", \"Please Select Mode \")\r\n return;\r\n }\r\n val = val + \",\" + this.Unit;\r\n this.confirmDialog_MPS(val, event.target.value, this.Unit, this.editedawkbooking.Mps, this.OnResultofmodel)\r\n }\r\n }\r\n\r\n OnSucessCalTariff(TariffData: any) {\r\n if (this.editedawkbooking.saleType == \"DP\") {\r\n var tmpproduct = \"\"\r\n if ((this.editedawkbooking.ProductName == \"Document\" || this.editedawkbooking.ProductName == \"Parcel\") && this.editedawkbooking.ServiceType == \"Domestic\") {\r\n tmpproduct = this.editedawkbooking.awbMode + \" \" + this.editedawkbooking.ProductName\r\n }\r\n else {\r\n tmpproduct = this.editedawkbooking.ProductName\r\n\r\n }\r\n if (this.booktype == 0) {\r\n this.transaction.postGenawbno(this.editedawkbooking.Booktype, tmpproduct, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n }\r\n else {\r\n if ($('#awbNo').val() == '' || $('#awbNo').val().length < 10) {\r\n this.alertService.showStickyMessage('Awbno', \"Invalid Awbno\", MessageSeverity.error)\r\n $('#awbNo').focus();\r\n return\r\n }\r\n this.onawbgetSuccessful($('#awbNo').val())\r\n }\r\n return;\r\n }\r\n //this.router.navigate(['/awbprint'], { queryParams: { awbno: this.editedawkbooking.awbNo } }); // define your component where you want to go\r\n\r\n this.IstariffAccepted = false;\r\n if (TariffData.length > 0 && !isNullOrUndefined(TariffData[0].message) && TariffData[0].message != '') {\r\n this.confirmDialog(TariffData[0].message + \"\\n\" + \"Are you sure to continue ?\", this.OnResultofmodel, \"0\")\r\n\r\n }\r\n else\r\n if (TariffData.length > 0) {\r\n var TmpString = \"\"\r\n TmpString += \"\"\r\n TmpString += \"\"\r\n\r\n TmpString += \"\"\r\n TmpString += \"\"\r\n TmpString += \"
Frieght:\" + TariffData[0].amount + \"
Other Charge:\" + TariffData[0].riskCharges + \"
Fuel Surcharge:\" + TariffData[0].fusrcharge + \"
Taxable Amount:\" + (parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)).toFixed(2).toString() + \"
Tax Amount :\" + ((parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)) * 18 / 100).toFixed(2).toString() + \"
Total Amount :\" + (Math.round((parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)) +\r\n (((parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)) * 18 / 100)))).toFixed(2).toString() + \"
\"\r\n\r\n\r\n // var TmpString = \" Calcuated Frieght : \" + TariffData[0].amount + \",\\n Other Charges : \" + TariffData[0].riskCharges + \" ,\\n Fuel SurCharges : \" + TariffData[0].fusrcharge +\r\n // \", \\n Taxable Amount : \" + (parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)).toFixed(2).toString() +\r\n // \", \\n Tax Amount : \" + ((parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)) * 18 / 100).toFixed(2).toString() +\r\n // \", \\n Total Amount :\" + ((parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)) +\r\n // (((parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)) * 18 / 100))).toFixed(2).toString()\r\n // if ((this.editedawkbooking.bookoffice.trim() == \"One-x Fancy Bazar\" || this.editedawkbooking.bookoffice.trim() == \"One-x Guwahati\") && this.bookingType == \"1\") {\r\n // let taxmount = (18 / 100) * parseFloat(TariffData[0].amount);\r\n // let tmpamount = parseFloat(TariffData[0].amount) - taxmount;\r\n // TariffData[0].amount = tmpamount.toFixed(2);\r\n //}\r\n this.editedawkbooking.amount = TariffData[0].amount;\r\n this.editedawkbooking.RiskCharges = TariffData[0].riskCharges;\r\n this.editedawkbooking.Fsurcharges = TariffData[0].fusrcharge;\r\n this.editedawkbooking.Taxamount = ((parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)) * 18 / 100).toFixed(2).toString();\r\n this.editedawkbooking.TotalAmount = ((parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)) +\r\n (((parseFloat(TariffData[0].amount) + parseFloat(TariffData[0].riskCharges) + parseFloat(TariffData[0].fusrcharge)) * 18 / 100))).toFixed(2).toString()\r\n\r\n this.confirmDialog(TmpString, this.OnResultofmodel, this.editedawkbooking.TotalAmount)\r\n\r\n }\r\n else {\r\n this.confirmDialog(\"Rate not define.\" + \"\\n\" + \"Are you sure to continue ?\", this.OnResultofmodel, \"0\")\r\n }\r\n\r\n }\r\n OnEdlResultofmodel(result: any) {\r\n if (isNullOrUndefined(result)) {\r\n result = \"Normal ODA\";\r\n }\r\n if (!isNullOrUndefined(result)) {\r\n this.isSaving = true;\r\n var tmpproduct = \"\"\r\n if ((this.editedawkbooking.ProductName == \"Document\" || this.editedawkbooking.ProductName == \"Parcel\") && this.editedawkbooking.ServiceType == \"Domestic\") {\r\n tmpproduct = this.editedawkbooking.awbMode + \" \" + this.editedawkbooking.ProductName\r\n }\r\n else {\r\n tmpproduct = this.editedawkbooking.ProductName\r\n\r\n }\r\n this.editedawkbooking.oDAArea = isNullOrUndefined(result.value) ? result : result.value;\r\n if (this.booktype == 0) {\r\n this.transaction.postGenawbno(this.editedawkbooking.Booktype, tmpproduct, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n }\r\n else {\r\n if ($('#awbNo').val() == '' || $('#awbNo').val().length < 10) {\r\n this.alertService.showStickyMessage('Awbno', \"Invalid Awbno\", MessageSeverity.error)\r\n $('#awbNo').focus();\r\n return\r\n }\r\n this.onawbgetSuccessful($('#awbNo').val())\r\n }\r\n //this.router.navigate(['/awbprint'], { queryParams: { awbno: this.editedawkbooking.awbNo } }); // define your component where you want to go\r\n\r\n }\r\n }\r\n OnMPSResultofmodel(result: any) {\r\n if (result[0].IsError == true) {\r\n alert(\"Error In Mps\")\r\n if (result[0].IsCancel == false) {\r\n this.confirmDialog_MPS(this.editedawkbooking.pieces + \",\" + this.Unit, this.editedawkbooking.pieces, this.Unit, this.editedawkbooking.Mps, this.OnResultofmodel)\r\n }\r\n //this.confirmDialog_MPS(this.editedawkbooking.pieces + \",\" + this.Unit, this.OnMPSResultofmodel)\r\n //this.isSaving = true;\r\n //this.transaction.postGenawbno(this.editedawkbooking.Booktype, this.editedawkbooking.awbMode + \" \" + this.editedawkbooking.ProductName, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n //this.router.navigate(['/awbprint'], { queryParams: { awbno: this.editedawkbooking.awbNo } }); // define your component where you want to go\r\n return;\r\n }\r\n else {\r\n var tmpweight = 0\r\n for (let i = 0; i < result.length; i++) {\r\n tmpweight += parseFloat(result[i].weight)\r\n\r\n }\r\n if (this.Unit == \"1\") {\r\n tmpweight = parseFloat((tmpweight / 1000).toFixed(3))\r\n\r\n }\r\n tmpweight = parseFloat(tmpweight.toFixed(3))\r\n if ((tmpweight) < parseFloat(this.editedawkbooking.awbWeight)) {\r\n this.confirmDialog_MPS(this.editedawkbooking.pieces + \",\" + this.Unit, this.editedawkbooking.pieces, this.Unit, this.editedawkbooking.Mps, this.OnResultofmodel)\r\n return;\r\n }\r\n this.editedawkbooking.Mps = result;\r\n //this.transaction.postGenawbno(this.editedawkbooking.Booktype, tmpproduct, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n\r\n //this.transaction.postGenawbno(this.editedawkbooking.Booktype, this.editedawkbooking.awbMode + \" \" + this.editedawkbooking.ProductName, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n\r\n\r\n }\r\n }\r\n OnResultofmodel(result: any) {\r\n if (this.editedawkbooking.saleType != \"DP\") {\r\n this.editedawkbooking.AwbMr = result;\r\n }\r\n if (typeof result == 'undefined') {\r\n result = false;\r\n }\r\n if (typeof result != 'boolean') {\r\n result = true;\r\n }\r\n\r\n if (result) {\r\n if (this.odaedl == \"1\" || this.odaedl == \"2\") {\r\n this.confirmDialog_edl(\"Do you confirm the ODA/EDL booking?\", this.OnEdlResultofmodel, \"0\")\r\n }\r\n else {\r\n this.isSaving = true;\r\n var tmpproduct = \"\"\r\n if ((this.editedawkbooking.ProductName == \"Document\" || this.editedawkbooking.ProductName == \"Parcel\") && this.editedawkbooking.ServiceType == \"Domestic\") {\r\n tmpproduct = this.editedawkbooking.awbMode + \" \" + this.editedawkbooking.ProductName\r\n }\r\n else {\r\n tmpproduct = this.editedawkbooking.ProductName\r\n\r\n }\r\n if (this.booktype == 0) {\r\n this.transaction.postGenawbno(this.editedawkbooking.Booktype, tmpproduct, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n (document.getElementById(\"awbNo\")).value = this.editedawkbooking.awbNo;\r\n }\r\n else {\r\n if ($('#awbNo').val() == '' || $('#awbNo').val().length < 10) {\r\n this.alertService.showStickyMessage('Awbno', \"Invalid Awbno\", MessageSeverity.error)\r\n $('#awbNo').focus();\r\n return\r\n }\r\n this.onawbgetSuccessful($('#awbNo').val())\r\n }\r\n // define your component where you want to go\r\n\r\n //this.alertService.startLoadingMessage('Saving changes...');\r\n // this.editedawkbooking.stickerNo = '222333333'\r\n\r\n\r\n }\r\n }\r\n }\r\n\r\n CaltariffError(er: any) {\r\n this.IstariffAccepted = false;\r\n }\r\n onawbgetSuccessful(awbno: any) {\r\n this.editedawkbooking.awbNo = awbno;\r\n\r\n if (isNaN(parseFloat(this.editedawkbooking.Taxamount))) {\r\n this.editedawkbooking.Taxamount = '0.00';\r\n this.editedawkbooking.amount = '0.00';\r\n this.editedawkbooking.RiskCharges = '0.00';\r\n this.editedawkbooking.Fsurcharges = '0.00';\r\n this.editedawkbooking.TotalAmount = '0.00';\r\n this.editedawkbooking.Fsurcharges = '0.00';\r\n }\r\n if (parseInt(this.editedawkbooking.awbNo) > 0) {\r\n this.transaction.postTransaction('booking', this.editedawkbooking).subscribe(awkbooking => this.saveSuccessHelper(awkbooking), error => this.saveFailedHelper(error));\r\n\r\n }\r\n else {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Not Generated,Please Check with administrator\")\r\n }\r\n }\r\n setewaybill(event: any) {\r\n var tmp: string = event.target.value\r\n if (parseFloat(tmp) >= 50000) {\r\n (document.getElementById('ewaybillno')).placeholder = \"Enter Ewaybill\"\r\n }\r\n else {\r\n (document.getElementById('ewaybillno')).placeholder = \"NA\"\r\n }\r\n }\r\n private saveSuccessHelper(vendors?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `awbbooking \\\"${this.editedawkbooking.awbNo}\\\" was created successfully`, MessageSeverity.success);\r\n\r\n if (this.editedawkbooking.saleType != 'DP') {\r\n this.transaction.SaveAwbMr(this.editedawkbooking.awbNo, this.editedawkbooking.AwbMr.frieghtAmount,\r\n this.editedawkbooking.AwbMr.GstAmount, this.editedawkbooking.AwbMr.RecieveAmount, this.editedawkbooking.AwbMr.Gstno, this.editedawkbooking.AwbMr.Paymode).subscribe(result => { }, error => { });\r\n }\r\n if (this.rows.length == 0) {\r\n this.rows[0] = vendors[0];\r\n this.rowsCache[0] = vendors[0];\r\n }\r\n else {\r\n this.rows.push(vendors[0])\r\n this.rowsCache.push(vendors[0]);\r\n }\r\n //this.rows.forEach((state, index, citys) => {\r\n // (state as any).index = index + 1;\r\n //});\r\n //this.rowsCache.forEach((state, index, citys) => {\r\n // (state as any).index = index + 1;\r\n //});\r\n this.rowsCache = [...this.rowsCache]\r\n this.rows = [...this.rows]\r\n var addr = 'Mr/Mrs.' + ' ' + this.editedawkbooking.consigneename + '
' +\r\n this.addressCone.houseNo + '
' +\r\n this.addressCone.streetName + '
' +\r\n this.addressCone.city + \"-\" + this.addressCone.pincode + '
' +\r\n this.addressCone.stateName + '
' +\r\n this.editedawkbooking.consigneeMobleno\r\n if (this.booktype == 0) {\r\n if (this.editedawkbooking.saleType == 'CASH' || this.editedawkbooking.saleType == 'TOPAY') {\r\n\r\n this.router.navigate(['/awbprint'], {\r\n queryParams: {\r\n awbno: this.editedawkbooking.awbNo,\r\n module: 'Booking'\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n if (this.editedawkbooking.saleType == 'DP') {\r\n\r\n this.router.navigate(['/awbprintdp'], {\r\n queryParams: {\r\n awbno: this.editedawkbooking.awbNo,\r\n module: 'Booking'\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n if (this.editedawkbooking.saleType == 'Kart') {\r\n\r\n this.router.navigate(['/awbprintkart'], {\r\n queryParams: {\r\n awbno: this.editedawkbooking.awbNo,\r\n module: 'Booking'\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n }\r\n else {\r\n $('#awbNo').val('');\r\n $('#stickerNo').val('');\r\n this.ngAfterViewInit();\r\n (document.getElementById('formbody')).style.setProperty(\"visibility\", \"hidden\");\r\n this.editedawkbooking = new awkbooking();\r\n this.editedawkbooking.bookoffice = this.Badata[0].officename\r\n this.editedawkbooking.awbWeight = '0.00';\r\n this.editedawkbooking.pieces = '1';\r\n this.addressConr = new Address();\r\n this.addressCone = new Address();\r\n this.Unit = '0';\r\n this.editedawkbooking.awbContent = \"\";\r\n this.editedawkbooking.requestNo = \"\";\r\n }\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.awbMode, r.awbNo));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n AddConsignee() {\r\n this.isEditModeconsignee = true;\r\n this.consigneeeditorModal.show();\r\n }\r\n AddConsigner() {\r\n this.isEditModeconsigner = true;\r\n this.consignereditorModal.show();\r\n }\r\n ConrInit() {\r\n (document.getElementById('pincode')).disabled = false;\r\n (document.getElementById('city')).disabled = false;\r\n (document.getElementById('state')).disabled = false;\r\n (document.getElementById('city')).value = isNullOrUndefined(this.addressConr.city) ? \"\" : this.addressConr.city;\r\n (document.getElementById('state')).value = isNullOrUndefined(this.addressConr.stateName) ? \"\" : this.addressConr.stateName;\r\n (document.getElementById('houseNo')).value = isNullOrUndefined(this.addressConr.houseNo) ? \"\" : this.addressConr.houseNo;\r\n (document.getElementById('streetName')).value = isNullOrUndefined(this.addressConr.streetName) ? \"\" : this.addressConr.streetName;\r\n (document.getElementById('pincode')).value = isNullOrUndefined(this.addressConr.pincode) ? \"\" : this.addressConr.pincode;\r\n (document.getElementById(\"landMark\")).value = isNullOrUndefined(this.addressConr.landMark) ? \"\" : this.addressConr.landMark;\r\n (document.getElementById(\"consignername\")).value = isNullOrUndefined(this.editedawkbooking.consignername) ? \"\" : this.editedawkbooking.consignername;\r\n (document.getElementById(\"consignerMobileno\")).value = isNullOrUndefined(this.editedawkbooking.consignerMobileno) ? \"\" : this.editedawkbooking.consignerMobileno;\r\n (document.getElementById('consignerMobileno')).focus();\r\n\r\n }\r\n ConeInit() {\r\n (document.getElementById('pincode')).disabled = true;\r\n (document.getElementById('city')).disabled = true;\r\n (document.getElementById('state')).disabled = true;\r\n (document.getElementById('city')).value = isNullOrUndefined(this.addressCone.city) ? this.Pindata[0].cityName : this.addressCone.city;;\r\n (document.getElementById('state')).value = isNullOrUndefined(this.addressCone.stateName) ? this.Pindata[0].stateName : this.addressCone.stateName;\r\n (document.getElementById('houseNo')).value = isNullOrUndefined(this.addressCone.houseNo) ? \"\" : this.addressCone.houseNo;\r\n (document.getElementById('streetName')).value = isNullOrUndefined(this.addressCone.streetName) ? \"\" : this.addressCone.streetName;\r\n (document.getElementById('pincode')).value = isNullOrUndefined(this.addressCone.pincode) ? (document.getElementById('search')).value : this.addressCone.pincode;\r\n (document.getElementById(\"landMark\")).value = isNullOrUndefined(this.addressCone.landMark) ? \"\" : this.addressCone.landMark;\r\n (document.getElementById(\"consigneename\")).value = isNullOrUndefined(this.editedawkbooking.consigneename) ? \"\" : this.editedawkbooking.consigneename;\r\n (document.getElementById(\"consigneeMobleno\")).value = isNullOrUndefined(this.editedawkbooking.consigneeMobleno) ? \"\" : this.editedawkbooking.consigneeMobleno;\r\n (document.getElementById(\"clOffice\")).value = isNullOrUndefined(this.editedawkbooking.clOffice) ? \"\" : this.editedawkbooking.clOffice;\r\n (document.getElementById('consigneeMobleno')).focus();\r\n\r\n }\r\n\r\n ConsignerHidden() {\r\n this.isEditModeconsigner = false;\r\n this.addressConr.city = (document.getElementById('city')).value;\r\n this.addressConr.stateName = (document.getElementById('state')).value;\r\n this.addressConr.houseNo = (document.getElementById('houseNo')).value;\r\n this.addressConr.streetName = (document.getElementById('streetName')).value;\r\n this.addressConr.pincode = (document.getElementById('pincode')).value;\r\n this.addressConr.landMark = (document.getElementById(\"landMark\")).value;\r\n this.editedawkbooking.consignername = (document.getElementById(\"consignername\")).value;\r\n this.editedawkbooking.consignerMobileno = (document.getElementById(\"consignerMobileno\")).value;\r\n\r\n\r\n this.consignereditorModal.hide();\r\n (document.getElementById('linkcons')).focus();\r\n\r\n }\r\n ConsigneeHidden() {\r\n this.isEditModeconsignee = false;\r\n this.addressCone.city = (document.getElementById('city')).value\r\n this.addressCone.stateName = (document.getElementById('state')).value\r\n this.addressCone.houseNo = (document.getElementById('houseNo')).value\r\n this.addressCone.streetName = (document.getElementById('streetName')).value\r\n this.addressCone.pincode = (document.getElementById('pincode')).value\r\n this.addressCone.landMark = (document.getElementById(\"landMark\")).value\r\n this.editedawkbooking.consigneename = (document.getElementById(\"consigneename\")).value\r\n this.editedawkbooking.consigneeMobleno = (document.getElementById(\"consigneeMobleno\")).value\r\n this.editedawkbooking.clOffice = (document.getElementById(\"clOffice\")).value\r\n\r\n this.consigneeeditorModal.hide();\r\n if (this.bookingType == '2') {\r\n (document.getElementById('clientCode')).focus();\r\n\r\n }\r\n else { (document.getElementById('awbContent')).focus(); }\r\n }\r\n calvolwt() {\r\n var volwt = ''\r\n if (this.airsurface == \"1\") {\r\n volwt = ((parseFloat(this.editedawkbooking.length) * parseFloat(this.editedawkbooking.width) * parseFloat(this.editedawkbooking.height)) / 5000).toString();\r\n }\r\n if (this.airsurface == \"2\" || this.airsurface == \"3\") {\r\n volwt = ((parseFloat(this.editedawkbooking.length) * parseFloat(this.editedawkbooking.width) * parseFloat(this.editedawkbooking.height)) / 4750).toString();\r\n }\r\n\r\n this.editedawkbooking.calvolwt = isNaN(parseFloat(volwt)) ? \"0\" : volwt;\r\n (document.getElementById('calvolwt')).value = this.editedawkbooking.calvolwt;\r\n if (parseInt(this.editedawkbooking.pieces) > 1 && this.editedawkbooking.Mps.length > 0) {\r\n this.editedawkbooking.Mps.forEach((mps, ind, arr) => {\r\n volwt = '0.000';\r\n if (parseFloat(mps.length) > 0 && parseFloat(mps.width) > 0 && parseFloat(mps.height) > 0) {\r\n if (this.airsurface == \"1\") {\r\n volwt = ((parseFloat(mps.length) * parseFloat(mps.width) * parseFloat(mps.height)) / 5000).toString();\r\n }\r\n if (this.airsurface == \"2\" || this.airsurface == \"3\") {\r\n volwt = ((parseFloat(mps.length) * parseFloat(mps.width) * parseFloat(mps.height)) / 4750).toString();\r\n }\r\n }\r\n mps.volwt = isNaN(parseFloat(volwt)) ? \"0\" : volwt;\r\n });\r\n }\r\n }\r\n validateData() {\r\n if (isNullOrUndefined(this.editedawkbooking.bookoffice) || this.editedawkbooking.bookoffice == \"\" || isNullOrUndefined((document.getElementById('bookoffice')).value)) {\r\n (document.getElementById('bookoffice')).focus();\r\n return false;\r\n }\r\n if (this.bookingType == \"0\") {\r\n this.showErrorAlert(\"Booking Type\", \"Please Select Booking Type\")\r\n return false;\r\n }\r\n if (this.opPayMode == \"0\") {\r\n this.showErrorAlert(\"Pay Mode\", \"Please Select Payment Mode \")\r\n return false;\r\n }\r\n if (this.Servicetype == \"0\") {\r\n this.showErrorAlert(\"Service Type\", \"Please Select Service Type\")\r\n return false;\r\n }\r\n if (this.Unit == \"0\") {\r\n this.showErrorAlert(\"Unit\", \"Please Select Unit \")\r\n return false;\r\n }\r\n if (this.airsurface == \"0\") {\r\n this.showErrorAlert(\"Mode\", \"Please Select Mode \")\r\n return false;\r\n }\r\n\r\n if (this.ProductType == \"0\") {\r\n this.showErrorAlert(\"Product Type\", \"Please Select Product Type\")\r\n return false;\r\n }\r\n if (this.bookingType == \"1\" || this.bookingType == \"4\" || this.bookingType == \"2\") {\r\n if (isNullOrUndefined(this.editedawkbooking.consigneename) || isNullOrUndefined(this.editedawkbooking.consigneeMobleno)) {\r\n this.AddConsignee();\r\n return false;\r\n }\r\n }\r\n if (this.bookingType == \"1\" || this.bookingType == \"4\") {\r\n if (isNullOrUndefined(this.editedawkbooking.consignername) || isNullOrUndefined(this.editedawkbooking.consignerMobileno)) {\r\n this.AddConsigner();\r\n return false;\r\n }\r\n }\r\n if (this.bookingType == \"2\") {\r\n if (isNullOrUndefined(this.editedawkbooking.clientCode) || isNullOrUndefined(this.editedawkbooking.ClientName)) {\r\n (document.getElementById('clientCode')).focus();\r\n return false;\r\n }\r\n }\r\n if (isNullOrUndefined(this.editedawkbooking.destpinCode) || this.editedawkbooking.destpinCode == '') {\r\n (document.getElementById('destpinCode')).focus();\r\n return false;\r\n }\r\n if (parseFloat(this.editedawkbooking.awbWeight) == 0 || isNaN(parseFloat(this.editedawkbooking.awbWeight))) {\r\n (document.getElementById('awbWeight')).focus();\r\n this.showErrorAlert(\"Weight\", \"Please enter valid weight\")\r\n return false;\r\n }\r\n if (parseFloat(this.editedawkbooking.awbValue) >= 50000) {\r\n if (isNullOrUndefined(this.editedawkbooking.EwayBillno) || this.editedawkbooking.EwayBillno == 'NA' || this.editedawkbooking.EwayBillno == '0' || this.editedawkbooking.EwayBillno == '') {\r\n this.showErrorAlert(\"Eway Billno\", \"Please Enter Eway Billno\");\r\n (document.getElementById('ewaybillno')).focus();\r\n return false;\r\n }\r\n\r\n }\r\n if (parseFloat(this.editedawkbooking.awbValue) > 0 && this.isparcel) {\r\n if (this.owncarrier == '3') {\r\n this.showErrorAlert(\"Transit Risk\", \"Please select transit risk option\");\r\n return false;\r\n }\r\n\r\n }\r\n if (parseInt(this.editedawkbooking.pieces) > 1) {\r\n var tmpweight = 0\r\n if (isNullOrUndefined(this.editedawkbooking.Mps) || this.editedawkbooking.Mps.length == 0) {\r\n this.confirmDialog_MPS(this.editedawkbooking.pieces + \",\" + this.Unit, this.editedawkbooking.pieces, this.Unit, this.editedawkbooking.Mps, this.OnResultofmodel)\r\n\r\n return false;\r\n }\r\n for (let i = 0; i < this.editedawkbooking.Mps.length; i++) {\r\n tmpweight += parseFloat(this.editedawkbooking.Mps[i].weight)\r\n\r\n }\r\n if (this.Unit == \"1\") {\r\n tmpweight = parseFloat((tmpweight / 1000).toFixed(3))\r\n\r\n }\r\n tmpweight = parseFloat(tmpweight.toFixed(3))\r\n if ((tmpweight) != parseFloat(this.editedawkbooking.awbWeight)) {\r\n this.confirmDialog_MPS(this.editedawkbooking.pieces + \",\" + this.Unit, this.editedawkbooking.pieces, this.Unit, this.editedawkbooking.Mps, this.OnResultofmodel)\r\n return false;\r\n }\r\n }\r\n\r\n if (this.coddod != '') {\r\n if (this.editedawkbooking.CodDodAmount == \"0\" || isNaN(parseFloat(this.editedawkbooking.CodDodAmount))) {\r\n\r\n (document.getElementById('CodDodAmt')).focus();\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n onFileSelected(event, ftype: string) {\r\n debugger;\r\n\r\n if (ftype == 'First') {\r\n if (!event.target.files[0] || event.target.files[0].length == 0) {\r\n this.msg = 'You must select an image';\r\n return;\r\n }\r\n var mimeType = event.target.files[0].type;\r\n\r\n if (mimeType.match(/image\\/*/) == null) {\r\n this.msg = \"Only images are supported\";\r\n return;\r\n }\r\n var reader = new FileReader();\r\n reader.readAsDataURL(event.target.files[0]);\r\n\r\n reader.onload = (_event) => {\r\n this.msg = \"\";\r\n this.displayedFirstImage = reader.result;\r\n }\r\n }\r\n if (ftype != 'First') {\r\n if (!event.target.files[0] || event.target.files[0].length == 0) {\r\n this.msg = 'You must select an image';\r\n return;\r\n }\r\n var mimeType = event.target.files[0].type;\r\n\r\n if (mimeType.match(/image\\/*/) == null) {\r\n this.msg = \"Only images are supported\";\r\n return;\r\n }\r\n var reader = new FileReader();\r\n reader.readAsDataURL(event.target.files[0]);\r\n\r\n reader.onload = (_event) => {\r\n this.msg = \"\";\r\n this.displayedSecondImage = reader.result;\r\n }\r\n }\r\n\r\n }\r\n\r\n GetCustMaster() {\r\n this.ServiceMaster.getcustlist(this.Badata[0].officeid).subscribe(result => this.onDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.arrcust = states;\r\n\r\n\r\n }\r\n SetcodeAndname($event) {\r\n let custcodename: string = (document.getElementById('clientCode')).value;\r\n if (custcodename.indexOf('-') > 0) {\r\n (document.getElementById('ClientName')).value = custcodename.substring(0, custcodename.indexOf('-') - 1);\r\n (document.getElementById('clientCode')).value = custcodename.substring(custcodename.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n Getreversepickup(event) {\r\n\r\n var requestno = $('#requestNo').val()\r\n if (!isNullOrUndefined(requestno)) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_GetReversePickupAwb'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"RequestNo\"\r\n pr.PropertyValue = requestno;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n $('#clientCode').val(result[0].customerCode);\r\n $('#ClientName').val(result[0].customerName);\r\n if (!isNullOrUndefined(result[0].customerName)) {\r\n this.bookingType = \"2\";\r\n }\r\n }\r\n\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n getcustList($event) {\r\n this.GetCustMaster();\r\n $('#clientCode').autocomplete({\r\n source: this.arrcust,\r\n delay: 50\r\n });\r\n }\r\n checkwalletblance() {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'GetWalletBalance'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"UserId\"\r\n pr.PropertyValue = logindata[0].officeid;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (!isNullOrUndefined(result) && result.length > 0) {\r\n this.walletBalance = result[0].balance\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n }\r\n showDialog(msg: string): void {\r\n this.alertService.showDialog(msg, DialogType.prompt, (val) => this.configure(true, val), () => this.configure(false));\r\n }\r\n configure(response: boolean, value?: string) {\r\n\r\n if (response && !isNaN(parseFloat(value)) && parseFloat(value) > 0) {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n\r\n var data = new PaytmRequest();\r\n data.customer = new paytmCustomerMaster();\r\n data.customer.address1 = logindata[0].city;\r\n data.customer.address1 = logindata[0].state;\r\n data.customer.city = logindata[0].city;\r\n data.customer.customerId = logindata[0].officeid;\r\n data.customer.customerName = logindata[0].officename;\r\n data.customer.emailId = logindata[0].emailId;\r\n data.customer.mobileNo = logindata[0].mobileno;\r\n data.customer.pinCode = logindata[0].pincode;\r\n data.txnAmount = parseFloat(value);\r\n var cardata: CartData[] = [];\r\n data.kart = cardata;\r\n\r\n this.tally.PostPaytmToken(data).subscribe(result => {\r\n if (!isNullOrUndefined(result.body.txnToken)) {\r\n this.localstre.saveSessionData(result, \"ptoken\");\r\n this.localstre.saveSessionData(data, \"rqdata\");\r\n\r\n this.route.navigate(['/paytmcheckout'], {\r\n\r\n });// \r\n }\r\n else {\r\n this.alertService.showDialog(\"Error in paytm\");\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n\r\n } else {\r\n this.alertService.showMessage('Paytm Wallet', 'Operation cancelled by user', MessageSeverity.default);\r\n }\r\n }\r\n}\r\n\r\nexport class awkbooking {\r\n constructor(stickerNo?: string, awbNo?: string, clientCode?: string, destpinCode?: string, awbWeight?: string\r\n , pieces?: string, length?: string, width?: string, height?: string, awbValue?: string,\r\n fovRisk?: string, type?: string, awbMode?: string, consigneename?: string, consigneeMobleno?: string,\r\n consignername?: string, consignerMobileno?: string, awbContent?: string, topayAmt?: string, oDAArea?: string) {\r\n\r\n this.stickerNo = stickerNo;\r\n this.awbNo = awbNo;\r\n this.clientCode = clientCode;\r\n this.destpinCode = destpinCode;\r\n this.awbWeight = awbWeight;\r\n this.pieces = pieces;\r\n this.length = length;\r\n this.width = width;\r\n this.height = height;\r\n this.awbValue = awbValue;\r\n this.fovRisk = fovRisk;\r\n this.Booktype = type;\r\n this.awbMode = awbMode;\r\n this.consigneename = consigneename;\r\n this.consigneeMobleno = consigneeMobleno;\r\n this.consignername = consignername;\r\n this.consignerMobileno = consignerMobileno;\r\n this.awbContent = awbContent;\r\n this.topayAmt = topayAmt;\r\n this.oDAArea = oDAArea;\r\n };\r\n public stickerNo: string\r\n public saleType: string\r\n public awbNo: string\r\n public BookingCity: string\r\n public clientCode: string\r\n public destpinCode: string\r\n public awbWeight: string\r\n public pieces: string\r\n public length: string\r\n public width: string\r\n public height: string\r\n public awbValue: string\r\n public fovRisk: string\r\n public Booktype: string\r\n public awbMode: string\r\n public consigneename?: string\r\n public consigneeMobleno?: string\r\n public consignername?: string\r\n public consignerMobileno?: string\r\n public awbContent: string\r\n public CodDodAmount: string\r\n public calvolwt: string\r\n public ClientName: string\r\n public EwayBillno: string\r\n public ValueaddedService: string;\r\n public bookoffice: string;\r\n public ServiceType: string;\r\n public ProductName: string;\r\n public OdaEdl: string;\r\n public Consadress: Address\r\n public Conradress: Address\r\n public clOffice: string\r\n public Paymentmode: string;\r\n public chargedWeight: string;\r\n public amount: string;\r\n public RiskCharges: string;\r\n public Fsurcharges: string;\r\n public Taxamount: string;\r\n public TotalAmount: string;\r\n public Mps: MPStransaction[];\r\n public topayAmt: string;\r\n public AwbMr: AwbMoneyReceipt;\r\n public oDAArea: string;\r\n public requestNo: string;\r\n}\r\nexport class PaytmRequest {\r\n customer: paytmCustomerMaster;\r\n kart: CartData[];\r\n txnAmount: number;\r\n orderno: string;\r\n}\r\n\r\nexport class CartData {\r\n itemId: string;\r\n emailId: string;\r\n itemCategoryId: string;\r\n itemCode: string;\r\n itemName: string;\r\n itemImage: string;\r\n qunaity: number;\r\n weight: number;\r\n price: number;\r\n amount: number;\r\n pieces: number;\r\n kartId: string;\r\n customerId: string;\r\n createdOn: string;\r\n upDatedOn: string;\r\n}\r\n\r\nexport class paytmCustomerMaster {\r\n customerId: string;\r\n customerName: string;\r\n mobileNo: string;\r\n emailId: string;\r\n address1: string;\r\n address2: string;\r\n pinCode: string;\r\n createdOn: string;\r\n updatedOn: string;\r\n city: string;\r\n}\r\n\r\n","export default \".ngx-datatable.material.colored-header .datatable-header {\\n color: #000 !important;\\n background-color: #fff !important;\\n}\\n\\n.datatable-header {\\n background-color: #fff !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9hd2JkaXZpbmUvRDpcXE9uZXhXZWJcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xcYXdiZGl2aW5lXFxhd2JkaXZpbmUuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYXdiZGl2aW5lL2F3YmRpdmluZS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHNCQUFBO0VBQ0EsaUNBQUE7QUNDRjs7QURDQTtFQUNFLGlDQUFBO0FDRUYiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2F3YmRpdmluZS9hd2JkaXZpbmUuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubmd4LWRhdGF0YWJsZS5tYXRlcmlhbC5jb2xvcmVkLWhlYWRlciAuZGF0YXRhYmxlLWhlYWRlciB7XHJcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuLmRhdGF0YWJsZS1oZWFkZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG4iLCIubmd4LWRhdGF0YWJsZS5tYXRlcmlhbC5jb2xvcmVkLWhlYWRlciAuZGF0YXRhYmxlLWhlYWRlciB7XG4gIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLmRhdGF0YWJsZS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59Il19 */\"","import { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { QRCodeComponent } from 'angular2-qrcode'\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { MatDialog } from '@angular/material';\r\nimport { AwbMoneyReceipt, ConfirmDialogMoneyRcptModels, DialogmoneyrecieptComponent } from '../controls/dialogmoneyreciept.component';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\n\r\n@Component({\r\n selector: 'app-awbdivine',\r\n templateUrl: './awbdivine.component.html',\r\n styleUrls: ['./awbdivine.component.scss']\r\n})\r\nexport class AwbdivineComponent implements OnInit {\r\n title = 'angular-qr-code-tutorial';\r\n\r\n public qrdata: any = null;\r\n public level: \"L\" | \"M\" | \"Q\" | \"H\";\r\n Data = [\r\n { Id: 101, Name: 'Nitin', Salary: 1234 },\r\n { Id: 102, Name: 'Sonu', Salary: 1234 },\r\n { Id: 103, Name: 'Mohit', Salary: 1234 },\r\n { Id: 104, Name: 'Rahul', Salary: 1234 },\r\n { Id: 105, Name: 'Kunal', Salary: 1234 }\r\n ];\r\n public awbno: string = \"\";\r\n public Origin: string = \"\";\r\n public Destination: string = \"\";\r\n public Weight: string = \"\";\r\n public Product: string = \"\";\r\n public Pieces: string = \"\";\r\n public ProductId = \"\";\r\n public officeid: string;\r\n public Mode: string = \"\";\r\n public Address: string = \"\"\r\n public Address1: string = \"\"\r\n public topayamount: string = \"\"\r\n public freightamt: string = \"\"\r\n public mobileno: string = \"\"\r\n public officename: string = \"\"\r\n public srlno: string\r\n public gobackmodule: string = \"\"\r\n public consname: string = \"\"\r\n public conrname: string = \"\"\r\n public conshsteet: string = \"\";\r\n public conehsteet: string = \"\";\r\n public GstAmount: string = \"\";\r\n public Payable: string = \"\";\r\n public TotalAmount: string = \"\"\r\n public OrderNo: string = \"\";\r\n public arrlabelsrl: labelsticker[] = [];\r\n public mrdata: AwbMoneyReceipt = new AwbMoneyReceipt();\r\n labelarry: Labelreport[] = [];\r\n status: boolean = false;\r\n usbPrintDriver: UsbDriver;\r\n webPrintDriver: WebPrintDriver;\r\n ip: string = '';\r\n height = 40;\r\n width = 2;\r\n marginLeft = -20;\r\n textMargin = 1;\r\n dialogRef: any;\r\n columns: any[] = [];\r\n\r\n\r\n\r\n Itemcolumns: any[] = [];\r\n Itemrows: itemdetails[] = [];\r\n ItemrowsCache: itemdetails[] = [];\r\n Itemaddrow: itemdetails[] = [];\r\n itemdetails: any[] = [];\r\n // @ViewChild('content') content: ElementRef; \r\n\r\n @ViewChild('content', { static: true })\r\n content: ElementRef;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n constructor(private printService: PrintService, private dialog: MatDialog, private alertService: AlertService, public router: ActivatedRoute, private _router: Router, private transaction: TransactionService) {\r\n //this.usbPrintDriver = new UsbDriver();\r\n //this.printService.isConnected.subscribe(result => {\r\n // this.status = result;\r\n // if (result) {\r\n // console.log('Connected to printer!!!');\r\n // } else {\r\n // console.log('Not connected to printer.');\r\n // }\r\n //});\r\n }\r\n\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.awbno = params.awbno;\r\n this.gobackmodule = params.module;\r\n this.OrderNo = params.orderNo;\r\n //this.Origin = params.origin;\r\n //this.Destination = params.destination;\r\n //this.Weight = params.weight;\r\n //this.Product = params.product;\r\n //this.Pieces = params.pieces;\r\n //this.ProductId = params.productid;\r\n //this.officeid = params.officeid;\r\n //this.Mode = params.mode;\r\n //this.mobileno = params.mobileno\r\n //this.Address = params.address\r\n //this.Address = atob(this.Address)\r\n //this.Address = this.Address.replace(\"Mr/Mrs.\",\"Delivery Address: \"+\"
\")\r\n }\r\n );\r\n //this.awbno = \"1270000715\";\r\n //this.gobackmodule = \"Booking\";\r\n if (this.awbno != '') {\r\n this.transaction.GetAwbBookingDetail(this.awbno, null, null).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n\r\n\r\n\r\n this.level = \"Q\";\r\n this.qrdata = '{\"AWBNO\":\"' + this.awbno + '\",\"Origin\":\"' + this.Origin + '\",\"Destination\":\"' + this.Destination\r\n + '\",\"Weight\":\"' + this.Weight + '\",\"Pieces\":\"' + this.Pieces + '\",\"Product\":\"' + this.Product + '\",\"ProductId\":\"' + this.ProductId + '\",\"Officeid\":\"' + this.officeid + '\"' + \"}\"\r\n this.width = 200;\r\n\r\n\r\n this.transaction.GetOnlineItemdetails(this.OrderNo).subscribe(OrderNo => this.ongetOnlineItemdetailsssuccess(OrderNo), error => this.onDataLoadFailed(error));\r\n }\r\n ngAfterViewInit() {\r\n //(document.getElementById('labeladdress')).innerHTML = '' + this.Address + '';\r\n //(document.getElementById('labeladdress2')).innerHTML = '' + this.Address1 + '';//(document.getElementById('labeladdress')).innerHTML = '' + this.Address+''\r\n }\r\n confirmDialog_Mr(mes: any, callback: any, row: any): void {\r\n const message = mes;\r\n\r\n const dialogData = new ConfirmDialogMoneyRcptModels(\" \", \" \", this.awbno, this.TotalAmount)\r\n\r\n this.dialogRef = this.dialog.open(DialogmoneyrecieptComponent, {\r\n maxWidth: \"700px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMRResult(dialogResult) });\r\n\r\n }\r\n OnMRResult(mr: AwbMoneyReceipt) {\r\n\r\n this.mrdata = mr;\r\n if (!isNullOrUndefined(mr.Awbno) && !isNullOrUndefined(mr.RecieveAmount)) {\r\n \r\n /* this._router.navigate(['/awbprintmr'], {*/\r\n this._router.navigate(['/Awbdivineprintmr'], {\r\n skipLocationChange: true,\r\n queryParams: {\r\n awbno: this.awbno,\r\n module: 'Detail',\r\n GstAmount: this.mrdata.GstAmount,\r\n freightamt: this.mrdata.frieghtAmount,\r\n payable: this.mrdata.RecieveAmount,\r\n Gstno: this.mrdata.Gstno,\r\n Paymode: this.mrdata.Paymode,\r\n\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n onGetSucessAwbbookingData(result: any) {\r\n\r\n if (result.length > 0) {\r\n\r\n this.labelarry = new Array(result.length)\r\n for (let i = 0; i < result.length; i++) {\r\n var labelr = new Labelreport();\r\n labelr.Origin = result[i].origin;;\r\n labelr.Destination = result[i].destPincode + \" - \" + result[i].destcity;\r\n labelr.Weight = result[i].awbWeight\r\n labelr.volwt = result[i].volumetricWeight\r\n labelr.Product = result[i].bookingFor\r\n labelr.Pieces = parseInt(result[i].pieces) > 1 ? result[i].pieces.toString() + \"( MPS )\" : result[i].pieces;\r\n labelr.Mode = result[i].awbMode;\r\n labelr.mobileno = result[i].consMobileno;\r\n labelr.officename = result[i].officename;\r\n labelr.content = result[i].awbContent;\r\n labelr.srlno = result[i].srlno;\r\n labelr.awbno = this.awbno;\r\n labelr.saleType = 'Retail'//result[i].saleType\r\n if (result[i].isTopay) {\r\n this.topayamount = result[i].totalAmount;\r\n }\r\n else {\r\n this.topayamount = 'NA';\r\n }\r\n this.TotalAmount = (parseFloat(result[i].totalAmount)).toFixed(2);\r\n this.freightamt = ((parseFloat(result[i].totalAmount) / 118) * 100).toFixed(2);\r\n this.GstAmount = (parseFloat(result[i].totalAmount) - parseFloat(this.freightamt)).toFixed(2)\r\n this.Payable = Math.round(parseFloat(result[i].totalAmount)).toFixed(2);\r\n this.consname = result[i].consName\r\n this.conshsteet = result[i].conshouseno + \",\" +\r\n result[i].consStreet\r\n let statname = (result[i].consState == result[i].conscity ? \"\" : result[i].consState);\r\n this.Address = result[i].conscity + \"-\" + result[i].conspincode + \",\" + statname\r\n labelr.Address = this.Address;\r\n statname = (result[i].stateName == result[i].city ? \"\" : result[i].stateName);\r\n this.conrname = result[i].conrName;\r\n this.conehsteet = result[i].houseNo + \",\" +\r\n result[i].streetName\r\n this.Address1 = result[i].city + \"-\" + result[i].pincode + \",\" + statname\r\n labelr.Address1 = this.Address1\r\n labelr.conrmobileno = result[i].conrMobileno\r\n if (labelr.Destination.indexOf('-') > 0) {\r\n var TmpDest = labelr.Destination.substring(labelr.Destination.indexOf('-') + 1) + \" - \" + labelr.Destination.substring(0, labelr.Destination.indexOf('-') - 1);\r\n labelr.Destination = TmpDest\r\n this.labelarry[i] = labelr;\r\n }\r\n }\r\n\r\n if (parseInt(result[0].pieces) > 1) {\r\n var tmp = Math.ceil((parseInt(result[0].pieces)) / 4);\r\n this.arrlabelsrl = new Array(tmp);\r\n var sticker = null;\r\n var picecount = 0;\r\n for (let i = 1; i <= tmp; i++) {\r\n sticker = new labelsticker();\r\n for (let k = 0; k < 4; k++) {\r\n if (k == 0) {\r\n\r\n picecount++\r\n sticker.label1 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number1 = this.awbno.toString() + (picecount).toString()\r\n\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n }\r\n if (k == 1) {\r\n picecount++\r\n\r\n sticker.label2 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number2 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n if (k == 2) {\r\n picecount++\r\n\r\n sticker.label3 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number3 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n\r\n }\r\n if (k == 3) {\r\n picecount++\r\n sticker.label4 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number4 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n }\r\n this.arrlabelsrl[i - 1] = sticker\r\n }\r\n\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve Data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n /*printer*/\r\n public SavePDF(): void {\r\n\r\n let DATA = document.getElementById('content');\r\n\r\n html2canvas(DATA).then(canvas => {\r\n debugger;\r\n\r\n var imgWidth = 225;\r\n var pageHeight = 225;\r\n var imgHeight = canvas.height * imgWidth / canvas.width;\r\n const FILEURI = canvas.toDataURL('image/png')\r\n var heightLeft = imgHeight;\r\n var doc = new jsPDF(\"p\", \"mm\", \"a4\"); // landscape\r\n var position = 0;\r\n\r\n var width = doc.internal.pageSize.getWidth();\r\n var height = doc.internal.pageSize.getHeight();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n\r\n while (heightLeft >= 0) {\r\n position = heightLeft - imgHeight;\r\n doc.addPage();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n }\r\n doc.save('qrcode.pdf');\r\n // let fileWidth = 208;\r\n // let fileHeight = canvas.height * fileWidth / canvas.width;\r\n // const FILEURI = canvas.toDataURL('image/png')\r\n // let PDF = new jsPDF('p', 'mm', 'a4');\r\n // let position = 0;\r\n // PDF.addImage(FILEURI, 'PNG', 0, position, fileWidth, fileHeight)\r\n // PDF.save('qrcode.pdf');\r\n });\r\n }\r\n gotobooking() {\r\n if (this.gobackmodule != 'Detail') {\r\n this._router.navigate(['/awbbooking']);\r\n }\r\n else {\r\n this._router.navigate(['/awbbookdet']);\r\n }\r\n }\r\n\r\n\r\n\r\n ongetOnlineItemdetailsssuccess(result: any) {\r\n this.Itemaddrow = null;\r\n this.ItemrowsCache = null;\r\n if (result.length > 0) {\r\n this.Itemrows = [] as itemdetails[];\r\n this.ItemrowsCache = [...this.Itemrows];\r\n this.Itemaddrow = [] as itemdetails[];\r\n this.itemdetails = result;\r\n for (let index = 0; index < this.itemdetails.length; index++) {\r\n if (this.Itemrows.length == 0) {\r\n this.Itemaddrow[0] = new itemdetails();\r\n\r\n this.Itemaddrow[0].itemName = result[index].itemName;\r\n this.Itemaddrow[0].quantity = result[index].qunaity;\r\n this.Itemaddrow[0].weight = result[index].weight;\r\n this.Itemrows = this.Itemaddrow;\r\n }\r\n else {\r\n var tmp = new itemdetails();\r\n\r\n tmp.itemName = result[index].itemName;\r\n tmp.quantity = result[index].qunaity;\r\n tmp.weight = result[index].weight;\r\n this.Itemrows.push(tmp);\r\n }\r\n this.Itemrows.forEach((state, index, states) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.ItemrowsCache = [...this.Itemrows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n}\r\nexport class Labelreport {\r\n public awbno: string\r\n public Origin: string\r\n public Destination: string\r\n public Weight: string\r\n public Product: string\r\n public Pieces: string\r\n public ProductId: string\r\n public officeid: string;\r\n public Mode: string\r\n public Address: string\r\n public Address1: string\r\n public mobileno: string\r\n public officename: string\r\n public srlno: string\r\n public conrmobileno: string;\r\n public volwt: string;\r\n public saleType: string\r\n public freightamt: string;\r\n public Gstamt: string;\r\n public content: string;\r\n\r\n}\r\nexport class labelsticker {\r\n public label1: string\r\n public number1: string\r\n public label2: string\r\n public number2: string\r\n public label3: string\r\n public number3: string\r\n public label4: string\r\n public number4: string\r\n public label5: string\r\n public number5: string\r\n public label6: string\r\n public number6: string\r\n}\r\nexport class itemdetails {\r\n public itemName: string\r\n public quantity: string\r\n public weight: string\r\n \r\n}\r\n\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYXdiaGlzdG9yeS9hd2JoaXN0b3J5LmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-awbhistory',\n templateUrl: './awbhistory.component.html',\n styleUrls: ['./awbhistory.component.scss']\n})\nexport class AwbhistoryComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYXdiaW5zY2FuL2F3Ymluc2Nhbi5jb21wb25lbnQuc2NzcyJ9 */\"","import { DatePipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { map, share } from 'rxjs/operators';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { InscanResponse } from '../inscan/inscan.component';\r\nimport { Message } from '@angular/compiler/src/i18n/i18n_ast';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { ConfirmDialogMpsModels, DialogMpsinscanComponent, MPStransaction } from '../controls/dialog-mpsinscan.component';\r\nimport { MatDialog } from '@angular/material';\r\n\r\ndeclare var $: any;\r\n\r\n\r\n@Component({\r\n selector: 'app-awbinscan',\r\n templateUrl: './awbinscan.component.html',\r\n styleUrls: ['./awbinscan.component.scss']\r\n})\r\nexport class AwbinscanComponent implements OnInit {\r\n \r\n editedawbInScan: awbInScan = new awbInScan();\r\n columns: any[] = [];\r\n bagcolumns: any[] = [];\r\n addrow: awbInScan[] = [];\r\n rows: awbInScan[] = [];\r\n rowsCache: awbInScan[] = [];\r\n bagrows: awbInScan[] = [];\r\n bagrowsCache: awbInScan[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n arrcity2From: any[] = [];\r\n public officearr: any[] = [];\r\n displayedFirstImage;\r\n displayedSecondImage;\r\n msg = '';\r\n isInOut = false;\r\n Islable: any;\r\n datepipe: any;\r\n bookingdata: InscanResponse = new InscanResponse();\r\n modee: string = \"1\"\r\n dialogRef: any;\r\n airsurface: any;\r\n caption: string;\r\n \r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss s');\r\n checkinout: boolean = true;\r\n vendlist: any[];\r\n\r\n constructor(private dialog: MatDialog,private transaction: TransactionService, private configurations: ConfigurationService, private localstre: LocalStoreManager, private router: Router, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n\r\n this.editedawbInScan.date = this.datee;\r\n }\r\n time = new Date();\r\n rxTime = new Date();\r\n intervalId;\r\n subscription: Subscription;\r\n\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n \r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'gridAwbno', name: 'AWB No', width: 100 },\r\n { prop: 'Origin', name: 'Origin', width: 100 },\r\n { prop: 'Destination', name: 'Destination', width: 100 },\r\n { prop: 'Weight', name: 'Weight', width: 100 },\r\n { prop: 'Product', name: 'Product', width: 150 },\r\n { prop: 'Pieces', name: 'Pieces', width: 150 },\r\n ];\r\n this.columns.push({ name: 'Action', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n \r\n this.editedawbInScan.hub = logindata[0].officename;\r\n this.editedawbInScan.scheduleorpriority = \"Scheduled\";\r\n\r\n // Using Basic Interval\r\n this.intervalId = setInterval(() => {\r\n this.time = new Date();\r\n }, 1000);\r\n\r\n // Using RxJS Timer\r\n this.subscription = timer(0, 1000)\r\n .pipe(\r\n map(() => new Date()),\r\n share()\r\n )\r\n .subscribe(time => {\r\n this.rxTime = time;\r\n });\r\n this.getOrigin();\r\n }\r\n getOriginList($event) {\r\n this.getOrigin();\r\n this.arrcity2 = this.arrcity\r\n $('#hub').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n\r\n getvendlist($event) {\r\n this.getVendor();\r\n this.arrcity2= this.vendlist\r\n $('#coloader').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n\r\n confirmDialog_MPS( mps: MPStransaction[],airsurface:any): void {\r\n \r\n const dialogData = new ConfirmDialogMpsModels(\"MPS\", mps, airsurface);\r\n this.dialogRef = this.dialog.open(DialogMpsinscanComponent, {\r\n disableClose: true,\r\n minWidth: \"800px\",\r\n minHeight: \"400px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n\r\n OnMPSResultofmodel(result: any) {\r\n const wt = result.reduce((accumulator, obj) => {\r\n return accumulator + parseFloat(obj.weight);\r\n }, 0);\r\n this.rows.forEach((awbin, index, arr) => {\r\n if (awbin.Awbno == result[0].awbno) {\r\n awbin.Mps = result;\r\n awbin.Pieces = result.length;\r\n awbin.Weight = wt;\r\n awbin.Validate = true;\r\n awbin.TotalPieces = (parseInt(awbin.TotalPieces) - parseInt(awbin.Pieces) + parseInt(result.length)).toFixed(0);\r\n\r\n awbin.Message = result[0].Message;\r\n }\r\n this.editedawbInScan.TotalPieces = (parseInt(awbin.TotalPieces) - parseInt(awbin.Pieces) + parseInt(result.length)).toFixed(0); \r\n\r\n });\r\n \r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n if (awb.Pieces == '' || awb.Pieces == 'NaN') {\r\n totalpiece = parseInt(totalpiece) + parseInt('0');\r\n } else {\r\n totalpiece = parseInt(totalpiece) + parseInt(awb.Pieces);\r\n }\r\n if (awb.Weight == '' || awb.Weight == 'NaN') {\r\n totalWeight = parseFloat(totalWeight) + parseFloat('0');\r\n } else {\r\n totalWeight = parseFloat(totalWeight) + parseFloat(awb.Weight);\r\n }\r\n totalNoofAwb = index + 1;\r\n });\r\n this.editedawbInScan.NoofAwb = totalNoofAwb;\r\n this.editedawbInScan.TotalWeight = totalWeight;\r\n this.editedawbInScan.TotalPieces = totalpiece;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n awb.TotalPieces = totalpiece;\r\n awb.TotalWeight = totalWeight;\r\n awb.NoofAwb = totalNoofAwb;\r\n });\r\n }\r\n getOrigin() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n getVendor() {\r\n this.ServiceMaster.getHelplist(\"VENDOR\").subscribe(result => this.onDatagetSuccessful(result, 'vend'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(ba: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"ba\") {\r\n this.arrcity = ba;\r\n }\r\n else {\r\n this.vendlist = ba;\r\n }\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n LoadSucessdata(awbInScans: awbInScan[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n awbInScans.forEach((prod, index, awbInScans) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n //this.rowsCache = [...rowsCache];\r\n this.rows = awbInScans;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n getCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2From = this.arrcity2From\r\n $('#receivingfrom').autocomplete({\r\n source: this.arrcity2From,\r\n delay: 100 \r\n });\r\n }\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetFromSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetFromSuccessful(City: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"CITY\") {\r\n this.arrcity2From = City;\r\n }\r\n }\r\n InsertAwbInScan()\r\n {\r\n if (isNullOrUndefined(this.editedawbInScan.receivingfrom)) {\r\n (document.getElementById('receivingfrom')).focus();\r\n return;\r\n }\r\n if (this.rows.length <= 0) {\r\n this.showErrorAlert(\"Awbno\", \"No Record To Save\")\r\n\r\n return;\r\n }\r\n this.rows.forEach((awbin, index, arr) => {\r\n if (!awbin.Validate) {\r\n this.showErrorAlert(\"Inscan\", \"Please validate all awbs and pieces\")\r\n return;\r\n }\r\n });\r\n if (this.rows.length <= 0) {\r\n this.showErrorAlert(\"Awbno\", \"No Record To Save\")\r\n\r\n return;\r\n }\r\n\r\n\r\n this.transaction.POSTawbinoutscan(\"IN\", this.rows).subscribe(Result => this.saveSuccessHelper(Result), error => this.saveFailedHelper(error))\r\n\r\n }\r\n private saveSuccessHelper(awbInScanss?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.editedawbInScan.Manifestno = awbInScanss[0].Manifestno;\r\n this.alertService.showMessage('Success', `awbInScan \\\"${this.editedawbInScan.Manifestno}\\\" was created successfully`, MessageSeverity.success);\r\n this.editedawbInScan = new awbInScan();\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n\r\n this.editedawbInScan.hub = logindata[0].officename;\r\n this.editedawbInScan.scheduleorpriority = \"Scheduled\";\r\n this.editedawbInScan.Manifestno = awbInScanss[0].manifestno;\r\n this.rows = [];\r\n\r\n this.router.navigate(['/printmanifest'], {\r\n queryParams: {\r\n Manifest: awbInScanss[0].manifestno,\r\n module: 'Booking'\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // defi\r\n\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.hub));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n GetEnable(row: any) {\r\n if (parseInt(row.Pieces) > 1) {\r\n this.caption = \"Validate\"\r\n return false;\r\n\r\n }\r\n else {\r\n this.caption = \"N/A\"\r\n return true;\r\n\r\n }\r\n }\r\n validate(row: any) {\r\n this.transaction.GetMpsList(row.Awbno).subscribe(Result => { this.OngetsuccessMPs(Result,row.mode) })\r\n\r\n }\r\n OngetsuccessMPs(result: any,mode:string) {\r\n var row: MPStransaction[] = []\r\n row = result;\r\n this.confirmDialog_MPS(row,mode )\r\n }\r\n onGetSucessAwbbookingData(result: any) {\r\n\r\n if (result.length > 0) {\r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n for (let i = 0; i < result.length; i++) {\r\n this.bookingdata = result[i];\r\n if (result[i].isOutforDelivery || result[i].isDelivered) {\r\n continue;\r\n }\r\n var tmpawb: string = this.bookingdata.awbno;\r\n var Awbrow = this.rows.find(e => e.Awbno === tmpawb)\r\n if (!isNullOrUndefined(Awbrow) && (Awbrow.Awbno == tmpawb)) {\r\n continue;\r\n }\r\n // if (result[i].isconnected != false) {\r\n \r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbInScan();\r\n this.addrow[0].gridAwbno = this.bookingdata.awbno;\r\n this.addrow[0].Awbno = this.bookingdata.awbno\r\n this.addrow[0].Origin = this.bookingdata.orgCity;\r\n this.addrow[0].Destination = this.bookingdata.destCity;\r\n this.addrow[0].Weight = this.bookingdata.awbWeight;\r\n this.addrow[0].Product = this.bookingdata.bookingFor;\r\n this.addrow[0].Pieces = this.bookingdata.pieces;\r\n this.addrow[0].receivingfrom = this.editedawbInScan.receivingfrom = (document.getElementById('receivingfrom')).value;\r\n this.addrow[0].date = this.editedawbInScan.date;\r\n this.addrow[0].coloader = this.editedawbInScan.coloader = isNullOrUndefined((document.getElementById('coloader')).value) ? ' ' : (document.getElementById('coloader')).value;\r\n this.addrow[0].origindispatchdate = this.editedawbInScan.origindispatchdate = (document.getElementById('origindispatchdate')).value;\r\n this.addrow[0].loadManifesttime = this.editedawbInScan.loadManifesttime = (document.getElementById('loadManifesttime')).value;\r\n this.addrow[0].Manifestno = this.editedawbInScan.Manifestno;\r\n this.addrow[0].SearchManifestNo = this.editedawbInScan.SearchManifestNo = (document.getElementById('SearchManifestNo')).value;\r\n this.addrow[0].hub = this.editedawbInScan.hub;\r\n this.addrow[0].mode = this.bookingdata.pmode //this.modee == \"1\" ? \"Air\" : \"Surface\";\r\n if (parseInt(this.bookingdata.pieces) == 1) {\r\n this.addrow[0].Validate = true;\r\n this.addrow[0].Message = \"InScan\";\r\n\r\n }\r\n else {\r\n this.addrow[0].Validate = false;\r\n }\r\n this.rows[0] = this.addrow[0];\r\n }\r\n else {\r\n var tmp = new awbInScan();\r\n tmp.gridAwbno = this.bookingdata.awbno;\r\n tmp.Awbno = this.bookingdata.awbno\r\n tmp.receivingfrom = this.editedawbInScan.receivingfrom = (document.getElementById('receivingfrom')).value\r\n tmp.date = this.editedawbInScan.date;\r\n tmp.coloader = this.editedawbInScan.coloader = (document.getElementById('coloader')).value\r\n tmp.origindispatchdate = this.editedawbInScan.origindispatchdate;\r\n tmp.loadManifesttime = this.editedawbInScan.loadManifesttime;\r\n tmp.Manifestno = this.editedawbInScan.Manifestno;\r\n tmp.SearchManifestNo = this.editedawbInScan.SearchManifestNo = (document.getElementById('SearchManifestNo')).value;\r\n tmp.hub = this.editedawbInScan.hub;\r\n tmp.Origin = this.bookingdata.orgCity;\r\n tmp.Destination = this.bookingdata.destCity;;\r\n tmp.Weight = this.bookingdata.awbWeight;;\r\n tmp.Product = this.bookingdata.bookingFor;;\r\n tmp.Pieces = this.bookingdata.pieces;\r\n tmp.mode = this.bookingdata.pmode//this.modee == \"1\" ? \"Air\" : \"Surface\";\r\n if (parseInt(this.bookingdata.pieces) == 1) {\r\n tmp.Validate = true;\r\n tmp.Message = \"InScan\";\r\n }\r\n else {\r\n tmp.Validate = false;\r\n }\r\n this.rows.push(tmp);\r\n }\r\n\r\n \r\n //}\r\n //else {\r\n // alert(\"Booking Connection In Scan Has not Done For This Awb.\")\r\n // break;\r\n //}\r\n }\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n if (awb.Pieces == '' || awb.Pieces == 'NaN') {\r\n totalpiece = parseInt(totalpiece) + parseInt('0');\r\n } else {\r\n totalpiece = parseInt(totalpiece) + parseInt(awb.Pieces);\r\n }\r\n if (awb.Weight == '' || awb.Weight == 'NaN') {\r\n totalWeight = parseFloat(totalWeight) + parseFloat('0');\r\n } else {\r\n totalWeight = parseFloat(totalWeight) + parseFloat(awb.Weight);\r\n }\r\n totalNoofAwb = index + 1;\r\n });\r\n this.editedawbInScan.NoofAwb = totalNoofAwb;\r\n this.editedawbInScan.TotalWeight = totalWeight;\r\n this.editedawbInScan.TotalPieces = totalpiece;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n awb.TotalPieces = totalpiece;\r\n awb.TotalWeight = totalWeight;\r\n awb.NoofAwb = totalNoofAwb;\r\n });\r\n\r\n this.rows = [...this.rows]\r\n $('#Awbno').val('');\r\n $('#Awbno').focus();\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n \r\n }\r\n awbbaggingdetails(event: any) {\r\n var tmp: string = event.target.value;\r\n if (tmp.length == 10) {\r\n var Awbrow = this.rows.find(e => e.Awbno === tmp)\r\n if (isNullOrUndefined(Awbrow)) {\r\n Awbrow = this.rows.find(e => e.SearchManifestNo === tmp)\r\n\r\n }\r\n if (isNullOrUndefined(this.editedawbInScan.receivingfrom)) {\r\n (document.getElementById('receivingfrom')).focus();\r\n return;\r\n }\r\n //if (isNullOrUndefined(tmp) || tmp == '') {\r\n // event.target.focus();\r\n // return;\r\n //}\r\n if (isNullOrUndefined(tmp) || tmp == '') {\r\n return;\r\n }\r\n if (!isNullOrUndefined(Awbrow) && (Awbrow.Awbno == tmp || Awbrow.SearchManifestNo.toUpperCase() == tmp.toUpperCase())) {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Already Exist\")\r\n return;\r\n }\r\n\r\n this.transaction.GetInoutForAwb((document.getElementById('receivingfrom')).value, tmp, \"OUT\").subscribe(\r\n result => this.OngetSuceesInout(result, tmp), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n \r\n }\r\n OngetSuceesInout(result: any,awbno:string) {\r\n this.checkinout = result;\r\n if (awbno.length >= 10 && this.checkinout) {\r\n this.transaction.getAwbbookingDetail(awbno).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n this.showErrorAlert(\"Awbno\", \"Out Scan Not Done By \" + (document.getElementById('receivingfrom')).value)\r\n }\r\n }\r\n}\r\nexport class awbInScan {\r\n constructor(hub?: string, date?: string, receivingfrom?: string,\r\n mode?: string, origindispatchdate?: string, coloader?: string,Awbno?:string,Origin?:string,\r\n Destination?:string,Weight?:string,Product?:string,Pieces?:string,NoofAwb?:string,TotalPieces?:string\r\n ,TotalWeight?:string,scheduleorpriority?:string,Manifestno?:string,loadManifesttime?:string,gridAwbno?:string,\r\n SearchManifestNo?:string) {\r\n\r\n this.hub = hub;\r\n this.date = date;\r\n this.receivingfrom = receivingfrom;\r\n this.mode = mode;\r\n this.origindispatchdate = origindispatchdate;\r\n this.coloader = coloader;\r\n this.Awbno=Awbno;\r\n this.Origin=Origin;\r\n this.Destination=Destination;\r\n this.Weight=Weight;\r\n this.Product=Product;\r\n this.Pieces=Pieces;\r\n this.NoofAwb=NoofAwb;\r\n this.TotalPieces=TotalPieces;\r\n this.TotalWeight=TotalWeight;\r\n this.scheduleorpriority=scheduleorpriority;\r\n this.Manifestno=Manifestno;\r\n this.loadManifesttime=loadManifesttime;\r\n this.gridAwbno=gridAwbno;\r\n this.SearchManifestNo=SearchManifestNo;\r\n };\r\n public hub: string\r\n public date: string\r\n public receivingfrom: string\r\n public mode: string\r\n public origindispatchdate: string\r\n public coloader: string\r\n public Awbno:string\r\n public Origin:string\r\n public Destination:string\r\n public Weight:string\r\n public Product:string\r\n public Pieces:string\r\n public NoofAwb:string\r\n public TotalPieces:string\r\n public TotalWeight:string\r\n public scheduleorpriority:string\r\n public Manifestno:string\r\n public loadManifesttime:string\r\n public gridAwbno:string\r\n public SearchManifestNo: string\r\n public Mps: MPStransaction[];\r\n public Message: string;\r\n public Validate: boolean;\r\n\r\n}\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYXdib3V0c2Nhbi9hd2JvdXRzY2FuLmNvbXBvbmVudC5zY3NzIn0= */\"","import { DatePipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { map, share } from 'rxjs/operators';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { InscanResponse } from '../inscan/inscan.component';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { awbInScan } from '../awbinscan/awbinscan.component';\r\nimport { MPStransaction, ConfirmDialogMpsModels, DialogMpsinscanComponent, } from '../controls/dialog-mpsinscan.component';\r\nimport { MatDialog } from '@angular/material';\r\n\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-awboutscan',\r\n templateUrl: './awboutscan.component.html',\r\n styleUrls: ['./awboutscan.component.scss']\r\n})\r\nexport class AwboutscanComponent implements OnInit {\r\n\r\n editedawbOutScan: awbOutScan = new awbOutScan();\r\n columns: any[] = [];\r\n bagcolumns: any[] = [];\r\n addrow: awbOutScan[] = [];\r\n rows: awbOutScan[] = [];\r\n rowsCache: awbOutScan[] = [];\r\n bagrows: awbOutScan[] = [];\r\n bagrowsCache: awbOutScan[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n caption: string = \"\";\r\n checkinout = true;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n arrcity2From: any[] = [];\r\n displayedFirstImage;\r\n displayedSecondImage;\r\n msg = '';\r\n dialogRef: any;\r\n\r\n isInOut = false;\r\n Islable: any;\r\n datepipe: any;\r\n public officearr: any[] = [];\r\n bookingdata: InscanResponse = new InscanResponse();\r\n modee: string = \"1\"\r\n\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss s');\r\n vendlist: any[];\r\n\r\n\r\n\r\n constructor(private dialog: MatDialog,private transaction: TransactionService, private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private localstre: LocalStoreManager, private ServiceMaster: Masters,) {\r\n\r\n this.editedawbOutScan.date = this.datee;\r\n }\r\n time = new Date();\r\n rxTime = new Date();\r\n intervalId;\r\n subscription: Subscription;\r\n\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n \r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'gridAwbno', name: 'AWB No', width: 100 },\r\n { prop: 'Origin', name: 'Origin', width: 100 },\r\n { prop: 'Destination', name: 'Destination', width: 100 },\r\n { prop: 'Weight', name: 'Weight', width: 100 },\r\n { prop: 'Product', name: 'Product', width: 150 },\r\n { prop: 'Pieces', name: 'Pieces', width: 150 },\r\n ];\r\n this.columns.push({ name: 'Action', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n\r\n this.editedawbOutScan.hub = logindata[0].officename;\r\n this.editedawbOutScan.scheduleorpriority = \"Scheduled\";\r\n // Using Basic Interval\r\n this.intervalId = setInterval(() => {\r\n this.time = new Date();\r\n }, 1000);\r\n\r\n // Using RxJS Timer\r\n this.subscription = timer(0, 1000)\r\n .pipe(\r\n map(() => new Date()),\r\n share()\r\n )\r\n .subscribe(time => {\r\n this.rxTime = time;\r\n });\r\n this.getOrigin();\r\n }\r\n getOriginList($event) {\r\n this.getOrigin();\r\n this.arrcity2 = this.arrcity\r\n $('#hub').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n getvendlist($event) {\r\n this.getVendor();\r\n this.arrcity2 = this.vendlist\r\n $('#coloader').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n\r\n confirmDialog_MPS(mps: MPStransaction[], airsurface: any): void {\r\n\r\n const dialogData = new ConfirmDialogMpsModels(\"MPS\", mps, airsurface);\r\n this.dialogRef = this.dialog.open(DialogMpsinscanComponent, {\r\n disableClose: true,\r\n minWidth: \"800px\",\r\n minHeight: \"400px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n\r\n OnMPSResultofmodel(result: any) {\r\n const wt = result.reduce((accumulator, obj) => {\r\n return accumulator + parseFloat(obj.weight);\r\n }, 0);\r\n this.rows.forEach((awbin, index, arr) => {\r\n if (awbin.Awbno == result[0].awbno) {\r\n awbin.Mps = result;\r\n awbin.Pieces = result.length;\r\n awbin.Weight = wt;\r\n awbin.Validate = true;\r\n awbin.TotalPieces = (parseInt(awbin.TotalPieces) - parseInt(awbin.Pieces) + parseInt(result.length)).toFixed(0);\r\n\r\n awbin.Message = result[0].Message;\r\n }\r\n this.editedawbOutScan.TotalPieces = (parseInt(awbin.TotalPieces) - parseInt(awbin.Pieces) + parseInt(result.length)).toFixed(0);\r\n\r\n });\r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n if (awb.Pieces == '' || awb.Pieces == 'NaN') {\r\n totalpiece = parseInt(totalpiece) + parseInt('0');\r\n } else {\r\n totalpiece = parseInt(totalpiece) + parseInt(awb.Pieces);\r\n }\r\n if (awb.Weight == '' || awb.Weight == 'NaN') {\r\n totalWeight = parseFloat(totalWeight) + parseFloat('0');\r\n } else {\r\n totalWeight = parseFloat(totalWeight) + parseFloat(awb.Weight);\r\n }\r\n totalNoofAwb = index + 1;\r\n });\r\n this.editedawbOutScan.NoofAwb = totalNoofAwb;\r\n this.editedawbOutScan.TotalWeight = totalWeight;\r\n this.editedawbOutScan.TotalPieces = totalpiece;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n awb.TotalPieces = totalpiece;\r\n awb.TotalWeight = totalWeight;\r\n awb.NoofAwb = totalNoofAwb;\r\n });\r\n\r\n }\r\n\r\n getOrigin() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(ba: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"ba\") {\r\n this.arrcity = ba;\r\n }\r\n else {\r\n this.vendlist = ba;\r\n }\r\n }\r\n getCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2From = this.arrcity2From\r\n $('#to').autocomplete({\r\n source: this.arrcity2From,\r\n delay: 100 \r\n });\r\n }\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagettoSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagettoSuccessful(City: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"CITY\") {\r\n this.arrcity2From = City;\r\n }\r\n }\r\n \r\n loaddata() {\r\n this.loadingIndicator = true;\r\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getVendor() {\r\n this.ServiceMaster.getHelplist(\"VENDOR\").subscribe(result => this.onDatagetSuccessful(result, 'vend'), error => this.onDataLoadFailed(error));\r\n }\r\n LoadSucessdata(awbOutScans: awbOutScan[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n awbOutScans.forEach((prod, index, awbOutScans) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n //this.rowsCache = [...rowsCache];\r\n this.rows = awbOutScans;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertAwbOutScan() {\r\n debugger;\r\n if (isNullOrUndefined(this.editedawbOutScan.to)) {\r\n (document.getElementById('to')).focus();\r\n return;\r\n }\r\n if (this.rows.length <= 0) {\r\n this.showErrorAlert(\"Awbno\", \"No Record To Save\")\r\n\r\n return;\r\n }\r\n this.rows.forEach((awbin, index, arr) => {\r\n if (!awbin.Validate) {\r\n this.showErrorAlert(\"Inscan\", \"Please validate all awbs and pieces\")\r\n return;\r\n }\r\n });\r\n this.transaction.POSTawbinoutscan(\"OUT\", this.rows).subscribe(Result => this.saveSuccessHelper(Result), error => this.saveFailedHelper(error))\r\n }\r\n private saveSuccessHelper(awbOutScanss?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `awbOutScan \\\"${awbOutScanss[0].manifestno}\\\" was created successfully`, MessageSeverity.success);\r\n this.editedawbOutScan = new awbOutScan();\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n\r\n this.editedawbOutScan.scheduleorpriority = \"Scheduled\";\r\n this.editedawbOutScan.Manifestno = awbOutScanss[0].manifestno;\r\n this.rows = [];\r\n this.route.navigate(['/printmanifest'], {\r\n queryParams: {\r\n Manifest: this.editedawbOutScan.Manifestno,\r\n module: 'Booking'\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // defi\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.hub));\r\n }\r\n GetEnable(row: any) {\r\n if (parseInt(row.Pieces) > 1) {\r\n this.caption = \"Validate\"\r\n return false;\r\n\r\n }\r\n else {\r\n this.caption = \"N/A\"\r\n return true;\r\n\r\n }\r\n }\r\n validate(row: any) {\r\n this.transaction.GetMpsList(row.Awbno).subscribe(Result => { this.OngetsuccessMPs(Result, row.mode) })\r\n\r\n }\r\n OngetsuccessMPs(result: any, mode: string) {\r\n var row: MPStransaction[] = []\r\n row = result;\r\n this.confirmDialog_MPS(row, mode)\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n onGetSucessAwbbookingData(result: any) {\r\n \r\n if (result.length > 0) {\r\n this.bookingdata = result[0];\r\n if (result[0].isOutforDelivery || result[0].isDelivered) {\r\n this.showErrorAlert(\"Out Scan\", \"OFD or POD already Done, Can Not Out Scan\")\r\n return\r\n }\r\n var Awbrow = this.rows.find(e => e.Awbno === this.bookingdata.awbno)\r\n if (!isNullOrUndefined(Awbrow) && Awbrow.Awbno == this.bookingdata.awbno) {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Already Exist\")\r\n return;\r\n }\r\n // if (result[0].isconnected != false) {\r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbOutScan();\r\n this.addrow[0].gridAwbno = this.bookingdata.awbno;// $('#Awbno').val();\r\n this.addrow[0].Awbno = this.bookingdata.awbno;// $('#Awbno').val();\r\n this.addrow[0].Origin = this.bookingdata.orgCity;\r\n this.addrow[0].Destination = this.bookingdata.destCity;\r\n this.addrow[0].Weight = this.bookingdata.awbWeight;\r\n this.addrow[0].Product = this.bookingdata.bookingFor;\r\n this.addrow[0].Pieces = this.bookingdata.pieces;\r\n this.addrow[0].to = this.editedawbOutScan.to = (document.getElementById('to')).value;\r\n this.addrow[0].date = this.editedawbOutScan.date;\r\n this.addrow[0].coloader = this.editedawbOutScan.coloader = isNullOrUndefined((document.getElementById('coloader')).value) ? ' ' : (document.getElementById('coloader')).value;\r\n this.addrow[0].origindispatchdate = this.editedawbOutScan.origindispatchdate = (document.getElementById('origindispatchdate')).value;\r\n this.addrow[0].loadManifesttime = this.editedawbOutScan.loadManifesttime = (document.getElementById('loadManifesttime')).value;\r\n this.addrow[0].Manifestno = this.editedawbOutScan.Manifestno;\r\n //this.addrow[0].SearchManifestNo = this.editedawbInScan.SearchManifestNo = (document.getElementById('SearchManifestNo')).value;\r\n this.addrow[0].hub = this.editedawbOutScan.hub;\r\n this.addrow[0].mode = this.modee == \"1\" ? \"Air\" : \"Surface\";\r\n if (parseInt(this.bookingdata.pieces) == 1) {\r\n this.addrow[0].Validate = true;\r\n this.addrow[0].Message = \"InScan\";\r\n\r\n }\r\n else {\r\n this.addrow[0].Validate = false;\r\n }\r\n this.rows[0] = this.addrow[0];\r\n }\r\n else {\r\n var tmp = new awbOutScan();\r\n tmp.gridAwbno = this.bookingdata.awbno;// $('#Awbno').val();\r\n tmp.Awbno = this.bookingdata.awbno;// $('#Awbno').val();\r\n tmp.to = this.editedawbOutScan.to = (document.getElementById('to')).value\r\n tmp.date = this.editedawbOutScan.date;\r\n tmp.coloader = this.editedawbOutScan.coloader = (document.getElementById('coloader')).value\r\n tmp.origindispatchdate = this.editedawbOutScan.origindispatchdate;\r\n tmp.loadManifesttime = this.editedawbOutScan.loadManifesttime;\r\n tmp.Manifestno = this.editedawbOutScan.Manifestno;\r\n //tmp.SearchManifestNo = this.editedawbInScan.SearchManifestNo = (document.getElementById('SearchManifestNo')).value;\r\n tmp.hub = this.editedawbOutScan.hub;\r\n tmp.Origin = this.bookingdata.orgCity;\r\n tmp.Destination = this.bookingdata.destCity;;\r\n tmp.Weight = this.bookingdata.awbWeight;;\r\n tmp.Product = this.bookingdata.bookingFor;;\r\n tmp.Pieces = this.bookingdata.pieces;\r\n tmp.mode = this.modee == \"1\" ? \"Air\" : \"Surface\";\r\n if (parseInt(this.bookingdata.pieces) == 1) {\r\n this.addrow[0].Validate = true;\r\n this.addrow[0].Message = \"InScan\";\r\n\r\n }\r\n else {\r\n this.addrow[0].Validate = false;\r\n }\r\n this.rows.push(tmp);\r\n }\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n if (awb.Pieces == '' || awb.Pieces == 'NaN') {\r\n totalpiece = parseInt(totalpiece) + parseInt('0');\r\n } else {\r\n totalpiece = parseInt(totalpiece) + parseInt(awb.Pieces);\r\n }\r\n if (awb.Weight == '' || awb.Weight == 'NaN') {\r\n totalWeight = parseFloat(totalWeight) + parseFloat('0');\r\n } else {\r\n totalWeight = parseFloat(totalWeight) + parseFloat(awb.Weight);\r\n }\r\n totalNoofAwb = index + 1;\r\n });\r\n this.editedawbOutScan.NoofAwb = totalNoofAwb;\r\n this.editedawbOutScan.TotalWeight = totalWeight;\r\n this.editedawbOutScan.TotalPieces = totalpiece;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n awb.TotalPieces = totalpiece;\r\n awb.TotalWeight = totalWeight;\r\n awb.NoofAwb = totalNoofAwb;\r\n });\r\n\r\n this.rows = [...this.rows]\r\n $('#Awbno').val('');\r\n $('#Awbno').focus();\r\n //}\r\n //else {\r\n // alert(\"Booking Connection In Scan Has not Done For This Awb.\")\r\n //}\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n awbbaggingdetails(event: any) {\r\n var tmp: string = event.target.value;\r\n if (tmp.length == 10) {\r\n var Awbrow = this.rows.find(e => e.Awbno === tmp)\r\n if (!isNullOrUndefined(Awbrow) && Awbrow.Awbno == tmp) {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Already Exist\")\r\n return;\r\n }\r\n if (isNullOrUndefined(this.editedawbOutScan.to)) {\r\n (document.getElementById('to')).focus();\r\n return;\r\n }\r\n if (isNullOrUndefined(tmp) || tmp == '') {\r\n event.target.focus();\r\n return;\r\n }\r\n var tmpname = (document.getElementById('hub')).value\r\n\r\n this.transaction.GetInoutForAwb((document.getElementById('hub')).value, tmp, \"IN\").subscribe(\r\n result => this.OngetSuceesInout(result, tmp), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n OngetSuceesInout(result: any, awbno: string) {\r\n this.checkinout = result;\r\n if (awbno.length == 10 && this.checkinout) {\r\n this.transaction.getAwbbookingDetail(awbno).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n this.showErrorAlert(\"Awbno\", \"In Scan Not Done By \" + (document.getElementById('hub')).value)\r\n }\r\n }\r\n}\r\nexport class awbOutScan {\r\n constructor(hub?: string, date?: string, to?: string,\r\n mode?: string, origindispatchdate?: string, coloader?: string,Awbno?:string,Origin?:string,\r\n Destination?:string,Weight?:string,Product?:string,Pieces?:string,NoofAwb?:string,TotalPieces?:string\r\n ,TotalWeight?:string,scheduleorpriority?:string,Manifestno?:string,loadManifesttime?:string,gridAwbno?:string) {\r\n\r\n this.hub = hub;\r\n this.date = date;\r\n this.to = to;\r\n this.mode = mode;\r\n this.origindispatchdate = origindispatchdate;\r\n this.coloader = coloader;\r\n this.Awbno=Awbno;\r\n this.Origin=Origin;\r\n this.Destination=Destination;\r\n this.Weight=Weight;\r\n this.Product=Product;\r\n this.Pieces=Pieces;\r\n this.NoofAwb=NoofAwb;\r\n this.TotalPieces=TotalPieces;\r\n this.TotalWeight=TotalWeight;\r\n this.scheduleorpriority=scheduleorpriority;\r\n this.Manifestno=Manifestno;\r\n this.loadManifesttime=loadManifesttime;\r\n this.gridAwbno=gridAwbno;\r\n };\r\n public hub: string\r\n public date: string\r\n public to: string\r\n public mode: string\r\n public origindispatchdate: string\r\n public coloader: string\r\n public Awbno:string\r\n public Origin:string\r\n public Destination:string\r\n public Weight:string\r\n public Product:string\r\n public Pieces:string\r\n public NoofAwb:string\r\n public TotalPieces:string\r\n public TotalWeight:string\r\n public scheduleorpriority:string\r\n public Manifestno: string\r\n public Mps: MPStransaction[];\r\n public gridAwbno: string\r\n public loadManifesttime: string\r\n public Message: string;\r\n public Validate: boolean;\r\n}\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYXdic2VyaWVzbWFzdGVyL2F3YnNlcmllc21hc3Rlci5jb21wb25lbnQuc2NzcyJ9 */\"","import { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\n@Component({\r\n selector: 'app-awbseriesmaster',\r\n templateUrl: './awbseriesmaster.component.html',\r\n styleUrls: ['./awbseriesmaster.component.scss']\r\n})\r\nexport class AwbseriesmasterComponent implements OnInit {\r\n\r\n editedAwbseries: AwbseriesMaster = new AwbseriesMaster();\r\n columns: any[] = [];\r\n rows: AwbseriesMaster[] = [];\r\n rowsCache: AwbseriesMaster[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n prodtype: string = \"Kart\"\r\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n productname: any[] = [];\r\n\r\n producttype = [\"Select\",\"Kart\", \"Normal\"]\r\n \r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'productType', name: 'Product Type', width: 100 },\r\n { prop: 'productName', name: 'Product Name', width: 100 },\r\n { prop: 'awbFrom', name: 'Awb From', width: 100 },\r\n { prop: 'awbto', name: 'Awb To', width: 100 },\r\n { prop: 'stickerFrom', name: 'Sticker From', width: 100 },\r\n { prop: 'stickerto', name: 'Sticker To', width: 100 },\r\n { prop: 'isVirtual', name: 'IsVirtual', width: 50 },\r\n { prop: 'isPhySical', name: 'IsPhySical', width: 50 },\r\n ];\r\n this.loaddata();\r\n\r\n }\r\n onDatagetSuccessful(product: any[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.productname = product;\r\n }\r\n getchecked(stringname: string, Ischecked: boolean) {\r\n (document.getElementById(stringname)).checked = false;\r\n //if (stringname == \"isVirtual\")\r\n //{ (document.getElementById(\"isVirtual\")).checked = false; }\r\n //else { (document.getElementById(\"isPhysical\")).checked = false };\r\n }\r\n GetProductList($event) {\r\n var selectElement = $event.value;\r\n \r\n var optionText = this.producttype[parseInt(selectElement)]\r\n \r\n\r\n this.ServiceMaster.ProductList(optionText).subscribe(result => this.onDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n this.prodtype = optionText;\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n this.ServiceMaster.GetAwbseries().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n }\r\n LoadSucessdata(Awbseries: AwbseriesMaster[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n Awbseries.forEach((prod, index, Awbseries) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...Awbseries];\r\n this.rows = Awbseries;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertAwbseries() {\r\n debugger;\r\n if (this.editedAwbseries.productName == 'Select' || this.editedAwbseries.productType == 'Select') {\r\n \r\n this.alertService.showMessage(\"Failure\", \"Please Select Correct Value\", MessageSeverity.error);\r\n return false;\r\n }\r\n this.editedAwbseries.isVirtual = (document.getElementById(\"isVirtual\")).checked ? \"Y\" : \"N\";\r\n this.editedAwbseries.isPhySical = (document.getElementById(\"isPhySical\")).checked ?\"Y\":\"N\";\r\n this.isSaving = true;\r\n this.editedAwbseries.productType = this.prodtype;\r\n this.editedAwbseries.productCode = this.editedAwbseries.productName;\r\n this.editedAwbseries.productName = this.productname[(document.getElementById(\"productName\")).options.selectedIndex-1].productname;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.ServiceMaster.NewAwbseries(this.editedAwbseries).subscribe(awbseries => this.saveSuccessHelper(awbseries), error => this.saveFailedHelper(error));\r\n }\r\n private saveSuccessHelper(awbseries?: AwbseriesMaster) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `Awbseries \\\"${this.editedAwbseries.productType + \"-\" + this.editedAwbseries.productName}\\\" was created successfully`, MessageSeverity.success);\r\n if (this.rows.length == 0) {\r\n this.rows[0] = awbseries[0];\r\n this.rowsCache[0] = awbseries[0];\r\n }\r\n else {\r\n this.rows.push(awbseries[0]);\r\n this.rowsCache.push(awbseries[0]);\r\n }\r\n this.rows.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache = [...this.rowsCache]\r\n this.rows = [...this.rows]\r\n this.editedAwbseries = new AwbseriesMaster()\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.productName, r.productType));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n}\r\nexport class AwbseriesMaster {\r\n constructor(productName?: string, productType?: string, awbFrom?: string, awbto?: string, isVirtual?: string\r\n , isPhySical?: string, stickerFrom?: string, stickerto?: string) {\r\n this.productName = productName;\r\n this.productType = productType;\r\n this.awbFrom = awbFrom;\r\n this.awbto = awbto;\r\n this.isVirtual = isVirtual;\r\n this.isPhySical = isPhySical;\r\n this.stickerFrom = stickerFrom;\r\n this.stickerto = stickerto;\r\n };\r\n public productCode: string\r\n public productName: string\r\n public productType: string\r\n public awbFrom: string\r\n public awbto: string\r\n public isVirtual: string\r\n public isPhySical: string\r\n public stickerFrom: string\r\n public stickerto: string\r\n}\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYmFkYW1hc3Rlci9iYWRhbWFzdGVyLmNvbXBvbmVudC5zY3NzIn0= */\"","import { AfterContentInit, AfterViewInit, ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatRadioButton, MatRadioChange, MatRadioGroup } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { document } from 'ngx-bootstrap/utils';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Address } from '../controls/addressmaster.component';\r\nimport { ConfirmDialogRateModels, DailogQuoteRatebaMasterComponent } from '../controls/dailog-Quoterateba-master.component';\r\nimport { ConfirmDialogocModels, DialogQuoteOtherChargeComponent, OtherChargesRateMaster } from '../controls/dialog-Quoteother-charge.component';\r\nimport { CustRate } from '../quotecustomermaster/quotecustomermaster.component';\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-badamaster',\r\n templateUrl: './badamaster.component.html',\r\n styleUrls: ['./badamaster.component.scss']\r\n})\r\nexport class BadamasterComponent implements OnInit,AfterContentInit,AfterViewInit {\r\n panpattern = \"[A-Z]{5}[0-9]{4}[A-Z]{1}\";\r\n editedBADAs: BADAMaster = new BADAMaster();\r\n public officearr: any[] = [];\r\n columns: any[] = [];\r\n rows: any[] = [];\r\n rowsCache: any[] = [];\r\n rowsrate: CustRate[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n isForm: boolean;\r\n isApprove: boolean = true;\r\n dialogRef: any;\r\n sourceBADA: any;\r\n editingBADA: { name: string };\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n IsNew: boolean = true;\r\n updateaddress: boolean = true;\r\n otherchg: OtherChargesRateMaster[] = []\r\n\r\n arrtype = [\r\n { type: \"B.A\", Id: \"BA\" },\r\n { type: \"D.A\", Id: \"DA\" }\r\n ]\r\n\r\n constructor(public dialog: MatDialog,private configurations: ConfigurationService, private excelService: ExcelService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n public form;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n base64OutputOraginalAggremant: string;\r\n base64OutputOriginalUndertaking: string;\r\n base64OutputOfficeAdressProof: string;\r\n base64OutputResidenceAddressproof: string;\r\n base64OutputIdentificationProof: string;\r\n base64OutputPanProof: string;\r\n base64OutputPhoto: string;\r\n base64OutputOfficePhoto: string;\r\n base64OutputCancelcheque: string\r\n checkedba:boolean = true;\r\n checkedda: boolean = false;\r\n checkedecc: boolean = false;\r\n address: Address = new Address();\r\n @ViewChild('ba',{ read:MatRadioButton, static: true }) ba: MatRadioButton;\r\n @ViewChild('da', { read: MatRadioButton, static: true }) da: MatRadioButton;\r\n ngOnInit() {\r\n this.editedBADAs.batype = 'BA';\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'batype', name: 'Type', width: 50 },\r\n { prop: 'badaCode', name: 'Code', width: 75 },\r\n { prop: 'agencyName', name: 'Agency Name', width: 100 },\r\n //{ prop: 'contactPerson', name: 'Contact Person', width: 100 },\r\n { prop: 'panNo', name: 'Pan No', width: 100 },\r\n //{ prop: 'emailId', name: 'Email-Id', width: 100 },\r\n { prop: 'pincode', name: 'Pin-Code', width: 100 },\r\n { prop: 'city', name: 'City', width: 50 },\r\n { prop: 'state', name: 'State', width: 50 } \r\n ];\r\n this.columns.push({ name: '', width: 250, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }); \r\n this.isForm = false;\r\n this.isApprove = false;\r\n this.loaddata();\r\n }\r\n ShowForm() {\r\n this.isForm = true;\r\n this.IsNew = true;\r\n }\r\n getCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2 = this.arrcity\r\n $('#city').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n gethelplist($event, name: string) {\r\n this.ServiceMaster.getHelplist(name).subscribe(result => this.onhelpDatagetSuccessful(result), error => this.onDataLoadFailed(error)); \r\n $('#controlOffice').autocomplete({\r\n source: this.officearr,\r\n delay: 500\r\n });\r\n }\r\n \r\n onhelpDatagetSuccessful(states: string[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.officearr = states;\r\n }\r\n confirmDialog_Rate(mes: any, Rate: CustRate[], callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogRateModels(\"QuoteRateMaster\", message, true, Rate, null, mes, callback);\r\n this.dialogRef = this.dialog.open(DailogQuoteRatebaMasterComponent, {\r\n disableClose: true,\r\n maxWidth: '100vw',\r\n maxHeight: '100vh',\r\n width: '100%',\r\n height: '100%',\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n OnMPSResultofmodel(dialogResult) {\r\n this.rowsrate = dialogResult;\r\n if (!isNullOrUndefined(this.rowsrate)) {\r\n this.ServiceMaster.PostkartQuoteCustrate(this.rowsrate).subscribe(result => { this.alertService.showMessage(\"Customer Rate\", \"Kart Rate Has Been Saved\", MessageSeverity.success) }, error => { this.alertService.showMessage(\"Kart Rate\", \"Error In Kart Rate\", MessageSeverity.error) });\r\n }\r\n }\r\n confirmDialog_Oc(mes: any, Rate: OtherChargesRateMaster[], callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogocModels(\"QuoteOtherChargeMaster\", message, true, Rate, null, mes, callback);\r\n this.dialogRef = this.dialog.open(DialogQuoteOtherChargeComponent, {\r\n disableClose: true,\r\n maxWidth: '100vw',\r\n maxHeight: '100vh',\r\n width: '100%',\r\n height: '100%',\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnOcResultofmodel(dialogResult) });\r\n }\r\n OnOcResultofmodel(dialogResult) {\r\n this.otherchg = dialogResult\r\n if (!isNullOrUndefined(this.otherchg)) {\r\n this.ServiceMaster.PostQuoteCustotherrate(this.otherchg).subscribe(result => { this.alertService.showMessage(\"Customer Other Charge\", \"Customer other charge Has Been Saved\", MessageSeverity.success) }, error => { this.alertService.showMessage(\"Customer Other Charges\", \"Error In Customer Other Charge\", MessageSeverity.error) });\r\n\r\n }\r\n }\r\n Addrate(ratedata?: any) {\r\n if (ratedata.isactive != true) {\r\n alert(\"First Approve the B.A\");\r\n return;\r\n }\r\n this.confirmDialog_Rate(ratedata.badamasterid, this.rowsrate, ratedata.badaCode);\r\n }\r\n AddOtherChrg(ratedata?: any) {\r\n if (ratedata.isactive != true) {\r\n alert(\"First Approve the B.A\");\r\n return;\r\n }\r\n this.confirmDialog_Oc(ratedata.badamasterid, this.otherchg, ratedata.badaCode);\r\n\r\n }\r\n \r\n editbaMaster(row: any) {\r\n if (row.isactive == true) {\r\n alert(\"Allready Approved, Cannot Edit\");\r\n return;\r\n }\r\n this.isForm = true;\r\n this.editedBADAs = row;\r\n this.sourceBADA = row;\r\n this.IsNew = false;\r\n this.ServiceMaster.getAddress(row.badamasterid).subscribe(result => this.ongetadresssucessfull(result), error => this.onDataLoadFailed(error));\r\n if (this.editedBADAs.batype == 'BA')\r\n {\r\n this.checkedba = true;\r\n this.checkedda = false;\r\n this.checkedecc = false;\r\n }\r\n if (this.editedBADAs.batype == 'DA') {\r\n this.checkedba = false;\r\n this.checkedda = true;\r\n this.checkedecc = false;\r\n }\r\n if (this.editedBADAs.batype == 'ECC') {\r\n this.checkedba = false;\r\n this.checkedda = false;;\r\n this.checkedecc = true;\r\n }\r\n } \r\n ongetadresssucessfull(add: any) {\r\n (document.getElementById('city')).value = add[0].city;\r\n (document.getElementById('houseNo')).value = add[0].houseNo;\r\n (document.getElementById('pincode')).value = add[0].pincode;\r\n (document.getElementById('state')).value = add[0].stateName;\r\n (document.getElementById('streetName')).value = add[0].streetName;\r\n (document.getElementById('landMark')).value = add[0].landMark;\r\n }\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('city')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n (document.getElementById('city')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n (document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n this.ServiceMaster.getbadamaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n }\r\n LoadSucessdata(badas: any[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n badas.forEach((prod, index, badas) => {\r\n (prod as any).index = index + 1;\r\n });\r\n this.rowsCache = [...badas];\r\n this.rows = badas; \r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertBADA() {\r\n debugger;\r\n if (this.checkedba == true)\r\n {\r\n this.editedBADAs.batype == 'BA'\r\n }\r\n if (this.checkedda==true) {\r\n this.editedBADAs.batype == 'DA'\r\n }\r\n if (this.checkedecc == true) {\r\n this.editedBADAs.batype == 'ECC'\r\n }\r\n if (this.editedBADAs.batype == '') {\r\n this.alertService.showMessage(\"Failure\", \"Please Select Correct Value\", MessageSeverity.error);\r\n return false;\r\n }\r\n this.isSaving = true; \r\n this.editedBADAs.originalAgreement = this.base64OutputOraginalAggremant;\r\n this.editedBADAs.originalUndertaking = this.base64OutputOriginalUndertaking;\r\n this.editedBADAs.officeAdressProof = this.base64OutputOfficeAdressProof;\r\n this.editedBADAs.residenceAddressproof = this.base64OutputResidenceAddressproof;\r\n this.editedBADAs.identificationProof = this.base64OutputIdentificationProof;\r\n this.editedBADAs.chequeimage = this.base64OutputCancelcheque;\r\n this.editedBADAs.panProff = this.base64OutputPanProof;\r\n this.editedBADAs.photo = this.base64OutputPhoto;\r\n this.editedBADAs.officePhoto = this.base64OutputOfficePhoto;\r\n this.editedBADAs.state = (document.getElementById('state')).value\r\n this.editedBADAs.city = (document.getElementById('city')).value\r\n this.editedBADAs.pincode = (document.getElementById('pincode')).value \r\n this.address.city = this.editedBADAs.city\r\n this.address.stateName = this.editedBADAs.state;\r\n this.address.houseNo = (document.getElementById('houseNo')).value\r\n this.address.streetName = (document.getElementById('streetName')).value\r\n this.address.pincode = (document.getElementById('pincode')).value\r\n this.address.landMark = (document.getElementById(\"landMark\")).value\r\n this.editedBADAs.controloffice = (document.getElementById(\"controlOffice\")).value\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n if (this.IsNew) {\r\n this.ServiceMaster.newbadamaster(this.editedBADAs).subscribe(BADAs => this.saveSuccessHelper(BADAs), error => this.saveFailedHelper(error));\r\n //\r\n }\r\n else {\r\n this.ServiceMaster.updatebada(this.editedBADAs).subscribe(BADAs => this.saveSuccessHelper(BADAs), error => this.saveFailedHelper(error))\r\n }\r\n }\r\n RbSelectionchange(mrChange: MatRadioChange) {\r\n if (mrChange.value == '1') {\r\n this.editedBADAs.batype = 'BA';\r\n this.checkedba = true;\r\n this.checkedda = false;\r\n this.checkedecc = false;\r\n } else\r\n if (mrChange.value == '2') {\r\n this.editedBADAs.batype = 'DA'; this.checkedda = true; this.checkedba = false; this.checkedecc = false;\r\n\r\n }\r\n else\r\n if (mrChange.value=\"3\")\r\n {\r\n this.editedBADAs.batype = 'ECC';\r\n this.checkedda = false;\r\n this.checkedba = false;\r\n this.checkedecc = true;\r\n }\r\n\r\n }\r\n ApproveBada(row: any) {\r\n if (row.isactive == true)\r\n {\r\n alert(\"Allready Approved\");\r\n return;\r\n }\r\n this.updateaddress = false;\r\n this.isSaving = true;\r\n this.IsNew = false; \r\n this.ServiceMaster.approvebada(row.badamasterid).subscribe(BADAs => this.saveSuccessHelper(BADAs), error => this.saveFailedHelper(error))\r\n }\r\n private saveaddressSuccessHelper() {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n }\r\n private saveSuccessHelper(BADAs?: any)\r\n {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `BADAs \\\"${this.editedBADAs.batype + \"-\" + this.editedBADAs.agencyName}\\\" was created successfully`, MessageSeverity.success);\r\n if (this.IsNew) {\r\n if (this.rows.length == 0) {\r\n this.rows[0] = BADAs[0];\r\n this.rowsCache[0] = BADAs[0];\r\n }\r\n else {\r\n this.rows.push(BADAs[0]);\r\n this.rowsCache.push(BADAs[0]);\r\n }\r\n }\r\n else {\r\n for (let i = 0; i < this.rows.length; i++) {\r\n if (this.rows[i].badamasterid == BADAs[0].badamasterid) {\r\n this.rows[i] = BADAs[0];\r\n\r\n }\r\n }\r\n }\r\n if (this.updateaddress ) {\r\n this.address.addressForid = BADAs[0].badamasterid\r\n this.ServiceMaster.newAddress(this.address).subscribe(BADAs => this.saveaddressSuccessHelper(), error => this.saveFailedHelper(error));\r\n }\r\n this.rows.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n \r\n });\r\n this.rowsCache.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n \r\n });\r\n this.rowsCache = [...this.rowsCache]\r\n this.rows = [...this.rows]\r\n this.editedBADAs = new BADAMaster()\r\n }\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.badaCode,r.batype, r.state,r.agencyName,r.contactPerson));\r\n }\r\n private saveFailedHelper(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n ngAfterContentInit() {\r\n //this.da.checked = true;\r\n }\r\n ngAfterViewInit() {\r\n //$(document).ready(function () {\r\n // $('#da').checked = true; \r\n // });\r\n }\r\n \r\n onFileSelected(evt: any, ftype: string) {\r\n var files = evt.target.files;\r\n var file:any = files[0]; \r\n if (files && file) {\r\n var reader = new FileReader();\r\n if (ftype == 'Original Agreement') {\r\n reader.onload = this._handleReaderLoadedOriginalAgreement.bind(this);\r\n reader.readAsDataURL(file);\r\n }\r\n else if (ftype == 'Original Undertaking') {\r\n reader.onload = this._handleReaderLoadedOriginalUndertaking.bind(this);\r\n reader.readAsDataURL(file);\r\n }\r\n else if (ftype == 'Office Adress Proof') {\r\n reader.onload = this._handleReaderLoadedOfficeAdressProof.bind(this);\r\n reader.readAsDataURL(file);\r\n }\r\n else if (ftype == 'Residence Address proof') {\r\n reader.onload = this._handleReaderLoadedResidenceAddressproof.bind(this);\r\n reader.readAsDataURL(file);\r\n }\r\n else if (ftype == 'Identification Proof') {\r\n reader.onload = this._handleReaderLoadedIdentificationProof.bind(this);\r\n reader.readAsDataURL(file);\r\n }\r\n else if (ftype == 'Pan Proof') {\r\n reader.onload = this._handleReaderLoadedPanProof.bind(this);\r\n reader.readAsDataURL(file);\r\n }\r\n else if (ftype == 'Photo') {\r\n reader.onload = this._handleReaderLoadedPhoto.bind(this);\r\n reader.readAsDataURL(file);\r\n }\r\n else if (ftype == 'Office Photo') {\r\n reader.onload = this._handleReaderLoadedOfficePhoto.bind(this);\r\n reader.readAsDataURL(file);\r\n }\r\n else if (ftype == 'Cheque') {\r\n reader.onload = this._handleReaderLoadedCheque.bind(this);\r\n reader.readAsDataURL(file);\r\n }\r\n }\r\n }\r\n GenerateExcel() {\r\n\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n data[index] = [index+1,\r\n this.rows[index].agencyName,\r\n this.rows[index].badaCode,\r\n this.rows[index].batype,\r\n this.rows[index].contactPerson,\r\n this.rows[index].controloffice,\r\n this.rows[index].city,\r\n this.rows[index].state,\r\n this.rows[index].gstno,\r\n this.rows[index].panNo,\r\n this.rows[index].bankName,\r\n this.rows[index].accountNo,\r\n this.rows[index].accountName,\r\n this.rows[index].ifscCode,\r\n this.rows[index].mobile1,\r\n this.rows[index].mobile2,\r\n this.rows[index].emailId,\r\n this.rows[index].isactive,\r\n this.rows[index].pincode,\r\n this.rows[index].houseNo + \",\" + this.rows[index].streetName + \",\" + this.rows[index].addressCity + \"-\" + this.rows[index].pincode\r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.header = [\"S.no\",\"AgencyName\",\r\n \"Code\",\r\n \"Type\",\r\n \"Contact Person\",\r\n \"Control Office\",\r\n \"City\",\r\n \"State\",\r\n \"Gstno\",\r\n \"PanNo\",\r\n \"BankName\",\r\n \"AccountNo\",\r\n \"AccountName\",\r\n \"IfscCode\",\r\n \"mobile1\",\r\n \"mobile2\",\r\n \"EmailId\",\"isactive\",\"pincode\",\"FullAddress\"\r\n ]\r\n this.excelService.title = \"BA DA Master\";\r\n this.excelService.generateExcel();\r\n\r\n }\r\n _handleReaderLoadedCheque(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64OutputCancelcheque = btoa(binaryString);\r\n }\r\n _handleReaderLoadedOriginalAgreement(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64OutputOraginalAggremant = btoa(binaryString);\r\n }\r\n _handleReaderLoadedOriginalUndertaking(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64OutputOriginalUndertaking = btoa(binaryString);\r\n }\r\n _handleReaderLoadedOfficeAdressProof(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64OutputOfficeAdressProof = btoa(binaryString);\r\n }\r\n _handleReaderLoadedResidenceAddressproof(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64OutputResidenceAddressproof = btoa(binaryString);\r\n }\r\n _handleReaderLoadedIdentificationProof(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n\r\n this.base64OutputIdentificationProof = btoa(binaryString);\r\n }\r\n _handleReaderLoadedPanProof(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64OutputPanProof = btoa(binaryString);\r\n }\r\n _handleReaderLoadedPhoto(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64OutputPhoto = btoa(binaryString);\r\n }\r\n _handleReaderLoadedOfficePhoto(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64OutputOfficePhoto = btoa(binaryString);\r\n }\r\n}\r\nexport class BADAMaster {\r\n constructor(baType?: string, badaCode?: string, agencyName?: string, contactPerson?: string, originalAgreement?: string\r\n , originalUndertaking?: string, addressLine1?: string, addressLine2?: string, officeAdressProof?: string, residenceAddressproof?: string,\r\n identificationProof?: string, identificationNo?: string, panProff?: string, panNo?: string, photo?: string,\r\n officePhoto?: string, phone1?: string, phone2?: string, mobile1?: string, mobile2?: string,\r\n emailId?: string, gstno?: string, city?: string, state?: string, pincode?: string, isactive?: string, depositAmount?: string\r\n , depositDate?: string, depositeMode?: string, bankName?: string, accountName?: string, accountNo?: string, ifscCode?: string) {\r\n this.batype = baType;\r\n this.badaCode = badaCode;\r\n this.agencyName = agencyName;\r\n this.contactPerson = contactPerson;\r\n this.originalAgreement = originalAgreement;\r\n this.originalUndertaking = originalUndertaking;\r\n this.addressLine1 = addressLine1;\r\n this.addressLine2 = addressLine2;\r\n this.officeAdressProof = officeAdressProof;\r\n this.residenceAddressproof = residenceAddressproof;\r\n this.identificationProof = identificationProof;\r\n this.identificationNo = identificationNo;\r\n this.panProff = panProff;\r\n this.panNo = panNo;\r\n this.photo = photo;\r\n this.officePhoto = officePhoto;\r\n this.phone1 = phone1;\r\n this.phone2 = phone2;\r\n this.mobile1 = mobile1;\r\n this.mobile2 = mobile2;\r\n this.emailId = emailId;\r\n this.gstno = gstno;\r\n this.city = city;\r\n this.state = state;\r\n this.pincode = pincode;\r\n this.isactive = isactive;\r\n this.depositAmount = depositAmount;\r\n this.depositDate = depositDate;\r\n this.depositeMode = depositeMode;\r\n this.bankName = bankName;\r\n this.accountName = accountName;\r\n this.accountNo = accountNo;\r\n this.ifscCode = ifscCode;\r\n };\r\n public badamasterid:string\r\n public batype: string\r\n public badaCode: string\r\n public agencyName: string\r\n public contactPerson: string\r\n public originalAgreement: string\r\n public originalUndertaking: string\r\n public addressLine1: string\r\n public addressLine2: string\r\n public officeAdressProof: string\r\n public residenceAddressproof: string\r\n public identificationProof: string\r\n public identificationNo: string\r\n public panProff: string\r\n public panNo: string\r\n public photo: string\r\n public officePhoto: string\r\n public phone1: string\r\n public phone2: string\r\n public mobile1: string\r\n public mobile2: string\r\n public emailId: string\r\n public gstno: string\r\n public city: string\r\n public state: string\r\n public pincode: string\r\n public isactive: string\r\n public depositAmount: string\r\n public depositDate: string\r\n public depositeMode: string\r\n public bankName: string\r\n public accountName: string\r\n public accountNo: string\r\n public ifscCode: string\r\n public controloffice: string\r\n public chequeimage: string;\r\n}\r\n","export default \"p {\\n margin-bottom: 5px;\\n}\\n\\ntd {\\n text-align: center;\\n}\\n\\n.span4 {\\n width: 100%;\\n}\\n\\n.alignleft {\\n text-align: left;\\n border: solid 1px;\\n border-color: black;\\n padding-left: 7px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9iaWxsLXByaW50L0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXGJpbGwtcHJpbnRcXGJpbGwtcHJpbnQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYmlsbC1wcmludC9iaWxsLXByaW50LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksa0JBQUE7QUNDSjs7QURDQTtFQUNFLGtCQUFBO0FDRUY7O0FEQ0E7RUFDRSxXQUFBO0FDRUY7O0FEQUE7RUFDSSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxpQkFBQTtBQ0dKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9iaWxsLXByaW50L2JpbGwtcHJpbnQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJwe1xyXG4gICAgbWFyZ2luLWJvdHRvbTo1cHg7XHJcbn1cclxudGR7XHJcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcblxyXG59XHJcbi5zcGFuNCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLmFsaWdubGVmdHtcclxuICAgIHRleHQtYWxpZ246bGVmdDtcclxuICAgIGJvcmRlcjpzb2xpZCAxcHg7XHJcbiAgICBib3JkZXItY29sb3I6YmxhY2s7XHJcbiAgICBwYWRkaW5nLWxlZnQ6N3B4O1xyXG59XHJcbiIsInAge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbnRkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3BhbjQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFsaWdubGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJvcmRlcjogc29saWQgMXB4O1xuICBib3JkZXItY29sb3I6IGJsYWNrO1xuICBwYWRkaW5nLWxlZnQ6IDdweDtcbn0iXX0= */\"","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var require: any;\r\nimport * as pdfMake from \"pdfmake/build/pdfmake\";\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\";\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nconst htmlToPdfmake = require(\"html-to-pdfmake\");\r\n(pdfMake as any).vfs = pdfFonts.pdfMake.vfs;\r\n\r\n@Component({\r\n selector: 'app-bill-print',\r\n templateUrl: './bill-print.component.html',\r\n styleUrls: ['./bill-print.component.scss']\r\n})\r\nexport class BillPrintComponent implements OnInit {\r\n\r\n appLogo = require('../../assets/images/logos-02.png');\r\n fullAdress: string;\r\n cityName: string;\r\n billType: string;\r\n bstatename: string;\r\n customerName: string;\r\n HouseNo: string;\r\n StreetName: string;\r\n City: string;\r\n StateName: string;\r\n gstnumber: string;\r\n billNo: string = \"\";\r\n billDate: string = \"\";\r\n billFrom: string;\r\n BillTo: string;\r\n TotalFreight: string;\r\n FuelSurcharge: string;\r\n OtherCharges: string;\r\n TaxableAmount: string;\r\n GatepassResult: any[] = [];\r\n Bagdetail: any[] = [];\r\n GatePassDate: string = \"\";\r\n GatePassTime: string = \"\";\r\n CgstAmount: string;\r\n SgstAmount: string;\r\n IgstAmount: string;\r\n TotalAmount: string;\r\n PlusMinus: string;\r\n roundvalue: string;\r\n valueinword: string;\r\n billdetail: any[];\r\n backurl: any;\r\n Gstno: string;\r\n opincode: string;\r\n saleType: string;\r\n tLedgerName: string;\r\n voffice: string;\r\n @ViewChild('contentprint', { static: true }) contentprint: ElementRef;\r\n BillSummaryId: string;\r\n controloffice: any;\r\n batype: string;\r\n constructor(private transaction: TransactionService, private ServiceMaster: Masters,\r\n private alertService: AlertService, private configurations: ConfigurationService,\r\n private authService: AuthService, public router: ActivatedRoute, private _router: Router,\r\n private tallyservice: TallyService, private localstre: LocalStoreManager) { }\r\n\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.billNo = params.billNo;\r\n this.backurl = params.backurl;\r\n });\r\n //this.billNo = 'ONEX/22-23/000000007';\r\n this.loadData()\r\n this.tLedgerName = '';\r\n }\r\n loadData() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getBillPrintData'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"BillNo\"\r\n pr.PropertyValue = this.billNo;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.OngetsuccessGatePass(result), error => this.onDataLoadFailed(error))\r\n }\r\n\r\n OngetsuccessGatePass(result: any) {\r\n this.billdetail = result.table1;\r\n this.GatepassResult = result.table;\r\n this.billNo = result.table[0].billNo;\r\n this.fullAdress = result.table[0].fullAdress;\r\n this.cityName = result.table[0].cityName;\r\n this.bstatename = result.table[0].bstatename;\r\n this.Gstno = this.bstatename == 'Delhi' ? '07AAHFO2331H1ZH' : '18AAHFO2331H1ZE'\r\n this.customerName = result.table[0].customerName;\r\n this.HouseNo = (result.table[0].saleType == 'CASH' && (result.table[0].batype == 'ECC' || result.table[0].batype == 'BA')) || result.table[0].saleType == 'DP' || result.table[0].saleType == 'KART' ? result.table[0].houseNo : result.table[0].brAddress;\r\n this.StreetName = (result.table[0].saleType == 'CASH' && (result.table[0].batype == 'ECC' || result.table[0].batype == 'BA')) || result.table[0].saleType == 'DP' || result.table[0].saleType == 'KART' ? result.table[0].streetName : \"\";\r\n this.City = (result.table[0].saleType == 'CASH' && (result.table[0].batype == 'ECC' || result.table[0].batype == 'BA')) || result.table[0].saleType == 'DP' || result.table[0].saleType == 'KART' ? result.table[0].city : result.table[0].brCity;\r\n this.StateName = (result.table[0].saleType == 'CASH' && (result.table[0].batype == 'ECC' || result.table[0].batype == 'BA')) || result.table[0].saleType == 'DP' || result.table[0].saleType == 'KART' ? result.table[0].stateName : result.table[0].brstate;\r\n this.gstnumber = result.table[0].gstnumber;\r\n this.billNo = result.table[0].billNo;\r\n this.billDate = result.table[0].billDate;\r\n this.billFrom = result.table[0].billFrom;\r\n this.BillTo = result.table[0].billTo;\r\n this.billType = result.table[0].billType == 'ACTUAL' ? 'TAX INVOICE' : 'PROVISIONAL BILL';\r\n this.TotalFreight = parseFloat(result.table[0].totalFreight).toFixed(2);\r\n this.OtherCharges = parseFloat(result.table[0].otherCharges).toFixed(2);\r\n this.FuelSurcharge = parseFloat(result.table[0].fuelSurcharge).toFixed(2);\r\n this.TaxableAmount = parseFloat(result.table[0].taxableAmount).toFixed(2);\r\n this.SgstAmount = parseFloat(result.table[0].sgstAmount).toFixed(2);\r\n this.IgstAmount = parseFloat(result.table[0].igstAmount).toFixed(2);\r\n this.CgstAmount = parseFloat(result.table[0].cgstAmount).toFixed(2);\r\n this.TotalAmount = parseFloat(result.table[0].totalAmount).toFixed(2);\r\n let roundval = Math.round(parseFloat(result.table[0].totalAmount)) - parseFloat(result.table[0].totalAmount)\r\n this.PlusMinus = roundval.toFixed(2);\r\n this.roundvalue = '₹' + Math.round(parseFloat(result.table[0].totalAmount)).toFixed(0);\r\n this.valueinword = this.convertToword(Math.round(parseFloat(result.table[0].totalAmount)));\r\n this.opincode = result.table[0].opincode;\r\n this.saleType = result.table[0].saleType;\r\n this.tLedgerName = result.table[0].tallyLedger;\r\n this.voffice = result.table[0].billingOfficeName;\r\n this.BillSummaryId = result.table[0].billSummaryId;\r\n this.controloffice = result.table[0].controloffice;\r\n this.batype = result.table[0].batype;\r\n if (this.backurl == '/billing' ) {\r\n this.GetVoucher(this.billNo);\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n GetVoucher(billNo: string) {\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_CheckSaleVoucher'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"refrence\"\r\n pr.PropertyValue = this.billNo;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(vresult => this.postVoucher(vresult), error => this.onDataLoadFailed(error));\r\n }\r\n\r\n postVoucher(vresult:any) {\r\n\r\n var rounadamt: number = 0;\r\n if (vresult.length > 0) {\r\n //this.alertService.showDialog(\"Voucher already created ,vocher no is \" + vresult[0].voucherNo);\r\n //return;\r\n }\r\n if (this.tLedgerName == '') {\r\n //$('#tallyledger').focus();\r\n return;\r\n }\r\n\r\n var salevoucher = new TallyVoucher();\r\n if (this.voffice == 'One-x Guwahati') {\r\n salevoucher.voucherType = 'SALE (GHY)'\r\n }\r\n else {\r\n salevoucher.voucherType = 'SALE (DEL)'\r\n }\r\n let roundval = Math.round(parseFloat(this.TotalAmount)) - parseFloat(this.TotalAmount)\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n salevoucher.OfficeName = _Balogindata[0].officename;\r\n salevoucher.OfficeId = _Balogindata[0].officeid;\r\n if (vresult.length > 0) {\r\n salevoucher.voucherNo = vresult[0].voucherNo;\r\n salevoucher.masterId = vresult[0].masterId;\r\n salevoucher.Action = 'Alter';\r\n\r\n }\r\n else {\r\n salevoucher.voucherNo = '';\r\n salevoucher.masterId = '';\r\n salevoucher.Action = 'Create';\r\n\r\n }\r\n let vDate = this.billDate;\r\n salevoucher.VoucherDate = vDate.split(\"/\")[2].toString() + \"-\" + vDate.split(\"/\")[1].toString() + \"-\" + vDate.split(\"/\")[0].toString();\r\n salevoucher.Narration = 'BEING RO SALE TO ' + this.tLedgerName + ' VIDE BILL NO. ' + this.billNo\r\n salevoucher.referenceno = this.billNo;\r\n var vledgers: vledger[] = [];\r\n var veledr = new vledger();\r\n veledr.Amount = parseFloat(this.TotalAmount) + roundval;\r\n rounadamt = parseFloat(this.TotalAmount) + roundval;\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n veledr.drcr = 'DR';\r\n veledr.ledgerName = this.tLedgerName;\r\n veledr.refrenceno = this.billNo;\r\n var billdetails: billdetail[] = [];\r\n var bill: billdetail = new billdetail();\r\n bill.billamount = (parseFloat(this.TotalAmount) + roundval).toFixed(2);\r\n bill.billreftype = 'New_ref';\r\n bill.Billid = this.BillSummaryId;\r\n bill.Name = this.billNo;\r\n billdetails[0] = bill;\r\n salevoucher.TotalCredit = parseFloat(bill.billamount);\r\n salevoucher.TotalDebit = parseFloat(bill.billamount);\r\n veledr.billDetail = billdetails\r\n vledgers[0] = veledr;\r\n var centname: string = '';\r\n\r\n\r\n switch (this.controloffice) {\r\n case 'One-x Guwahati':\r\n centname = 'GUWAHATI OFFICE';\r\n break;\r\n case 'One-x Patna':\r\n centname = 'PATNA OFFICE';\r\n break;\r\n case 'One-x Kolkata':\r\n centname = 'KOLKATA OFFICE';\r\n break;\r\n case 'One-x Mahipalpur':\r\n centname = 'DELHI OFFICE';\r\n break;\r\n case 'One-x Siliguri':\r\n centname = 'Siliguri Area Office';\r\n break;\r\n\r\n default:\r\n centname = ''\r\n break;\r\n }\r\n //if (this.controloffice == 'One-x Guwahati') {\r\n // centname = 'GUWAHATI OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Patna') {\r\n // centname = 'PATNA OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Kolkata') {\r\n // centname = 'KOLKATA OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Mahipalpur') {\r\n // centname = 'DELHI OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Siliguri') {\r\n // centname = 'Siliguri Area Office'\r\n //}\r\n\r\n if (this.voffice == 'One-x Guwahati' && parseFloat(this.SgstAmount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(this.SgstAmount);\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.SgstAmount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT- SGST @9% (Assam)'\r\n veledr.refrenceno = this.billNo;\r\n vledgers.push(veledr);\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(this.CgstAmount);\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.CgstAmount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - CGST@9% (Assam)'\r\n veledr.refrenceno = this.billNo;\r\n vledgers.push(veledr);\r\n }\r\n if (this.voffice == 'One-x Mahipalpur' && parseFloat(this.SgstAmount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(this.SgstAmount);\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.SgstAmount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - SGST @9% (Delhi)'\r\n veledr.refrenceno = this.billNo;\r\n vledgers.push(veledr);\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(this.CgstAmount);\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.CgstAmount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - CGST@9% (Delhi)'\r\n veledr.refrenceno = this.billNo;\r\n vledgers.push(veledr);\r\n }\r\n if (this.voffice == 'One-x Guwahati' && parseFloat(this.IgstAmount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(this.IgstAmount);\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.IgstAmount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - IGST @18% (Assam)'\r\n veledr.refrenceno = this.billNo;\r\n vledgers.push(veledr);\r\n\r\n }\r\n if (this.voffice == 'One-x Mahipalpur' && parseFloat(this.IgstAmount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(this.IgstAmount);\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.IgstAmount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - IGST @18% (Delhi)'\r\n veledr.refrenceno = this.billNo;\r\n vledgers.push(veledr);\r\n\r\n }\r\n\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(this.TaxableAmount);\r\n if (centname != '') {\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.TaxableAmount;\r\n veledr.costcenterName = centname;\r\n }\r\n else {\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n }\r\n if (this.batype == 'BA' || this.batype == 'ECC') {\r\n veledr.ledgerName = 'BA SALES (Income)'\r\n\r\n }\r\n else {\r\n veledr.ledgerName = 'Regional Office Sale A/c'\r\n\r\n }\r\n veledr.drcr = 'CR';\r\n // veledr.ledgerName = 'Regional Office Sale A/c'\r\n veledr.refrenceno = this.billNo;\r\n vledgers.push(veledr);\r\n roundval = rounadamt - parseFloat(this.IgstAmount) - parseFloat(this.SgstAmount) - parseFloat(this.CgstAmount) - parseFloat(this.TaxableAmount)\r\n if (roundval < 0 || roundval > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(Math.abs(roundval).toFixed(2))\r\n if (centname != '') {\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = Math.abs(roundval).toFixed(2);\r\n veledr.costcenterName = centname;\r\n }\r\n else {\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n }\r\n veledr.drcr = roundval < 0 ? 'DR' : 'CR';\r\n veledr.ledgerName = 'Short & Excess'\r\n veledr.refrenceno = this.billNo;\r\n vledgers.push(veledr);\r\n }\r\n salevoucher.Ledgerdetail = vledgers;\r\n //salevoucher.billDetail = billdetails;\r\n this.tallyservice.PostTallyVoucher(salevoucher).subscribe(result => {\r\n if (result) {\r\n if (result.status == 0) {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.success);\r\n $('#tallyledger').val(''); \r\n }\r\n else {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.error);\r\n }\r\n }\r\n }, error => { this.alertService.showMessage(\"Error\", JSON.stringify(error), MessageSeverity.error) });\r\n }\r\n \r\n convertToword(num: any) {\r\n var a = ['', 'one ', 'two ', 'three ', 'four ', 'five ', 'six ', 'seven ', 'eight ', 'nine ', 'ten ', 'eleven ', 'twelve ', 'thirteen ', 'fourteen ', 'fifteen ', 'sixteen ', 'seventeen ', 'eighteen ', 'nineteen '];\r\n var b = ['', '', 'twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety'];\r\n\r\n\r\n if ((num = num.toString()).length > 9) return 'overflow';\r\n var n: any = ('000000000' + num).substr(-9).match(/^(\\d{2})(\\d{2})(\\d{2})(\\d{1})(\\d{2})$/);\r\n if (!n) {\r\n return;\r\n }\r\n var str = '';\r\n str += (n[1] != 0) ? (a[Number(n[1])] || b[n[1][0]] + ' ' + a[n[1][1]]) + 'crore ' : '';\r\n str += (n[2] != 0) ? (a[Number(n[2])] || b[n[2][0]] + ' ' + a[n[2][1]]) + 'lakh ' : '';\r\n str += (n[3] != 0) ? (a[Number(n[3])] || b[n[3][0]] + ' ' + a[n[3][1]]) + 'thousand ' : '';\r\n str += (n[4] != 0) ? (a[Number(n[4])] || b[n[4][0]] + ' ' + a[n[4][1]]) + 'hundred ' : '';\r\n str += (n[5] != 0) ? ((str != '') ? 'and ' : '') + (a[Number(n[5])] || b[n[5][0]] + ' ' + a[n[5][1]]) + 'only ' : '';\r\n return str;\r\n }\r\n\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n GobackUrl() {\r\n this._router.navigate([this.backurl]);\r\n }\r\n public exportPDF() {\r\n const pdfTable = this.contentprint.nativeElement;\r\n var html = htmlToPdfmake(pdfTable.innerHTML);\r\n const documentDefinition = { content: html };\r\n pdfMake.createPdf(documentDefinition).download();\r\n\r\n }\r\n Exportprint(): void {\r\n let printContents, popupWin;\r\n const pdfTable = this.contentprint.nativeElement;\r\n printContents = pdfTable.innerHTML\r\n popupWin = window.open('', '_blank');\r\n popupWin.document.open();\r\n popupWin.document.write(`\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n\r\n `\r\n );\r\n popupWin.document.close();\r\n\r\n }\r\n}\r\nexport class TallyVoucher {\r\n voucherType: string;\r\n VoucherDate: string;\r\n voucherNo: string;\r\n masterId: string;\r\n Narration: string;\r\n Ledgerdetail: vledger[];\r\n Action: string;\r\n OfficeId: string;\r\n OfficeName: string;\r\n TotalCredit: number;\r\n TotalDebit: number;\r\n referenceno: string;\r\n}\r\nexport class vledger {\r\n ledgerName: string;\r\n ledgerId: string;\r\n indexNumber: string;\r\n drcr: string;\r\n Amount: number;\r\n costcenterName: string;\r\n costcategoryname: string;\r\n costcenterAmount: string;\r\n refrenceno: string;\r\n billDetail: billdetail[];\r\n\r\n\r\n}\r\nexport class billdetail {\r\n billreftype: string;\r\n Name: string;\r\n Billid: string;\r\n billamount: string;\r\n ledgerid: string;\r\n\r\n}\r\n","export default \":host ::ng-deep .row-color2 {\\n background-color: darkgreen;\\n color: white;\\n}\\n\\n:host ::ng-deep .row-color1 {\\n background-color: antiquewhite;\\n color: #212529;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9iaWxsLXJlcG9ydC9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxiaWxsLXJlcG9ydFxcYmlsbC1yZXBvcnQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYmlsbC1yZXBvcnQvYmlsbC1yZXBvcnQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0E7RUFDRSwyQkFBQTtFQUNBLFlBQUE7QUNBRjs7QURFQTtFQUNFLDhCQUFBO0VBQ0EsY0FBQTtBQ0NGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9iaWxsLXJlcG9ydC9iaWxsLXJlcG9ydC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtncmVlbjtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IxIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBhbnRpcXVld2hpdGU7XHJcbiAgY29sb3I6ICMyMTI1Mjk7XHJcbn1cclxuIiwiOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2dyZWVuO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbjpob3N0IDo6bmctZGVlcCAucm93LWNvbG9yMSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGFudGlxdWV3aGl0ZTtcbiAgY29sb3I6ICMyMTI1Mjk7XG59Il19 */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { MatDialog } from '@angular/material';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-bill-report',\r\n templateUrl: './bill-report.component.html',\r\n styleUrls: ['./bill-report.component.scss']\r\n})\r\nexport class BillReportComponent implements OnInit {\r\n\r\n typee: string = \"0\";\r\n rows: any = [];\r\n columns: any = [];\r\n isgpwise: boolean;\r\n isDatewise: boolean;\r\n isbutton: boolean;\r\n loadingIndicator: boolean = false;\r\n text: string = \"\";\r\n dialogRef: any;\r\n logindata: any;\r\n rowsdata: any = [];\r\n vbillno: any;\r\n vtaxAmount: any;\r\n cgstamount: any;\r\n sgstamount: any;\r\n igstamount: any;\r\n voffice: any;\r\n tledgermaster: any;\r\n AutocompList: any[] = [];\r\n billamount: any;\r\n voucherdate: any[];\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n @ViewChild('actionsTemplate2', { static: true })\r\n actionsTemplate2: TemplateRef;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n controloffice: any;\r\n BillSummaryId: any;\r\n BillType: any;\r\n batype: any;\r\n BillDate: any;\r\n constructor(private localstre: LocalStoreManager, private tallyservice: TallyService, public dialog: MatDialog, private troute: ActivatedRoute, private datePipe: DatePipe, private excelService: ExcelService, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n ngOnInit() {\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 20, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'billingOfficeName', name: 'Office Name', width: 100 }, \r\n { prop: 'branchOfficeName', name: 'Branch', width: 100 },\r\n { prop: 'customerName', name: 'Customer', width: 100 },\r\n { prop: 'billNo', name: 'Bill No', width: 130 }, \r\n { prop: 'billFrom', name: 'Bill From ', width: 70 },\r\n { prop: 'billTo', name: 'Bill To', width: 70 },\r\n { prop: 'noOfAwb', name: 'Total Awb', width: 50 },\r\n { prop: 'totalAmount', name: 'Bill Amount', width: 70 }\r\n ];\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.logindata = this.localstre.getData(\"BaLoginData\");\r\n this.tallyservice.GetTallyLedger().subscribe(result => {\r\n if (result) {\r\n this.localstre.saveSessionData(result, \"TallyLedgerMaster\")\r\n this.tledgermaster = result;\r\n }\r\n });\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getBillReport'\r\n let parameter = new Array(1);\r\n let pr = new Prclass(); \r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"office\";\r\n pr.PropertyValue = this.logindata[0].officename\r\n parameter[0] = pr\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getSucessDataExrate(result) {\r\n this.rows = result.table;\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n })\r\n this.rows = [...this.rows];\r\n this.rowsdata = this.rows;\r\n }\r\n onSearchChanged(value:string) {\r\n if (value != '') {\r\n this.rows = this.rowsdata.filter(r => Utilities.searchArray(value, false, r.branchOfficeName, r.customerName, r.billNo, r.customecode));\r\n }\r\n else {\r\n this.rows = this.rowsdata;\r\n }\r\n this.rows = [...this.rows];\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.loadingIndicator = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n funHide() {\r\n var typeee = this.typee == \"1\" ? \"1\" : \"2\";\r\n if (typeee == \"1\") {\r\n this.isgpwise = true;\r\n this.text = \"Bill No.\";\r\n this.isDatewise = false;\r\n this.isbutton = true;\r\n } else {\r\n this.text = \"Date Range\";\r\n this.isgpwise = false;\r\n this.isDatewise = true;\r\n this.isbutton = true;\r\n }\r\n }\r\n get officename(): string {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n return logindata[0].officename;\r\n }\r\n getdate() {\r\n if (this.typee == \"1\") {\r\n if ((document.getElementById(\"gatepassno\")).value == '') {\r\n (document.getElementById(\"gatepassno\")).focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getBillReport'\r\n let parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Billno\";\r\n pr.PropertyValue = (document.getElementById(\"BillNo\")).value\r\n parameter[0] = pr;\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n else {\r\n if ((document.getElementById(\"fromdate\")).value == '') {\r\n (document.getElementById(\"fromdate\")).focus();\r\n return;\r\n }\r\n if ((document.getElementById(\"todate\")).value == '') {\r\n (document.getElementById(\"todate\")).focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getBillReport'\r\n let parameter = new Array(3);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"FromDate\";\r\n pr.PropertyValue = (document.getElementById(\"fromdate\")).value\r\n parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"ToDate\";\r\n pr.PropertyValue = (document.getElementById(\"todate\")).value\r\n parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"office\";\r\n pr.PropertyValue = this.logindata[0].officename\r\n parameter[2] = pr;\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : 'userid';\r\n }\r\n Cancebill(row: any) {\r\n if (this.userId != 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.alertService.showMessage(\"Cancel Bill\", \"You have no rights to cancel the bill\", MessageSeverity.error)\r\n return\r\n }\r\n var tmprow = row;\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_cancelBill'\r\n let parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Guid\";\r\n pr.PropertyName = \"Billid\";\r\n pr.PropertyValue = row.billSummaryId\r\n parameter[0] = pr\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Userid\";\r\n pr.PropertyValue = this.userId;\r\n parameter[1] = pr\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.alertService.showMessage(\"Cancel Bill\", result[0].message, MessageSeverity.info)\r\n if (!isNullOrUndefined(tmprow.masterId)) {\r\n let vdate = tmprow.voucherDate.split('/')[2] + '-' + tmprow.voucherDate.split('/')[1] + '-' + tmprow.voucherDate.split('/')[0]\r\n this.tallyservice.PostDeleteVoucher(tmprow.voucherNo, vdate, tmprow.voucherType, tmprow.masterId).subscribe(delv => {\r\n if (delv.status == 0) {\r\n this.alertService.showMessage(\"Cancel Voucher\", 'Voucher has been canceled !', MessageSeverity.info)\r\n }\r\n else {\r\n this.alertService.showMessage(\"Cancel Voucher\", 'Voucher has not canceled !', MessageSeverity.error)\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n\r\n this.getdate();\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n GenerateSummary() {\r\n if (this.typee != \"2\" ) {\r\n this.alertService.showMessage(\"Please select date\")\r\n return;\r\n }\r\n if ((document.getElementById(\"fromdate\")).value == '') {\r\n (document.getElementById(\"fromdate\")).focus();\r\n return;\r\n }\r\n if ((document.getElementById(\"todate\")).value == '') {\r\n (document.getElementById(\"todate\")).focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetBillSummaryReport'\r\n let parameter = new Array(3);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"FromDate\";\r\n pr.PropertyValue = (document.getElementById(\"fromdate\")).value\r\n parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"ToDate\";\r\n pr.PropertyValue = (document.getElementById(\"todate\")).value\r\n parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"BillingOffice\";\r\n pr.PropertyValue = this.logindata[0].officename\r\n parameter[2] = pr;\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => {\r\n var data = []\r\n var Badata = this.localstre.getData(\"BaLoginData\");\r\n for (let index = 0; index < result.table.length; index++) {\r\n data[index] =[ index+1,\r\n result.table[index].month,\r\n result.table[index].officeName,\r\n result.table[index].location,\r\n result.table[index].ro,\r\n result.table[index]['sale Type'],\r\n result.table[index]['party Name'],\r\n result.table[index]['party GSTIN'],\r\n result.table[index]['invoice Date'],\r\n result.table[index]['invoice No.'],\r\n result.table[index]['hsN/SAC Code'],\r\n result.table[index]['taxable Amount'],\r\n result.table[index]['cgsT@9%'],\r\n result.table[index]['sgsT@9%'],\r\n result.table[index]['igsT@18%'],\r\n result.table[index]['total Invoice Amount']\r\n ]\r\n }\r\n\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Bill Summary\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"S.no\", \"Month\", \"Office Name\", \"Location\", \"RO\", \"Sale Type\", \"Party Name\",\"Party Gstin\", \"Invoice Date\", \"Invoice No.\", \"HSN/SAC Code\", \"Taxable Amount\", \"CGST@9%\", \"SGST@9%\", \"IGST@18%\", \"total Invoice Amount\"]\r\n this.excelService.title = Office + \" Bill Summary Report\"\r\n this.excelService.Widths = [8, 10, 30, 10, 30, 10, 30, 10, 15, 20, 10, 10, 10, 10, 8, 10, 10]\r\n this.excelService.generateExcel();\r\n result.table[0]['invoice No.'];\r\n\r\n }, error => this.onDataLoadFailed(error))\r\n \r\n }\r\n awbprint(row: any) {\r\n this.router.navigate(['/billprint'], {\r\n queryParams: {\r\n billNo: row.billNo,\r\n backurl: '/billrep'\r\n }\r\n }); // define your component where you want to go\r\n\r\n }\r\n private checkVoucher() {\r\n \r\n }\r\n \r\n \r\n\r\n\r\n\r\n GetLedgerHelp($event) {\r\n\r\n this.AutocompList = [];\r\n this.tledgermaster.forEach((ledger, index, ledarr) => {\r\n if (this.AutocompList.length == 0) {\r\n this.AutocompList[0] = ledger.name;\r\n }\r\n else {\r\n this.AutocompList.push(ledger.name);\r\n }\r\n });\r\n $('#tallyledger').autocomplete({\r\n source: this.AutocompList,\r\n delay: 50\r\n });\r\n }\r\n CreateVoucher(row: any) {\r\n this.voffice = row.billingOfficeName;\r\n this.vbillno = row.billNo;\r\n this.vtaxAmount = row.taxableAmount;\r\n this.sgstamount = row.sgstAmount;\r\n this.cgstamount = row.cgstAmount;\r\n this.igstamount = row.igstAmount;\r\n this.billamount = row.totalAmount;\r\n this.controloffice = row.controloffice;\r\n this.BillSummaryId = row.billSummaryId;\r\n this.BillType = row.billType;\r\n this.BillDate = row.billDate;\r\n this.batype = row.batype;\r\n this.consignereditorModal.show();\r\n if (row.customerName == 'CASH' || row.customerName == 'Kart') {\r\n $('#custname').text(row.branchOfficeName)\r\n\r\n }\r\n else {\r\n $('#custname').text(row.customerName)\r\n }\r\n $('#tallyledger').val('')\r\n\r\n }\r\n PostVoucher() {\r\n\r\n if (this.BillType != 'ACTUAL') {\r\n this.alertService.showDialog(\"Invalid bill to generare voucher\");\r\n return;\r\n }\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_CheckSaleVoucher'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"refrence\"\r\n pr.PropertyValue = this.vbillno;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(vresult => this.Savevoucher(vresult), error => this.onDataLoadFailed(error));\r\n }\r\n Savevoucher(vresult: any[]) {\r\n var rounadamt: number = 0;\r\n if (vresult.length > 0) {\r\n this.alertService.showDialog(\"Voucher already created ,vocher no is \" + vresult[0].voucherNo);\r\n return; \r\n }\r\n\r\n\r\n if (isNullOrUndefined($('#tallyledger').val())) {\r\n $('#tallyledger').focus();\r\n return;\r\n }\r\n if ($('#tallyledger').val() == '') {\r\n $('#tallyledger').focus();\r\n return;\r\n }\r\n\r\n var salevoucher = new TallyVoucher();\r\n if (this.voffice == 'One-x Guwahati') {\r\n salevoucher.voucherType = 'SALE (GHY)'\r\n }\r\n else {\r\n salevoucher.voucherType = 'SALE (DEL)'\r\n }\r\n let roundval = Math.round(parseFloat(this.billamount)) - parseFloat(this.billamount)\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n salevoucher.OfficeName = _Balogindata[0].officename;\r\n salevoucher.OfficeId = _Balogindata[0].officeid;\r\n let vDate = this.BillDate;\r\n salevoucher.VoucherDate = vDate.split(\"/\")[2].toString() + \"-\" + vDate.split(\"/\")[1].toString() + \"-\" + vDate.split(\"/\")[0].toString();\r\n salevoucher.Narration = 'BEING RO SALE TO ' + $('#custname').text() + ' VIDE BILL NO. ' + this.vbillno\r\n salevoucher.Action = 'Create';\r\n salevoucher.referenceno = this.vbillno;\r\n var vledgers: vledger[] = [];\r\n var veledr = new vledger();\r\n veledr.Amount = parseFloat(this.billamount) + roundval;\r\n rounadamt = parseFloat(this.billamount) + roundval;\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n veledr.drcr = 'DR';\r\n veledr.ledgerName = $('#tallyledger').val();\r\n veledr.refrenceno = this.vbillno;\r\n var billdetails: billdetail[] = [];\r\n var bill: billdetail = new billdetail();\r\n bill.billamount = (parseFloat(this.billamount) + roundval).toFixed(2);\r\n bill.billreftype = 'New_ref';\r\n bill.Billid = this.BillSummaryId;\r\n bill.Name = this.vbillno;\r\n billdetails[0] = bill;\r\n salevoucher.TotalCredit = parseFloat(bill.billamount);\r\n salevoucher.TotalDebit = parseFloat(bill.billamount);\r\n veledr.billDetail = billdetails\r\n vledgers[0] = veledr;\r\n var centname: string = '';\r\n\r\n\r\n switch (this.controloffice) {\r\n case 'One-x Guwahati':\r\n centname = 'GUWAHATI OFFICE';\r\n break;\r\n case 'One-x Patna':\r\n centname = 'PATNA OFFICE';\r\n break;\r\n case 'One-x Kolkata':\r\n centname = 'KOLKATA OFFICE';\r\n break;\r\n case 'One-x Mahipalpur':\r\n centname = 'DELHI OFFICE';\r\n break;\r\n case 'One-x Siliguri':\r\n centname = 'Siliguri Area Office';\r\n break;\r\n \r\n default:\r\n centname = ''\r\n break;\r\n }\r\n //if (this.controloffice == 'One-x Guwahati') {\r\n // centname = 'GUWAHATI OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Patna') {\r\n // centname = 'PATNA OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Kolkata') {\r\n // centname = 'KOLKATA OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Mahipalpur') {\r\n // centname = 'DELHI OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Siliguri') {\r\n // centname = 'Siliguri Area Office'\r\n //}\r\n\r\n if (this.voffice == 'One-x Guwahati' && parseFloat(this.sgstamount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = this.sgstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.sgstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT- SGST @9% (Assam)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n veledr = new vledger();\r\n veledr.Amount = this.cgstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.cgstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - CGST@9% (Assam)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n }\r\n if (this.voffice == 'One-x Mahipalpur' && parseFloat(this.sgstamount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = this.sgstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.sgstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - SGST @9% (Delhi)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n veledr = new vledger();\r\n veledr.Amount = this.cgstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.cgstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - CGST@9% (Delhi)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n }\r\n if (this.voffice == 'One-x Guwahati' && parseFloat(this.igstamount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = this.igstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.igstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - IGST @18% (Assam)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n\r\n }\r\n if (this.voffice == 'One-x Mahipalpur' && parseFloat(this.igstamount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = this.igstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.igstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - IGST @18% (Delhi)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n\r\n }\r\n\r\n veledr = new vledger();\r\n veledr.Amount = this.vtaxAmount;\r\n if (centname != '') {\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.vtaxAmount;\r\n veledr.costcenterName = centname;\r\n }\r\n else {\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n }\r\n if (this.batype == 'BA' || this.batype == 'ECC') {\r\n veledr.ledgerName = 'BA SALES (Income)'\r\n\r\n }\r\n else {\r\n veledr.ledgerName = 'Regional Office Sale A/c'\r\n\r\n }\r\n veledr.drcr = 'CR';\r\n // veledr.ledgerName = 'Regional Office Sale A/c'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n roundval = rounadamt - this.igstamount - this.sgstamount - this.cgstamount - this.vtaxAmount\r\n if (roundval < 0 || roundval > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(Math.abs(roundval).toFixed(2))\r\n if (centname != '') {\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = Math.abs(roundval).toFixed(2);\r\n veledr.costcenterName = centname;\r\n }\r\n else {\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n }\r\n veledr.drcr = roundval < 0 ? 'DR' : 'CR';\r\n veledr.ledgerName = 'Short & Excess'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n }\r\n\r\n\r\n salevoucher.Ledgerdetail = vledgers;\r\n //salevoucher.billDetail = billdetails;\r\n this.tallyservice.PostTallyVoucher(salevoucher).subscribe(result => {\r\n if (result) {\r\n if (result.status == 0) {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.success)\r\n $('#tallyledger').val('')\r\n //this.route.navigate(['/vchprint'], {\r\n // queryParams: {\r\n // billNo: result.response.split(',')[1].split('-')[1].trim(),\r\n // backurl: '/billrep'\r\n // }\r\n //});// define your componen\r\n this.consignereditorModal.hide();\r\n\r\n }\r\n else {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.error);\r\n }\r\n }\r\n }, error => { this.alertService.showMessage(\"Error\", JSON.stringify(error), MessageSeverity.error) });\r\n\r\n\r\n }\r\n \r\n getRowClass = (row) => {\r\n \r\n return {\r\n 'row-color1': isNullOrUndefined(row.masterId),\r\n 'row-color2': !isNullOrUndefined(row.masterId)\r\n };\r\n \r\n }\r\n}\r\nexport class TallyVoucher {\r\n voucherType: string;\r\n VoucherDate: string;\r\n Narration: string;\r\n Ledgerdetail: vledger[];\r\n Action: string;\r\n OfficeId: string;\r\n OfficeName: string;\r\n TotalCredit: number;\r\n TotalDebit: number;\r\n referenceno: string;\r\n}\r\nexport class vledger {\r\n ledgerName: string;\r\n ledgerId: string;\r\n indexNumber: string;\r\n drcr: string;\r\n Amount: number;\r\n costcenterName: string;\r\n costcategoryname: string;\r\n costcenterAmount: string;\r\n refrenceno: string;\r\n billDetail: billdetail[];\r\n\r\n\r\n}\r\nexport class billdetail {\r\n billreftype: string;\r\n Name: string;\r\n Billid: string;\r\n billamount: string;\r\n ledgerid: string;\r\n \r\n}\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYmlsbGluZy9iaWxsaW5nLmNvbXBvbmVudC5zY3NzIn0= */\"","import { getLocaleDateTimeFormat } from '@angular/common';\r\nimport { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatRadioChange } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { Guid } from 'guid-typescript';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { DBkeys } from '../../services/db-keys';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { ConfirmDialogACNModels, EditAwbComponent } from '../controls/edit-awb.component';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-billing',\r\n templateUrl: './billing.component.html',\r\n styleUrls: ['./billing.component.scss']\r\n})\r\nexport class BillingComponent implements OnInit {\r\n saletype: string = \"0\";\r\n billtype: string = \"0\";\r\n billingModule: FormGroup;\r\n rows: BillDetail_sql[] = [];\r\n columns: any[] = [];\r\n helpOffice: any[] = [];\r\n logindata: any[] = [];\r\n arrOrigin: any[] = [];\r\n baData: any[] = [];\r\n arrcust: any[] = [];\r\n CustData: any[];\r\n dialogRef: any;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n constructor(private dialog: MatDialog, private transaction: TransactionService,\r\n private configurations: ConfigurationService, private localstre: LocalStoreManager, private router: Router,\r\n private authService: AuthService, private route: Router,\r\n private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n\r\n ngOnInit() {\r\n this.billingModule = new FormGroup({\r\n billingFrom: new FormControl('', Validators.required),\r\n officeName: new FormControl('', Validators.required,),\r\n customerCode: new FormControl(''),\r\n customerName: new FormControl(''),\r\n fromDate: new FormControl('', Validators.required),\r\n toDate: new FormControl('', Validators.required),\r\n saleType: new FormControl('', Validators.required),\r\n billType: new FormControl('', Validators.required),\r\n billNo: new FormControl(''),\r\n billDate: new FormControl('', Validators.required),\r\n noofAwb: new FormControl('0'),\r\n noofPices: new FormControl('0'),\r\n freightAmount: new FormControl('0'),\r\n otherAmount: new FormControl('0'),\r\n fuelSurcharge: new FormControl('0'),\r\n taxableAmount: new FormControl('0'),\r\n igstAmount: new FormControl('0'),\r\n cgstAmount: new FormControl('0'),\r\n sgstAmount: new FormControl('0'),\r\n TotalAmount: new FormControl('0')\r\n });\r\n this.logindata = this.localstre.getData(\"BaLoginData\");\r\n this.billingModule.controls['billingFrom'].setValue(this.logindata[0].controloffice);\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'awbno', name: 'Awb No', width: 110, cellTemplate: this.actionsTemplate, canAutoResize: false },\r\n { prop: 'awbDate', name: 'Date', width: 100 },\r\n { prop: 'destCity', name: 'Dest', width: 100 },\r\n { prop: 'awbWeight', name: 'Awb Weight', width: 100 },\r\n { prop: 'pIeces', name: 'Pieces', width: 50 },\r\n { prop: 'volWeight', name: 'VolWt', width: 50 },\r\n { prop: 'frieghtAmount', name: 'Freight', width: 50 },\r\n { prop: 'otherCharges', name: 'OtherChg', width: 100 },\r\n { prop: 'fuelSurcharge', name: 'Fuel', width: 50 },\r\n { prop: 'totalAmount', name: 'Total', width: 50 },\r\n { prop: 'mode', name: 'Mode', width: 50 },\r\n { prop: 'product', name: 'Product', width: 50 }\r\n ];\r\n }\r\n\r\n confirmDialog_Edit(mes: any, mps: BillDetail_sql, callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogACNModels(\"EditAwb\", this.saletype == '1' ? 'CASH' : this.saletype == '2' ? 'DP' : this.saletype == '3' ? 'Kart' : '', mps);\r\n this.dialogRef = this.dialog.open(EditAwbComponent, {\r\n disableClose: true,\r\n minWidth: \"900px\",\r\n minHeight: \"400px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n OnMPSResultofmodel(result: any) {\r\n if (!result) {\r\n alert(\"Error In editawb\")\r\n\r\n //this.confirmDialog_MPS(this.editedawkbooking.pieces + \",\" + this.Unit, this.OnMPSResultofmodel)\r\n //this.isSaving = true;\r\n //this.transaction.postGenawbno(this.editedawkbooking.Booktype, this.editedawkbooking.awbMode + \" \" + this.editedawkbooking.ProductName, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n //this.router.navigate(['/awbprint'], { queryParams: { awbno: this.editedawkbooking.awbNo } }); // define your component where you want to go\r\n return;\r\n }\r\n else {\r\n this.getAwbData();\r\n }\r\n //this.transaction.PostACNUpdate(result).subscribe(awbno => { this.alertService.showMessage(\"Save\", \"Update acn Successfully\", MessageSeverity.success); }, error => this.saveFailedHelper(error));\r\n\r\n\r\n\r\n }\r\n editawb(row: BillDetail_sql) {\r\n this.confirmDialog_Edit(\"\",row,\"\")\r\n }\r\n getOrigin() {\r\n this.ServiceMaster.getHelplist(\"BADACITY\").subscribe(result => this.onDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(ba: any[], listof: any) {\r\n this.arrOrigin = ba;\r\n }\r\n getoffice($event) {\r\n this.getOrigin();\r\n $('#officeName').autocomplete({\r\n source: this.arrOrigin,\r\n delay: 50\r\n });\r\n }\r\n getcustList($event) {\r\n this.getCustomerData($('#officeName').val());\r\n $('#customerCode').autocomplete({\r\n source: this.arrcust,\r\n delay: 50\r\n });\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n RbSelectionchange(mrChange: MatRadioChange) {\r\n\r\n if (mrChange.value == '1' || mrChange.value == '3') {\r\n this.billingModule.controls[\"customerCode\"].disable();\r\n this.billingModule.controls[\"customerName\"].disable();\r\n if (mrChange.value == '1') {\r\n this.billingModule.controls[\"customerCode\"].setValue('Retail');\r\n this.billingModule.controls[\"customerName\"].setValue('CASH');\r\n }\r\n if (mrChange.value == '3') {\r\n this.billingModule.controls[\"customerCode\"].setValue('Kart');\r\n this.billingModule.controls[\"customerName\"].setValue('Kart');\r\n }\r\n }\r\n else {\r\n this.billingModule.controls[\"customerCode\"].enable();\r\n this.billingModule.controls[\"customerName\"].disable();\r\n }\r\n }\r\n\r\n getOfficeData() {\r\n if (isNullOrUndefined($('#officeName').val())) {\r\n $('#officeName').focus();\r\n return;\r\n }\r\n let officename = $('#officeName').val()\r\n let Req = new CommRequest();\r\n officename = officename.split('~')[0].trim();\r\n Req.ProcessName = 'Usp_GetOfficeFromName'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"officename\"\r\n pr.PropertyValue = officename;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n this.baData = result\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\ngetCustomerData(officename: string) {\r\n if (isNullOrUndefined(officename)) {\r\n $('#officeName').focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n officename = officename.split('~')[0].trim();\r\n Req.ProcessName = 'Usp_GetOfficeFromName'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"officename\"\r\n pr.PropertyValue = officename;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n if (result[0].officename.trim() == officename) {\r\n this.baData = result\r\n this.ServiceMaster.getcustlist(result[0].officeid).subscribe(result => this.onDatagetcustSuccessful(result), error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n this.showErrorAlert(\"Customer\", \"No customer data\")\r\n }\r\n }\r\n else {\r\n this.showErrorAlert(\"Save\", \"No customer data\")\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n\r\n getAwbData() {\r\n this.alertService.startLoadingMessage(\"Please Wait....\");\r\n\r\n let Req = new CommRequest();\r\n //this.getOfficeData();\r\n if (this.saletype == '0') {\r\n this.showErrorAlert(\"Saletype\", \"Please select saletype\")\r\n return;\r\n }\r\n if ($('#customerCode').val() == '') {\r\n $('#customerCode').focus();\r\n return;\r\n }\r\n if ($('#fromDate').val() == '') {\r\n $('#fromDate').focus();\r\n return;\r\n }\r\n if ($('#toDate').val() == '') {\r\n $('#toDate').focus();\r\n return;\r\n }\r\n if (this.baData.length > 0) {\r\n\r\n Req.ProcessName = 'Usp_GetBillData'\r\n let Parameter = new Array(5);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Guid\";\r\n pr.PropertyName = \"officeid\";\r\n pr.PropertyValue = this.baData[0].officeid;\r\n Parameter[0] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"FromDate\";\r\n pr.PropertyValue = $('#fromDate').val();\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"Todate\";\r\n pr.PropertyValue = $('#toDate').val();\r\n Parameter[2] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"SaleType\";\r\n pr.PropertyValue = this.saletype == '1' ? 'CASH' : this.saletype == '2' ? 'DP' : this.saletype == '3' ? 'Kart' : '';\r\n Parameter[3] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"CustomerCode\";\r\n pr.PropertyValue = this.saletype == '1' ? 'Retail' : this.saletype == '2' ? $('#customerCode').val() : this.saletype == '3' ? 'Kart' : '';\r\n Parameter[4] = pr;\r\n Req.LstParameter = Parameter;\r\n\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n let noofpices = 0;\r\n let frieght = 0;\r\n let otherchg = 0;\r\n let fulesurcharge = 0;\r\n let total = 0;\r\n this.rows = result;\r\n if (result.length > 0) {\r\n if (!isNullOrUndefined(result[0].billNo)) {\r\n $('#billNo').val(result[0].billNo);\r\n }\r\n }\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n noofpices += obj.pIeces;\r\n fulesurcharge += obj.fuelSurcharge;\r\n frieght += obj.frieghtAmount;\r\n if (this.saletype == '3') {\r\n otherchg += obj.otherCharges;\r\n otherchg += 5;\r\n obj.otherCharges += 5;\r\n }\r\n else {\r\n otherchg += obj.otherCharges;\r\n }\r\n if (this.saletype == '3') {\r\n total += obj.totalAmount;\r\n total += 5;\r\n obj.totalAmount += 5;\r\n }\r\n else {\r\n total += obj.totalAmount;\r\n }\r\n });\r\n let noofawb = this.rows.length;\r\n $('#noofAwb').val(noofawb);\r\n $('#noofPices').val(noofpices);\r\n $('#freightAmount').val(frieght);\r\n $('#otherAmount').val(otherchg);\r\n $('#fuelSurcharge').val(fulesurcharge);\r\n $('#taxableAmount').val(total);\r\n this.calculatetax($('#customerCode').val())\r\n this.rows = [...this.rows];\r\n });\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n else {\r\n this.showErrorAlert(\"Office\", \"Please select booking office\")\r\n $('#officeName').focus();\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n }\r\n Recalculate() {\r\n if (this.saletype == '0') {\r\n this.showErrorAlert(\"Saletype\", \"Please select saletype\")\r\n return;\r\n }\r\n if ($('#customerCode').val() == '') {\r\n $('#customerCode').focus();\r\n return;\r\n }\r\n if ($('#fromDate').val() == '') {\r\n $('#fromDate').focus();\r\n return;\r\n }\r\n if ($('#toDate').val() == '') {\r\n $('#toDate').focus();\r\n return;\r\n }\r\n let _clientcode = $('#customerCode').val();\r\n let _saletype = this.saletype == '1' ? 'CASH' : this.saletype == '2' ? 'DP' : this.saletype == '3' ? 'Kart' : '';\r\n _clientcode = this.saletype == '1' ? 'Retail' : this.saletype == '2' ? $('#customerCode').val() : this.saletype == '3' ? 'Kart' : '';\r\n\r\n\r\n \r\n let _officeid = this.baData[0].officeid\r\n \r\n var objectData = {\r\n fromDate: $('#fromDate').val(),\r\n toDate: $('#toDate').val(),\r\n clientCode: _clientcode,\r\n saleType: _saletype,\r\n officeid: _officeid\r\n }\r\n this.transaction.PostrecalBill(objectData).subscribe(result => {\r\n this.getAwbData();\r\n this.alertService.showDialog(\"Bill recalculate successfully\", DialogType.alert)\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n\r\n calculatetax(customecode) {\r\n let Req = new CommRequest();\r\n if (this.saletype == \"2\") {\r\n let custcode = $('#customerCode').val();\r\n Req.ProcessName = 'Usp_Getcustomerwithcode'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"customercode\"\r\n pr.PropertyValue = custcode;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n this.CustData = result;\r\n if (this.logindata[0].state.trim() == this.CustData[0].stateName.trim()) {\r\n let taxableamount = $('#taxableAmount').val();\r\n let sgstamount = parseFloat(taxableamount) * 9 / 100;\r\n let cgstamount = parseFloat(taxableamount) * 9 / 100;\r\n let igstamount = 0;\r\n let Totalamount = parseFloat(taxableamount) + sgstamount + cgstamount + igstamount;\r\n $('#sgstAmount').val(sgstamount);\r\n $('#cgstAmount').val(cgstamount);\r\n $('#igstAmount').val(igstamount);\r\n $('#TotalAmount').val(Totalamount);\r\n }\r\n else {\r\n let taxableamount = $('#taxableAmount').val();\r\n let sgstamount = 0;\r\n let cgstamount = 0;\r\n let igstamount = parseFloat(taxableamount) * 18 / 100;\r\n let Totalamount = parseFloat(taxableamount) + sgstamount + cgstamount + igstamount;\r\n $('#sgstAmount').val(sgstamount);\r\n $('#cgstAmount').val(cgstamount);\r\n $('#igstAmount').val(igstamount);\r\n\r\n $('#TotalAmount').val(Totalamount);\r\n }\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n if (this.logindata[0].state.trim() == this.baData[0].state.trim()) {\r\n let taxableamount = $('#taxableAmount').val();\r\n let sgstamount = parseFloat(taxableamount) * 9 / 100;\r\n let cgstamount = parseFloat(taxableamount) * 9 / 100;\r\n let igstamount = 0;\r\n let Totalamount = parseFloat(taxableamount) + sgstamount + cgstamount + igstamount;\r\n $('#sgstAmount').val(sgstamount);\r\n $('#cgstAmount').val(cgstamount);\r\n $('#igstAmount').val(igstamount);\r\n\r\n $('#TotalAmount').val(Totalamount);\r\n }\r\n else {\r\n let taxableamount = $('#taxableAmount').val();\r\n let sgstamount = 0;\r\n let cgstamount = 0;\r\n let igstamount = parseFloat(taxableamount) * 18 / 100;\r\n let Totalamount = parseFloat(taxableamount) + sgstamount + cgstamount + igstamount;\r\n $('#sgstAmount').val(sgstamount);\r\n $('#cgstAmount').val(cgstamount);\r\n $('#igstAmount').val(igstamount);\r\n $('#TotalAmount').val(Totalamount);\r\n }\r\n }\r\n }\r\n \r\n onSubmit() {\r\n\r\n if (this.billtype == '0') {\r\n this.showErrorAlert(\"BillType\", \"Please select billtype !\")\r\n return;\r\n }\r\n const found = this.rows.find((obj) => {\r\n return obj.frieghtAmount === 0;\r\n });\r\n if (found !== undefined) {\r\n this.showErrorAlert(\"Error\", \"Some awb has frieght amount is 0,please clear it first !\")\r\n return;\r\n }\r\n this.alertService.startLoadingMessage(\"Please wait saving....\");\r\n\r\n let Bill: BillSummary_sql = new BillSummary_sql();\r\n let billsummary = Guid.raw();\r\n \r\n Bill.billDate = $(\"#billDate\").val();\r\n Bill.billFrom = $(\"#fromDate\").val();\r\n Bill.billingOfficeName = $(\"#billingFrom\").val();\r\n Bill.billingOfficeId = this.logindata[0].officeid;\r\n Bill.billNo = \"\";\r\n Bill.billSummaryId = billsummary;\r\n Bill.billTo = $(\"#toDate\").val();\r\n Bill.saleType = this.saletype == '1' ? 'CASH' : this.saletype == '2' ? 'DP' : this.saletype == '3' ? 'KART' : '';\r\n Bill.billType = this.billtype == '1' ? 'PROVISIONAL' : this.billtype == '2' ? 'ACTUAL' : '';\r\n Bill.branchOfficeId = this.baData[0].officeid;\r\n Bill.branchOfficeName = this.baData[0].officename;\r\n Bill.cgstAmount = $(\"#cgstAmount\").val();\r\n Bill.customerCode = $(\"#customerCode\").val();\r\n if (this.saletype == '2') {\r\n Bill.customerId = this.CustData[0].customerId;\r\n }\r\n else {\r\n Bill.customerId = this.baData[0].officeid;\r\n }\r\n Bill.customerName = $(\"#customerName\").val();\r\n Bill.fuelSurcharge = $(\"#fuelSurcharge\").val();\r\n Bill.igstAmount = $(\"#igstAmount\").val();\r\n Bill.iscancel = false;\r\n Bill.noOfAwb = $(\"#noofAwb\").val();\r\n Bill.noOfPieces = $(\"#noofPices\").val();\r\n Bill.otherCharges = $(\"#otherAmount\").val();\r\n Bill.sgstAmount = $(\"#sgstAmount\").val();\r\n Bill.taxableAmount = $(\"#taxableAmount\").val();\r\n Bill.totalAmount = $(\"#TotalAmount\").val();\r\n Bill.totalFreight = $(\"#freightAmount\").val();\r\n this.rows.forEach((obj, ind, arr) => {\r\n obj.billSummaryId = Bill.billSummaryId;\r\n obj.branchId = Bill.branchOfficeId;\r\n obj.createdOn = obj.updatedOn = new Date().toLocaleDateString(\"en-US\")\r\n obj.createdBy = obj.updatedBy = this.userId; \r\n obj.billDetailId = Guid.raw();\r\n if (this.saletype == '2') {\r\n obj.customerId = Bill.customerId;\r\n }\r\n else {\r\n obj.customerId = this.baData[0].officeid;\r\n }\r\n });\r\n this.rows = [...this.rows];\r\n Bill.billDetails = this.rows;\r\n this.transaction.PostBillData(Bill).subscribe(result => this.OnBillSaveSucess(result), error => this.onDataLoadFailed(error))\r\n \r\n\r\n }\r\n OnBillSaveSucess(result: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.billingModule.get('billNo').setValue(result.billNo);\r\n this.alertService.showMessage(\"Bill\", \"Bill \" + result.billNo + \" generate sucessfully\", MessageSeverity.success);\r\n\r\n this.route.navigate(['/billprint'], {\r\n queryParams: {\r\n billNo: result.billNo,\r\n backurl: '/billing'\r\n }\r\n });// define your componen\r\n\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : '';\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onDatagetcustSuccessful(states: string[]) {\r\n\r\n this.arrcust = states;\r\n }\r\n SetcodeAndname($event) {\r\n let custcodename: string = (document.getElementById('customerCode')).value;\r\n if (custcodename.indexOf('-') > 0) {\r\n (document.getElementById('customerName')).value = custcodename.substring(0, custcodename.indexOf('-') - 1);\r\n (document.getElementById('customerCode')).value = custcodename.substring(custcodename.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n}\r\nexport class BillSummary {\r\n billingFrom: string;\r\n billingFromId: string;\r\n regionName: string;\r\n regionId: string;\r\n OfficeId: string;\r\n officeName: string;\r\n SaleType: string;\r\n customerId: string;\r\n customerCode: string;\r\n customerName: string;\r\n fromDate: string;\r\n toDate: string;\r\n gstno: string;\r\n panno: string;\r\n billType: string;\r\n billNo: string;\r\n billDate: string;\r\n billSummaryId: string;\r\n noofAwb: string;\r\n noofPices: string;\r\n freightAmount: string;\r\n otherAmount: string;\r\n fuelSurcharge: string;\r\n taxableAmount: string;\r\n igstAmount: string;\r\n cgstAmount: string;\r\n sgstAmount: string;\r\n TotalAmount: string;\r\n isCancel: boolean;\r\n createdBy: string;\r\n createdOn: string;\r\n UpdatedBy: string;\r\n UpdatedOn: string;\r\n}\r\n\r\n\r\nexport class BillDetail_sql {\r\n public billSummaryId: any;\r\n public billDetailId: any;\r\n public awbno: string;\r\n public awbDate: string;\r\n public awbInScanid: any;\r\n public origin: string;\r\n public destPincode: string;\r\n public destCity: string;\r\n public branchId: any;\r\n public customerId: any;\r\n public awbWeight: number;\r\n public volWeight: number;\r\n public pIeces: number;\r\n public mode: string;\r\n public product: string;\r\n public frieghtAmount: number;\r\n public otherCharges: number;\r\n public fuelSurcharge: number;\r\n public totalAmount: number;\r\n public billno: string;\r\n public createdBy: string;\r\n public updatedBy: string;\r\n public createdOn: string;\r\n public updatedOn: string;\r\n}\r\nexport class BillSummary_sql {\r\n public billSummaryId: any;\r\n public billNo: string;\r\n public billDate: Date;\r\n public billFrom: Date;\r\n public billTo: Date;\r\n public saleType: string;\r\n public billType: string;\r\n public billingOfficeId: any;\r\n public billingOfficeName: string;\r\n public branchOfficeId: any;\r\n public branchOfficeName: any;\r\n public customerCode: string;\r\n public customerId: any;\r\n public customerName: string;\r\n public noOfAwb: number;\r\n public noOfPieces: number;\r\n public totalFreight: number;\r\n public otherCharges: number;\r\n public fuelSurcharge: number;\r\n public taxableAmount: number;\r\n public sgstAmount: number;\r\n public cgstAmount: number;\r\n public igstAmount: number;\r\n public totalAmount: number;\r\n public iscancel: boolean;\r\n public createdBy: string;\r\n public updatedBy: string;\r\n public createdOn: Date;\r\n public updatedOn: Date;\r\n public billDetails: BillDetail_sql[];\r\n}\r\n","export default \"fieldset {\\n background-color: #eeeeee;\\n}\\n\\nlegend {\\n background-color: #142c4c;\\n color: white;\\n padding: 5px 10px;\\n}\\n\\nfieldset {\\n display: block;\\n margin-left: 2px;\\n margin-right: 2px;\\n padding-top: 0.35em;\\n padding-bottom: 0.625em;\\n padding-left: 0.75em;\\n padding-right: 0.75em;\\n border: 2px groove internal value;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9ib29raW5nY29tbWlzaW9uL0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXGJvb2tpbmdjb21taXNpb25cXGJvb2tpbmdjb21taXNpb24uY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYm9va2luZ2NvbW1pc2lvbi9ib29raW5nY29tbWlzaW9uLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UseUJBQUE7QUNDRjs7QURFQTtFQUNFLHlCQUFBO0VBQ0EsWUFBQTtFQUNBLGlCQUFBO0FDQ0Y7O0FERUE7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsaUNBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvYm9va2luZ2NvbW1pc2lvbi9ib29raW5nY29tbWlzaW9uLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiZmllbGRzZXQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XHJcbn1cclxuXHJcbmxlZ2VuZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MmM0YztcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgcGFkZGluZzogNXB4IDEwcHg7XHJcbn1cclxuXHJcbmZpZWxkc2V0IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tbGVmdDogMnB4O1xyXG4gIG1hcmdpbi1yaWdodDogMnB4O1xyXG4gIHBhZGRpbmctdG9wOiAwLjM1ZW07XHJcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1ZW07XHJcbiAgcGFkZGluZy1sZWZ0OiAwLjc1ZW07XHJcbiAgcGFkZGluZy1yaWdodDogMC43NWVtO1xyXG4gIGJvcmRlcjogMnB4IGdyb292ZSAoaW50ZXJuYWwgdmFsdWUpO1xyXG59XHJcbiIsImZpZWxkc2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbn1cblxubGVnZW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MmM0YztcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbn1cblxuZmllbGRzZXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gIHBhZGRpbmctdG9wOiAwLjM1ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVlbTtcbiAgcGFkZGluZy1yaWdodDogMC43NWVtO1xuICBib3JkZXI6IDJweCBncm9vdmUgaW50ZXJuYWwgdmFsdWU7XG59Il19 */\"","\r\nimport { DatePipe, DecimalPipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n//import { document } from 'ngx-bootstrap';\r\nimport { ProductMaster } from '../../models/productmaster.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n\r\n@Component({\r\n selector: 'app-bookingcommision',\r\n templateUrl: './bookingcommision.component.html',\r\n styleUrls: ['./bookingcommision.component.scss']\r\n \r\n\r\n})\r\n\r\nexport class BookingcommisionComponent implements OnInit { \r\n editedbooking: BookingCommision = new BookingCommision();\r\n columnsdp: any[] = [];\r\n columnsTariff: any[] = [];\r\n rows: BookingCommision[] = [];\r\n rowsCache: BookingCommision[] = []; \r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n BookingDp: boolean;\r\n Bookingtariff: boolean;\r\n\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n\r\n\r\n constructor(private configurations: ConfigurationService,private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('dateColumn', { static: true }) dateColumn: TemplateRef;\r\n\r\n\r\n ngOnInit() {\r\n this.columnsdp = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'productCode', name: 'Product', width: 100},\r\n { prop: 'bookingCommDp', name: 'Commision', width: 100 },\r\n { prop: 'fromDate', name: 'Active From', width: 100, cellTemplate: this.dateColumn },\r\n\r\n ];\r\n this.columnsTariff = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'productCode', name: 'Product', width: 100 },\r\n { prop: 'bookingCommTariff', name: 'Commision', width: 100 },\r\n { prop: 'fromDate', name: 'Active From', width: 100, cellTemplate: this.dateColumn },\r\n ];\r\n this.loaddata();\r\n }\r\n \r\n loaddata() {\r\n this.loadingIndicator = true;\r\n this.ServiceMaster.getbookcomm().subscribe(results => this.LoadSucessdataDP(results), error => this.onDataLoadFailed(error))\r\n }\r\n \r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve Booking Commission the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n LoadSucessdataDP(bookings: BookingCommision[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n bookings.forEach((prod, index, bookings) => {\r\n (prod as any).index = index + 1;\r\n });\r\n this.rowsCache = [...bookings];\r\n this.rows = bookings;\r\n }\r\n \r\n getProductList($event) {\r\n this.GetProductMaster();\r\n this.arrcity2 = this.arrcity;\r\n $(\"#productNamedp\").autocomplete({\r\n source: this.arrcity2,\r\n delay: 50\r\n });\r\n \r\n $('#productNameTariff').autocomplete({\r\n source: this.arrcity2,\r\n delay: 50\r\n });\r\n }\r\n GetProductMaster() {\r\n this.ServiceMaster.ProductList(\"Normal\").subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: any, listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n for (var i = 0; i < states.length; i++) {\r\n this.arrcity[i] = new Autocomp(states[i].productname, states[i].productCode);\r\n } \r\n }\r\n BookingCommision(grouptype: string) {\r\n if (grouptype == \"DP\") {\r\n this.BookingDp = true;\r\n this.Bookingtariff = false;\r\n (document.getElementById(\"btndp\")).disabled = false;\r\n (document.getElementById(\"bttariff\")).disabled = true;\r\n } else {\r\n this.BookingDp = false;\r\n this.Bookingtariff = true;\r\n (document.getElementById(\"btndp\")).disabled = true;\r\n (document.getElementById(\"bttariff\")).disabled = false;\r\n }\r\n }\r\n refresh() {\r\n (document.getElementById(\"btndp\")).disabled = false;\r\n (document.getElementById(\"bttariff\")).disabled = false;\r\n this.BookingDp = false;\r\n this.Bookingtariff = false;\r\n this.editedbooking = null;\r\n this.editedbooking = new BookingCommision()\r\n }\r\n AddDp() {\r\n debugger;\r\n this.editedbooking.productCode = (document.getElementById(\"productNamedp\")).value;\r\n let d1 = new Date(this.editedbooking.fromDate.toString());\r\n for (var i = 0; i < this.rows.length; i++) {\r\n if (this.rows[i].productCode == this.editedbooking.productCode) {\r\n let d2 = new Date(this.rows[i].fromDate.toString());\r\n if (d2.getDate() == d1.getDate()) {\r\n this.editedbooking.bookingCommMasterid = this.rows[i].bookingCommMasterid\r\n this.editedbooking.bookingCommTariff = this.rows[i].bookingCommTariff\r\n }\r\n }\r\n }\r\n this.ServiceMaster.newbookcomm(this.editedbooking).subscribe(booking => this.saveSuccessHelper(booking), error => this.saveFailedHelper(error));\r\n }\r\n Addtraffi() {\r\n debugger;\r\n this.editedbooking.productCode = (document.getElementById(\"productNameTariff\")).value;\r\n let d1 = new Date(this.editedbooking.fromDate.toString());\r\n for (var i = 0; i < this.rows.length; i++) {\r\n if (this.rows[i].productCode == this.editedbooking.productCode) {\r\n let d2 = new Date(this.rows[i].fromDate.toString());\r\n if (d2.getDate() == d1.getDate()) {\r\n this.editedbooking.bookingCommMasterid = this.rows[i].bookingCommMasterid\r\n this.editedbooking.bookingCommDp = this.rows[i].bookingCommDp\r\n }\r\n }\r\n }\r\n this.ServiceMaster.newbookcomm(this.editedbooking).subscribe(booking => this.saveSuccessHelper(booking), error => this.saveFailedHelper(error));\r\n }\r\n private saveSuccessHelper(bookings?: BookingCommision) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `bookings \\\"${this.editedbooking.productCode + \"-\" + this.editedbooking.bookingCommDp}\\\" was created successfully`, MessageSeverity.success);\r\n if (this.rows.length == 0) {\r\n this.rows[0] = bookings[0];\r\n this.rowsCache[0] = bookings[0];\r\n }\r\n else {\r\n let UpdateArray: boolean = false;\r\n for (var i = 0; i < this.rows.length; i++) {\r\n if (this.rows[i].productCode == bookings[0].productCode && this.rows[i].fromDate == bookings[0].fromDate)\r\n {\r\n this.rows[i].bookingCommDp = bookings[0].bookingCommDp\r\n this.rows[i].bookingCommTariff = bookings[0].bookingCommDp\r\n UpdateArray = true;\r\n }\r\n }\r\n if (!UpdateArray) {\r\n this.rows.push(bookings[0]);\r\n this.rowsCache.push(bookings[0]);\r\n }\r\n }\r\n this.rows.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache = [...this.rowsCache]\r\n this.rows = [...this.rows]\r\n this.editedbooking = new BookingCommision()\r\n }\r\n // onSearchChanged(value: string) {\r\n // this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.productName, r.commision));\r\n // }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n}\r\nexport class BookingCommision {\r\n constructor(productCode?: string, commision?: string, type?: string) {\r\n \r\n };\r\n public bookingCommMasterid: string;\r\n public productCode: string\r\n public bookingCommDp: string\r\n public bookingCommTariff: string\r\n public fromDate: string\r\n public toDate:string\r\n}\r\nexport class Autocomp {\r\n constructor(label?: string, value?: string) {\r\n this.label = label;\r\n this.value = value;\r\n }\r\n public label: string;\r\n public value: string;\r\n}\r\n\r\n","export default \"body {\\n margin: 0;\\n font-family: \\\"Source Sans Pro\\\", -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\", Arial, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\";\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n background-color: #fff;\\n}\\n\\n.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {\\n position: relative;\\n width: 100%;\\n padding-right: 7.5px;\\n padding-left: 7.5px;\\n}\\n\\n.small-box {\\n border-radius: 0.25rem;\\n box-shadow: 0 0 1px rgba(0, 0, 0, 0.13), 0 1px 3px rgba(0, 0, 0, 0.2);\\n display: block;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n\\n.small-box > .small-box-footer {\\n background-color: rgba(0, 0, 0, 0.1);\\n color: rgba(255, 255, 255, 0.8);\\n display: block;\\n padding: 3px 0;\\n position: relative;\\n text-align: center;\\n text-decoration: none;\\n z-index: 10;\\n}\\n\\n.bg-info > a {\\n color: #fff !important;\\n}\\n\\n.row {\\n display: flex;\\n flex-wrap: wrap;\\n margin-right: -7.5px;\\n margin-left: -7.5px;\\n}\\n\\n.col-lg-3 .small-box h3, .col-md-3 .small-box h3, .col-xl-3 .small-box h3 {\\n font-size: 2.2rem;\\n}\\n\\n.small-box h3 {\\n font-size: 2.2rem;\\n font-weight: 700;\\n margin: 0 0 10px;\\n padding: 0;\\n white-space: nowrap;\\n color: #fff;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box:hover {\\n text-decoration: none;\\n}\\n\\n.bg-success, .bg-success > a {\\n color: #fff !important;\\n}\\n\\n.inner {\\n height: 120px !important;\\n padding-left: 10px;\\n padding-top: 10px;\\n}\\n\\n.color {\\n color: #fff;\\n font-size: 1.4rem !important;\\n}\\n\\nbutton.close {\\n position: absolute;\\n top: 0.25rem;\\n right: 1.5rem;\\n z-index: 100;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9ib29raW5ndnMtc2Nhbi9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxib29raW5ndnMtc2NhblxcYm9va2luZ3ZzLXNjYW4uY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvYm9va2luZ3ZzLXNjYW4vYm9va2luZ3ZzLXNjYW4uY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7RUFDRSxTQUFBO0VBQ0Esb0xBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0FDREY7O0FESUE7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0FDREY7O0FESUE7RUFDRSxzQkFBQTtFQUNBLHFFQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QUNERjs7QURJQTtFQUNFLG9DQUFBO0VBQ0EsK0JBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7QUNERjs7QURJQTtFQUNFLHNCQUFBO0FDREY7O0FESUE7RUFFRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7QUNERjs7QURJQTtFQUNFLGlCQUFBO0FDREY7O0FESUE7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0FDREY7O0FESUE7RUFDRSxVQUFBO0FDREY7O0FESUE7RUFDRSxlQUFBO0FDREY7O0FESUE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QUNERjs7QURJQTtFQUNFLHNCQUFBO0FDREY7O0FESUE7RUFDRSxjQUFBO0VBQ0EsMEJBQUE7VUFBQSx1QkFBQTtFQUNBLHlCQUFBO1VBQUEscUJBQUE7RUFDQSx5QkFBQTtVQUFBLHdCQUFBO0VBQ0EsdUJBQUE7VUFBQSxzQkFBQTtBQ0RGOztBRElBO0VBQ0UsVUFBQTtBQ0RGOztBRElBO0VBQ0UsZUFBQTtBQ0RGOztBRElBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0FDREY7O0FESUE7RUFDRSxzQkFBQTtBQ0RGOztBRElBO0VBQ0UsY0FBQTtFQUNBLDBCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtVQUFBLHFCQUFBO0VBQ0EseUJBQUE7VUFBQSx3QkFBQTtFQUNBLHVCQUFBO1VBQUEsc0JBQUE7QUNERjs7QURJQTtFQUNFLHFCQUFBO0FDREY7O0FESUE7RUFDRSxzQkFBQTtBQ0RGOztBRElBO0VBQ0Usd0JBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0FDREY7O0FESUE7RUFDRSxXQUFBO0VBQ0EsNEJBQUE7QUNERjs7QURNQTtFQUNFLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxZQUFBO0FDSEYiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2Jvb2tpbmd2cy1zY2FuL2Jvb2tpbmd2cy1zY2FuLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcblxyXG5ib2R5IHtcclxuICBtYXJnaW46IDA7XHJcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsLWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsXCJTZWdvZSBVSVwiLFJvYm90byxcIkhlbHZldGljYSBOZXVlXCIsQXJpYWwsc2Fucy1zZXJpZixcIkFwcGxlIENvbG9yIEVtb2ppXCIsXCJTZWdvZSBVSSBFbW9qaVwiLFwiU2Vnb2UgVUkgU3ltYm9sXCI7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uY29sLCAuY29sLTEsIC5jb2wtMTAsIC5jb2wtMTEsIC5jb2wtMTIsIC5jb2wtMiwgLmNvbC0zLCAuY29sLTQsIC5jb2wtNSwgLmNvbC02LCAuY29sLTcsIC5jb2wtOCwgLmNvbC05LCAuY29sLWF1dG8sIC5jb2wtbGcsIC5jb2wtbGctMSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiwgLmNvbC1sZy0yLCAuY29sLWxnLTMsIC5jb2wtbGctNCwgLmNvbC1sZy01LCAuY29sLWxnLTYsIC5jb2wtbGctNywgLmNvbC1sZy04LCAuY29sLWxnLTksIC5jb2wtbGctYXV0bywgLmNvbC1tZCwgLmNvbC1tZC0xLCAuY29sLW1kLTEwLCAuY29sLW1kLTExLCAuY29sLW1kLTEyLCAuY29sLW1kLTIsIC5jb2wtbWQtMywgLmNvbC1tZC00LCAuY29sLW1kLTUsIC5jb2wtbWQtNiwgLmNvbC1tZC03LCAuY29sLW1kLTgsIC5jb2wtbWQtOSwgLmNvbC1tZC1hdXRvLCAuY29sLXNtLCAuY29sLXNtLTEsIC5jb2wtc20tMTAsIC5jb2wtc20tMTEsIC5jb2wtc20tMTIsIC5jb2wtc20tMiwgLmNvbC1zbS0zLCAuY29sLXNtLTQsIC5jb2wtc20tNSwgLmNvbC1zbS02LCAuY29sLXNtLTcsIC5jb2wtc20tOCwgLmNvbC1zbS05LCAuY29sLXNtLWF1dG8sIC5jb2wteGwsIC5jb2wteGwtMSwgLmNvbC14bC0xMCwgLmNvbC14bC0xMSwgLmNvbC14bC0xMiwgLmNvbC14bC0yLCAuY29sLXhsLTMsIC5jb2wteGwtNCwgLmNvbC14bC01LCAuY29sLXhsLTYsIC5jb2wteGwtNywgLmNvbC14bC04LCAuY29sLXhsLTksIC5jb2wteGwtYXV0byB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmctcmlnaHQ6IDcuNXB4O1xyXG4gIHBhZGRpbmctbGVmdDogNy41cHg7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3gge1xyXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XHJcbiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2IoMCAwIDAgLyAxMyUpLCAwIDFweCAzcHggcmdiKDAgMCAwIC8gMjAlKTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnNtYWxsLWJveCA+IC5zbWFsbC1ib3gtZm9vdGVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4xKTtcclxuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuOCk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogM3B4IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgei1pbmRleDogMTA7XHJcbn1cclxuXHJcbi5iZy1pbmZvID4gYSB7XHJcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJvdyB7XHJcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtNy41cHg7XHJcbiAgbWFyZ2luLWxlZnQ6IC03LjVweDtcclxufVxyXG5cclxuLmNvbC1sZy0zIC5zbWFsbC1ib3ggaDMsIC5jb2wtbWQtMyAuc21hbGwtYm94IGgzLCAuY29sLXhsLTMgLnNtYWxsLWJveCBoMyB7XHJcbiAgZm9udC1zaXplOiAyLjJyZW07XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggaDMge1xyXG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgbWFyZ2luOiAwIDAgMTBweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggaDMsIC5zbWFsbC1ib3ggcCB7XHJcbiAgei1pbmRleDogNTtcclxufVxyXG5cclxuLnNtYWxsLWJveCBwIHtcclxuICBmb250LXNpemU6IDFyZW07XHJcbn1cclxuXHJcbnAge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbnAge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xyXG4gIG1hcmdpbi1ibG9jay1lbmQ6IDFlbTtcclxuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwcHg7XHJcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcclxuICB6LWluZGV4OiA1O1xyXG59XHJcblxyXG4uc21hbGwtYm94IHAge1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxufVxyXG5cclxucCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxucCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XHJcbiAgbWFyZ2luLWJsb2NrLWVuZDogMWVtO1xyXG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcclxuICBtYXJnaW4taW5saW5lLWVuZDogMHB4O1xyXG59XHJcblxyXG4uc21hbGwtYm94OmhvdmVyIHtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbi5iZy1zdWNjZXNzLCAuYmctc3VjY2VzcyA+IGEge1xyXG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pbm5lciB7XHJcbiAgaGVpZ2h0OiAxMjBweCAhaW1wb3J0YW50O1xyXG4gIHBhZGRpbmctbGVmdDogMTBweDtcclxuICBwYWRkaW5nLXRvcDogMTBweDtcclxufVxyXG5cclxuLmNvbG9yIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LXNpemU6IDEuNHJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuXHJcbmJ1dHRvbi5jbG9zZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMC4yNXJlbTtcclxuICByaWdodDogMS41cmVtO1xyXG4gIHotaW5kZXg6IDEwMDtcclxufVxyXG4iLCJib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmNvbCwgLmNvbC0xLCAuY29sLTEwLCAuY29sLTExLCAuY29sLTEyLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC1hdXRvLCAuY29sLWxnLCAuY29sLWxnLTEsIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIsIC5jb2wtbGctMiwgLmNvbC1sZy0zLCAuY29sLWxnLTQsIC5jb2wtbGctNSwgLmNvbC1sZy02LCAuY29sLWxnLTcsIC5jb2wtbGctOCwgLmNvbC1sZy05LCAuY29sLWxnLWF1dG8sIC5jb2wtbWQsIC5jb2wtbWQtMSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZC0yLCAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLmNvbC1tZC01LCAuY29sLW1kLTYsIC5jb2wtbWQtNywgLmNvbC1tZC04LCAuY29sLW1kLTksIC5jb2wtbWQtYXV0bywgLmNvbC1zbSwgLmNvbC1zbS0xLCAuY29sLXNtLTEwLCAuY29sLXNtLTExLCAuY29sLXNtLTEyLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS1hdXRvLCAuY29sLXhsLCAuY29sLXhsLTEsIC5jb2wteGwtMTAsIC5jb2wteGwtMTEsIC5jb2wteGwtMTIsIC5jb2wteGwtMiwgLmNvbC14bC0zLCAuY29sLXhsLTQsIC5jb2wteGwtNSwgLmNvbC14bC02LCAuY29sLXhsLTcsIC5jb2wteGwtOCwgLmNvbC14bC05LCAuY29sLXhsLWF1dG8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiA3LjVweDtcbiAgcGFkZGluZy1sZWZ0OiA3LjVweDtcbn1cblxuLnNtYWxsLWJveCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEzKSwgMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNtYWxsLWJveCA+IC5zbWFsbC1ib3gtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uYmctaW5mbyA+IGEge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4ucm93IHtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtNy41cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNy41cHg7XG59XG5cbi5jb2wtbGctMyAuc21hbGwtYm94IGgzLCAuY29sLW1kLTMgLnNtYWxsLWJveCBoMywgLmNvbC14bC0zIC5zbWFsbC1ib3ggaDMge1xuICBmb250LXNpemU6IDIuMnJlbTtcbn1cblxuLnNtYWxsLWJveCBoMyB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAxMHB4O1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJnLXN1Y2Nlc3MsIC5iZy1zdWNjZXNzID4gYSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5pbm5lciB7XG4gIGhlaWdodDogMTIwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLmNvbG9yIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICByaWdodDogMS41cmVtO1xuICB6LWluZGV4OiAxMDA7XG59Il19 */\"","import { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { QRCodeComponent } from 'angular2-qrcode'\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ConfigurationService } from 'src/app/services/configuration.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { fadeInOut } from 'src/app/services/animations';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { MatDialog } from '@angular/material';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-bookingvs-scan',\r\n templateUrl: './bookingvs-scan.component.html',\r\n styleUrls: ['./bookingvs-scan.component.scss']\r\n})\r\nexport class BookingvsScanComponent implements OnInit,AfterViewInit {\r\n\r\n appLogo = require('../../assets/images/logos-02.png');\r\n Booking: any\r\n Badata: any\r\n BookingButNotOut: any\r\n OutButnotIn: any\r\n inButnotout: any\r\n OutForDelivery: any\r\n officename: any\r\n combdisb: boolean = false;\r\n excel: any\r\n IFtrue = false;\r\n loadingIndicator = false;\r\n columns: any[] = [];\r\n rows: BookingButNotOut[] = [];\r\n bookingdata: any[] = [];\r\n addrow: BookingButNotOut[] = [];\r\n rowsCache: BookingButNotOut[] = [];\r\n roregionarr: any[] = [];\r\n OfdButNotout = \"0\"\r\n\r\n constructor(public dialog: MatDialog, private datePipe: DatePipe, private excelService: ExcelService, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService) {\r\n }\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss');\r\n ngOnInit() {\r\n this.Badata = this.localstre.getData(\"BaLoginData\");\r\n if (this.Badata[0].officeCode != '000001') {\r\n this.combdisb = true;\r\n $('#ddlregion').val('All')\r\n }\r\n else {\r\n this.combdisb = false;\r\n $('#ddlregion').val('All')\r\n }\r\n \r\n }\r\n ngAfterViewInit() {\r\n this.Badata = this.localstre.getData(\"BaLoginData\");\r\n\r\n if (this.Badata[0].officeCode != '000001') {\r\n this.combdisb = true;\r\n $('#ddlregion').val('All')\r\n }\r\n else {\r\n this.combdisb = false;\r\n $('#ddlregion').val('All')\r\n }\r\n this.loaddata();\r\n }\r\n loaddata() {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n this.getBookingvsScancount();\r\n this.Getroregion();\r\n }\r\n Getroregion() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetRegionOffice'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n Parameter[0] = null;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.roregionarr = result;\r\n this.alertService.stopLoadingMessage();\r\n\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n getBookingvsScancount() {\r\n this.transaction.GetBookingvsScanCount(\"\", \"0\").subscribe(office => this.ongetBookingvsScancountsuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n ongetBookingvsScancountsuccess(add: any) {\r\n this.BookingButNotOut = add[0].bookingButNotOut;\r\n this.OutButnotIn = add[0].outButnotIn;\r\n this.inButnotout = add[0].inButnotout;\r\n this.OfdButNotout = add[0].ofdButnotdel\r\n this.alertService.stopLoadingMessage();\r\n }\r\n fundivineblessings(value: any) {\r\n this.IFtrue = true;\r\n var strvalue = value;\r\n this.excel = strvalue;\r\n if (strvalue == '1') {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n this.columns = [\r\n /* { prop: 'index', name: '#', width: 30, },*/\r\n { prop: 'aAwbno', name: 'Awbno', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'aAwbInscanDate', name: 'Book Date', width: 120 },\r\n { prop: 'abooktime', name: 'Time', width: 100 },\r\n { prop: 'aBooKingOffice', name: 'Booking Office', width: 150 },\r\n { prop: 'aOrigin', name: 'Origin', width: 100 },\r\n { prop: 'aDestination', name: 'Destination', width: 100 },\r\n { prop: 'aAwbMode', name: 'Mode', width: 50 },\r\n { prop: 'aProduct', name: 'Product', width: 100 },\r\n { prop: 'aAwbWeight', name: 'Weight', width: 70 },\r\n /* { prop: 'aDispatchDate', name: 'Dispatch Date', width: 100 },*/\r\n\r\n ];\r\n this.transaction.GetBookingvsScans(\"1\", \"0\").subscribe(office => this.onBookingButNotOutsssuccess(office), error => this.onDataLoadFailed(error));\r\n }\r\n if (strvalue == '2') {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n this.columns = [\r\n\r\n { prop: 'bawbno', name: 'Awbno', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'bAwbMode', name: 'Mode', width: 50 },\r\n { prop: 'bProduct', name: 'Product', width: 70 },\r\n { prop: 'bBookingDate', name: 'BookingDate', width: 100 },\r\n { prop: 'bOrigin', name: 'Origin', width: 150 },\r\n { prop: 'bDestination', name: 'Destination', width: 150 },\r\n { prop: 'bPieces', name: 'Pcs', width: 50 },\r\n { prop: 'bAwbWeight', name: 'Weight', width: 70 },\r\n { prop: 'bOffice', name: 'Dispatch Station', width: 150 },\r\n /* { prop: 'bAwbinoutDate', name: 'Awb Inout Date', width: 100 },*/\r\n { prop: 'bDispatchDate', name: 'Ds. Date', width: 100 },\r\n { prop: 'bDispatchtime', name: 'Ds. Time', width: 100 },\r\n { prop: 'bToCity', name: 'Dispatch To', width: 200 },\r\n { prop: 'bDmode', name: 'Ds. Mode', width: 100 },\r\n { prop: 'bVendor', name: 'Vendor', width: 130 },\r\n { prop: 'bStatus', name: 'Status', width: 100 },\r\n\r\n ];\r\n this.transaction.GetBookingvsScans(\"2\", \"0\").subscribe(office => this.onBookingOutButnotInsssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n if (strvalue == '3') {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n this.columns = [\r\n { prop: 'cawbno', name: 'Awbno', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'cInComingDate', name: 'Recieve Date', width: 100 },\r\n { prop: 'cInComingtime', name: 'Recieve Time', width: 100 },\r\n { prop: 'cBookingDate', name: 'BookingDate', width: 100 },\r\n { prop: 'cOffice', name: 'Office', width: 150 },\r\n { prop: 'cOrigin', name: 'Origin', width: 100 },\r\n { prop: 'cDestination', name: 'Destination', width: 100 },\r\n { prop: 'cAwbMode', name: 'Awb Mode', width: 70 },\r\n { prop: 'cProduct', name: 'Product', width: 70 },\r\n { prop: 'cAwbWeight', name: 'Weight', width: 70 },\r\n { prop: 'cFromCity', name: 'FromCity', width: 120 },\r\n\r\n ];\r\n this.transaction.GetBookingvsScans(\"3\", \"0\").subscribe(office => this.onBookinginButnotoutssuccess(office), error => this.onDataLoadFailed(error));\r\n }\r\n if (strvalue == '4') {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n this.columns = [\r\n { prop: 'dawbno', name: 'Awbno', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'dProduct', name: 'Product', width: 70 },\r\n { prop: 'dBookingDate', name: 'BookingDate', width: 100 },\r\n { prop: 'dOrigin', name: 'Origin', width: 170 },\r\n { prop: 'dDestination', name: 'Destination', width: 150 },\r\n { prop: 'dPcs', name: 'Pcs', width: 50 },\r\n { prop: 'dAwbWeight', name: 'Weight', width: 70 },\r\n { prop: 'dOffice', name: 'OFD Office', width: 200 },\r\n { prop: 'dRecvdate', name: 'Reached At', width: 150 },\r\n { prop: 'dOFDDate', name: 'OFD Date', width: 100 },\r\n { prop: 'dOfdtime', name: 'OFD Time', width: 100 },\r\n { prop: 'dDlvboy', name: 'Delivery Boy', width: 120 },\r\n { prop: 'dMobileno', name: 'Mobileno', width: 100 },\r\n { prop: 'dTopay', name: 'Topay', width: 50 },\r\n { prop: 'dCOD', name: 'DOD/COD', width: 50 },\r\n { prop: 'dStatus', name: 'Status', width: 100 }\r\n\r\n ];\r\n this.transaction.GetBookingvsScans(\"4\", \"0\").subscribe(office => this.OnSuceesOFDButNoDELv(office), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n OnSuceesOFDButNoDELv(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as BookingButNotOut[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as BookingButNotOut[];\r\n this.bookingdata = result;\r\n this.OfdButNotout = result.length.toString();\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new BookingButNotOut();\r\n this.addrow[0].dawbno = result[index].awbno;\r\n this.addrow[0].dOFDDate = result[index].ofdDate;\r\n this.addrow[0].dOfdtime = result[index].ofdTime;\r\n this.addrow[0].dOffice = result[index].office;\r\n this.addrow[0].dOrigin = result[index].origin;\r\n this.addrow[0].dDestination = result[index].destination;\r\n this.addrow[0].dAwbMode = result[index].awbMode;\r\n this.addrow[0].dProduct = result[index].product;\r\n this.addrow[0].dAwbWeight = result[index].awbWeight;\r\n this.addrow[0].dBookingDate = result[index].bookingDate;\r\n this.addrow[0].dDlvboy = result[index].deliveryBoy;\r\n this.addrow[0].dMobileno = result[index].mobileNo;\r\n this.addrow[0].dTopay = result[index].topay;\r\n this.addrow[0].dCOD = result[index].coddod;\r\n this.addrow[0].dPcs = result[index].pieces;\r\n this.addrow[0].dRecvdate = result[index].recvdate;\r\n this.addrow[0].dStatus = result[index].status;\r\n this.addrow[0].dControlOffice = result[index].controloffice;\r\n /* this.addrow[0].aDispatchDate = result[index].dispatchDate*/\r\n this.rows = this.addrow;\r\n\r\n }\r\n else {\r\n var tmp = new BookingButNotOut();\r\n tmp.dawbno = result[index].awbno;\r\n tmp.dOFDDate = result[index].ofdDate;\r\n tmp.dOfdtime = result[index].ofdTime;\r\n tmp.dOffice = result[index].office;\r\n tmp.dOrigin = result[index].origin;\r\n tmp.dDestination = result[index].destination;\r\n tmp.dAwbMode = result[index].awbMode;\r\n tmp.dProduct = result[index].product;\r\n tmp.dAwbWeight = result[index].awbWeight;\r\n tmp.dBookingDate = result[index].bookingDate;\r\n tmp.dDlvboy = result[index].deliveryBoy;\r\n tmp.dMobileno = result[index].mobileNo;\r\n tmp.dTopay = result[index].topay;\r\n tmp.dCOD = result[index].coddod;\r\n tmp.dPcs = result[index].pieces;\r\n tmp.dRecvdate = result[index].recvdate;\r\n tmp.dStatus = result[index].status;\r\n tmp.dControlOffice = result[index].controloffice;\r\n\r\n /* tmp.aDispatchDate = result[index].dispatchDate*/\r\n this.rows.push(tmp);\r\n\r\n }\r\n this.rowsCache = [...this.rows];\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n }\r\n onBookingButNotOutsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as BookingButNotOut[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as BookingButNotOut[];\r\n this.bookingdata = result;\r\n this.BookingButNotOut = result.length.toString();\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new BookingButNotOut();\r\n this.addrow[0].aAwbno = result[index].awbno;\r\n this.addrow[0].aAwbInscanDate = result[index].bookingDate;\r\n this.addrow[0].abooktime = result[index].booktime;\r\n this.addrow[0].aBooKingOffice = result[index].booKingOffice;\r\n this.addrow[0].aOrigin = result[index].origin;\r\n this.addrow[0].aDestination = result[index].destination;\r\n this.addrow[0].aAwbMode = result[index].awbMode;\r\n this.addrow[0].aProduct = result[index].product;\r\n this.addrow[0].aAwbWeight = result[index].awbWeight;\r\n this.addrow[0].aBookDate = result[index].bookingDate;\r\n this.addrow[0].aDestination = result[index].destination;\r\n this.addrow[0].aControlOffice = result[index].controloffice;\r\n\r\n /* this.addrow[0].aDispatchDate = result[index].dispatchDate*/\r\n this.rows = this.addrow;\r\n\r\n }\r\n else {\r\n var tmp = new BookingButNotOut();\r\n tmp.aAwbno = result[index].awbno;\r\n tmp.aAwbInscanDate = result[index].bookingDate;\r\n tmp.abooktime = result[index].booktime;\r\n tmp.aBooKingOffice = result[index].booKingOffice;\r\n tmp.aOrigin = result[index].origin;\r\n tmp.aDestination = result[index].destination\r\n tmp.aAwbMode = result[index].awbMode\r\n tmp.aProduct = result[index].product\r\n tmp.aAwbWeight = result[index].awbWeight\r\n tmp.aDestination = result[index].destination\r\n tmp.aBookDate = result[index].bookingDate;\r\n tmp.aControlOffice = result[index].controloffice;\r\n\r\n /* tmp.aDispatchDate = result[index].dispatchDate*/\r\n this.rows.push(tmp);\r\n }\r\n this.alertService.stopLoadingMessage();\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n }\r\n\r\n\r\n onBookingOutButnotInsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as BookingButNotOut[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as BookingButNotOut[];\r\n this.bookingdata = result;\r\n this.OutButnotIn = result.length.toString();\r\n\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n\r\n this.addrow[0] = new BookingButNotOut();\r\n this.addrow[0].bawbno = result[index].awbno;\r\n this.addrow[0].bDispatchDate = result[index].dispatchDate;\r\n this.addrow[0].bDispatchtime = result[index].dispatchtime;\r\n /* this.addrow[0].bAwbinoutDate = result[index].awbinoutDate;*/\r\n this.addrow[0].bBookingDate = result[index].bookingDate;\r\n this.addrow[0].bOffice = result[index].office;\r\n this.addrow[0].bOrigin = result[index].origin;\r\n this.addrow[0].bDestination = result[index].destination;\r\n this.addrow[0].bAwbMode = result[index].awbMode;\r\n this.addrow[0].bProduct = result[index].product;\r\n this.addrow[0].bAwbWeight = result[index].awbWeight;\r\n this.addrow[0].bToCity = result[index].toCity;\r\n this.addrow[0].bPieces = result[index].pieces;\r\n this.addrow[0].bDmode = result[index].mode;\r\n this.addrow[0].bStatus = result[index].status;\r\n this.addrow[0].bVendor = result[index].vendor;\r\n this.addrow[0].bControlOffice = result[index].controloffice;\r\n\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new BookingButNotOut();\r\n tmp.bawbno = result[index].awbno;\r\n tmp.bDispatchDate = result[index].dispatchDate;\r\n tmp.bDispatchtime = result[index].dispatchtime;\r\n /* tmp.bAwbinoutDate = result[index].awbinoutDate;*/\r\n tmp.bBookingDate = result[index].bookingDate;\r\n tmp.bOffice = result[index].office;\r\n tmp.bOrigin = result[index].origin;\r\n tmp.bDestination = result[index].destination;\r\n tmp.bAwbMode = result[index].awbMode;\r\n tmp.bProduct = result[index].product;\r\n tmp.bAwbWeight = result[index].awbWeight;\r\n tmp.bToCity = result[index].toCity;\r\n tmp.bPieces = result[index].pieces;\r\n tmp.bDmode = result[index].mode;\r\n tmp.bStatus = result[index].status;\r\n tmp.bVendor = result[index].vendor;\r\n tmp.bControlOffice = result[index].controloffice;\r\n\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\");\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n }\r\n\r\n onBookinginButnotoutssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as BookingButNotOut[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as BookingButNotOut[];\r\n this.bookingdata = result;\r\n this.inButnotout = result.length.toString();\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n\r\n this.addrow[0] = new BookingButNotOut();\r\n this.addrow[0].cawbno = result[index].awbno;\r\n this.addrow[0].cAwbinoutDate = result[index].awbinoutDate.split(\"T\")[0];\r\n this.addrow[0].cInComingDate = result[index].inComingDate;\r\n this.addrow[0].cInComingtime = result[index].inComingtime;\r\n this.addrow[0].cBookingDate = result[index].bookingDate;\r\n this.addrow[0].cOffice = result[index].office;\r\n this.addrow[0].cOrigin = result[index].origin;\r\n this.addrow[0].cDestination = result[index].destination;\r\n this.addrow[0].cInscanDate = result[index].inscanDate;\r\n this.addrow[0].cAwbMode = result[index].awbMode;\r\n this.addrow[0].cProduct = result[index].product;\r\n this.addrow[0].cAwbWeight = result[index].awbWeight;\r\n this.addrow[0].cFromCity = result[index].fromCity;\r\n this.addrow[0].cControlOffice = result[index].controloffice;\r\n\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new BookingButNotOut();\r\n tmp.cawbno = result[index].awbno;\r\n tmp.cAwbinoutDate = result[index].awbinoutDate.split(\"T\")[0];\r\n tmp.cInComingDate = result[index].inComingDate;\r\n tmp.cInComingtime = result[index].inComingtime;\r\n tmp.cBookingDate = result[index].bookingDate;\r\n tmp.cOffice = result[index].office;\r\n tmp.cOrigin = result[index].origin;\r\n tmp.cDestination = result[index].destination;\r\n tmp.cInscanDate = result[index].inscanDate;\r\n tmp.cAwbMode = result[index].awbMode;\r\n tmp.cProduct = result[index].product;\r\n tmp.cAwbWeight = result[index].awbWeight;\r\n tmp.cFromCity = result[index].fromCity;\r\n tmp.cControlOffice = result[index].controloffice;\r\n\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Error', `Errors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.aAwbno, r.bawbno, r.cawbno));\r\n }\r\n generateExcel() {\r\n var region = $('#ddlregion').val();\r\n if (this.excel == \"1\") {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (region == 'All' || this.rows[index].aControlOffice == region) {\r\n data[index] = [this.rows[index].aAwbno,\r\n this.rows[index].aBookDate,\r\n this.rows[index].abooktime,\r\n this.rows[index].aBooKingOffice,\r\n this.rows[index].aOrigin,\r\n this.rows[index].aDestination,\r\n this.rows[index].aAwbMode,\r\n this.rows[index].aProduct,\r\n this.rows[index].aAwbWeight, '', '', ''\r\n\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"SHIPMENTS_BOOKED_BUT_NOT_OUT\";\r\n let Office = \"\";\r\n if (this.Badata[0].officeCode == '000001') {\r\n Office = region == 'All' ? \"Pan India\" : $('#ddlregion option:selected').text().toString();\r\n }\r\n else {\r\n Office = region == 'All' ? this.Badata[0].officename : $('#ddlregion option:selected').text().toString();\r\n }\r\n\r\n this.excelService.header = [\"Awbno\", \"Booking Date\", \"Time\", \"Booking Office\", \"Origin\", \"Destination\", \"Mode\", \"Product\", \"Weight\", \"Reason\", \"Dispatch On\", \"Remark\"]\r\n this.excelService.title = \"DAILY MIS:SHIPMENTS BOOKED BUT NOT DISPATCHED\" + ' DATE : ' + this.datePipe.transform(new Date(), 'dd-MM-yyyy') + ' OFFICE:' + Office\r\n this.excelService.Widths = [15, 20, 10, 30, 30, 30, 10, 20, 10, 50, 30, 30]\r\n this.excelService.generateExcel();\r\n\r\n\r\n } else if (this.excel == \"2\") {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (region == 'All' || this.rows[index].bControlOffice == region) {\r\n data[index] = [this.rows[index].bawbno,\r\n this.rows[index].bAwbMode,\r\n this.rows[index].bProduct,\r\n this.rows[index].bBookingDate,\r\n this.rows[index].bOrigin,\r\n this.rows[index].bDestination,\r\n this.rows[index].bPieces,\r\n this.rows[index].bAwbWeight,\r\n this.rows[index].bOffice,\r\n this.rows[index].bDispatchDate,\r\n this.rows[index].bDispatchtime,\r\n this.rows[index].bToCity.substr(0, this.rows[index].bToCity.indexOf('-')),\r\n this.rows[index].bDmode,\r\n this.rows[index].bVendor,\r\n this.rows[index].bStatus,\r\n '', '', ''\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"SHIPMENTS_DIPATCH_BUT_NOT_IN\";\r\n let Office = \"\";\r\n if (this.Badata[0].officeCode == '000001') {\r\n Office = region == 'All' ? \"Pan India\" : $('#ddlregion option:selected').text().toString();\r\n }\r\n else {\r\n Office = region == 'All' ? this.Badata[0].officename : $('#ddlregion option:selected').text().toString();\r\n }\r\n this.excelService.header = [\"Awbno\", \"Mode\", \"Product\", \"Book Date\", \"Origin\", \"Destination\", \"Pcs\", \"Weight\", \"Dispatch Station\", \"DispatchDate\", \"Time\", \"ToCity\", \"Dispach Mode\", \"Venore\", \"Status\", \"Reason\", \"Recived On\", \"Remark\"]\r\n this.excelService.title = \"DAILY MIS:SHIPMENTS DIPATCHED BUT NOT RECEIVED\" + ' DATE : ' + this.datePipe.transform(new Date(), 'dd-MM-yyyy') + ' OFFICE:' + Office\r\n this.excelService.Widths = [15, 20, 10, 20, 30, 30, 30, 10, 15, 10, 25, 30, 30, 30]\r\n this.excelService.generateExcel();\r\n }\r\n else if (this.excel == \"3\") {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (region == 'All' || this.rows[index].cControlOffice == region) {\r\n\r\n data[index] = [this.rows[index].cawbno,\r\n this.rows[index].cInComingDate,\r\n this.rows[index].cInComingtime,\r\n this.rows[index].cBookingDate,\r\n this.rows[index].cOffice,\r\n this.rows[index].cOrigin,\r\n this.rows[index].cDestination,\r\n this.rows[index].cAwbMode,\r\n this.rows[index].cProduct,\r\n this.rows[index].cAwbWeight,\r\n this.rows[index].cFromCity.substr(0, this.rows[index].cFromCity.indexOf('-')), '', '', ''\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"SHIPMENTS_RECIEVE_BUT_NOT\";\r\n let Office = \"\";\r\n if (this.Badata[0].officeCode == '000001') {\r\n Office = region == 'All' ? \"Pan India\" : $('#ddlregion option:selected').text().toString();\r\n }\r\n else {\r\n Office = region == 'All' ? this.Badata[0].officename : $('#ddlregion option:selected').text().toString();\r\n }\r\n this.excelService.header = [\"Awbno\", \"Recive Date\", \"Time\", \"Book Date\", \"Office\", \"Origin\", \"Destination\", \"Mode\", \"Product\", \"Weight\", \"From City\", \"Reason\", \"Ofd On\", \"Remark\"]\r\n this.excelService.title = \"DAILY MIS:SHIPMENTS RECIEVED BUT NOT OFD\" + ' DATE : ' + this.datePipe.transform(new Date(), 'dd-MM-yyyy') + ' OFFICE:' + Office\r\n this.excelService.Widths = [15, 15, 10, 15, 30, 30, 30, 10, 25, 10, 30, 30, 30, 30]\r\n this.excelService.generateExcel();\r\n }\r\n else {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (region == 'All' || this.rows[index].dControlOffice == region) {\r\n\r\n data[index] = [this.rows[index].dawbno,\r\n this.rows[index].dProduct,\r\n this.rows[index].dBookingDate,\r\n this.rows[index].dOrigin,\r\n this.rows[index].dDestination,\r\n this.rows[index].dPcs,\r\n this.rows[index].dAwbWeight,\r\n this.rows[index].dOffice,\r\n this.rows[index].dRecvdate,\r\n this.rows[index].dOFDDate,\r\n this.rows[index].dOfdtime,\r\n this.rows[index].dDlvboy,\r\n this.rows[index].dMobileno,\r\n this.rows[index].dTopay,\r\n this.rows[index].dCOD,\r\n this.rows[index].dStatus,\r\n '', '', ''\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"OFD_BUT_NOT_DELIVER\";\r\n let Office = \"\";\r\n if (this.Badata[0].officeCode == '000001') {\r\n Office = region == 'All' ? \"Pan India\" : $('#ddlregion option:selected').text().toString();\r\n }\r\n else {\r\n Office = region == 'All' ? this.Badata[0].officename : $('#ddlregion option:selected').text().toString();\r\n }\r\n this.excelService.header = [\"Awbno\", \"Product\", \"Book Date\", \"Origin\", \"Destination\", \"Pcs\", \"Weight\", \"Office\", \"Recached At\", \"Ofd Date\", \"Ofd Time\", \"Delivery Boy\", \"Mobileno\", \"Topay\", \"COD/DOD\", \"Status\", \"Reason\", \"Delivery On\", \"Remark\"]\r\n this.excelService.title = \"DAILY MIS:OFD DONE BUT NOT DELIVER\" + ' DATE : ' + this.datePipe.transform(new Date(), 'dd-MM-yyyy') + ' OFFICE:' + Office\r\n this.excelService.Widths = [15, 15, 10, 15, 30, 30, 30, 10, 25, 10, 30, 30, 30, 30]\r\n this.excelService.generateExcel();\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\nexport class BookingButNotOut {\r\n\r\n public aAwbno: string\r\n public aAwbInscanDate: string\r\n public abooktime: string\r\n public aBooKingOffice: string\r\n public aOrigin: string\r\n public aDestination: string\r\n public aAwbMode: string\r\n public aProduct: string\r\n public aAwbWeight: string\r\n public aDispatchDate: string\r\n public aBookDate: string;\r\n public aControlOffice: string;\r\n\r\n public bawbno: string\r\n public bDispatchDate: string\r\n public bAwbinoutDate: string\r\n public bBookingDate: string\r\n public bDispatchtime: string\r\n public bOffice: string\r\n public bOrigin: string\r\n public bDestination: string\r\n public bAwbMode: string\r\n public bProduct: string\r\n public bAwbWeight: string\r\n public bToCity: string\r\n public bScanOfficeid: string\r\n public bInscanDate: string\r\n public bHubconnect: string\r\n public bPieces: string;\r\n public bDmode: string;\r\n public bVendor: string;\r\n public bStatus: string;\r\n public bControlOffice: string;\r\n\r\n public cawbno: string\r\n public cAwbinoutDate: string\r\n public cInComingDate: string\r\n public cBookingDate: string\r\n public cInComingtime: string\r\n public cOffice: string\r\n public cOrigin: string\r\n public cDestination: string\r\n public cAwbMode: string\r\n public cProduct: string\r\n public cAwbWeight: string\r\n public cFromCity: string\r\n public cScanOfficeid: string\r\n public cInscanDate: string\r\n public cControlOffice: string;\r\n\r\n public dawbno: string\r\n public dAwbinoutDate: string\r\n public dOFDDate: string\r\n public dBookingDate: string\r\n public dOfdtime: string\r\n public dOffice: string\r\n public dOrigin: string\r\n public dDestination: string\r\n public dAwbMode: string\r\n public dProduct: string\r\n public dAwbWeight: string\r\n public dDlvboy: string\r\n public dMobileno: string\r\n public dTopay: string\r\n public dCOD: string\r\n public dPcs: string\r\n public dRecvdate: string\r\n public dStatus: string\r\n public dControlOffice: string;\r\n}\r\n\r\n","import { CheckoutService } from '../services/checkout.services';\r\nimport { Component, OnDestroy, AfterViewInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport CONSTANTS from '../constants';\r\n\r\n@Component({\r\n selector: 'paytm-checkout',\r\n template: `
`,\r\n})\r\nexport class CheckoutComponent implements AfterViewInit, OnDestroy {\r\n private subs: Subscription = new Subscription;\r\n\r\n constructor(readonly checkoutService: CheckoutService) { }\r\n\r\n ngAfterViewInit(): void {\r\n this.subs = this.checkoutService\r\n .checkoutJsInstance$\r\n .subscribe(this.invoke);\r\n }\r\n\r\n invoke(checkoutJsInstance: any): void {\r\n if (checkoutJsInstance && checkoutJsInstance.invoke) {\r\n try {\r\n checkoutJsInstance.invoke();\r\n } catch (error) {\r\n console.error(CONSTANTS.ERRORS.INVOKE, error);\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.subs) {\r\n this.subs.unsubscribe();\r\n }\r\n }\r\n}\r\n","export default \"td {\\n background-color: #142c4c;\\n color: white;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jaXR5bWFzdGVyL0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXGNpdHltYXN0ZXJcXGNpdHltYXN0ZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvY2l0eW1hc3Rlci9jaXR5bWFzdGVyLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2NpdHltYXN0ZXIvY2l0eW1hc3Rlci5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbInRkIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYzRjO1xyXG4gIGNvbG9yOndoaXRlO1xyXG4gXHJcbiAgXHJcbn1cclxuIiwidGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYzRjO1xuICBjb2xvcjogd2hpdGU7XG59Il19 */\"","import { AfterViewInit, TemplateRef } from '@angular/core';\r\nimport { ViewChild } from '@angular/core';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Citymaster } from '../../models/citymaster.model';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { state } from '@angular/animations';\r\nimport { Pincodemaster } from '../../models/pincodemaster.model';\r\ndeclare var $: any;\r\n\r\nexport class PinCodeStreet {\r\n streetName:string\r\n}\r\n\r\n@Component({\r\n selector: 'app-citymaster',\r\n templateUrl: './citymaster.component.html',\r\n styleUrls: ['./citymaster.component.scss']\r\n})\r\nexport class CityMasterComponent implements OnInit,AfterViewInit {\r\n\r\n emailPattern = \"^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$\";\r\n mobNumberPattern = \"^((\\\\+91-?)|0)?[0-9]{10}$\";\r\n CityMaster = new Citymaster();\r\n columns: any[] = [];\r\n rows: Citymaster[] = [];\r\n rowsCache: Citymaster[] = [];\r\n editedCity: Citymaster;\r\n sourceCity: Citymaster;\r\n editingCity: { name: string };\r\n loadingIndicator: boolean;\r\n isEditMode = false;\r\n CityEdit: Citymaster = new Citymaster();\r\n state: string[] = [];\r\n\r\n isLoading = false;\r\n formResetToggle = true;\r\n modalClosedCallback: () => void;\r\n loginStatusSubscription: any;\r\n \r\n isModal = false;\r\n showservitable = false;\r\n //Start PinCode Master Details\r\n public _citydata: any;\r\n public _isasign: boolean = false\r\n PINCodeMaster = new Pincodemaster();\r\n editingPinCode: { name: string };\r\n sourcePinCode: Pincodemaster;\r\n PinCodeEdit: Pincodemaster = new Pincodemaster();\r\n editedPinCode: Pincodemaster;\r\n isEditModePin = false;\r\n pincoderows: Pincodemaster[] = [];\r\n pincoderowsCache: Pincodemaster[] = [];\r\n columnspincode: any[] ;\r\n columnspincodeservice:any[];\r\n GroupServiceable = false;\r\n GroupOda =false;\r\n GroupNonServicable = false;\r\n GroupPartial = false;\r\n Pincodestreet: any[] = [];\r\n \r\n \r\n public rowsstreet: PinCodeStreet[] = [];\r\n// End PinCode Master Details\r\n\r\n //state= [\r\n // \"Uttar Pradesh\",\r\n // \"Bihar\",\r\n // \"Delhi\",\r\n // \"Punjab\"\r\n //]\r\n\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n isSaving: boolean;\r\n\r\n constructor( private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n \r\n \r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.cityName,\r\n r.stateName, r.pinCode));\r\n }\r\n getStateList($event) {\r\n this.GetstateMaster();\r\n $('#stateName').autocomplete({\r\n source: this.state,\r\n delay: 500\r\n });\r\n }\r\n //GetCombodata(data) {\r\n // if (state.length > 0 && data >= 0) { this.CityEdit.stateName = this.state[data].toString(); } else { this.CityEdit.stateName = \"\" }\r\n\r\n //}\r\n AssignGroup(grouptype:string)\r\n {\r\n if (grouptype ==\"Servicable\")\r\n {\r\n this.GroupServiceable = true;\r\n this.GroupOda =false;\r\n this.GroupNonServicable = false;\r\n this.GroupPartial = false;\r\n (document.getElementById(\"btnservice\")).disabled = false;\r\n (document.getElementById(\"btnoda\")).disabled = true;\r\n (document.getElementById(\"btnpart\")).disabled = true;\r\n (document.getElementById(\"btnnon\")).disabled = true;\r\n\r\n }\r\n if (grouptype ==\"Oda\")\r\n {\r\n this.GroupServiceable =false ;\r\n this.GroupOda =true;\r\n this.GroupNonServicable = false;\r\n this.GroupPartial = false;\r\n (document.getElementById(\"btnservice\")).disabled = true;\r\n (document.getElementById(\"btnoda\")).disabled = false;\r\n (document.getElementById(\"btnpart\")).disabled = true;\r\n (document.getElementById(\"btnnon\")).disabled = true;\r\n\r\n\r\n }\r\n if (grouptype ==\"Nonservicable\")\r\n {\r\n this.GroupServiceable =false ;\r\n this.GroupOda =false;\r\n this.GroupNonServicable = true;\r\n this.GroupPartial = false;\r\n (document.getElementById(\"btnservice\")).disabled = true;\r\n (document.getElementById(\"btnoda\")).disabled = true;\r\n (document.getElementById(\"btnpart\")).disabled = true;\r\n (document.getElementById(\"btnnon\")).disabled = false;\r\n\r\n\r\n }\r\n if (grouptype == \"Partial\") {\r\n this.GroupServiceable = false;\r\n this.GroupOda = false;\r\n this.GroupNonServicable = false;\r\n this.GroupPartial = true; \r\n (document.getElementById(\"btnservice\")).disabled = true;\r\n (document.getElementById(\"btnoda\")).disabled = true;\r\n (document.getElementById(\"btnpart\")).disabled = false;\r\n (document.getElementById(\"btnnon\")).disabled = true;\r\n }\r\n }\r\n AddStreet() {\r\n if (this.rowsstreet.length == 0) {\r\n let street = new PinCodeStreet();\r\n street.streetName = (document.getElementById(\"streetName\")).value\r\n this.rowsstreet[0] = street;\r\n }\r\n else {\r\n let street = new PinCodeStreet();\r\n street.streetName = (document.getElementById(\"streetName\")).value;\r\n this.rowsstreet.push(street);\r\n }\r\n (document.getElementById(\"streetName\")).value = '';\r\n (document.getElementById(\"streetName\")).focus();\r\n\r\n this.rowsstreet = [...this.rowsstreet]\r\n }\r\n ngOnInit() {\r\n this.Pincodestreet = [{ prop: 'streetName', name: 'Street Name' }];\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop:'cityName',name: 'City Name', width: 100 },\r\n { prop: 'district', name: 'District Name', width: 50 },\r\n { prop: 'stateName', name: 'State Name', width: 50 },\r\n { prop: 'pinCode',name:'Pin-Code', width: 50 }\r\n // { name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.showCity();\r\n this.loadData();\r\n }\r\n ngAfterViewInit() {\r\n\r\n }\r\n onDataLoadSuccessful(citys: Citymaster[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n citys.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...citys];\r\n this.rows = citys;\r\n\r\n }\r\n onDatagetSuccessful(states:string[],listof:any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.state = states;\r\n\r\n }\r\n //GetstateMaster() {\r\n // this.ServiceMaster.getstateslist().subscribe(result => this.onDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n //}\r\n GetstateMaster() {\r\n this.ServiceMaster.getstateslist().subscribe(result => this.onDatagetSuccessful(result, 'STATE'), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n loadData() {\r\n this.alertService.startLoadingMessage();\r\n this.loadingIndicator = true;\r\n this.ServiceMaster.getcities().subscribe(results => this.onDataLoadSuccessful(results), error => this.onDataLoadFailed(error));\r\n this.GetstateMaster();\r\n }\r\n\r\n InsertCity() {\r\n this.CityEdit.stateName = (document.getElementById('stateName')).value;\r\n if (this.CityEdit.stateName == '') {\r\n this.showErrorAlert(\"Select state\", \"Please select state\")\r\n return false;\r\n }\r\n var Cityname = this.CityEdit.cityName;\r\n var Cityarr = Cityname.split('-');\r\n if (Cityarr.length > 1) {\r\n this.showErrorAlert(\"Error!\", \"Please Enter Valid City Name\")\r\n return false;\r\n }\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.ServiceMaster.newCity(this.CityEdit).subscribe(city => this.saveSuccessHelper(city), error => this.saveFailedHelper(error));\r\n this.isSaving = false;\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n showCity() {\r\n\r\n this.editingCity = null;\r\n this.sourceCity = null;\r\n this.isEditMode = true;\r\n this.CityEdit = this.editedCity = new Citymaster();\r\n\r\n }\r\n private saveSuccessHelper(city?: Citymaster) {\r\n if (city) {\r\n Object.assign(this.CityEdit, city);\r\n }\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `City \\\"${this.CityEdit.cityName}\\\" was created successfully`, MessageSeverity.success);\r\n this.rows.push(city[0]);\r\n this.rowsCache.push(city[0]);\r\n this.rows.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache = [...this.rowsCache]\r\n this.rows = [...this.rows]\r\n }\r\n private saveSuccessHelperpin(pincode?: Pincodemaster) {\r\n //if (pincode) {\r\n // Object.assign(this.CityEdit, city);\r\n //}\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `Pincode \\\"${this.PinCodeEdit.pinCode}\\\" was created successfully`, MessageSeverity.success);\r\n this.pincoderowsCache.push(pincode[0]);\r\n this.pincoderows.push(pincode[0]);\r\n this.pincoderows.forEach((state, index, pincode) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.pincoderowsCache.forEach((state, index, pincode) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.pincoderowsCache = [...this.pincoderowsCache];\r\n this.pincoderows = [...this.pincoderows];\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n\r\n\r\n }\r\n\r\n //Start Pin-Code Enter part\r\n AddPinCode(citydata?: any) {\r\n this.editingPinCode = null;\r\n this.sourcePinCode = null;\r\n this.isEditModePin = true;\r\n this.GroupNonServicable=false;\r\n this.GroupOda=false;\r\n this.GroupNonServicable =false;\r\n this.GroupPartial = false;\r\n if (citydata) {\r\n\r\n this.PinCodeEdit = this.editedPinCode = new Pincodemaster(citydata.cityName, citydata.stateName, \"\", \"\", \"Y\", \"Y\", \"Y\", \"Y\", \"Y\", \"N\", \"N\", \"N\", \"Y\",\"N\");\r\n this._isasign = true;\r\n this._citydata = citydata\r\n //this.pincodetableBind();\r\n }\r\n else {\r\n\r\n this._isasign = false;\r\n this.PinCodeEdit = this.editedPinCode = new Pincodemaster(\"\", \"\", \"\", \"\", \"Y\", \"Y\", \"Y\", \"Y\", \"Y\", \"N\", \"N\", \"N\", \"Y\",\"N\");\r\n this._citydata = null;\r\n }\r\n this.editorModal.show(); \r\n }\r\n refresh() {\r\n (document.getElementById(\"btnservice\")).disabled = false;\r\n (document.getElementById(\"btnoda\")).disabled = false;\r\n (document.getElementById(\"btnpart\")).disabled = false;\r\n (document.getElementById(\"btnnon\")).disabled = false;\r\n this.GroupServiceable = false;\r\n this.GroupOda = false;\r\n this.GroupNonServicable = false;\r\n this.GroupPartial = false;\r\n }\r\n InsertPinCodeDeatils() {\r\n\r\n if (this.editedPinCode.isCODservice != \"Y\" && this.editedPinCode.isCODservice != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isDODService != \"Y\" && this.editedPinCode.isDODService != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isDoxService != \"Y\" && this.editedPinCode.isDoxService != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isTeaservice != \"Y\" && this.editedPinCode.isTeaservice != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isParcelService != \"Y\" && this.editedPinCode.isParcelService != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isEDLlocation != \"Y\" && this.editedPinCode.isEDLlocation != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isNonServiceable != \"Y\" && this.editedPinCode.isNonServiceable != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isODAlocation != \"Y\" && this.editedPinCode.isODAlocation != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isPriorityService != \"Y\" && this.editedPinCode.isPriorityService != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isTopayService != \"Y\" && this.editedPinCode.isTopayService != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n if (this.editedPinCode.isTeaservice != \"Y\" && this.editedPinCode.isTeaservice != \"N\") { this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\"); return false; }\r\n\r\n if (this.GroupPartial == true) {\r\n this.editedPinCode.IsPartialService = \"Y\"\r\n this.PinCodeEdit.IsPartialService = \"Y\"\r\n }\r\n else {\r\n this.editedPinCode.IsPartialService = \"N\"\r\n this.PinCodeEdit.IsPartialService = \"N\"\r\n }\r\n if (this.PinCodeEdit.pinCode == '') {\r\n this.showErrorAlert(\"Please enter valid Pincode\", \"\")\r\n return;\r\n }\r\n if (this.GroupNonServicable == true) {\r\n this.PinCodeEdit.isCODservice = this.editedPinCode.isCODservice = 'N';\r\n this.PinCodeEdit.isDODService = this.editedPinCode.isDODService = 'N';\r\n this.PinCodeEdit.isDoxService = this.editedPinCode.isDoxService = 'N';\r\n this.PinCodeEdit.isParcelService = this.editedPinCode.isParcelService = 'N';\r\n this.PinCodeEdit.isPriorityService = this.editedPinCode.isPriorityService = 'N';\r\n this.PinCodeEdit.isTopayService = this.editedPinCode.isTopayService = 'N';\r\n this.PinCodeEdit.isTopayService = this.editedPinCode.isTeaservice = 'N';\r\n this.PinCodeEdit.isNonServiceable = this.editedPinCode.isNonServiceable = \"Y\";\r\n }\r\n \r\n this.isSaving = true;\r\n this.PinCodeEdit.citymasterid = this._citydata.cityMAsterid;\r\n this.PinCodeEdit.statemasterId = this._citydata.stateMasterid;\r\n this.PinCodeEdit.PincodeStreets = this.rowsstreet;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.ServiceMaster.newpincode(this.PinCodeEdit).subscribe(pincode => this.saveSuccessHelperpin(pincode), error => this.saveFailedHelper(error));\r\n this.isSaving = false;\r\n (document.getElementById(\"btnservice\")).disabled = false;\r\n (document.getElementById(\"btnoda\")).disabled = false;\r\n (document.getElementById(\"btnpart\")).disabled = false;\r\n (document.getElementById(\"btnnon\")).disabled = false;\r\n this.GroupServiceable = false;\r\n this.GroupOda = false;\r\n this.GroupNonServicable = false;\r\n this.GroupPartial = false;\r\n }\r\n onChangeEvent(event: any) {\r\n var yn = event.target.value\r\n if (yn != \"Y\" && yn != \"N\") {\r\n this.showErrorAlert(\"Enter valid Character\", \"Enter Y or N only\")\r\n\r\n return false;\r\n }\r\n this.setnonservicebale(event.target.value)\r\n }\r\n\r\n setnonservicebale(val: any) {\r\n if (val == 'Y') {\r\n this.PinCodeEdit.isCODservice = this.editedPinCode.isCODservice = 'N'\r\n this.PinCodeEdit.isDODService = this.editedPinCode.isDODService = 'N'\r\n this.PinCodeEdit.isDoxService = this.editedPinCode.isDoxService = 'N'\r\n this.PinCodeEdit.isParcelService = this.editedPinCode.isParcelService = 'N'\r\n this.PinCodeEdit.isPriorityService = this.editedPinCode.isPriorityService = 'N'\r\n this.PinCodeEdit.isTopayService = this.editedPinCode.isTopayService = 'N'\r\n this.PinCodeEdit.isTeaservice =this.editedPinCode.isTeaservice ='N'\r\n }\r\n else {\r\n this.PinCodeEdit.isCODservice = this.editedPinCode.isCODservice = 'Y'\r\n this.PinCodeEdit.isDODService = this.editedPinCode.isDODService = 'Y'\r\n this.PinCodeEdit.isDoxService = this.editedPinCode.isDoxService = 'Y'\r\n this.PinCodeEdit.isParcelService = this.editedPinCode.isParcelService = 'Y'\r\n this.PinCodeEdit.isPriorityService = this.editedPinCode.isPriorityService = 'Y'\r\n this.PinCodeEdit.isTopayService = this.editedPinCode.isTopayService = 'Y'\r\n this.PinCodeEdit.isTeaservice = this.editedPinCode.isTeaservice = 'Y'\r\n }\r\n this.editorModal.show();\r\n }\r\n\r\n pincodetableBind() {\r\n this.columnspincode = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'pinCode', name: 'Pin-Code', width: 100 },\r\n { prop: 'isDoxService', name: 'Dox', width: 100 },\r\n { prop: 'isParcelService', name: 'Parcel', width: 100 },\r\n { prop: 'isPriorityService', name: 'Priority', width: 100 },\r\n { prop: 'isTopayService', name: 'Topay', width: 100 },\r\n { prop: 'isCODservice', name: 'COD', width: 100 },\r\n { prop: 'isDODService', name: 'DOD', width: 100 },\r\n { prop: 'isNonServiceable', name: 'No Service', width: 100 },\r\n { prop: 'isPartialService', name: 'Partial Service', width: 100 }\r\n \r\n ]; \r\n //this.BindPincodeData();\r\n \r\n\r\n this.columnspincodeservice = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'pinCode', name: 'Pin-Code', width: 100 },\r\n { prop: 'isDoxService', name: 'Dox', width: 100 },\r\n { prop: 'isParcelService', name: 'Parcel', width: 100 },\r\n { prop: 'isPriorityService', name: 'Priority', width: 100 },\r\n { prop: 'isTopayService', name: 'Topay', width: 100 },\r\n { prop: 'isCODservice', name: 'COD', width: 100 },\r\n { prop: 'isDODService', name: 'DOD', width: 100 },\r\n\r\n ]; \r\n this.BindPincodeData();\r\n }\r\n BindPincodeData() {\r\n //this.alertService.startLoadingMessage();\r\n //this.loadingIndicator = true;\r\n //this.ServiceMaster.getpincodes().subscribe(results => this.onpincodeDataLoadSuccessful(results), error => this.onDataLoadFailed(error));\r\n //this.GetstateMaster();\r\n \r\n }\r\n \r\n onpincodeDataLoadSuccessful(pincode: Pincodemaster[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n \r\n pincode.forEach((state, index, states) => {\r\n (state as any).index = index + 1;\r\n });\r\n\r\n this.pincoderowsCache = [...pincode];\r\n this.pincoderows = pincode;\r\n \r\n }\r\n onEditorModalHidden() { \r\n this.editingPinCode = null;\r\n this.sourcePinCode = null; \r\n this.editorModal.hide();\r\n }\r\n\r\n\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57)) {\r\n return false;\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n //End Pin-Code Enter part\r\n\r\n}\r\n","export default \"/* CSS Document */\\n@media all {\\n div {\\n vertical-align: top;\\n }\\n\\n img {\\n max-width: 100%;\\n }\\n\\n html {\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n }\\n\\n body {\\n overflow: auto !important;\\n width: 100% !important;\\n }\\n\\n html, body {\\n background-color: #e4e5e6;\\n }\\n\\n html {\\n position: relative;\\n min-height: 100%;\\n }\\n\\n .card {\\n border-radius: 4px;\\n }\\n\\n .card-header:first-child {\\n border-radius: 4px 4px 0px 0px;\\n }\\n\\n /*Typekit*/\\n html, body {\\n font-family: \\\"Roboto\\\", sans-serif;\\n font-weight: 400;\\n font-size: 13px;\\n }\\n\\n body {\\n padding-top: 52px;\\n }\\n\\n p {\\n font-family: \\\"Roboto\\\", sans-serif;\\n color: #303030;\\n font-weight: 400;\\n margin-bottom: 1rem;\\n }\\n\\n input, textarea, select {\\n font-family: \\\"Roboto\\\", sans-serif;\\n }\\n\\n h1, h2, h3, h4, h5, h6 {\\n font-family: \\\"Roboto\\\", sans-serif;\\n font-weight: 700;\\n }\\n\\n h1 {\\n font-size: 20px;\\n color: #000000;\\n margin-bottom: 10px;\\n }\\n\\n h2 {\\n font-size: 30px;\\n }\\n\\n h3 {\\n font-size: 24px;\\n }\\n\\n h4 {\\n font-size: 18px;\\n }\\n\\n h5 {\\n font-size: 14px;\\n }\\n\\n h6 {\\n font-size: 12px;\\n }\\n\\n .row {\\n margin-right: -8px;\\n margin-left: -8px;\\n }\\n\\n .col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {\\n padding-right: 8px;\\n padding-left: 8px;\\n }\\n\\n .card-header {\\n background-color: #f0f3f5;\\n border-bottom: 1px solid #c8ced3;\\n font-size: 13px;\\n font-weight: 600;\\n color: #464646;\\n text-transform: uppercase;\\n padding: 0.75rem 8px;\\n }\\n\\n .cnstr-record th {\\n white-space: nowrap;\\n padding: 0.45rem 0.2rem;\\n font-size: 13px;\\n border-bottom-width: 0px !important;\\n }\\n\\n .cnstr-record thead {\\n background: #f0f3f5;\\n }\\n\\n .cnstr-record .form-control {\\n font-size: 13px;\\n padding: 0px 0rem 0px 0.2rem;\\n height: calc(2rem + 2px);\\n }\\n\\n .cnstr-record select.form-control {\\n padding-left: 0.05rem;\\n }\\n\\n .cnstr-record .table td, .cnstr-record .table th {\\n vertical-align: middle;\\n }\\n\\n .theader {\\n position: -webkit-sticky;\\n position: sticky;\\n top: 0;\\n z-index: 1;\\n }\\n\\n .cnstr-record .table td {\\n padding: 0.3rem;\\n }\\n\\n .table-scroll tbody {\\n position: absolute;\\n overflow-y: scroll;\\n height: 250px;\\n }\\n\\n .table-responsive {\\n max-height: 500px;\\n }\\n\\n .cnstr-record .table td h4 {\\n margin: 0px;\\n }\\n\\n .wp-50 {\\n width: 50px;\\n }\\n\\n .wp-60 {\\n width: 60px;\\n }\\n\\n .wp-70 {\\n width: 70px;\\n }\\n\\n .wp-80 {\\n width: 80px;\\n }\\n\\n .wp-90 {\\n width: 90px;\\n }\\n\\n .wp-100 {\\n width: 100px;\\n }\\n\\n .mw-auto {\\n min-width: inherit;\\n }\\n\\n .expand-row {\\n width: 100%;\\n border: solid 1px #596269;\\n display: inline-block;\\n border-radius: 3px;\\n width: 16px;\\n height: 16px;\\n vertical-align: top;\\n background: #596269;\\n color: #ffffff !important;\\n }\\n\\n .expand-row img {\\n vertical-align: top;\\n position: relative;\\n top: 2px;\\n }\\n\\n .sub-table th {\\n font-weight: 400;\\n font-size: 12px;\\n }\\n\\n .sub-table td {\\n background: #efefef;\\n }\\n\\n .no-bg td {\\n background: inherit;\\n }\\n\\n .mw-100 {\\n max-width: 100%;\\n }\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb25zLXJlcG9ydC9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb25zLXJlcG9ydFxcY29ucy1yZXBvcnQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvY29ucy1yZXBvcnQvY29ucy1yZXBvcnQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsaUJBQUE7QUFFQTtFQUlBO0lBQ0UsbUJBQUE7RUNOQTs7RURTRjtJQUNFLGVBQUE7RUNOQTs7RURTRjtJQUNFLG1DQUFBO0lBQ0Esa0NBQUE7RUNOQTs7RURTRjtJQUNFLHlCQUFBO0lBQ0Esc0JBQUE7RUNOQTs7RURTRjtJQUNFLHlCQUFBO0VDTkE7O0VEU0Y7SUFDRSxrQkFBQTtJQUNBLGdCQUFBO0VDTkE7O0VEU0Y7SUFDRSxrQkFBQTtFQ05BOztFRFNGO0lBQ0UsOEJBQUE7RUNOQTs7RURVRixVQUFBO0VBQ0E7SUFDRSxpQ0FBQTtJQUNBLGdCQUFBO0lBQ0EsZUFBQTtFQ1BBOztFRFVGO0lBQ0UsaUJBQUE7RUNQQTs7RURVRjtJQUNFLGlDQUFBO0lBQ0EsY0FBQTtJQUNBLGdCQUFBO0lBQ0EsbUJBQUE7RUNQQTs7RURVRjtJQUNFLGlDQUFBO0VDUEE7O0VEVUY7SUFDRSxpQ0FBQTtJQUNBLGdCQUFBO0VDUEE7O0VEVUY7SUFDRSxlQUFBO0lBQ0EsY0FBQTtJQUNBLG1CQUFBO0VDUEE7O0VEVUY7SUFDRSxlQUFBO0VDUEE7O0VEVUY7SUFDRSxlQUFBO0VDUEE7O0VEVUY7SUFDRSxlQUFBO0VDUEE7O0VEVUY7SUFDRSxlQUFBO0VDUEE7O0VEVUY7SUFDRSxlQUFBO0VDUEE7O0VEVUY7SUFDRSxrQkFBQTtJQUNBLGlCQUFBO0VDUEE7O0VEVUY7SUFDRSxrQkFBQTtJQUNBLGlCQUFBO0VDUEE7O0VEVUY7SUFDRSx5QkFBQTtJQUNBLGdDQUFBO0lBQ0EsZUFBQTtJQUNBLGdCQUFBO0lBQ0EsY0FBQTtJQUNBLHlCQUFBO0lBQ0Esb0JBQUE7RUNQQTs7RURVRjtJQUNFLG1CQUFBO0lBQ0EsdUJBQUE7SUFDQSxlQUFBO0lBQ0EsbUNBQUE7RUNQQTs7RURVRjtJQUNFLG1CQUFBO0VDUEE7O0VEVUY7SUFDRSxlQUFBO0lBQ0EsNEJBQUE7SUFDQSx3QkFBQTtFQ1BBOztFRFVGO0lBQ0UscUJBQUE7RUNQQTs7RURVRjtJQUNFLHNCQUFBO0VDUEE7O0VEU0E7SUFDRSx3QkFBQTtJQUFBLGdCQUFBO0lBQ0EsTUFBQTtJQUNBLFVBQUE7RUNORjs7RURVRjtJQUNFLGVBQUE7RUNQQTs7RURTQTtJQUNFLGtCQUFBO0lBQ0Esa0JBQUE7SUFDQSxhQUFBO0VDTkY7O0VEUUE7SUFDRSxpQkFBQTtFQ0xGOztFRFFGO0lBQ0UsV0FBQTtFQ0xBOztFRFFGO0lBQ0UsV0FBQTtFQ0xBOztFRFFGO0lBQ0UsV0FBQTtFQ0xBOztFRFFGO0lBQ0UsV0FBQTtFQ0xBOztFRFFGO0lBQ0UsV0FBQTtFQ0xBOztFRFFGO0lBQ0UsV0FBQTtFQ0xBOztFRFFGO0lBQ0UsWUFBQTtFQ0xBOztFRFFGO0lBQ0Usa0JBQUE7RUNMQTs7RURRRjtJQUNFLFdBQUE7SUFDQSx5QkFBQTtJQUNBLHFCQUFBO0lBQ0Esa0JBQUE7SUFDQSxXQUFBO0lBQ0EsWUFBQTtJQUNBLG1CQUFBO0lBQ0EsbUJBQUE7SUFDQSx5QkFBQTtFQ0xBOztFRFFGO0lBQ0UsbUJBQUE7SUFDQSxrQkFBQTtJQUNBLFFBQUE7RUNMQTs7RURRRjtJQUNFLGdCQUFBO0lBQ0EsZUFBQTtFQ0xBOztFRFFGO0lBQ0UsbUJBQUE7RUNMQTs7RURRRjtJQUNFLG1CQUFBO0VDTEE7O0VEUUY7SUFDRSxlQUFBO0VDTEE7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29ucy1yZXBvcnQvY29ucy1yZXBvcnQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcInV0Zi04XCI7XHJcblxyXG5cclxuLyogQ1NTIERvY3VtZW50ICovXHJcblxyXG5AbWVkaWEgYWxse1xyXG5cclxuXHJcblxyXG5kaXYge1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbn1cclxuXHJcbmltZyB7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5odG1sIHtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xyXG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmh0bWwsIGJvZHkge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU1ZTY7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uY2FyZCB7XHJcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4uY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMHB4IDBweDtcclxufVxyXG5cclxuXHJcbi8qVHlwZWtpdCovXHJcbmh0bWwsIGJvZHkge1xyXG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgcGFkZGluZy10b3A6IDUycHg7XHJcbn1cclxuXHJcbnAge1xyXG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcclxuICBjb2xvcjogIzMwMzAzMDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbmlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0IHtcclxuICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG5oMSB7XHJcbiAgZm9udC1zaXplOiAyMHB4O1xyXG4gIGNvbG9yOiAjMDAwMDAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbmgyIHtcclxuICBmb250LXNpemU6IDMwcHg7XHJcbn1cclxuXHJcbmgzIHtcclxuICBmb250LXNpemU6IDI0cHg7XHJcbn1cclxuXHJcbmg0IHtcclxuICBmb250LXNpemU6IDE4cHg7XHJcbn1cclxuXHJcbmg1IHtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbmg2IHtcclxuICBmb250LXNpemU6IDEycHg7XHJcbn1cclxuXHJcbi5yb3cge1xyXG4gIG1hcmdpbi1yaWdodDogLThweDtcclxuICBtYXJnaW4tbGVmdDogLThweDtcclxufVxyXG5cclxuLmNvbCwgLmNvbC0xLCAuY29sLTEwLCAuY29sLTExLCAuY29sLTEyLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC1hdXRvLCAuY29sLWxnLCAuY29sLWxnLTEsIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIsIC5jb2wtbGctMiwgLmNvbC1sZy0zLCAuY29sLWxnLTQsIC5jb2wtbGctNSwgLmNvbC1sZy02LCAuY29sLWxnLTcsIC5jb2wtbGctOCwgLmNvbC1sZy05LCAuY29sLWxnLWF1dG8sIC5jb2wtbWQsIC5jb2wtbWQtMSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZC0yLCAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLmNvbC1tZC01LCAuY29sLW1kLTYsIC5jb2wtbWQtNywgLmNvbC1tZC04LCAuY29sLW1kLTksIC5jb2wtbWQtYXV0bywgLmNvbC1zbSwgLmNvbC1zbS0xLCAuY29sLXNtLTEwLCAuY29sLXNtLTExLCAuY29sLXNtLTEyLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS1hdXRvLCAuY29sLXhsLCAuY29sLXhsLTEsIC5jb2wteGwtMTAsIC5jb2wteGwtMTEsIC5jb2wteGwtMTIsIC5jb2wteGwtMiwgLmNvbC14bC0zLCAuY29sLXhsLTQsIC5jb2wteGwtNSwgLmNvbC14bC02LCAuY29sLXhsLTcsIC5jb2wteGwtOCwgLmNvbC14bC05LCAuY29sLXhsLWF1dG8ge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDhweDtcclxuICBwYWRkaW5nLWxlZnQ6IDhweDtcclxufVxyXG5cclxuLmNhcmQtaGVhZGVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmM2Y1O1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzhjZWQzO1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGNvbG9yOiAjNDY0NjQ2O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgcGFkZGluZzogLjc1cmVtIDhweDtcclxufVxyXG5cclxuLmNuc3RyLXJlY29yZCB0aCB7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBwYWRkaW5nOiAuNDVyZW0gLjJyZW07XHJcbiAgZm9udC1zaXplOiAxM3B4O1xyXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY25zdHItcmVjb3JkIHRoZWFkIHtcclxuICBiYWNrZ3JvdW5kOiAjZjBmM2Y1O1xyXG59XHJcblxyXG4uY25zdHItcmVjb3JkIC5mb3JtLWNvbnRyb2wge1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxuICBwYWRkaW5nOiAwcHggMHJlbSAwcHggMC4ycmVtO1xyXG4gIGhlaWdodDogY2FsYygycmVtICsgMnB4KTtcclxufVxyXG5cclxuLmNuc3RyLXJlY29yZCBzZWxlY3QuZm9ybS1jb250cm9sIHtcclxuICBwYWRkaW5nLWxlZnQ6IC4wNXJlbTtcclxufVxyXG5cclxuLmNuc3RyLXJlY29yZCAudGFibGUgdGQsIC5jbnN0ci1yZWNvcmQgLnRhYmxlIHRoIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcbiAgLnRoZWFkZXIge1xyXG4gICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgIHRvcDogMDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBcclxuICB9XHJcblxyXG4uY25zdHItcmVjb3JkIC50YWJsZSB0ZCB7XHJcbiAgcGFkZGluZzogLjNyZW07XHJcbn1cclxuICAudGFibGUtc2Nyb2xsIHRib2R5IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuICAgIGhlaWdodDogMjUwcHg7XHJcbiAgfVxyXG4gIC50YWJsZS1yZXNwb25zaXZlIHtcclxuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xyXG4gIH1cclxuXHJcbi5jbnN0ci1yZWNvcmQgLnRhYmxlIHRkIGg0IHtcclxuICBtYXJnaW46IDBweDtcclxufVxyXG5cclxuLndwLTUwIHtcclxuICB3aWR0aDogNTBweDtcclxufVxyXG5cclxuLndwLTYwIHtcclxuICB3aWR0aDogNjBweDtcclxufVxyXG5cclxuLndwLTcwIHtcclxuICB3aWR0aDogNzBweDtcclxufVxyXG5cclxuLndwLTgwIHtcclxuICB3aWR0aDogODBweDtcclxufVxyXG5cclxuLndwLTkwIHtcclxuICB3aWR0aDogOTBweDtcclxufVxyXG5cclxuLndwLTEwMCB7XHJcbiAgd2lkdGg6IDEwMHB4O1xyXG59XHJcblxyXG4ubXctYXV0byB7XHJcbiAgbWluLXdpZHRoOiBpbmhlcml0O1xyXG59XHJcblxyXG4uZXhwYW5kLXJvdyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYm9yZGVyOiBzb2xpZCAxcHggIzU5NjI2OTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIHdpZHRoOiAxNnB4O1xyXG4gIGhlaWdodDogMTZweDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIGJhY2tncm91bmQ6ICM1OTYyNjk7XHJcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmV4cGFuZC1yb3cgaW1nIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0b3A6IDJweDtcclxufVxyXG5cclxuLnN1Yi10YWJsZSB0aCB7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBmb250LXNpemU6IDEycHg7XHJcbn1cclxuXHJcbi5zdWItdGFibGUgdGQge1xyXG4gIGJhY2tncm91bmQ6ICNlZmVmZWY7XHJcbn1cclxuXHJcbi5uby1iZyB0ZCB7XHJcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcclxufVxyXG5cclxuLm13LTEwMCB7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG59XHJcblxyXG5cclxuXHJcbiIsIi8qIENTUyBEb2N1bWVudCAqL1xuQG1lZGlhIGFsbCB7XG4gIGRpdiB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgfVxuXG4gIGJvZHkge1xuICAgIG92ZXJmbG93OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIGh0bWwsIGJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU1ZTY7XG4gIH1cblxuICBodG1sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5jYXJkIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIH1cblxuICAuY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweCA0cHggMHB4IDBweDtcbiAgfVxuXG4gIC8qVHlwZWtpdCovXG4gIGh0bWwsIGJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICB9XG5cbiAgYm9keSB7XG4gICAgcGFkZGluZy10b3A6IDUycHg7XG4gIH1cblxuICBwIHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogIzMwMzAzMDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICBpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCB7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIH1cblxuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cblxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG5cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIGg2IHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cblxuICAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC04cHg7XG4gICAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gIH1cblxuICAuY29sLCAuY29sLTEsIC5jb2wtMTAsIC5jb2wtMTEsIC5jb2wtMTIsIC5jb2wtMiwgLmNvbC0zLCAuY29sLTQsIC5jb2wtNSwgLmNvbC02LCAuY29sLTcsIC5jb2wtOCwgLmNvbC05LCAuY29sLWF1dG8sIC5jb2wtbGcsIC5jb2wtbGctMSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiwgLmNvbC1sZy0yLCAuY29sLWxnLTMsIC5jb2wtbGctNCwgLmNvbC1sZy01LCAuY29sLWxnLTYsIC5jb2wtbGctNywgLmNvbC1sZy04LCAuY29sLWxnLTksIC5jb2wtbGctYXV0bywgLmNvbC1tZCwgLmNvbC1tZC0xLCAuY29sLW1kLTEwLCAuY29sLW1kLTExLCAuY29sLW1kLTEyLCAuY29sLW1kLTIsIC5jb2wtbWQtMywgLmNvbC1tZC00LCAuY29sLW1kLTUsIC5jb2wtbWQtNiwgLmNvbC1tZC03LCAuY29sLW1kLTgsIC5jb2wtbWQtOSwgLmNvbC1tZC1hdXRvLCAuY29sLXNtLCAuY29sLXNtLTEsIC5jb2wtc20tMTAsIC5jb2wtc20tMTEsIC5jb2wtc20tMTIsIC5jb2wtc20tMiwgLmNvbC1zbS0zLCAuY29sLXNtLTQsIC5jb2wtc20tNSwgLmNvbC1zbS02LCAuY29sLXNtLTcsIC5jb2wtc20tOCwgLmNvbC1zbS05LCAuY29sLXNtLWF1dG8sIC5jb2wteGwsIC5jb2wteGwtMSwgLmNvbC14bC0xMCwgLmNvbC14bC0xMSwgLmNvbC14bC0xMiwgLmNvbC14bC0yLCAuY29sLXhsLTMsIC5jb2wteGwtNCwgLmNvbC14bC01LCAuY29sLXhsLTYsIC5jb2wteGwtNywgLmNvbC14bC04LCAuY29sLXhsLTksIC5jb2wteGwtYXV0byB7XG4gICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICB9XG5cbiAgLmNhcmQtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmM2Y1O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzhjZWQzO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjNDY0NjQ2O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzogMC43NXJlbSA4cHg7XG4gIH1cblxuICAuY25zdHItcmVjb3JkIHRoIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBhZGRpbmc6IDAuNDVyZW0gMC4ycmVtO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jbnN0ci1yZWNvcmQgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICNmMGYzZjU7XG4gIH1cblxuICAuY25zdHItcmVjb3JkIC5mb3JtLWNvbnRyb2wge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBwYWRkaW5nOiAwcHggMHJlbSAwcHggMC4ycmVtO1xuICAgIGhlaWdodDogY2FsYygycmVtICsgMnB4KTtcbiAgfVxuXG4gIC5jbnN0ci1yZWNvcmQgc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjA1cmVtO1xuICB9XG5cbiAgLmNuc3RyLXJlY29yZCAudGFibGUgdGQsIC5jbnN0ci1yZWNvcmQgLnRhYmxlIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG5cbiAgLnRoZWFkZXIge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAuY25zdHItcmVjb3JkIC50YWJsZSB0ZCB7XG4gICAgcGFkZGluZzogMC4zcmVtO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB0Ym9keSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICB9XG5cbiAgLnRhYmxlLXJlc3BvbnNpdmUge1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICB9XG5cbiAgLmNuc3RyLXJlY29yZCAudGFibGUgdGQgaDQge1xuICAgIG1hcmdpbjogMHB4O1xuICB9XG5cbiAgLndwLTUwIHtcbiAgICB3aWR0aDogNTBweDtcbiAgfVxuXG4gIC53cC02MCB7XG4gICAgd2lkdGg6IDYwcHg7XG4gIH1cblxuICAud3AtNzAge1xuICAgIHdpZHRoOiA3MHB4O1xuICB9XG5cbiAgLndwLTgwIHtcbiAgICB3aWR0aDogODBweDtcbiAgfVxuXG4gIC53cC05MCB7XG4gICAgd2lkdGg6IDkwcHg7XG4gIH1cblxuICAud3AtMTAwIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gIH1cblxuICAubXctYXV0byB7XG4gICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICB9XG5cbiAgLmV4cGFuZC1yb3cge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICM1OTYyNjk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBiYWNrZ3JvdW5kOiAjNTk2MjY5O1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZXhwYW5kLXJvdyBpbWcge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMnB4O1xuICB9XG5cbiAgLnN1Yi10YWJsZSB0aCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cblxuICAuc3ViLXRhYmxlIHRkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICB9XG5cbiAgLm5vLWJnIHRkIHtcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICB9XG5cbiAgLm13LTEwMCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59Il19 */\"","import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-cons-report',\r\n templateUrl: './cons-report.component.html',\r\n styleUrls: ['./cons-report.component.scss']\r\n})\r\nexport class ConsReportComponent implements OnInit {\r\n consdata: any[] = [];\r\n awbdata: any[] = [];\r\n hideme:any[] = []; \r\n Index: any;\r\n displaydata: any[] = [];\r\n searchText = '';\r\n arrcons: any[] = [];\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n arrbranch : any[] = [];\r\n constructor(private localstre: LocalStoreManager, private troute: ActivatedRoute, private excelService: ExcelService, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n\r\n ngOnInit() {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n $('#txtRegion').val(logindata[0].controloffice);\r\n //this.GetReportData();\r\n\r\n }\r\n GetReportData() {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n var fromdt = (document.getElementById('fromdate')).value;\r\n var todt = (document.getElementById('todate')).value;\r\n \r\n\r\n var fromdate = fromdt.substr(6, 4) + \"-\" + fromdt.substr(3, 2) + \"-\" + fromdt.substr(0, 2);// new Date(parseInt(fromdt.substr(6, 4)), parseInt(fromdt.substr(3, 2)), parseInt(fromdt.substr(0, 2))).toString();\r\n var toDate = todt.substr(6, 4) + \"-\" + todt.substr(3, 2) + \"-\" + todt.substr(0, 2);//new Date(parseInt(todt.substr(6, 4)), parseInt(todt.substr(3, 2)), parseInt(todt.substr(0, 2))).toString();\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getconsreport'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"FirstDate\"\r\n pr.PropertyValue = fromdate;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"LastDate\"\r\n pr.PropertyValue = toDate;\r\n Parameter[1] = pr;\r\n Req.LstParameter = null;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n GetReportDataDate() {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n var fromdt = (document.getElementById('fromdate')).value;\r\n var todt = (document.getElementById('todate')).value;\r\n if ($('#txtDestination').val() == '') {\r\n $('#txtDestination').focus();\r\n return;\r\n }\r\n if ($('#txtConsignee').val() == '') {\r\n $('#txtConsignee').focus();\r\n return;\r\n }\r\n if ($('#fromdt').val() == '') {\r\n $('#fromdt').focus();\r\n return;\r\n }\r\n if ($('#todt').val() == '') {\r\n $('#todt').focus();\r\n return;\r\n }\r\n var fromdate = fromdt.substr(6, 4) + \"-\" + fromdt.substr(3, 2) + \"-\" + fromdt.substr(0, 2);// new Date(parseInt(fromdt.substr(6, 4)), parseInt(fromdt.substr(3, 2)), parseInt(fromdt.substr(0, 2))).toString();\r\n var toDate = todt.substr(6, 4) + \"-\" + todt.substr(3, 2) + \"-\" + todt.substr(0, 2);//new Date(parseInt(todt.substr(6, 4)), parseInt(todt.substr(3, 2)), parseInt(todt.substr(0, 2))).toString();\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n let cons = $('#txtConsignee').val();\r\n let city = $('#txtDestination').val();\r\n\r\n Req.ProcessName = 'Usp_getconsreport'\r\n let Parameter = new Array(4);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"FirstDate\"\r\n pr.PropertyValue = fromdate;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"LastDate\"\r\n pr.PropertyValue = toDate;\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Consignee\"\r\n pr.PropertyValue = cons;\r\n Parameter[2] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"cityname\"\r\n pr.PropertyValue = cons;\r\n Parameter[3] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n onDataLoadFailed(error: any) {\r\n //this.loadingIndicator = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n\r\n }\r\n getCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2 = this.arrcity\r\n $('#txtDestination').autocomplete({\r\n source: this.arrcity2,\r\n delay: 50\r\n });\r\n }\r\n getConsList($event) {\r\n //this.GetConsMaster();\r\n $('#txtConsignee').autocomplete({\r\n source: this.arrcons,\r\n delay: 50\r\n });\r\n }\r\n getBaList($event) {\r\n //this.GetConsMaster();\r\n $('#txtBranch').autocomplete({\r\n source: this.arrbranch,\r\n delay: 50\r\n });\r\n }\r\n GetConsMaster() {\r\n if ($('#txtDestination').val() == '') {\r\n $('#txtDestination').focus();\r\n return;\r\n }\r\n let cname = $('#txtDestination').val()\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'GetconsigneeList'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"CityName\";\r\n pr.PropertyValue = cname;\r\n Parameter[0] = pr; \r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.ondtagetcons(result),error => this.onDataLoadFailed(error))\r\n }\r\n ondtagetcons(result: any) {\r\n this.arrcons = [];\r\n this.arrbranch = [];\r\n result.table.forEach((obj, ind, arr) => {\r\n this.arrcons.push(obj.consName);\r\n });\r\n result.table.forEach((obj, ind, arr) => {\r\n this.arrbranch.push(obj.officename);\r\n });\r\n }\r\n\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n // this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('txtDestination')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n (document.getElementById('txtDestination')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n this.GetConsMaster();\r\n\r\n }\r\n }\r\n\r\n getSucessDataExrate(result) {\r\n this.consdata = result.table;\r\n //this.loadout = result.table;\r\n this.awbdata = result.table1;\r\n this.awbdata.forEach((obj, ind, arr) => {\r\n obj.bookingDate = this.formatDate(obj.bookingDate)\r\n })\r\n \r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n\r\n formatDate(dateString) {\r\n const date = new Date(dateString);\r\n const day = String(date.getDate()).padStart(2, '0');\r\n const month = String(date.getMonth() + 1).padStart(2, '0'); // Months are zero-based\r\n const year = date.getFullYear();\r\n return `${day}/${month}/${year}`;\r\n}\r\n public showProductCountryInfo(index, consname,branch) {\r\n\r\n\r\n var awbdataf = this.awbdata.filter(data => data.consigneeName == consname && data.branch == branch)\r\n if (isNullOrUndefined(awbdataf)) {\r\n this.displaydata[index] = null\r\n\r\n\r\n\r\n }\r\n else {\r\n this.displaydata[index] = awbdataf\r\n }\r\n\r\n \r\n this.hideme[index] = !this.hideme[index]; \r\n this.Index = index;\r\n \r\n }\r\n \r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvYWNuLXVwZGF0ZS5jb21wb25lbnQuc2NzcyJ9 */\"","import { OnInit, TemplateRef } from '@angular/core';\r\nimport { Component, Inject, AfterViewInit, ViewChild, } from '@angular/core';\r\nimport { MatDialogRef, MatRadioChange, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Guid } from 'guid-typescript';\r\nimport { document } from 'ngx-bootstrap/utils';\r\nimport { debug, isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-acn-update',\r\n templateUrl: './acn-update.component.html',\r\n styleUrls: ['./acn-update.component.scss']\r\n})\r\nexport class AcnUpdateComponent implements AfterViewInit, OnInit {\r\n mps: ACNDetail = new ACNDetail();\r\n title: string;\r\n message: string;\r\n retMessage: string;\r\n requestData: ConfirmDialogACNModels = null;\r\n base64OutputCancelcheque: string;\r\n arrcity: any;\r\n acnimage: any = \"\";\r\n fromcity: any = \"\";\r\n tocity: any = \"\";\r\n mode: any = \"\";\r\n noofbag: any = \"\";\r\n constructor(\r\n public dialogRef: MatDialogRef, private localstre: LocalStoreManager,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogACNModels, private ServiceMaster: Masters, private transaction: TransactionService) {\r\n // Update view with given values\r\n this.title = data.title;\r\n //this.message = data.message;\r\n this.retMessage = null;\r\n this.requestData = data;\r\n }\r\n ngOnInit() {\r\n this.GetAcnData();\r\n\r\n }\r\n \r\n\r\n ngAfterViewInit() {\r\n $('#gpno').val(this.requestData.ACN.gatePassNo)\r\n $('#gpweight').val(this.requestData.ACN.gpWeight)\r\n $('#vcode').val(this.requestData.ACN.vendoreCode)\r\n $('#vname').val(this.requestData.ACN.vendoreName)\r\n $('#acn').val(this.requestData.ACN.aCNNO)\r\n $('#Acnweight').val(this.requestData.ACN.acnWeight)\r\n $('#fcity').val(this.fromcity);\r\n $('#tocity').val(this.tocity);\r\n $('#mode').val(this.mode);\r\n $('#tbag').val(this.noofbag);\r\n $('#ConnectedBy').val(this.requestData.ACN.connectedBy);\r\n this.getVendor();\r\n }\r\n\r\n GetAcnData() { \r\n this.transaction.GetAcnDetail(this.requestData.ACN.gatePassNo).subscribe(result => this.OngetsuccessGatePass(result), error => this.onDataLoadFailed(error))\r\n }\r\n OngetsuccessGatePass(result:any)\r\n {\r\n if (!isNullOrUndefined(result)) {\r\n\r\n debug;\r\n this.requestData.ACN.gatePassNo = result.gatePassNo;\r\n this.requestData.ACN.acnAmount = result.acnAmount;\r\n this.requestData.ACN.aCNDetailId = result.aCNDetailId;\r\n //this.requestData.ACN.acnImage = result[0].acnImage;\r\n this.requestData.ACN.aCNNO = result.aCNNO;\r\n this.requestData.ACN.acnWeight = result.acnWeight;\r\n this.requestData.ACN.gpWeight = result.gpWeight;\r\n this.requestData.ACN.acnImage = atob(result.acnImage);\r\n this.acnimage = this.requestData.ACN.acnImage;\r\n this.base64OutputCancelcheque = result.acnImage;\r\n this.requestData.ACN.connectedBy = result.connectedBy;\r\n this.fromcity = result.origin\r\n this.tocity = result.destination\r\n this.mode = result.mode\r\n this.noofbag = result.noofbag\r\n $('#fcity').val(this.fromcity);\r\n $('#tocity').val(this.tocity);\r\n $('#mode').val(this.mode);\r\n $('#tbag').val(this.noofbag);\r\n $('#ConnectedBy').val(this.requestData.ACN.connectedBy);\r\n }\r\n}\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n onConfirm(): void {\r\n\r\n\r\n this.mps = this.requestData.ACN;\r\n this.mps.aCNDetailId = Guid.raw();\r\n this.mps.aCNNO = $('#acn').val().toString();\r\n this.mps.acnWeight = parseFloat($('#Acnweight').val().toString());\r\n this.mps.vendoreCode = $('#vcode').val();\r\n this.mps.vendoreName = $('#vname').val();\r\n this.mps.acnAmount = $('#acnamt').val();\r\n this.mps.connectedBy = $('#ConnectedBy').val();\r\n this.mps.gatePassNo = $('#gpno').val();\r\n if (this.mps.aCNNO == '' || this.mps.acnWeight == 0 || this.mps.acnAmount == 0) {\r\n $('#acn').focus();\r\n return;\r\n }\r\n if (this.mps.connectedBy == '') {\r\n $('#ConnectedBy').focus();\r\n return;\r\n }\r\n if (this.mps.gatePassNo.substring(0, 2) != 'GP') {\r\n if (isNullOrUndefined(this.mps.vendoreCode) || this.mps.vendoreCode == '') {\r\n $('#vcode').focus()\r\n return;\r\n }\r\n }\r\n if (this.mps.acnWeight != this.mps.gpWeight) {\r\n //$('#message').text(\"Acn and gatepass weight mismatch\")\r\n $('#message').text(\"\")\r\n // return;\r\n }\r\n else {\r\n $('#message').text(\"\")\r\n \r\n }\r\n this.mps.acnImage = this.base64OutputCancelcheque;\r\n this.data.retMessage = this.mps\r\n var ErroronClose = false;\r\n this.data.retMessage.IsCancel = false;\r\n this.data.retMessage.IsError = false;\r\n this.data.retMessage.Message = 'Success';\r\n this.dialogRef.close(this.data.retMessage); \r\n\r\n }\r\n onFileSelected(evt: any, ftype: string) {\r\n var files = evt.target.files;\r\n var file: any = files[0];\r\n if (files && file) {\r\n var reader = new FileReader(); \r\n reader.onload = this._handleReaderLoadedCheque.bind(this);\r\n reader.readAsDataURL(file); \r\n }\r\n }\r\n _handleReaderLoadedCheque(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.acnimage = binaryString;\r\n\r\n this.base64OutputCancelcheque = btoa(binaryString);\r\n }\r\n\r\n\r\n onDismiss(): void {\r\n // Close the dialog, return false\r\n this.data.retMessage = this.mps;//\"Yes,\" + (document.getElementById('recivedBy')).value + \",\" + (document.getElementById('Action')).value;\r\n \r\n this.data.retMessage.IsError = true;\r\n this.data.retMessage.IsCancel = true;\r\n this.data.retMessage.Message = \"Validation Cancel\"\r\n \r\n this.dialogRef.close(this.data.retMessage);\r\n }\r\n getvendlista($event) {\r\n \r\n $('#vcode').autocomplete({\r\n source: this.arrcity,\r\n delay: 50\r\n\r\n });\r\n }\r\n SetcodeAndname($event) {\r\n let custcodename: string = (document.getElementById('vcode')).value;\r\n if (custcodename.indexOf('-') > 0) {\r\n (document.getElementById('vcode')).value = custcodename.substring(0, custcodename.indexOf('-') - 1);\r\n (document.getElementById('vname')).value = custcodename.substring(custcodename.indexOf('-') + 1);\r\n \r\n }\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n \r\n //this.loadingIndicator = false; \r\n this.arrcity = states;\r\n }\r\n getVendor() {\r\n this.ServiceMaster.getHelplist(\"VENDOR\").subscribe(result => this.onDatagetSuccessful(result, 'vend'), error => this.onDataLoadFailed(error));\r\n }\r\n onDataLoadFailed(error: any) {\r\n error;\r\n }\r\n}\r\nexport class ACNDetail {\r\n public aCNDetailId: any;\r\n public loadMovementId: any;\r\n public gatePassNo: string;\r\n public gpWeight: number;\r\n public aCNNO: string;\r\n public acnWeight: number;\r\n public vendoreCode: string;\r\n public createdOn: Date;\r\n public createdBy: string;\r\n public updatedOn: Date;\r\n public updatedBy: string;\r\n public vendoreName: string;\r\n public retMessage: string\r\n public acnAmount: number;\r\n public IsError: boolean\r\n public isedit: boolean\r\n public IsCancel: boolean\r\n public Message: string;\r\n public acnImage: string;\r\n public connectedBy: string;\r\n}\r\nexport class ConfirmDialogACNModels {\r\n\r\n constructor(public title: string, public ACN?: ACNDetail,\r\n public retMessage?: ACNDetail) {\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvYWRkcmVzc21hc3Rlci5jb21wb25lbnQuc2NzcyJ9 */\"","import { EventEmitter, Output, ViewChild } from '@angular/core';\nimport { TemplateRef } from '@angular/core';\nimport { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { from } from 'rxjs';\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { AuthService } from '../../services/auth.service';\nimport { ConfigurationService } from '../../services/configuration.service';\nimport { Masters } from '../../services/masters.service';\nimport { Utilities } from '../../services/utilities';\ndeclare var $: any;\n@Component({\n selector: 'app-addressmaster',\n templateUrl: './addressmaster.component.html',\n styleUrls: ['./addressmaster.component.scss']\n})\nexport class AddressmasterComponent {\n public editedAddress: Address = new Address();\n arrcity: any[] = [];\n arrcity2: any[] = [];\n loadingIndicator = false;\n \n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\n }\n \n getCityList($event) {\n this.GetCityMaster();\n this.arrcity2 = this.arrcity\n $('#city').autocomplete({\n source: this.arrcity2,\n delay: 50\n });\n }\n\n\n\n GetCityMaster() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\n }\n onDatagetSuccessful(states: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"STATE\") {\n this.arrcity = states;\n }\n if (listof == \"CITY\") {\n this.arrcity = states;\n }\n }\n SetCityAndState($event) {\n let citystate: string = (document.getElementById('city')).value;\n if (citystate.indexOf('-') > 0) {\n (document.getElementById('city')).value = citystate.substring(0, citystate.indexOf('-') - 1);\n (document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1);\n\n }\n }\n onDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n onlyNumberKey(event) {\n var ASCIICode = (event.which) ? event.which : event.keyCode\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\n return false;\n return true;\n }\n}\nexport class Address {\n constructor(houseNo?: string, streetName?: string, landMark?: string, city?: string, stateName?: string\n , pincode?: string) {\n this.houseNo = houseNo;\n this.streetName = streetName;\n this.landMark = landMark;\n this.city = city;\n this.stateName = stateName;\n this.pincode = pincode;\n };\n public houseNo?: string\n public streetName?: string\n public landMark?: string\n public city?: string\n public stateName?: string\n public pincode?: string\n public addressMasterId?: string\n public addressForid?: string\n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component } from '@angular/core';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'banner-demo',\r\n templateUrl: './banner-demo.component.html'\r\n})\r\nexport class BannerDemoComponent {\r\n banner1 = require('../../assets/images/demo/banner1.png');\r\n banner2 = require('../../assets/images/demo/banner2.png');\r\n banner3 = require('../../assets/images/demo/banner3.png');\r\n banner4 = require('../../assets/images/demo/banner4.png');\r\n}\r\n","export default \".combobox {\\n margin: auto;\\n}\\n\\n.combobox-input {\\n width: 330px;\\n border: 2px solid;\\n padding: 10px;\\n font-size: 18px;\\n border-bottom: 2px solid #a57070;\\n}\\n\\n.combobox-input:focus {\\n outline-style: none;\\n}\\n\\n.combobox-options {\\n position: absolute;\\n text-align: left;\\n background-color: white;\\n width: 350px;\\n max-height: 200px;\\n overflow-y: auto;\\n box-shadow: 2px 2px 2px 2px #ccc;\\n z-index: 1;\\n}\\n\\n.selected {\\n color: cornsilk;\\n background-color: #a57070;\\n}\\n\\nlist-item {\\n display: block;\\n font-size: 18px;\\n padding: 10px;\\n}\\n\\nlist-item:hover {\\n background-color: grey;\\n color: white;\\n}\\n\\n.error-text {\\n color: #a57070;\\n}\\n\\n.error {\\n border: 1px solid red;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcY29tYm9ib3guY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvY29tYm9ib3guY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSxZQUFBO0VBQ0EsaUJBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGdDQUFBO0FDQ0Y7O0FERUE7RUFDRSxtQkFBQTtBQ0NGOztBREVBO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLHVCQUFBO0VBQ0EsWUFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQ0FBQTtFQUNBLFVBQUE7QUNDRjs7QURFQTtFQUNFLGVBQUE7RUFDQSx5QkFBQTtBQ0NGOztBREVBO0VBQ0UsY0FBQTtFQUNBLGVBQUE7RUFDQSxhQUFBO0FDQ0Y7O0FERUE7RUFDRSxzQkFBQTtFQUNBLFlBQUE7QUNDRjs7QURFQTtFQUNFLGNBQUE7QUNDRjs7QURFQTtFQUNFLHFCQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2NvbnRyb2xzL2NvbWJvYm94LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmNvbWJvYm94IHtcclxuICBtYXJnaW46IGF1dG87XHJcbn1cclxuXHJcbi5jb21ib2JveC1pbnB1dCB7XHJcbiAgd2lkdGg6IDMzMHB4O1xyXG4gIGJvcmRlcjogMnB4IHNvbGlkO1xyXG4gIHBhZGRpbmc6IDEwcHg7XHJcbiAgZm9udC1zaXplOiAxOHB4O1xyXG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2IoMTY1LCAxMTIsIDExMik7XHJcbn1cclxuXHJcbi5jb21ib2JveC1pbnB1dDpmb2N1cyB7XHJcbiAgb3V0bGluZS1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuLmNvbWJvYm94LW9wdGlvbnMge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gIHdpZHRoOiAzNTBweDtcclxuICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIGJveC1zaGFkb3c6IDJweCAycHggMnB4IDJweCAjY2NjO1xyXG4gIHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi5zZWxlY3RlZCB7XHJcbiAgY29sb3I6IGNvcm5zaWxrO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNjUsIDExMiwgMTEyKTtcclxufVxyXG5cclxubGlzdC1pdGVtIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LXNpemU6IDE4cHg7XHJcbiAgcGFkZGluZzogMTBweDtcclxufVxyXG5cclxubGlzdC1pdGVtOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5O1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmVycm9yLXRleHQge1xyXG4gIGNvbG9yOiByZ2IoMTY1LCAxMTIsIDExMik7XHJcbn1cclxuXHJcbi5lcnJvciB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xyXG59XHJcbiIsIi5jb21ib2JveCB7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLmNvbWJvYm94LWlucHV0IHtcbiAgd2lkdGg6IDMzMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZDtcbiAgcGFkZGluZzogMTBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2E1NzA3MDtcbn1cblxuLmNvbWJvYm94LWlucHV0OmZvY3VzIHtcbiAgb3V0bGluZS1zdHlsZTogbm9uZTtcbn1cblxuLmNvbWJvYm94LW9wdGlvbnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB3aWR0aDogMzUwcHg7XG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBib3gtc2hhZG93OiAycHggMnB4IDJweCAycHggI2NjYztcbiAgei1pbmRleDogMTtcbn1cblxuLnNlbGVjdGVkIHtcbiAgY29sb3I6IGNvcm5zaWxrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTU3MDcwO1xufVxuXG5saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxOHB4O1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG5saXN0LWl0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5O1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5lcnJvci10ZXh0IHtcbiAgY29sb3I6ICNhNTcwNzA7XG59XG5cbi5lcnJvciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJlZDtcbn0iXX0= */\"","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'app-combobox',\r\n templateUrl: './combobox.component.html',\r\n styleUrls: ['./combobox.component.scss']\r\n})\r\nexport class ComboBoxComponent implements OnInit {\r\n\r\n @Input() list: string[];\r\n @Output() valueOutput:EventEmitter=new EventEmitter()\r\n // two way binding for input text\r\n inputItem = '';\r\n // enable or disable visiblility of dropdown\r\n listHidden = true;\r\n showError = false;\r\n selectedIndex = -1;\r\n\r\n // the list to be shown after filtering\r\n filteredList: string[] = [];\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n\r\n this.filteredList = this.list;\r\n }\r\n SendValues() {\r\n this.valueOutput.emit(this.selectedIndex);\r\n }\r\n // modifies the filtered list as per input\r\n getFilteredList() {\r\n\r\n this.listHidden = false;\r\n // this.selectedIndex = 0;\r\n if (!this.listHidden && this.inputItem !== undefined) {\r\n this.filteredList = this.list.filter((item) => item.toLowerCase().startsWith(this.inputItem.toLowerCase()));\r\n }\r\n }\r\n\r\n // select highlighted item when enter is pressed or any item that is clicked\r\n selectItem(ind) {\r\n\r\n this.inputItem = this.filteredList[ind];\r\n this.listHidden = true;\r\n this.selectedIndex = ind;\r\n this.SendValues()\r\n }\r\n\r\n // navigate through the list of items\r\n onKeyPress(event) {\r\n\r\n if (!this.listHidden) {\r\n if (event.key === 'Escape') {\r\n this.selectedIndex= -1;\r\n this.toggleListDisplay(0);\r\n }\r\n\r\n if (event.key === 'Enter') {\r\n\r\n this.toggleListDisplay(0);\r\n }\r\n if (event.key === 'ArrowDown') {\r\n\r\n this.listHidden = false;\r\n this.selectedIndex = (this.selectedIndex + 1) % this.filteredList.length;\r\n if (this.filteredList.length > 0 && !this.listHidden) {\r\n document.getElementsByTagName('list-item')[this.selectedIndex].scrollIntoView();\r\n }\r\n } else if (event.key === 'ArrowUp') {\r\n\r\n this.listHidden = false;\r\n if (this.selectedIndex <= 0) {\r\n this.selectedIndex = this.filteredList.length;\r\n }\r\n this.selectedIndex = (this.selectedIndex - 1) % this.filteredList.length;\r\n\r\n if (this.filteredList.length > 0 && !this.listHidden) {\r\n\r\n document.getElementsByTagName('list-item')[this.selectedIndex].scrollIntoView();\r\n }\r\n }\r\n }\r\n }\r\n toggleListDisplay(sender: number) {\r\n if (sender === 1) {\r\n // this.selectedIndex = -1;\r\n this.listHidden = false;\r\n this.getFilteredList();\r\n } else {\r\n // helps to select item by clicking\r\n setTimeout(() => {\r\n this.selectItem(this.selectedIndex);\r\n this.listHidden = true;\r\n if (!this.list.includes(this.inputItem)) {\r\n this.showError = false;\r\n this.filteredList = this.list;\r\n } else {\r\n this.showError = false;\r\n }\r\n }, 500);\r\n }\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvY29uZmlybWF0aW9uLWRpYWxvZy5jb21wb25lbnQuc2NzcyJ9 */\"","\r\nimport { Component, Inject,AfterViewInit, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { Masters } from '../../services/masters.service';\r\n//import { visibility } from 'html2canvas/dist/types/css/property-descriptors/visibility';\r\n\r\n@Component({\r\n selector: 'app-confirmation-dialog',\r\n templateUrl: './confirmation-dialog.component.html',\r\n styleUrls: ['./confirmation-dialog.component.scss']\r\n})\r\nexport class ConfirmationDialogComponent implements AfterViewInit,OnInit {\r\n title: string;\r\n message: string;\r\n shownobutton: boolean = true;\r\n yesbuttoncaption: string = \"Yes\";\r\n saletype: string = \"\";\r\n tariffAmt: string = \"0\";\r\n diffamout: string = \"0\";\r\n pincode: string = \"\";\r\n selectarea: any = null;\r\n arrayarea: any[] = [];\r\n public Tamount?: string;\r\n public mdata: AwbMoneyReceipt = new AwbMoneyReceipt() ;\r\n constructor(\r\n public dialogRef: MatDialogRef, private ServiceMaster: Masters,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogModel) {\r\n // Update view with given values\r\n this.title = data.title;\r\n this.message = data.message;\r\n this.shownobutton = data.shownobutton;\r\n this.yesbuttoncaption = data.YesbuttonText;\r\n this.saletype = data.Saletype;\r\n this.tariffAmt = data.tamount;\r\n this.pincode = data.pincode;\r\n }\r\n ngOnInit() {\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (!isNullOrUndefined(document.getElementById(\"divcon\"))) {\r\n (document.getElementById(\"divcon\")).innerHTML = this.message;\r\n }\r\n if (this.shownobutton == false) { (document.getElementById(\"buttonno\")).style.visibility = \"hidden\"; }\r\n else {\r\n (document.getElementById(\"buttonno\")).style.visibility = \"visible\";\r\n }\r\n (document.getElementById(\"buttonsave\")).innerText = this.yesbuttoncaption;\r\n if (this.title != \"ODA/EDL\") {\r\n (document.getElementById(\"buttonno\")).innerText = \"Cancel\";\r\n }\r\n $('#tamount').val(this.tariffAmt);\r\n if (this.title == \"ODA/EDL\") {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetOdaLocation'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Pincode\"\r\n pr.PropertyValue = this.pincode;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => { this.arrayarea = result.table }, error => { alert(\"Error In ODA Data\"); });\r\n }\r\n }\r\n onConfirm(): void {\r\n // Close the dialog, return true\r\n //this.dialogRef.close(true);\r\n if (this.title != \"ODA/EDL\") {\r\n if (this.saletype != 'DP') {\r\n this.mdata.Paymode = $('#cmdpaymode option:selected').text().toString();\r\n this.mdata.Gstno = $('#CustomerGst').val().toString();\r\n\r\n this.dialogRef.close(this.mdata);\r\n }\r\n else {\r\n this.dialogRef.close(true);\r\n }\r\n }\r\n else {\r\n if (isNullOrUndefined(this.selectarea)) {\r\n $('#areaname').focus();\r\n return;\r\n }\r\n\r\n this.dialogRef.close(this.selectarea);\r\n }\r\n\r\n }\r\n\r\n onDismiss(): void {\r\n // Close the dialog, return false\r\n if (this.title == \"ODA/EDL\") {\r\n if (isNullOrUndefined(this.selectarea)) {\r\n $('#areaname').focus();\r\n return;\r\n }\r\n this.dialogRef.close(this.selectarea);\r\n } else {\r\n this.dialogRef.close(false);\r\n }\r\n }\r\n //onNoClick():any {\r\n // this.dialogRef.close();\r\n // return false;\r\n //}\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n CalcGst() {\r\n\r\n var amount: number = parseFloat($('#txtReciveAmount').val().toString());\r\n this.diffamout = (amount - parseFloat(this.tariffAmt)).toFixed(2).toString();\r\n $('#diffamt').val(this.diffamout);\r\n //if (!isNullOrUndefined(this.Tamount)) {\r\n // if (parseFloat(this.Tamount) > 1) {\r\n // if (amount - parseFloat(this.Tamount) > 1) {\r\n // $('#txtReciveAmount').val(this.Tamount)\r\n // $('#txtReciveAmount').focus();\r\n // alert(\"Invalid Amount\");\r\n // return false;\r\n // }\r\n // }\r\n //}\r\n var freightamount = ((amount / 118) * 100).toFixed(2);\r\n $('#txtfreightamount').val(freightamount);\r\n var GstAmount = (amount - ((amount / 118) * 100)).toFixed(2);\r\n $('#txtGstAmount').val(GstAmount);\r\n this.mdata.RecieveAmount = amount.toFixed(2);\r\n this.mdata.GstAmount = GstAmount;\r\n this.mdata.frieghtAmount = freightamount;\r\n\r\n }\r\n}\r\nexport class AwbMoneyReceipt {\r\n public Awbno: string;\r\n public RecieveAmount: string;\r\n public GstAmount: string;\r\n public frieghtAmount: string;\r\n public Gstno: string;\r\n public Paymode: string;\r\n public ErrorOnClose: boolean;\r\n \r\n}\r\nexport class ConfirmDialogModel {\r\n\r\n constructor(public title: string, public message: string, public shownobutton: boolean, public YesbuttonText: string, public Saletype: string, public tamount: string,public pincode?:string) {\r\n }\r\n}\r\n","export default \".row {\\n margin-right: 0px;\\n margin-left: 0px;\\n}\\n\\n.form-group {\\n margin-bottom: 5px;\\n}\\n\\n.card-header {\\n background-color: #142c4c;\\n color: white;\\n}\\n\\n.toggle.btn-sm {\\n min-width: 70px !important;\\n min-height: 30px;\\n}\\n\\n.toggle.btn {\\n min-width: 70px !important;\\n min-height: 34px;\\n}\\n\\n.multiselect-dropdown {\\n position: relative;\\n width: 100%;\\n font-size: inherit;\\n font-family: inherit;\\n}\\n\\n.multiselect-dropdown .dropdown-btn {\\n display: inline-block;\\n border: 1px solid #adadad;\\n width: 100%;\\n padding: 6px 12px;\\n margin-bottom: 0;\\n font-weight: normal;\\n line-height: 1.52857143;\\n text-align: left;\\n vertical-align: middle;\\n cursor: pointer;\\n background-image: none;\\n border-radius: 4px;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .selected-item {\\n border: 1px solid #e63fae !important;\\n margin-right: 4px;\\n background: #e63fae !important;\\n padding: 0px 5px;\\n color: #fff;\\n border-radius: 2px;\\n float: left;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .selected-item a {\\n text-decoration: none;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .selected-item:hover {\\n box-shadow: 1px 1px #959595;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .dropdown-down {\\n display: inline-block;\\n top: 10px;\\n width: 0;\\n height: 0;\\n border-top: 10px solid #adadad;\\n border-left: 10px solid transparent;\\n border-right: 10px solid transparent;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .dropdown-up {\\n display: inline-block;\\n width: 0;\\n height: 0;\\n border-bottom: 10px solid #adadad;\\n border-left: 10px solid transparent;\\n border-right: 10px solid transparent;\\n}\\n\\n.multiselect-dropdown .disabled > span {\\n background-color: #eceeef;\\n}\\n\\n.dropdown-list {\\n position: absolute;\\n padding-top: 6px;\\n width: 100%;\\n z-index: 9999;\\n border: 1px solid #ccc;\\n border-radius: 3px;\\n background: #fff;\\n margin-top: 10px;\\n box-shadow: 0px 1px 5px #959595;\\n}\\n\\n.dropdown-list ul {\\n padding: 0px;\\n list-style: none;\\n overflow: auto;\\n margin: 0px;\\n}\\n\\n.dropdown-list li {\\n padding: 6px 10px;\\n cursor: pointer;\\n text-align: left;\\n}\\n\\n.dropdown-list .filter-textbox {\\n border-bottom: 1px solid #ccc;\\n position: relative;\\n padding: 10px;\\n}\\n\\n.dropdown-list .filter-textbox input {\\n border: 0px;\\n width: 100%;\\n padding: 0px 0px 0px 26px;\\n}\\n\\n.dropdown-list .filter-textbox input:focus {\\n outline: none;\\n}\\n\\n.multiselect-item-checkbox input[type=checkbox] {\\n border: 0;\\n clip: rect(0 0 0 0);\\n height: 1px;\\n margin: -1px;\\n overflow: hidden;\\n padding: 0;\\n position: absolute;\\n width: 1px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcZGFpbG9nLVF1b3RlcmF0ZS1tYXN0ZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvZGFpbG9nLVF1b3RlcmF0ZS1tYXN0ZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0FDQ0Y7O0FERUE7RUFDRSxrQkFBQTtBQ0NGOztBREVBO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSwwQkFBQTtFQUNBLGdCQUFBO0FDQ0Y7O0FERUE7RUFDRSwwQkFBQTtFQUNBLGdCQUFBO0FDQ0Y7O0FESUE7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLG9CQUFBO0FDREY7O0FER0U7RUFDRSxxQkFBQTtFQUNBLHlCQUFBO0VBQ0EsV0FBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQkFBQTtFQUNBLGVBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0FDREo7O0FER0k7RUFDRSxvQ0FBQTtFQUNBLGlCQUFBO0VBQ0EsOEJBQUE7RUFDQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QUNETjs7QURHTTtFQUNFLHFCQUFBO0FDRFI7O0FES0k7RUFDRSwyQkFBQTtBQ0hOOztBRE1JO0VBQ0UscUJBQUE7RUFDQSxTQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSw4QkFBQTtFQUNBLG1DQUFBO0VBQ0Esb0NBQUE7QUNKTjs7QURPSTtFQUNFLHFCQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxpQ0FBQTtFQUNBLG1DQUFBO0VBQ0Esb0NBQUE7QUNMTjs7QURVSTtFQUNFLHlCQTlEcUI7QUNzRDNCOztBRGFBO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSwrQkFBQTtBQ1ZGOztBRFlFO0VBQ0UsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLFdBQUE7QUNWSjs7QURhRTtFQUNFLGlCQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0FDWEo7O0FEY0U7RUFDRSw2QkFBQTtFQUNBLGtCQUFBO0VBQ0EsYUFBQTtBQ1pKOztBRGNJO0VBQ0UsV0FBQTtFQUNBLFdBQUE7RUFDQSx5QkFBQTtBQ1pOOztBRGVJO0VBQ0UsYUFBQTtBQ2JOOztBRGtCQTtFQUNFLFNBQUE7RUFDQSxtQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxVQUFBO0FDZkYiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2NvbnRyb2xzL2RhaWxvZy1RdW90ZXJhdGUtbWFzdGVyLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnJvdyB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDBweDtcclxufVxyXG5cclxuLmZvcm0tZ3JvdXAge1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLmNhcmQtaGVhZGVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYzRjO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLnRvZ2dsZS5idG4tc20ge1xyXG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xyXG4gIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbn1cclxuXHJcbi50b2dnbGUuYnRuIHtcclxuICBtaW4td2lkdGg6IDcwcHggIWltcG9ydGFudDtcclxuICBtaW4taGVpZ2h0OiAzNHB4O1xyXG59XHJcbiRiYXNlLWNvbG9yOiAjZTYzZmFlO1xyXG4kZGlzYWJsZS1iYWNrZ3JvdW5kLWNvbG9yOiAjZWNlZWVmO1xyXG5cclxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cclxuICAuZHJvcGRvd24tYnRuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhZGFkYWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMS41Mjg1NzE0MztcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHJcbiAgICAuc2VsZWN0ZWQtaXRlbSB7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRiYXNlLWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYmFzZS1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nOiAwcHggNXB4O1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3RlZC1pdGVtOmhvdmVyIHtcclxuICAgICAgYm94LXNoYWRvdzogMXB4IDFweCAjOTU5NTk1O1xyXG4gICAgfVxyXG5cclxuICAgIC5kcm9wZG93bi1kb3duIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB0b3A6IDEwcHg7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgI2FkYWRhZDtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuXHJcbiAgICAuZHJvcGRvd24tdXAge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgI2FkYWRhZDtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5kaXNhYmxlZCB7XHJcbiAgICAmID4gc3BhbiB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlLWJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZHJvcGRvd24tbGlzdCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHBhZGRpbmctdG9wOiA2cHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogOTk5OTtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggIzk1OTU5NTtcclxuXHJcbiAgdWwge1xyXG4gICAgcGFkZGluZzogMHB4O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwcHg7XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAuZmlsdGVyLXRleHRib3gge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgYm9yZGVyOiAwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAyNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0OmZvY3VzIHtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5tdWx0aXNlbGVjdC1pdGVtLWNoZWNrYm94IGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xyXG4gIGJvcmRlcjogMDtcclxuICBjbGlwOiByZWN0KDAgMCAwIDApO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG1hcmdpbjogLTFweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxcHg7XHJcbn1cclxuIiwiLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MmM0YztcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4udG9nZ2xlLmJ0bi1zbSB7XG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAzMHB4O1xufVxuXG4udG9nZ2xlLmJ0biB7XG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAzNHB4O1xufVxuXG4ubXVsdGlzZWxlY3QtZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhZGFkYWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA2cHggMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTI4NTcxNDM7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLnNlbGVjdGVkLWl0ZW0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTYzZmFlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICBiYWNrZ3JvdW5kOiAjZTYzZmFlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDBweCA1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLnNlbGVjdGVkLWl0ZW0gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5tdWx0aXNlbGVjdC1kcm9wZG93biAuZHJvcGRvd24tYnRuIC5zZWxlY3RlZC1pdGVtOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMXB4IDFweCAjOTU5NTk1O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLmRyb3Bkb3duLWRvd24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRvcDogMTBweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjYWRhZGFkO1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLmRyb3Bkb3duLXVwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICNhZGFkYWQ7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4ubXVsdGlzZWxlY3QtZHJvcGRvd24gLmRpc2FibGVkID4gc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VlZWY7XG59XG5cbi5kcm9wZG93bi1saXN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nLXRvcDogNnB4O1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk5OTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBib3gtc2hhZG93OiAwcHggMXB4IDVweCAjOTU5NTk1O1xufVxuLmRyb3Bkb3duLWxpc3QgdWwge1xuICBwYWRkaW5nOiAwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBtYXJnaW46IDBweDtcbn1cbi5kcm9wZG93bi1saXN0IGxpIHtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5kcm9wZG93bi1saXN0IC5maWx0ZXItdGV4dGJveCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4uZHJvcGRvd24tbGlzdCAuZmlsdGVyLXRleHRib3ggaW5wdXQge1xuICBib3JkZXI6IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDBweCAwcHggMHB4IDI2cHg7XG59XG4uZHJvcGRvd24tbGlzdCAuZmlsdGVyLXRleHRib3ggaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ubXVsdGlzZWxlY3QtaXRlbS1jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufSJdfQ== */\"","import { TemplateRef } from '@angular/core';\r\nimport { Component, Inject, AfterViewInit, ViewChild, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MatRadioChange, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { document } from 'ngx-bootstrap/utils';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-dailog-Quoterate-master',\r\n templateUrl: './dailog-Quoterate-master.component.html',\r\n styleUrls: ['./dailog-Quoterate-master.component.scss']\r\n})\r\nexport class DailogQuoteRateMasterComponent implements OnInit,AfterViewInit {\r\n ratear: CustRate[] = [];\r\n title: string;\r\n message: string;\r\n retMessage: string;\r\n columnsmps: any[] = [];\r\n requestData: ConfirmDialogRateModels = null;\r\n custcode: string;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n minchargewtsur: string = \"\";\r\n minchargewtair: string = \"\";\r\n minchargewttr: string = \"\";\r\n columnsratedox: any[] = [];\r\n columnsratedoxsur: any[] = [];\r\n columnsrateairpcl: any[] = [];\r\n columnsratesurpcl: any[] = [];\r\n columnsratetrpcl: any[] = [];\r\n columnsrateprtdoc: any[] = [];\r\n columnsrateprtpcl3: any[] = [];\r\n columnsrateprtpcl10: any[] = [];\r\n accrddox: boolean = true;\r\n accrddoxsur: boolean = false;\r\n\r\n accrdairpcl: boolean = false;\r\n accrdsurpcl: boolean = false;\r\n accrdtrpcl: boolean = false;\r\n accrdprtdoc: boolean = false;\r\n accrdprtpcl3: boolean = false;\r\n accrdrtpcl10: boolean = false;\r\n\r\n rowsratedox: any[] = [];\r\n rowsratedoxsur: any[] = [];\r\n\r\n rowsrateairpcl: any[] = [];\r\n rowsratesurpcl: any[] = [];\r\n rowsratetrpcl: any[] = [];\r\n rowsrateprtdoc: any[] = [];\r\n rowsrateprtpcl3: any[] = [];\r\n rowsrateprtpcl10: any[] = [];\r\n arrcityrate: any[] = [];\r\n arrcity2rate: any[] = [];\r\n rowsrate: CustRate[] = [];\r\n isCity: any = false;\r\n isRegion: any = false;\r\n istable: any = false;\r\n exRateAndDestGroup: any[] = [];\r\n open = true;\r\n typee = '0';\r\n @ViewChild('indexTemplate1dox', { static: true })\r\n indexTemplate1dox: TemplateRef;\r\n @ViewChild('actionfromwtdox', { static: true })\r\n actionfromwtdox: TemplateRef;\r\n @ViewChild('actionstowtdox', { static: true })\r\n actionstowtdox: TemplateRef;\r\n @ViewChild('actionslab1dox', { static: true })\r\n actionslab1dox: TemplateRef;\r\n @ViewChild('actionrate1dox', { static: true })\r\n actionrate1dox: TemplateRef;\r\n @ViewChild('actionslab2dox', { static: true })\r\n actionslab2dox: TemplateRef;\r\n @ViewChild('actionrate2dox', { static: true })\r\n actionrate2dox: TemplateRef;\r\n @ViewChild('actionslab3dox', { static: true })\r\n actionslab3dox: TemplateRef;\r\n @ViewChild('actionrate3dox', { static: true })\r\n actionrate3dox: TemplateRef;\r\n @ViewChild('actionpslabdox', { static: true })\r\n actionpslabdox: TemplateRef;\r\n @ViewChild('actionpratedox', { static: true })\r\n actionpratedox: TemplateRef;\r\n /* for city*/\r\n\r\n @ViewChild('indexTemplate1doxsur', { static: true })\r\n indexTemplate1doxsur: TemplateRef;\r\n @ViewChild('actionfromwtdoxsur', { static: true })\r\n actionfromwtdoxsur: TemplateRef;\r\n @ViewChild('actionstowtdoxsur', { static: true })\r\n actionstowtdoxsur: TemplateRef;\r\n @ViewChild('actionslab1doxsur', { static: true })\r\n actionslab1doxsur: TemplateRef;\r\n @ViewChild('actionrate1doxsur', { static: true })\r\n actionrate1doxsur: TemplateRef;\r\n @ViewChild('actionslab2doxsur', { static: true })\r\n actionslab2doxsur: TemplateRef;\r\n @ViewChild('actionrate2doxsur', { static: true })\r\n actionrate2doxsur: TemplateRef;\r\n @ViewChild('actionpslabdoxsur', { static: true })\r\n actionpslabdoxsur: TemplateRef;\r\n @ViewChild('actionpratedoxsur', { static: true })\r\n actionpratedoxsur: TemplateRef;\r\n\r\n @ViewChild('indexTemplate1airpcl', { static: true })\r\n indexTemplate1airpcl: TemplateRef;\r\n @ViewChild('actionfromwtairpcl', { static: true })\r\n actionfromwtairpcl: TemplateRef;\r\n @ViewChild('actionstowtairpcl', { static: true })\r\n actionstowtairpcl: TemplateRef;\r\n @ViewChild('actionslab1airpcl', { static: true })\r\n actionslab1airpcl: TemplateRef;\r\n @ViewChild('actionrate1airpcl', { static: true })\r\n actionrate1airpcl: TemplateRef;\r\n @ViewChild('actionslab2airpcl', { static: true })\r\n actionslab2airpcl: TemplateRef;\r\n @ViewChild('actionrate2airpcl', { static: true })\r\n actionrate2airpcl: TemplateRef;\r\n @ViewChild('actionslab3airpcl', { static: true })\r\n actionslab3airpcl: TemplateRef;\r\n @ViewChild('actionrate3airpcl', { static: true })\r\n actionrate3airpcl: TemplateRef;\r\n @ViewChild('actionpslabairpcl', { static: true })\r\n actionpslabairpcl: TemplateRef;\r\n @ViewChild('actionprateairpcl', { static: true })\r\n actionprateairpcl: TemplateRef;\r\n\r\n\r\n @ViewChild('indexTemplate1surpcl', { static: true })\r\n indexTemplate1surpcl: TemplateRef;\r\n @ViewChild('actionfromwtsurpcl', { static: true })\r\n actionfromwtsurpcl: TemplateRef;\r\n @ViewChild('actionstowtsurpcl', { static: true })\r\n actionstowtsurpcl: TemplateRef;\r\n @ViewChild('actionslab1surpcl', { static: true })\r\n actionslab1surpcl: TemplateRef;\r\n @ViewChild('actionrate1surpcl', { static: true })\r\n actionrate1surpcl: TemplateRef;\r\n @ViewChild('actionslab2surpcl', { static: true })\r\n actionslab2surpcl: TemplateRef;\r\n @ViewChild('actionrate2surpcl', { static: true })\r\n actionrate2surpcl: TemplateRef;\r\n @ViewChild('actionslab3surpcl', { static: true })\r\n actionslab3surpcl: TemplateRef;\r\n @ViewChild('actionrate3surpcl', { static: true })\r\n actionrate3surpcl: TemplateRef;\r\n @ViewChild('actionpslabsurpcl', { static: true })\r\n actionpslabsurpcl: TemplateRef;\r\n @ViewChild('actionpratesurpcl', { static: true })\r\n actionpratesurpcl: TemplateRef;\r\n\r\n @ViewChild('indexTemplate1trpcl', { static: true })\r\n indexTemplate1trpcl: TemplateRef;\r\n @ViewChild('actionfromwttrpcl', { static: true })\r\n actionfromwttrpcl: TemplateRef;\r\n @ViewChild('actionstowttrpcl', { static: true })\r\n actionstowttrpcl: TemplateRef;\r\n @ViewChild('actionslab1trpcl', { static: true })\r\n actionslab1trpcl: TemplateRef;\r\n @ViewChild('actionrate1trpcl', { static: true })\r\n actionrate1trpcl: TemplateRef;\r\n @ViewChild('actionslab2trpcl', { static: true })\r\n actionslab2trpcl: TemplateRef;\r\n @ViewChild('actionrate2trpcl', { static: true })\r\n actionrate2trpcl: TemplateRef;\r\n @ViewChild('actionslab3trpcl', { static: true })\r\n actionslab3trpcl: TemplateRef;\r\n @ViewChild('actionrate3trpcl', { static: true })\r\n actionrate3trpcl: TemplateRef;\r\n\r\n @ViewChild('actionpslabtrpcl', { static: true })\r\n actionpslabtrpcl: TemplateRef;\r\n @ViewChild('actionpratetrpcl', { static: true })\r\n actionpratetrpcl: TemplateRef;\r\n\r\n\r\n\r\n @ViewChild('indexTemplate1prtdoc', { static: true })\r\n indexTemplate1prtdoc: TemplateRef;\r\n @ViewChild('actionfromwtprtdoc', { static: true })\r\n actionfromwtprtdoc: TemplateRef;\r\n @ViewChild('actionstowtprtdoc', { static: true })\r\n actionstowtprtdoc: TemplateRef;\r\n @ViewChild('actionslab1prtdoc', { static: true })\r\n actionslab1prtdoc: TemplateRef;\r\n @ViewChild('actionrate1prtdoc', { static: true })\r\n actionrate1prtdoc: TemplateRef;\r\n @ViewChild('actionslab2prtdoc', { static: true })\r\n actionslab2prtdoc: TemplateRef;\r\n @ViewChild('actionrate2prtdoc', { static: true })\r\n actionrate2prtdoc: TemplateRef;\r\n @ViewChild('actionpslabprtdoc', { static: true })\r\n actionpslabprtdoc: TemplateRef;\r\n @ViewChild('actionprateprtdoc', { static: true })\r\n actionprateprtdoc: TemplateRef;\r\n\r\n\r\n @ViewChild('indexTemplate1prtpcl3', { static: true })\r\n indexTemplate1prtpcl3: TemplateRef;\r\n @ViewChild('actionfromwtprtpcl3', { static: true })\r\n actionfromwtprtpcl3: TemplateRef;\r\n @ViewChild('actionstowtprtpcl3', { static: true })\r\n actionstowtprtpcl3: TemplateRef;\r\n @ViewChild('actionslab1prtpcl3', { static: true })\r\n actionslab1prtpcl3: TemplateRef;\r\n @ViewChild('actionrate1prtpcl3', { static: true })\r\n actionrate1prtpcl3: TemplateRef;\r\n @ViewChild('actionslab2prtpcl3', { static: true })\r\n actionslab2prtpcl3: TemplateRef;\r\n @ViewChild('actionrate2prtpcl3', { static: true })\r\n actionrate2prtpcl3: TemplateRef;\r\n @ViewChild('actionpslabprtpcl3', { static: true })\r\n actionpslabprtpcl3: TemplateRef;\r\n @ViewChild('actionprateprtpcl3', { static: true })\r\n actionprateprtpcl3: TemplateRef;\r\n\r\n @ViewChild('indexTemplate1', { static: true })\r\n indexTemplate1: TemplateRef;\r\n @ViewChild('actionfromwt', { static: true })\r\n actionfromwt: TemplateRef;\r\n @ViewChild('actionstowt', { static: true })\r\n actionstowt: TemplateRef;\r\n @ViewChild('actionslab1', { static: true })\r\n actionslab1: TemplateRef;\r\n @ViewChild('actionrate1', { static: true })\r\n actionrate1: TemplateRef;\r\n @ViewChild('actionslab2', { static: true })\r\n actionslab2: TemplateRef;\r\n @ViewChild('actionrate2', { static: true })\r\n actionrate2: TemplateRef;\r\n @ViewChild('actionslab3', { static: true })\r\n actionslab3: TemplateRef;\r\n @ViewChild('actionrate3', { static: true })\r\n actionrate3: TemplateRef;\r\n @ViewChild('actionpslab', { static: true })\r\n actionpslab: TemplateRef;\r\n @ViewChild('actionprate', { static: true })\r\n actionprate: TemplateRef;\r\n\r\n @ViewChild('indexTemplateCity1', { static: true })\r\n indexTemplateCity1: TemplateRef;\r\n @ViewChild('actionfromwtCity', { static: true })\r\n actionfromwtCity: TemplateRef;\r\n @ViewChild('actionstowtCity', { static: true })\r\n actionstowtCity: TemplateRef;\r\n @ViewChild('actionslab1City', { static: true })\r\n actionslab1City: TemplateRef;\r\n @ViewChild('actionrate1City', { static: true })\r\n actionrate1City: TemplateRef;\r\n @ViewChild('actionslab2City', { static: true })\r\n actionslab2City: TemplateRef;\r\n @ViewChild('actionrate2City', { static: true })\r\n actionrate2City: TemplateRef;\r\n @ViewChild('actionpslabCity', { static: true })\r\n actionpslabCity: TemplateRef;\r\n @ViewChild('actionprateCity', { static: true })\r\n actionprateCity: TemplateRef;\r\n\r\n\r\n dropdownList: any[] = [];\r\n selectedItems: any[] = [];\r\n dropdownSettings: IDropdownSettings = {};\r\n constructor(public dialogRef: MatDialogRef, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogRateModels) {\r\n // Update view with given values\r\n this.title = data.title;\r\n this.message = data.message;\r\n this.retMessage = null;\r\n this.requestData = data;\r\n this.custcode = this.requestData.customercode;\r\n }\r\n ngAfterViewInit() {\r\n if (!isNullOrUndefined(this.requestData.MPS) && this.requestData.MPS.length > 0) {\r\n this.rowsratedox = [];\r\n this.rowsratedoxsur = [];\r\n\r\n this.rowsrateairpcl = [];\r\n this.rowsratesurpcl = [];\r\n this.rowsratetrpcl = [];\r\n this.rowsrateprtdoc= [];\r\n this.rowsrateprtpcl3 = [];\r\n this.rowsrateprtpcl10= [];\r\n this.requestData.MPS.forEach((custarr) => {\r\n if (custarr.productCode == 'P0001') {\r\n var tmprow = this.rowsratedox.find(e => e.productCode == 'P0001' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedox.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0030') {\r\n var tmprow = this.rowsratedoxsur.find(e => e.productCode == 'P0030' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedoxsur.length == 0) {\r\n this.rowsratedoxsur[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedoxsur.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0002') {\r\n var tmprow = this.rowsrateairpcl.find(e => e.productCode == 'P0002' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0003') {\r\n var tmprow = this.rowsratesurpcl.find(e => e.productCode == 'P0003' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0016') {\r\n var tmprow = this.rowsratetrpcl.find(e => e.productCode == 'P0016' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0005') {\r\n var tmprow = this.rowsrateprtdoc.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrate[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0006' && custarr.fromWt == '3.000') {\r\n var tmprow = this.rowsrateprtpcl3.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0006' && custarr.fromWt == '10.001') {\r\n var tmprow = this.rowsrateprtpcl10.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custarr);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : 'userid';\r\n }\r\n ngOnInit() {\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n\r\n this.columnsratedox = [\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabdox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratedox, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsratedoxsur = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabdoxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratedoxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateairpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionprateairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsratesurpcl = [\r\n // { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabsurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratesurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsratetrpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabtrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionpratetrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateprtdoc = [\r\n // { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateprtpcl3 = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateprtpcl10 = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslab, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n \r\n //this.columns.push({ prop: 'fsurcharge', name: 'Fuel(%)', width: 50, innerHeight: 51, cellTemplate: this.actionprate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n //{ item_id: 'P0007', ProductName: 'International Dox ' },\r\n //{ item_id: 'P0008', ProductName: 'International Parcel' },\r\n this.dropdownList = [\r\n { item_id: 'P0001', ProductName: 'Document' },\r\n { item_id: 'P0002', ProductName: 'Air Parcel' },\r\n { item_id: 'P0003', ProductName: 'Surface Parcel' },\r\n { item_id: 'P0016', ProductName: 'Train Parcel' },\r\n { item_id: 'P0005', ProductName: 'Priority Document' },\r\n { item_id: 'P0006', ProductName: 'Priority Parcel' },\r\n { item_id: 'P0018', ProductName: 'Air On Demand' },\r\n { item_id: 'P0020', ProductName: 'Surface On Demand' },\r\n { item_id: 'P0024', ProductName: 'Divine' },\r\n ];\r\n this.selectedItems = [];\r\n this.dropdownSettings = {\r\n idField: 'item_id',\r\n textField: 'ProductName',\r\n enableCheckAll: false,\r\n allowSearchFilter: true,\r\n singleSelection: false,\r\n };\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetDestGroupByCustomer_Quote'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"customerid\"\r\n pr.PropertyValue = this.data.CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n Req = new CommRequest();\r\n Req.ProcessName = \"Get_CustRateMaster_quote\"\r\n Parameter = new Array(1);\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"CustommerMasterId\"\r\n pr.PropertyValue = this.data.CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(\r\n result => {\r\n this.requestData.MPS = result\r\n if (!isNullOrUndefined(this.requestData.MPS) && this.requestData.MPS.length > 0) {\r\n this.rowsratedox = [];\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n this.data.IsEdit = true;\r\n } else {\r\n this.data.IsEdit = false;\r\n }\r\n\r\n this.rowsrateairpcl = [];\r\n this.rowsratesurpcl = [];\r\n this.rowsratetrpcl = [];\r\n this.rowsrateprtdoc = [];\r\n this.rowsrateprtpcl3 = [];\r\n this.rowsrateprtpcl10 = [];\r\n this.requestData.MPS.forEach((custarr) => {\r\n if (custarr.productCode == 'P0001') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n this.columnsratedox = [\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabdox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratedox, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsratedox = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsratedox.find(e => e.productCode == 'P0001' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedox.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0030') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n this.columnsratedoxsur = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabdoxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratedoxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsratedoxsur = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsratedoxsur.find(e => e.productCode == 'P0030' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedoxsur.length == 0) {\r\n this.rowsratedoxsur[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedoxsur.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0002') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n this.columnsrateairpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionprateairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsrateairpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsrateairpcl.find(e => e.productCode == 'P0002' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0003') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n this.columnsratesurpcl = [\r\n // { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabsurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratesurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsratesurpcl = [\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsratesurpcl.find(e => e.productCode == 'P0003' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0016') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n this.columnsratetrpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabtrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionpratetrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsratetrpcl = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsratetrpcl.find(e => e.productCode == 'P0016' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0005') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n this.columnsrateprtdoc = [\r\n // { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsrateprtdoc = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsrateprtdoc.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrate[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0006' && custarr.fromWt == '3.000') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n this.columnsrateprtpcl3 = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsrateprtpcl3 = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsrateprtpcl3.find(e => e.productCode == 'P0006' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0006' && custarr.fromWt == '10.001') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n this.columnsrateprtpcl10 = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslab, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsrateprtpcl10 = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsrateprtpcl10.find(e => e.productCode == 'P0006' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custarr);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n },\r\n error => this.onDataLoadFailed(error))\r\n }\r\n getSucessDataExrate(result: any) {\r\n this.exRateAndDestGroup = result\r\n }\r\n funHide() {\r\n var typeee = this.typee == \"1\" ? \"1\" : \"2\";\r\n if (typeee == \"1\") {\r\n this.isRegion = true;\r\n this.isCity = false;\r\n this.istable = true;\r\n this.clear();\r\n\r\n } else {\r\n this.isRegion = false;\r\n this.isCity = true;\r\n this.istable = true;\r\n this.clear();\r\n }\r\n }\r\n funcheckslab1value(index: any, event: any, pcode: string,fromwt?:string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].slab1 = event.target.value;\r\n this.rowsratedox = [...this.rowsratedox]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n\r\n }\r\n if (pcode == 'P0030') {\r\n this.rowsratedoxsur[index - 1].slab1 = event.target.value;\r\n this.rowsratedoxsur = [...this.rowsratedoxsur]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedoxsur[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].slab1 = event.target.value;\r\n this.rowsrateairpcl = [...this.rowsrateairpcl]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].slab1 = event.target.value;\r\n this.rowsratesurpcl = [...this.rowsratesurpcl]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].slab1 = \"0.000\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].slab1 = event.target.value;\r\n this.rowsratetrpcl = [...this.rowsratetrpcl]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].slab1 = event.target.value;\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000' ) {\r\n this.rowsrateprtpcl3[index - 1].slab1 = event.target.value;\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].slab1 = event.target.value;\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funcheckvalue(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') { \r\n this.rowsratedox[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratedox[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0030') {\r\n this.rowsratedoxsur[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratedoxsur[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateairpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratesurpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratetrpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateprtdoc[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt =='3.000') {\r\n this.rowsrateprtpcl3[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl3[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl10[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funcheckvalue3(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsratedox[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0030') {\r\n this.rowsratedoxsur[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsratedoxsur[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsrateairpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsratesurpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsratetrpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsrateprtdoc[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl3[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl10[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funrate1(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].rate1 = event.target.value;\r\n this.rowsratedox = [...this.rowsratedox]\r\n }\r\n if (pcode == 'P0030') {\r\n this.rowsratedoxsur[index - 1].rate1 = event.target.value;\r\n this.rowsratedoxsur = [...this.rowsratedoxsur]\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].rate1 = event.target.value;\r\n this.rowsrateairpcl = [...this.rowsrateairpcl]\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].rate1 = event.target.value;\r\n this.rowsratesurpcl = [...this.rowsratesurpcl]\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].rate1 = event.target.value;\r\n this.rowsratetrpcl = [...this.rowsratetrpcl]\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].rate1 = event.target.value;\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc]\r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].rate1 = event.target.value;\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3]\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].rate1 = event.target.value;\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10]\r\n }\r\n }\r\n funrate3(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].rate3 = event.target.value;\r\n this.rowsratedox = [...this.rowsratedox]\r\n }\r\n if (pcode == 'P0030') {\r\n this.rowsratedoxsur[index - 1].rate3 = event.target.value;\r\n this.rowsratedoxsur = [...this.rowsratedoxsur]\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].rate3 = event.target.value;\r\n this.rowsrateairpcl = [...this.rowsrateairpcl]\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].rate3 = event.target.value;\r\n this.rowsratesurpcl = [...this.rowsratesurpcl]\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].rate3 = event.target.value;\r\n this.rowsratetrpcl = [...this.rowsratetrpcl]\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].rate3 = event.target.value;\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc]\r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].rate3 = event.target.value;\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3]\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].rate3 = event.target.value;\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10]\r\n }\r\n }\r\n\r\n funrate2(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratedox[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0030') {\r\n this.rowsratedoxsur[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratedoxsur[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateairpcl[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratesurpcl[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratetrpcl[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateprtdoc[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt=='3.000') {\r\n this.rowsrateprtpcl3[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateprtpcl3[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateprtpcl10[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funpslab(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0030') {\r\n this.rowsratedoxsur[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedoxsur[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt=='10.001') {\r\n this.rowsrateprtpcl10[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n\r\n funprate(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0030') {\r\n this.rowsratedoxsur[index - 1].prate = event.target.value;\r\n\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].prate = event.target.value;\r\n \r\n }\r\n }\r\n\r\n\r\n\r\n AddRateCity1(pcode: string, pname: string) {\r\n let destcity = $('#rateCity').val();\r\n let destState = $('#rateState').val()\r\n\r\n let destpincode = $('#ratePinCode').val();\r\n let ratesalb1 = $('#txtslab1').val();\r\n let rate1 = $('#txtrate1').val();\r\n let ratesalb2 = $('#txtslab2').val();\r\n let rate2 = $('#txtrate2').val();\r\n let ratepsalb = $('#txtslab').val();\r\n let prate = $('#txtprate').val();\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = '';\r\n mfromwt = '10.001';\r\n mtowt = '999999.9999';\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n Custr = new CustRate();\r\n Custr.destcityName = destcity;\r\n Custr.destCityPincode = destpincode;\r\n Custr.destStateName = destState;\r\n Custr.destgroupName = destcity == '' ? destState : destState == '' ? destpincode : '';\r\n\r\n //Custr.destgroupName = destcity;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = ratesalb1.toString();\r\n Custr.slab2 = ratesalb2.toString();\r\n Custr.rate1 = rate1.toString();\r\n Custr.rate2 = rate2.toString();\r\n Custr.pslab = ratepsalb.toString();\r\n Custr.prate = prate.toString;\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n if (pcode == 'P0006') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateprtpcl10.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtpcl10.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10];\r\n\r\n }\r\n }\r\n AddRateCity( pcode: string, pname: string) {\r\n let destcity = $('#rateCity').val();\r\n let destState = $('#rateState').val()\r\n let destpincode = $('#ratePinCode').val();\r\n let ratesalb1 = $('#txtslab1').val();\r\n let rate1 = $('#txtrate1').val();\r\n let ratesalb2 = $('#txtslab2').val();\r\n let rate2 = $('#txtrate2').val();\r\n let ratesalb3 = $('#txtslab3').val();\r\n let rate3 = $('#txtrate3').val();\r\n let ratepsalb = $('#txtslab').val();\r\n let prate = $('#txtprate').val();\r\n let tmprowsrate: CustRate[] = [];\r\n if (ratesalb2 == '') {\r\n ratesalb2 = '0';\r\n }\r\n if (rate2 == '') {\r\n rate2 = '0';\r\n }\r\n if(ratesalb3 == '') {\r\n ratesalb3 = '0';\r\n }\r\n if (rate3 == '') {\r\n rate3 = '0';\r\n }\r\n let mfromwt = '';\r\n let mtowt = '';\r\n if (pcode == 'P0001' || pcode == 'P0005' || pcode == 'P0030') {\r\n mfromwt = '0.000';\r\n mtowt = '2.999';\r\n }\r\n if (pcode == 'P0002') {\r\n mfromwt = '1.000';\r\n mtowt = '9999999.999';\r\n }\r\n if ( pcode == 'P0003' || pcode == 'P0016') {\r\n mfromwt = '3.000';\r\n mtowt = '9999999.999';\r\n }\r\n if (pcode == 'P0006') {\r\n mfromwt = '3.000';\r\n mtowt = '10.000';\r\n }\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n Custr = new CustRate();\r\n Custr.destcityName = destcity;\r\n Custr.destCityPincode = destpincode;\r\n Custr.destStateName = destState;\r\n if (destcity != '') {\r\n Custr.destgroupName = destcity\r\n }\r\n else if (destState != '') {\r\n Custr.destgroupName = destState\r\n }\r\n else if (destpincode != '') {\r\n Custr.destgroupName = destpincode\r\n }\r\n else {\r\n this.alertService.showMessage(\"Destination\",\"Please add city,state or pincode !\",MessageSeverity.error)\r\n return;\r\n }\r\n //Custr.destgroupName = destcity == '' ? destState : destState == '' ? destpincode :destcity;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = ratesalb1.toString();\r\n Custr.slab2 = ratesalb2.toString();\r\n Custr.slab3 = ratesalb3.toString();\r\n\r\n Custr.rate1 = rate1.toString();\r\n Custr.rate2 = rate2.toString();\r\n Custr.rate3 = rate3.toString();\r\n\r\n Custr.pslab = ratepsalb.toString();\r\n Custr.prate = prate.toString();\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n if (pcode == 'P0001') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0001') {\r\n var tmprows = this.rowsratedox.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custrate\r\n }\r\n else {\r\n this.rowsratedox.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratedox.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratedox = [...this.rowsratedox];\r\n\r\n }\r\n if (pcode == 'P0030') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0030') {\r\n var tmprows = this.rowsratedoxsur.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedoxsur.length == 0) {\r\n this.rowsratedoxsur[0] = custrate\r\n }\r\n else {\r\n this.rowsratedoxsur.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratedoxsur.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratedoxsur = [...this.rowsratedoxsur];\r\n\r\n }\r\n if (pcode == 'P0002') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0002') {\r\n var tmprows = this.rowsrateairpcl.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateairpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateairpcl = [...this.rowsrateairpcl];\r\n\r\n }\r\n if (pcode == 'P0003') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0003') {\r\n var tmprows = this.rowsratesurpcl.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratesurpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratesurpcl = [...this.rowsratesurpcl];\r\n\r\n }\r\n if (pcode == 'P0016') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0016') {\r\n var tmprows = this.rowsratetrpcl.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratetrpcl = [...this.rowsratetrpcl];\r\n\r\n }\r\n if (pcode == 'P0005') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0016') {\r\n var tmprows = this.rowsrateprtdoc.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrateprtdoc[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtdoc.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc];\r\n\r\n }\r\n if (pcode == 'P0006') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0006') {\r\n var tmprows = this.rowsrateprtpcl3.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3];\r\n\r\n }\r\n }\r\n\r\n\r\n AddRate(event: any, pcode: string, pname: string) {\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = '';\r\n \r\n if (pcode == 'P0001') {\r\n this.accrddox = event\r\n this.accrddoxsur = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this. accrdprtpcl3 = false;\r\n this. accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0030') {\r\n this.accrddoxsur = event\r\n this.accrddox = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0002') {\r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n this.accrdairpcl = event;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0003') {\r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = event;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0016') {\r\n this.accrddox = false\r\n this.accrddoxsur = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = event;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n \r\n if (pcode == 'P0005') {\r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = event;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0006') {\r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = event;\r\n this.accrdrtpcl10 = false;\r\n }\r\n \r\n\r\n if (pcode == 'P0001' || pcode == 'P0005' || pcode == 'P0030' ) {\r\n mfromwt = '0.000';\r\n mtowt = '2.999';\r\n }\r\n if (pcode == 'P0002') {\r\n mfromwt = '1.000';\r\n mtowt = '9999999.999';\r\n //$('#MinChargeWt').val(mfromwt)\r\n if (isNullOrUndefined(this.minchargewtair) || this.minchargewtair ==\"\"){\r\n this.minchargewtair = mfromwt\r\n }\r\n }\r\n if (pcode == 'P0003' || pcode == 'P0016') {\r\n mfromwt = '3.000';\r\n mtowt = '9999999.999';\r\n if (isNullOrUndefined(this.minchargewtsur) || this.minchargewtsur == \"\" ) {\r\n this.minchargewtsur = mfromwt;\r\n this.minchargewttr = mfromwt;\r\n }\r\n \r\n }\r\n if (pcode == 'P0006') {\r\n mfromwt = '3.000';\r\n mtowt = '10.000';\r\n }\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n this.exRateAndDestGroup.forEach((ditem, index) => {\r\n Custr = new CustRate();\r\n Custr.destgroupName = ditem.tariffDestname;\r\n Custr.destId = ditem.tariffDestGroupId;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = '0.000';\r\n Custr.slab2 = '0.000';\r\n Custr.slab3 = '0.000';\r\n Custr.rate1 = '0.00';\r\n Custr.rate2 = '0.00';\r\n Custr.rate3 = '0.00';\r\n Custr.pslab = '0.000';\r\n Custr.prate = '0.00';\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[index] = Custr;\r\n });\r\n if (pcode == 'P0001' ) {\r\n tmprowsrate.forEach((custrate) => {\r\n if( custrate.productCode == pcode){\r\n var tmprows = this.rowsratedox.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '0.250'\r\n custrate.pslab = '0.250'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custrate\r\n }\r\n else {\r\n this.rowsratedox.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratedox.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratedox = [...this.rowsratedox];\r\n \r\n }\r\n if (pcode == 'P0030') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsratedoxsur.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '0.250'\r\n custrate.pslab = '0.250'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedoxsur.length == 0) {\r\n this.rowsratedoxsur[0] = custrate\r\n }\r\n else {\r\n this.rowsratedoxsur.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratedoxsur.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n }, this);\r\n this.rowsratedoxsur = [...this.rowsratedoxsur];\r\n\r\n }\r\n if (pcode == 'P0002') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsrateairpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateairpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateairpcl = [...this.rowsrateairpcl];\r\n\r\n }\r\n if (pcode == 'P0003') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsratesurpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratesurpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratesurpcl = [...this.rowsratesurpcl];\r\n\r\n }\r\n if (pcode == 'P0016') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsratetrpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratetrpcl = [...this.rowsratetrpcl];\r\n\r\n }\r\n if (pcode == 'P0005') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsrateprtdoc.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '0.500'\r\n custrate.pslab = '0.500'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrateprtdoc[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtdoc.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc];\r\n\r\n }\r\n if (pcode == 'P0006') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsrateprtpcl3.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3];\r\n\r\n }\r\n }\r\n AddRate1(event: any, pcode: string, pname: string) {\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = '';\r\n \r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = event;\r\n \r\n if (pcode == 'P0006') {\r\n mfromwt = '10.001';\r\n mtowt = '999999.9999';\r\n }\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n this.exRateAndDestGroup.forEach((ditem, index) => {\r\n Custr = new CustRate();\r\n Custr.destgroupName = ditem.tariffDestname;\r\n Custr.destId = ditem.tariffDestGroupId;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = '0.000';\r\n Custr.slab2 = '0.000';\r\n Custr.rate1 = '0.00';\r\n Custr.rate2 = '0.00';\r\n Custr.pslab = '0.000';\r\n Custr.prate = '0.00';\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[index] = Custr;\r\n });\r\n if (pcode == 'P0006') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsrateprtpcl10.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtpcl10.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10];\r\n\r\n }\r\n }\r\n\r\n funparsefloat(value) {\r\n var val = value;\r\n return parseFloat(val);\r\n }\r\n\r\n onConfirm() {\r\n this.rowsrate = [];\r\n\r\n let tmprate = new CustRate();\r\n\r\n this.rowsratedox.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0)\r\n //{\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n\r\n });\r\n this.rowsratedoxsur.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0)\r\n //{\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n\r\n });\r\n this.rowsrateairpcl.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n tmprate.fromWt = this.minchargewtair;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n\r\n });\r\n this.rowsratesurpcl.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n tmprate.fromWt = this.minchargewtsur;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n });\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n tmprate.fromWt = this.minchargewttr;\r\n\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n });\r\n this.rowsrateprtdoc.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n\r\n });\r\n this.rowsrateprtpcl3.forEach((itemr, index, awbs) => {\r\n\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n });\r\n this.rowsrateprtpcl10.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n // if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n });\r\n this.dialogRef.close(this.rowsrate)\r\n }\r\n \r\n onDismiss() {\r\n this.dialogRef.close(null)\r\n }\r\n\r\n\r\n clear() {\r\n $('#Region').val('0');\r\n $('#rateCity').val('');\r\n $('#ratePinCode').val('');\r\n\r\n }\r\n getRateStateList($event) {\r\n this.GetStateMaster();\r\n this.arrcity2rate = this.arrcityrate\r\n $('#rateState').autocomplete({\r\n source: this.arrcity,\r\n delay: 500\r\n });\r\n }\r\n getRateCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2rate = this.arrcityrate\r\n $('#rateCity').autocomplete({\r\n source: this.arrcity,\r\n delay: 500\r\n });\r\n }\r\n GetStateMaster() {\r\n this.ServiceMaster.getstateslist().subscribe(result => this.onDatagetSuccessful(result, 'STATE'), error => this.onDataLoadFailed(error));\r\n }\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n GetRateCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.RateonDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n RateonDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n if (listof == \"CITY\") {\r\n this.arrcityrate = states;\r\n }\r\n }\r\n onItemDeSelect(item: any) {\r\n var isfind = false;\r\n for (let i = 0; i < this.rowsrate.length; i++) {\r\n if (this.rowsrate[i].productCode == item.item_id)\r\n this.rowsrate.splice(i, 1)\r\n }\r\n\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57)) {\r\n if (ASCIICode == 46) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n else {\r\n return true;\r\n }\r\n\r\n }\r\n}\r\n\r\nexport class CustRate {\r\n public CustRateId: string\r\n public customerId: string\r\n public OfficeId: string\r\n public CustomerCode: string\r\n public productCode: string\r\n public productName: string\r\n public destcityName: string\r\n public destCityPincode: string\r\n public destStateName: string\r\n public destgroupName: string\r\n public destId: string\r\n public fromWt: string\r\n public toWt: string\r\n public slab1: string\r\n public rate1: string\r\n public slab2: string\r\n public rate2: string\r\n public slab3: string\r\n public rate3: string\r\n public pslab: string\r\n public prate: string\r\n public fsurcharge: string\r\n}\r\nexport class ConfirmDialogRateModels {\r\n\r\n constructor(public title: string, public message: string,\r\n public IsEdit: boolean, public MPS?: CustRate[],\r\n public retMessage?: CustRate[], public CustomerId?: string, public customercode?: string) {\r\n }\r\n}\r\n\r\n\r\n","export default \".row {\\n margin-right: 0px;\\n margin-left: 0px;\\n}\\n\\n.form-group {\\n margin-bottom: 5px;\\n}\\n\\n.card-header {\\n background-color: #142c4c;\\n color: white;\\n}\\n\\n.toggle.btn-sm {\\n min-width: 70px !important;\\n min-height: 30px;\\n}\\n\\n.toggle.btn {\\n min-width: 70px !important;\\n min-height: 34px;\\n}\\n\\n.multiselect-dropdown {\\n position: relative;\\n width: 100%;\\n font-size: inherit;\\n font-family: inherit;\\n}\\n\\n.multiselect-dropdown .dropdown-btn {\\n display: inline-block;\\n border: 1px solid #adadad;\\n width: 100%;\\n padding: 6px 12px;\\n margin-bottom: 0;\\n font-weight: normal;\\n line-height: 1.52857143;\\n text-align: left;\\n vertical-align: middle;\\n cursor: pointer;\\n background-image: none;\\n border-radius: 4px;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .selected-item {\\n border: 1px solid #e63fae !important;\\n margin-right: 4px;\\n background: #e63fae !important;\\n padding: 0px 5px;\\n color: #fff;\\n border-radius: 2px;\\n float: left;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .selected-item a {\\n text-decoration: none;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .selected-item:hover {\\n box-shadow: 1px 1px #959595;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .dropdown-down {\\n display: inline-block;\\n top: 10px;\\n width: 0;\\n height: 0;\\n border-top: 10px solid #adadad;\\n border-left: 10px solid transparent;\\n border-right: 10px solid transparent;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .dropdown-up {\\n display: inline-block;\\n width: 0;\\n height: 0;\\n border-bottom: 10px solid #adadad;\\n border-left: 10px solid transparent;\\n border-right: 10px solid transparent;\\n}\\n\\n.multiselect-dropdown .disabled > span {\\n background-color: #eceeef;\\n}\\n\\n.dropdown-list {\\n position: absolute;\\n padding-top: 6px;\\n width: 100%;\\n z-index: 9999;\\n border: 1px solid #ccc;\\n border-radius: 3px;\\n background: #fff;\\n margin-top: 10px;\\n box-shadow: 0px 1px 5px #959595;\\n}\\n\\n.dropdown-list ul {\\n padding: 0px;\\n list-style: none;\\n overflow: auto;\\n margin: 0px;\\n}\\n\\n.dropdown-list li {\\n padding: 6px 10px;\\n cursor: pointer;\\n text-align: left;\\n}\\n\\n.dropdown-list .filter-textbox {\\n border-bottom: 1px solid #ccc;\\n position: relative;\\n padding: 10px;\\n}\\n\\n.dropdown-list .filter-textbox input {\\n border: 0px;\\n width: 100%;\\n padding: 0px 0px 0px 26px;\\n}\\n\\n.dropdown-list .filter-textbox input:focus {\\n outline: none;\\n}\\n\\n.multiselect-item-checkbox input[type=checkbox] {\\n border: 0;\\n clip: rect(0 0 0 0);\\n height: 1px;\\n margin: -1px;\\n overflow: hidden;\\n padding: 0;\\n position: absolute;\\n width: 1px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcZGFpbG9nLVF1b3RlcmF0ZWJhLW1hc3Rlci5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9kYWlsb2ctUXVvdGVyYXRlYmEtbWFzdGVyLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsaUJBQUE7RUFDQSxnQkFBQTtBQ0NGOztBREVBO0VBQ0Usa0JBQUE7QUNDRjs7QURFQTtFQUNFLHlCQUFBO0VBQ0EsWUFBQTtBQ0NGOztBREVBO0VBQ0UsMEJBQUE7RUFDQSxnQkFBQTtBQ0NGOztBREVBO0VBQ0UsMEJBQUE7RUFDQSxnQkFBQTtBQ0NGOztBRElBO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtBQ0RGOztBREdFO0VBQ0UscUJBQUE7RUFDQSx5QkFBQTtFQUNBLFdBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSxlQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtBQ0RKOztBREdJO0VBQ0Usb0NBQUE7RUFDQSxpQkFBQTtFQUNBLDhCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0FDRE47O0FER007RUFDRSxxQkFBQTtBQ0RSOztBREtJO0VBQ0UsMkJBQUE7QUNITjs7QURNSTtFQUNFLHFCQUFBO0VBQ0EsU0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsOEJBQUE7RUFDQSxtQ0FBQTtFQUNBLG9DQUFBO0FDSk47O0FET0k7RUFDRSxxQkFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsaUNBQUE7RUFDQSxtQ0FBQTtFQUNBLG9DQUFBO0FDTE47O0FEVUk7RUFDRSx5QkE5RHFCO0FDc0QzQjs7QURhQTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsK0JBQUE7QUNWRjs7QURZRTtFQUNFLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxXQUFBO0FDVko7O0FEYUU7RUFDRSxpQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtBQ1hKOztBRGNFO0VBQ0UsNkJBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7QUNaSjs7QURjSTtFQUNFLFdBQUE7RUFDQSxXQUFBO0VBQ0EseUJBQUE7QUNaTjs7QURlSTtFQUNFLGFBQUE7QUNiTjs7QURrQkE7RUFDRSxTQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtBQ2ZGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9kYWlsb2ctUXVvdGVyYXRlYmEtbWFzdGVyLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnJvdyB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDBweDtcclxufVxyXG5cclxuLmZvcm0tZ3JvdXAge1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLmNhcmQtaGVhZGVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYzRjO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLnRvZ2dsZS5idG4tc20ge1xyXG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xyXG4gIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbn1cclxuXHJcbi50b2dnbGUuYnRuIHtcclxuICBtaW4td2lkdGg6IDcwcHggIWltcG9ydGFudDtcclxuICBtaW4taGVpZ2h0OiAzNHB4O1xyXG59XHJcbiRiYXNlLWNvbG9yOiAjZTYzZmFlO1xyXG4kZGlzYWJsZS1iYWNrZ3JvdW5kLWNvbG9yOiAjZWNlZWVmO1xyXG5cclxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cclxuICAuZHJvcGRvd24tYnRuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhZGFkYWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMS41Mjg1NzE0MztcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHJcbiAgICAuc2VsZWN0ZWQtaXRlbSB7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRiYXNlLWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYmFzZS1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nOiAwcHggNXB4O1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3RlZC1pdGVtOmhvdmVyIHtcclxuICAgICAgYm94LXNoYWRvdzogMXB4IDFweCAjOTU5NTk1O1xyXG4gICAgfVxyXG5cclxuICAgIC5kcm9wZG93bi1kb3duIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB0b3A6IDEwcHg7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgI2FkYWRhZDtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuXHJcbiAgICAuZHJvcGRvd24tdXAge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgI2FkYWRhZDtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5kaXNhYmxlZCB7XHJcbiAgICAmID4gc3BhbiB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlLWJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZHJvcGRvd24tbGlzdCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHBhZGRpbmctdG9wOiA2cHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogOTk5OTtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggIzk1OTU5NTtcclxuXHJcbiAgdWwge1xyXG4gICAgcGFkZGluZzogMHB4O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwcHg7XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAuZmlsdGVyLXRleHRib3gge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgYm9yZGVyOiAwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAyNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0OmZvY3VzIHtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5tdWx0aXNlbGVjdC1pdGVtLWNoZWNrYm94IGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xyXG4gIGJvcmRlcjogMDtcclxuICBjbGlwOiByZWN0KDAgMCAwIDApO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG1hcmdpbjogLTFweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxcHg7XHJcbn1cclxuIiwiLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MmM0YztcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4udG9nZ2xlLmJ0bi1zbSB7XG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAzMHB4O1xufVxuXG4udG9nZ2xlLmJ0biB7XG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAzNHB4O1xufVxuXG4ubXVsdGlzZWxlY3QtZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhZGFkYWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA2cHggMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTI4NTcxNDM7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLnNlbGVjdGVkLWl0ZW0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTYzZmFlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICBiYWNrZ3JvdW5kOiAjZTYzZmFlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDBweCA1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLnNlbGVjdGVkLWl0ZW0gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5tdWx0aXNlbGVjdC1kcm9wZG93biAuZHJvcGRvd24tYnRuIC5zZWxlY3RlZC1pdGVtOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMXB4IDFweCAjOTU5NTk1O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLmRyb3Bkb3duLWRvd24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRvcDogMTBweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjYWRhZGFkO1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLmRyb3Bkb3duLXVwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICNhZGFkYWQ7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4ubXVsdGlzZWxlY3QtZHJvcGRvd24gLmRpc2FibGVkID4gc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VlZWY7XG59XG5cbi5kcm9wZG93bi1saXN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nLXRvcDogNnB4O1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk5OTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBib3gtc2hhZG93OiAwcHggMXB4IDVweCAjOTU5NTk1O1xufVxuLmRyb3Bkb3duLWxpc3QgdWwge1xuICBwYWRkaW5nOiAwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBtYXJnaW46IDBweDtcbn1cbi5kcm9wZG93bi1saXN0IGxpIHtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5kcm9wZG93bi1saXN0IC5maWx0ZXItdGV4dGJveCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4uZHJvcGRvd24tbGlzdCAuZmlsdGVyLXRleHRib3ggaW5wdXQge1xuICBib3JkZXI6IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDBweCAwcHggMHB4IDI2cHg7XG59XG4uZHJvcGRvd24tbGlzdCAuZmlsdGVyLXRleHRib3ggaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ubXVsdGlzZWxlY3QtaXRlbS1jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufSJdfQ== */\"","import { TemplateRef } from '@angular/core';\r\nimport { Component, Inject, AfterViewInit, ViewChild, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MatRadioChange, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { document } from 'ngx-bootstrap/utils';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-dailog-Quoterateba-master',\r\n templateUrl: './dailog-Quoterateba-master.component.html',\r\n styleUrls: ['./dailog-Quoterateba-master.component.scss']\r\n})\r\nexport class DailogQuoteRatebaMasterComponent implements OnInit,AfterViewInit {\r\n ratear: CustRate[] = [];\r\n title: string;\r\n message: string;\r\n retMessage: string;\r\n columnsmps: any[] = [];\r\n requestData: ConfirmDialogRateModels = null;\r\n custcode: string;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n minchargewtsur: string = \"\";\r\n minchargewtair: string = \"\";\r\n minchargewttr: string = \"\";\r\n columnsratedox: any[] = [];\r\n columnsratedoxsur: any[] = [];\r\n columnsrateairpcl: any[] = [];\r\n columnsratesurpcl: any[] = [];\r\n columnsratetrpcl: any[] = [];\r\n columnsrateprtdoc: any[] = [];\r\n columnsrateprtpcl3: any[] = [];\r\n columnsrateprtpcl10: any[] = [];\r\n accrddox: boolean = true;\r\n accrddoxsur: boolean = false;\r\n\r\n accrdairpcl: boolean = false;\r\n accrdsurpcl: boolean = false;\r\n accrdtrpcl: boolean = false;\r\n accrdprtdoc: boolean = false;\r\n accrdprtpcl3: boolean = false;\r\n accrdrtpcl10: boolean = false;\r\n\r\n rowsratedox: any[] = [];\r\n rowsratedoxsur: any[] = [];\r\n\r\n rowsrateairpcl: any[] = [];\r\n rowsratesurpcl: any[] = [];\r\n rowsratetrpcl: any[] = [];\r\n rowsrateprtdoc: any[] = [];\r\n rowsrateprtpcl3: any[] = [];\r\n rowsrateprtpcl10: any[] = [];\r\n arrcityrate: any[] = [];\r\n arrcity2rate: any[] = [];\r\n rowsrate: CustRate[] = [];\r\n isCity: any = false;\r\n isRegion: any = false;\r\n istable: any = false;\r\n exRateAndDestGroup: any[] = [];\r\n open = true;\r\n typee = '0';\r\n @ViewChild('indexTemplate1dox', { static: true })\r\n indexTemplate1dox: TemplateRef;\r\n @ViewChild('actionfromwtdox', { static: true })\r\n actionfromwtdox: TemplateRef;\r\n @ViewChild('actionstowtdox', { static: true })\r\n actionstowtdox: TemplateRef;\r\n @ViewChild('actionslab1dox', { static: true })\r\n actionslab1dox: TemplateRef;\r\n @ViewChild('actionrate1dox', { static: true })\r\n actionrate1dox: TemplateRef;\r\n @ViewChild('actionslab2dox', { static: true })\r\n actionslab2dox: TemplateRef;\r\n @ViewChild('actionrate2dox', { static: true })\r\n actionrate2dox: TemplateRef;\r\n @ViewChild('actionslab3dox', { static: true })\r\n actionslab3dox: TemplateRef;\r\n @ViewChild('actionrate3dox', { static: true })\r\n actionrate3dox: TemplateRef;\r\n @ViewChild('actionpslabdox', { static: true })\r\n actionpslabdox: TemplateRef;\r\n @ViewChild('actionpratedox', { static: true })\r\n actionpratedox: TemplateRef;\r\n /* for city*/\r\n\r\n @ViewChild('indexTemplate1doxsur', { static: true })\r\n indexTemplate1doxsur: TemplateRef;\r\n @ViewChild('actionfromwtdoxsur', { static: true })\r\n actionfromwtdoxsur: TemplateRef;\r\n @ViewChild('actionstowtdoxsur', { static: true })\r\n actionstowtdoxsur: TemplateRef;\r\n @ViewChild('actionslab1doxsur', { static: true })\r\n actionslab1doxsur: TemplateRef;\r\n @ViewChild('actionrate1doxsur', { static: true })\r\n actionrate1doxsur: TemplateRef;\r\n @ViewChild('actionslab2doxsur', { static: true })\r\n actionslab2doxsur: TemplateRef;\r\n @ViewChild('actionrate2doxsur', { static: true })\r\n actionrate2doxsur: TemplateRef;\r\n @ViewChild('actionpslabdoxsur', { static: true })\r\n actionpslabdoxsur: TemplateRef;\r\n @ViewChild('actionpratedoxsur', { static: true })\r\n actionpratedoxsur: TemplateRef;\r\n\r\n @ViewChild('indexTemplate1airpcl', { static: true })\r\n indexTemplate1airpcl: TemplateRef;\r\n @ViewChild('actionfromwtairpcl', { static: true })\r\n actionfromwtairpcl: TemplateRef;\r\n @ViewChild('actionstowtairpcl', { static: true })\r\n actionstowtairpcl: TemplateRef;\r\n @ViewChild('actionslab1airpcl', { static: true })\r\n actionslab1airpcl: TemplateRef;\r\n @ViewChild('actionrate1airpcl', { static: true })\r\n actionrate1airpcl: TemplateRef;\r\n @ViewChild('actionslab2airpcl', { static: true })\r\n actionslab2airpcl: TemplateRef;\r\n @ViewChild('actionrate2airpcl', { static: true })\r\n actionrate2airpcl: TemplateRef;\r\n @ViewChild('actionslab3airpcl', { static: true })\r\n actionslab3airpcl: TemplateRef;\r\n @ViewChild('actionrate3airpcl', { static: true })\r\n actionrate3airpcl: TemplateRef;\r\n @ViewChild('actionpslabairpcl', { static: true })\r\n actionpslabairpcl: TemplateRef;\r\n @ViewChild('actionprateairpcl', { static: true })\r\n actionprateairpcl: TemplateRef;\r\n\r\n\r\n @ViewChild('indexTemplate1surpcl', { static: true })\r\n indexTemplate1surpcl: TemplateRef;\r\n @ViewChild('actionfromwtsurpcl', { static: true })\r\n actionfromwtsurpcl: TemplateRef;\r\n @ViewChild('actionstowtsurpcl', { static: true })\r\n actionstowtsurpcl: TemplateRef;\r\n @ViewChild('actionslab1surpcl', { static: true })\r\n actionslab1surpcl: TemplateRef;\r\n @ViewChild('actionrate1surpcl', { static: true })\r\n actionrate1surpcl: TemplateRef;\r\n @ViewChild('actionslab2surpcl', { static: true })\r\n actionslab2surpcl: TemplateRef;\r\n @ViewChild('actionrate2surpcl', { static: true })\r\n actionrate2surpcl: TemplateRef;\r\n @ViewChild('actionslab3surpcl', { static: true })\r\n actionslab3surpcl: TemplateRef;\r\n @ViewChild('actionrate3surpcl', { static: true })\r\n actionrate3surpcl: TemplateRef;\r\n @ViewChild('actionpslabsurpcl', { static: true })\r\n actionpslabsurpcl: TemplateRef;\r\n @ViewChild('actionpratesurpcl', { static: true })\r\n actionpratesurpcl: TemplateRef;\r\n\r\n @ViewChild('indexTemplate1trpcl', { static: true })\r\n indexTemplate1trpcl: TemplateRef;\r\n @ViewChild('actionfromwttrpcl', { static: true })\r\n actionfromwttrpcl: TemplateRef;\r\n @ViewChild('actionstowttrpcl', { static: true })\r\n actionstowttrpcl: TemplateRef;\r\n @ViewChild('actionslab1trpcl', { static: true })\r\n actionslab1trpcl: TemplateRef;\r\n @ViewChild('actionrate1trpcl', { static: true })\r\n actionrate1trpcl: TemplateRef;\r\n @ViewChild('actionslab2trpcl', { static: true })\r\n actionslab2trpcl: TemplateRef;\r\n @ViewChild('actionrate2trpcl', { static: true })\r\n actionrate2trpcl: TemplateRef;\r\n @ViewChild('actionslab3trpcl', { static: true })\r\n actionslab3trpcl: TemplateRef;\r\n @ViewChild('actionrate3trpcl', { static: true })\r\n actionrate3trpcl: TemplateRef;\r\n\r\n @ViewChild('actionpslabtrpcl', { static: true })\r\n actionpslabtrpcl: TemplateRef;\r\n @ViewChild('actionpratetrpcl', { static: true })\r\n actionpratetrpcl: TemplateRef;\r\n\r\n\r\n\r\n @ViewChild('indexTemplate1prtdoc', { static: true })\r\n indexTemplate1prtdoc: TemplateRef;\r\n @ViewChild('actionfromwtprtdoc', { static: true })\r\n actionfromwtprtdoc: TemplateRef;\r\n @ViewChild('actionstowtprtdoc', { static: true })\r\n actionstowtprtdoc: TemplateRef;\r\n @ViewChild('actionslab1prtdoc', { static: true })\r\n actionslab1prtdoc: TemplateRef;\r\n @ViewChild('actionrate1prtdoc', { static: true })\r\n actionrate1prtdoc: TemplateRef;\r\n @ViewChild('actionslab2prtdoc', { static: true })\r\n actionslab2prtdoc: TemplateRef;\r\n @ViewChild('actionrate2prtdoc', { static: true })\r\n actionrate2prtdoc: TemplateRef;\r\n @ViewChild('actionpslabprtdoc', { static: true })\r\n actionpslabprtdoc: TemplateRef;\r\n @ViewChild('actionprateprtdoc', { static: true })\r\n actionprateprtdoc: TemplateRef;\r\n\r\n\r\n @ViewChild('indexTemplate1prtpcl3', { static: true })\r\n indexTemplate1prtpcl3: TemplateRef;\r\n @ViewChild('actionfromwtprtpcl3', { static: true })\r\n actionfromwtprtpcl3: TemplateRef;\r\n @ViewChild('actionstowtprtpcl3', { static: true })\r\n actionstowtprtpcl3: TemplateRef;\r\n @ViewChild('actionslab1prtpcl3', { static: true })\r\n actionslab1prtpcl3: TemplateRef;\r\n @ViewChild('actionrate1prtpcl3', { static: true })\r\n actionrate1prtpcl3: TemplateRef;\r\n @ViewChild('actionslab2prtpcl3', { static: true })\r\n actionslab2prtpcl3: TemplateRef;\r\n @ViewChild('actionrate2prtpcl3', { static: true })\r\n actionrate2prtpcl3: TemplateRef;\r\n @ViewChild('actionpslabprtpcl3', { static: true })\r\n actionpslabprtpcl3: TemplateRef;\r\n @ViewChild('actionprateprtpcl3', { static: true })\r\n actionprateprtpcl3: TemplateRef;\r\n\r\n @ViewChild('indexTemplate1', { static: true })\r\n indexTemplate1: TemplateRef;\r\n @ViewChild('actionfromwt', { static: true })\r\n actionfromwt: TemplateRef;\r\n @ViewChild('actionstowt', { static: true })\r\n actionstowt: TemplateRef;\r\n @ViewChild('actionslab1', { static: true })\r\n actionslab1: TemplateRef;\r\n @ViewChild('actionrate1', { static: true })\r\n actionrate1: TemplateRef;\r\n @ViewChild('actionslab2', { static: true })\r\n actionslab2: TemplateRef;\r\n @ViewChild('actionrate2', { static: true })\r\n actionrate2: TemplateRef;\r\n @ViewChild('actionslab3', { static: true })\r\n actionslab3: TemplateRef;\r\n @ViewChild('actionrate3', { static: true })\r\n actionrate3: TemplateRef;\r\n @ViewChild('actionpslab', { static: true })\r\n actionpslab: TemplateRef;\r\n @ViewChild('actionprate', { static: true })\r\n actionprate: TemplateRef;\r\n\r\n @ViewChild('indexTemplateCity1', { static: true })\r\n indexTemplateCity1: TemplateRef;\r\n @ViewChild('actionfromwtCity', { static: true })\r\n actionfromwtCity: TemplateRef;\r\n @ViewChild('actionstowtCity', { static: true })\r\n actionstowtCity: TemplateRef;\r\n @ViewChild('actionslab1City', { static: true })\r\n actionslab1City: TemplateRef;\r\n @ViewChild('actionrate1City', { static: true })\r\n actionrate1City: TemplateRef;\r\n @ViewChild('actionslab2City', { static: true })\r\n actionslab2City: TemplateRef;\r\n @ViewChild('actionrate2City', { static: true })\r\n actionrate2City: TemplateRef;\r\n @ViewChild('actionpslabCity', { static: true })\r\n actionpslabCity: TemplateRef;\r\n @ViewChild('actionprateCity', { static: true })\r\n actionprateCity: TemplateRef;\r\n\r\n\r\n dropdownList: any[] = [];\r\n selectedItems: any[] = [];\r\n dropdownSettings: IDropdownSettings = {};\r\n constructor(public dialogRef: MatDialogRef, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogRateModels) {\r\n // Update view with given values\r\n this.title = data.title;\r\n this.message = data.message;\r\n this.retMessage = null;\r\n this.requestData = data;\r\n this.custcode = this.requestData.customercode;\r\n }\r\n ngAfterViewInit() {\r\n if (!isNullOrUndefined(this.requestData.MPS) && this.requestData.MPS.length > 0) {\r\n this.rowsratedox = [];\r\n this.rowsratedoxsur = [];\r\n\r\n this.rowsrateairpcl = [];\r\n this.rowsratesurpcl = [];\r\n this.rowsratetrpcl = [];\r\n this.rowsrateprtdoc= [];\r\n this.rowsrateprtpcl3 = [];\r\n this.rowsrateprtpcl10= [];\r\n this.requestData.MPS.forEach((custarr) => {\r\n if (custarr.productCode == 'P0004') {\r\n var tmprow = this.rowsratedox.find(e => e.productCode == 'P0004' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedox.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0031') {\r\n var tmprow = this.rowsratedoxsur.find(e => e.productCode == 'P0031' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedoxsur.length == 0) {\r\n this.rowsratedoxsur[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedoxsur.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0009') {\r\n var tmprow = this.rowsrateairpcl.find(e => e.productCode == 'P0009' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0010') {\r\n var tmprow = this.rowsratesurpcl.find(e => e.productCode == 'P0010' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0017') {\r\n var tmprow = this.rowsratetrpcl.find(e => e.productCode == 'P0017' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0011') {\r\n var tmprow = this.rowsrateprtdoc.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrate[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0012' && custarr.fromWt == '3.000') {\r\n var tmprow = this.rowsrateprtpcl3.find(e => e.productCode == 'P0012' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0012' && custarr.fromWt == '10.001') {\r\n var tmprow = this.rowsrateprtpcl10.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custarr);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : 'userid';\r\n }\r\n ngOnInit() {\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n\r\n this.columnsratedox = [\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabdox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratedox, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsratedoxsur = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabdoxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratedoxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateairpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionprateairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsratesurpcl = [\r\n // { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabsurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratesurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsratetrpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabtrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionpratetrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateprtdoc = [\r\n // { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateprtpcl3 = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateprtpcl10 = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslab, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n \r\n //this.columns.push({ prop: 'fsurcharge', name: 'Fuel(%)', width: 50, innerHeight: 51, cellTemplate: this.actionprate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n //{ item_id: 'P0007', ProductName: 'International Dox ' },\r\n //{ item_id: 'P0008', ProductName: 'International Parcel' },\r\n this.dropdownList = [\r\n { item_id: 'P0001', ProductName: 'Document' },\r\n { item_id: 'P0002', ProductName: 'Air Parcel' },\r\n { item_id: 'P0003', ProductName: 'Surface Parcel' },\r\n { item_id: 'P0016', ProductName: 'Train Parcel' },\r\n { item_id: 'P0005', ProductName: 'Priority Document' },\r\n { item_id: 'P0006', ProductName: 'Priority Parcel' },\r\n { item_id: 'P0018', ProductName: 'Air On Demand' },\r\n { item_id: 'P0020', ProductName: 'Surface On Demand' },\r\n { item_id: 'P0024', ProductName: 'Divine' },\r\n ];\r\n this.selectedItems = [];\r\n this.dropdownSettings = {\r\n idField: 'item_id',\r\n textField: 'ProductName',\r\n enableCheckAll: false,\r\n allowSearchFilter: true,\r\n singleSelection: false,\r\n };\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetDestGroupByCustomer_Quote'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"customerid\"\r\n pr.PropertyValue = this.data.CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n Req = new CommRequest();\r\n Req.ProcessName = \"Get_baCustRateMaster_quote\"\r\n Parameter = new Array(1);\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"CustommerMasterId\"\r\n pr.PropertyValue = this.data.CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(\r\n result => {\r\n this.requestData.MPS = result\r\n if (!isNullOrUndefined(this.requestData.MPS) && this.requestData.MPS.length > 0) {\r\n this.rowsratedox = [];\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.data.IsEdit = true;\r\n } else {\r\n this.data.IsEdit = false;\r\n }\r\n\r\n this.rowsrateairpcl = [];\r\n this.rowsratesurpcl = [];\r\n this.rowsratetrpcl = [];\r\n this.rowsrateprtdoc = [];\r\n this.rowsrateprtpcl3 = [];\r\n this.rowsrateprtpcl10 = [];\r\n this.requestData.MPS.forEach((custarr) => {\r\n if (custarr.productCode == 'P0004') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.columnsratedox = [\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabdox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratedox, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsratedox = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsratedox.find(e => e.productCode == 'P0004' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedox.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0031') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.columnsratedoxsur = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2doxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabdoxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratedoxsur, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsratedoxsur = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsratedoxsur.find(e => e.productCode == 'P0031' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedoxsur.length == 0) {\r\n this.rowsratedoxsur[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedoxsur.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0009') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.columnsrateairpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionprateairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsrateairpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsrateairpcl.find(e => e.productCode == 'P0009' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0010') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.columnsratesurpcl = [\r\n // { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, cellTemplate: this.actionslab3surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, cellTemplate: this.actionrate3surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabsurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, cellTemplate: this.actionpratesurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsratesurpcl = [\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab3', name: 'Slab3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate3', name: 'Rate3', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsratesurpcl.find(e => e.productCode == 'P0010' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0017') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.columnsratetrpcl = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabtrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionpratetrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsratetrpcl = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsratetrpcl.find(e => e.productCode == 'P0017' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0011') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.columnsrateprtdoc = [\r\n // { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsrateprtdoc = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsrateprtdoc.find(e => e.productCode == 'P0011' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrate[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0012' && custarr.fromWt == '3.000') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.columnsrateprtpcl3 = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsrateprtpcl3 = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsrateprtpcl3.find(e => e.productCode == 'P0012' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0012' && custarr.fromWt == '10.001') {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.columnsrateprtpcl10 = [\r\n //{ prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslab, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n else {\r\n this.columnsrateprtpcl10 = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Addl.Slab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Addl.Rate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n var tmprow = this.rowsrateprtpcl10.find(e => e.productCode == 'P0012' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custarr);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n },\r\n error => this.onDataLoadFailed(error))\r\n }\r\n getSucessDataExrate(result: any) {\r\n this.exRateAndDestGroup = result\r\n }\r\n funHide() {\r\n var typeee = this.typee == \"1\" ? \"1\" : \"2\";\r\n if (typeee == \"1\") {\r\n this.isRegion = true;\r\n this.isCity = false;\r\n this.istable = true;\r\n this.clear();\r\n\r\n } else {\r\n this.isRegion = false;\r\n this.isCity = true;\r\n this.istable = true;\r\n this.clear();\r\n }\r\n }\r\n funcheckslab1value(index: any, event: any, pcode: string,fromwt?:string) {\r\n if (pcode == 'P0004') {\r\n this.rowsratedox[index - 1].slab1 = event.target.value;\r\n this.rowsratedox = [...this.rowsratedox]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n\r\n }\r\n if (pcode == 'P0031') {\r\n this.rowsratedoxsur[index - 1].slab1 = event.target.value;\r\n this.rowsratedoxsur = [...this.rowsratedoxsur]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedoxsur[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n\r\n }\r\n if (pcode == 'P0009') {\r\n this.rowsrateairpcl[index - 1].slab1 = event.target.value;\r\n this.rowsrateairpcl = [...this.rowsrateairpcl]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0010') {\r\n this.rowsratesurpcl[index - 1].slab1 = event.target.value;\r\n this.rowsratesurpcl = [...this.rowsratesurpcl]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].slab1 = \"0.000\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0017') {\r\n this.rowsratetrpcl[index - 1].slab1 = event.target.value;\r\n this.rowsratetrpcl = [...this.rowsratetrpcl]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0011') {\r\n this.rowsrateprtdoc[index - 1].slab1 = event.target.value;\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt == '3.000' ) {\r\n this.rowsrateprtpcl3[index - 1].slab1 = event.target.value;\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].slab1 = event.target.value;\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funcheckvalue(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0004') { \r\n this.rowsratedox[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratedox[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0031') {\r\n this.rowsratedoxsur[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratedoxsur[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0009') {\r\n this.rowsrateairpcl[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateairpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0010') {\r\n this.rowsratesurpcl[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratesurpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0017') {\r\n this.rowsratetrpcl[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratetrpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0011') {\r\n this.rowsrateprtdoc[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateprtdoc[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt =='3.000') {\r\n this.rowsrateprtpcl3[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl3[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl10[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funcheckvalue3(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0012') {\r\n this.rowsratedox[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsratedox[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0031') {\r\n this.rowsratedoxsur[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsratedoxsur[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0009') {\r\n this.rowsrateairpcl[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsrateairpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0010') {\r\n this.rowsratesurpcl[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsratesurpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0017') {\r\n this.rowsratetrpcl[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsratetrpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0011') {\r\n this.rowsrateprtdoc[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsrateprtdoc[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl3[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab3 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].slab3 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl10[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].slab3 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funrate1(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0004') {\r\n this.rowsratedox[index - 1].rate1 = event.target.value;\r\n this.rowsratedox = [...this.rowsratedox]\r\n }\r\n if (pcode == 'P0031') {\r\n this.rowsratedoxsur[index - 1].rate1 = event.target.value;\r\n this.rowsratedoxsur = [...this.rowsratedoxsur]\r\n }\r\n if (pcode == 'P0009') {\r\n this.rowsrateairpcl[index - 1].rate1 = event.target.value;\r\n this.rowsrateairpcl = [...this.rowsrateairpcl]\r\n }\r\n if (pcode == 'P0010') {\r\n this.rowsratesurpcl[index - 1].rate1 = event.target.value;\r\n this.rowsratesurpcl = [...this.rowsratesurpcl]\r\n }\r\n if (pcode == 'P0017') {\r\n this.rowsratetrpcl[index - 1].rate1 = event.target.value;\r\n this.rowsratetrpcl = [...this.rowsratetrpcl]\r\n }\r\n if (pcode == 'P0011') {\r\n this.rowsrateprtdoc[index - 1].rate1 = event.target.value;\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc]\r\n }\r\n if (pcode == 'P0012' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].rate1 = event.target.value;\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3]\r\n }\r\n if (pcode == 'P0012' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].rate1 = event.target.value;\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10]\r\n }\r\n }\r\n funrate3(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0004') {\r\n this.rowsratedox[index - 1].rate3 = event.target.value;\r\n this.rowsratedox = [...this.rowsratedox]\r\n }\r\n if (pcode == 'P0031') {\r\n this.rowsratedoxsur[index - 1].rate3 = event.target.value;\r\n this.rowsratedoxsur = [...this.rowsratedoxsur]\r\n }\r\n if (pcode == 'P0009') {\r\n this.rowsrateairpcl[index - 1].rate3 = event.target.value;\r\n this.rowsrateairpcl = [...this.rowsrateairpcl]\r\n }\r\n if (pcode == 'P0010') {\r\n this.rowsratesurpcl[index - 1].rate3 = event.target.value;\r\n this.rowsratesurpcl = [...this.rowsratesurpcl]\r\n }\r\n if (pcode == 'P0017') {\r\n this.rowsratetrpcl[index - 1].rate3 = event.target.value;\r\n this.rowsratetrpcl = [...this.rowsratetrpcl]\r\n }\r\n if (pcode == 'P0011') {\r\n this.rowsrateprtdoc[index - 1].rate3 = event.target.value;\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc]\r\n }\r\n if (pcode == 'P0012' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].rate3 = event.target.value;\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3]\r\n }\r\n if (pcode == 'P0012' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].rate3 = event.target.value;\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10]\r\n }\r\n }\r\n\r\n funrate2(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0004') {\r\n this.rowsratedox[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratedox[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0031') {\r\n this.rowsratedoxsur[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratedoxsur[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0009') {\r\n this.rowsrateairpcl[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateairpcl[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0010') {\r\n this.rowsratesurpcl[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratesurpcl[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0017') {\r\n this.rowsratetrpcl[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratetrpcl[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0011') {\r\n this.rowsrateprtdoc[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateprtdoc[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt=='3.000') {\r\n this.rowsrateprtpcl3[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateprtpcl3[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateprtpcl10[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funpslab(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0004') {\r\n this.rowsratedox[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0031') {\r\n this.rowsratedoxsur[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedoxsur[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedoxsur[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0009') {\r\n this.rowsrateairpcl[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0010') {\r\n this.rowsratesurpcl[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0017') {\r\n this.rowsratetrpcl[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0011') {\r\n this.rowsrateprtdoc[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0012' && fromwt=='10.001') {\r\n this.rowsrateprtpcl10[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n\r\n funprate(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0004') {\r\n this.rowsratedox[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0031') {\r\n this.rowsratedoxsur[index - 1].prate = event.target.value;\r\n\r\n }\r\n if (pcode == 'P0009') {\r\n this.rowsrateairpcl[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0010') {\r\n this.rowsratesurpcl[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0017') {\r\n this.rowsratetrpcl[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0011') {\r\n this.rowsrateprtdoc[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0012' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0012' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].prate = event.target.value;\r\n \r\n }\r\n }\r\n\r\n\r\n\r\n AddRateCity1(pcode: string, pname: string) {\r\n let destcity = $('#rateCity').val();\r\n let destState = $('#rateState').val()\r\n\r\n let destpincode = $('#ratePinCode').val();\r\n let ratesalb1 = $('#txtslab1').val();\r\n let rate1 = $('#txtrate1').val();\r\n let ratesalb2 = $('#txtslab2').val();\r\n let rate2 = $('#txtrate2').val();\r\n let ratepsalb = $('#txtslab').val();\r\n let prate = $('#txtprate').val();\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = '';\r\n mfromwt = '10.001';\r\n mtowt = '999999.9999';\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n Custr = new CustRate();\r\n Custr.destcityName = destcity;\r\n Custr.destCityPincode = destpincode;\r\n Custr.destStateName = destState;\r\n Custr.destgroupName = destcity == '' ? destState : destState == '' ? destpincode : '';\r\n\r\n //Custr.destgroupName = destcity;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = ratesalb1.toString();\r\n Custr.slab2 = ratesalb2.toString();\r\n Custr.rate1 = rate1.toString();\r\n Custr.rate2 = rate2.toString();\r\n Custr.pslab = ratepsalb.toString();\r\n Custr.prate = prate.toString;\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n if (pcode == 'P0006') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateprtpcl10.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtpcl10.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10];\r\n\r\n }\r\n }\r\n AddRateCity( pcode: string, pname: string) {\r\n let destcity = $('#rateCity').val();\r\n let destState = $('#rateState').val()\r\n let destpincode = $('#ratePinCode').val();\r\n let ratesalb1 = $('#txtslab1').val();\r\n let rate1 = $('#txtrate1').val();\r\n let ratesalb2 = $('#txtslab2').val();\r\n let rate2 = $('#txtrate2').val();\r\n let ratesalb3 = $('#txtslab3').val();\r\n let rate3 = $('#txtrate3').val();\r\n let ratepsalb = $('#txtslab').val();\r\n let prate = $('#txtprate').val();\r\n let tmprowsrate: CustRate[] = [];\r\n if (ratesalb2 == '') {\r\n ratesalb2 = '0';\r\n }\r\n if (rate2 == '') {\r\n rate2 = '0';\r\n }\r\n if(ratesalb3 == '') {\r\n ratesalb3 = '0';\r\n }\r\n if (rate3 == '') {\r\n rate3 = '0';\r\n }\r\n let mfromwt = '';\r\n let mtowt = '';\r\n if (pcode == 'P0004' || pcode == 'P0005' || pcode == 'P0031') {\r\n mfromwt = '0.000';\r\n mtowt = '2.999';\r\n }\r\n if (pcode == 'P0009') {\r\n mfromwt = '1.000';\r\n mtowt = '9999999.999';\r\n }\r\n if ( pcode == 'P0010' || pcode == 'P0017') {\r\n mfromwt = '3.000';\r\n mtowt = '9999999.999';\r\n }\r\n if (pcode == 'P0006') {\r\n mfromwt = '3.000';\r\n mtowt = '10.000';\r\n }\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n Custr = new CustRate();\r\n Custr.destcityName = destcity;\r\n Custr.destCityPincode = destpincode;\r\n Custr.destStateName = destState;\r\n if (destcity != '') {\r\n Custr.destgroupName = destcity\r\n }\r\n else if (destState != '') {\r\n Custr.destgroupName = destState\r\n }\r\n else if (destpincode != '') {\r\n Custr.destgroupName = destpincode\r\n }\r\n else {\r\n this.alertService.showMessage(\"Destination\",\"Please add city,state or pincode !\",MessageSeverity.error)\r\n return;\r\n }\r\n //Custr.destgroupName = destcity == '' ? destState : destState == '' ? destpincode :destcity;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = ratesalb1.toString();\r\n Custr.slab2 = ratesalb2.toString();\r\n Custr.slab3 = ratesalb3.toString();\r\n\r\n Custr.rate1 = rate1.toString();\r\n Custr.rate2 = rate2.toString();\r\n Custr.rate3 = rate3.toString();\r\n\r\n Custr.pslab = ratepsalb.toString();\r\n Custr.prate = prate.toString();\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n if (pcode == 'P0004') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0004') {\r\n var tmprows = this.rowsratedox.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custrate\r\n }\r\n else {\r\n this.rowsratedox.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratedox.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratedox = [...this.rowsratedox];\r\n\r\n }\r\n if (pcode == 'P0031') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0031') {\r\n var tmprows = this.rowsratedoxsur.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedoxsur.length == 0) {\r\n this.rowsratedoxsur[0] = custrate\r\n }\r\n else {\r\n this.rowsratedoxsur.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratedoxsur.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratedoxsur = [...this.rowsratedoxsur];\r\n\r\n }\r\n if (pcode == 'P0009') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0009') {\r\n var tmprows = this.rowsrateairpcl.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateairpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateairpcl = [...this.rowsrateairpcl];\r\n\r\n }\r\n if (pcode == 'P0010') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0010') {\r\n var tmprows = this.rowsratesurpcl.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratesurpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratesurpcl = [...this.rowsratesurpcl];\r\n\r\n }\r\n if (pcode == 'P0017') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0017') {\r\n var tmprows = this.rowsratetrpcl.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratetrpcl = [...this.rowsratetrpcl];\r\n\r\n }\r\n if (pcode == 'P0011') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0011') {\r\n var tmprows = this.rowsrateprtdoc.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrateprtdoc[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtdoc.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc];\r\n\r\n }\r\n if (pcode == 'P0012') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == 'P0012') {\r\n var tmprows = this.rowsrateprtpcl3.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3];\r\n\r\n }\r\n }\r\n\r\n\r\n AddRate(event: any, pcode: string, pname: string) {\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = ''; \r\n if (pcode == 'P0004') {\r\n this.accrddox = event\r\n this.accrddoxsur = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this. accrdprtpcl3 = false;\r\n this. accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0031') {\r\n this.accrddoxsur = event\r\n this.accrddox = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0009') {\r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n this.accrdairpcl = event;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0010') {\r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = event;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0011') {\r\n this.accrddox = false\r\n this.accrddoxsur = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = event;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n \r\n if (pcode == 'P0011') {\r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = event;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0012') {\r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = event;\r\n this.accrdrtpcl10 = false;\r\n }\r\n \r\n\r\n if (pcode == 'P0004' || pcode == 'P0011' || pcode == 'P0031' ) {\r\n mfromwt = '0.000';\r\n mtowt = '2.999';\r\n }\r\n if (pcode == 'P0009') {\r\n mfromwt = '1.000';\r\n mtowt = '9999999.999';\r\n //$('#MinChargeWt').val(mfromwt)\r\n if (isNullOrUndefined(this.minchargewtair) || this.minchargewtair ==\"\"){\r\n this.minchargewtair = mfromwt\r\n }\r\n }\r\n if (pcode == 'P0010' || pcode == 'P0017') {\r\n mfromwt = '3.000';\r\n mtowt = '9999999.999';\r\n if (isNullOrUndefined(this.minchargewtsur) || this.minchargewtsur == \"\" ) {\r\n this.minchargewtsur = mfromwt;\r\n this.minchargewttr = mfromwt;\r\n }\r\n \r\n }\r\n if (pcode == 'P0012') {\r\n mfromwt = '3.000';\r\n mtowt = '10.000';\r\n }\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n this.exRateAndDestGroup.forEach((ditem, index) => {\r\n Custr = new CustRate();\r\n Custr.destgroupName = ditem.tariffDestname;\r\n Custr.destId = ditem.tariffDestGroupId;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = '0.000';\r\n Custr.slab2 = '0.000';\r\n Custr.slab3 = '0.000';\r\n Custr.rate1 = '0.00';\r\n Custr.rate2 = '0.00';\r\n Custr.rate3 = '0.00';\r\n Custr.pslab = '0.000';\r\n Custr.prate = '0.00';\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[index] = Custr;\r\n });\r\n if (pcode == 'P0004' ) {\r\n tmprowsrate.forEach((custrate) => {\r\n if( custrate.productCode == pcode){\r\n var tmprows = this.rowsratedox.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '0.250'\r\n custrate.pslab = '0.250'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custrate\r\n }\r\n else {\r\n this.rowsratedox.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratedox.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratedox = [...this.rowsratedox];\r\n \r\n }\r\n if (pcode == 'P0031') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsratedoxsur.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '0.250'\r\n custrate.pslab = '0.250'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedoxsur.length == 0) {\r\n this.rowsratedoxsur[0] = custrate\r\n }\r\n else {\r\n this.rowsratedoxsur.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratedoxsur.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n }, this);\r\n this.rowsratedoxsur = [...this.rowsratedoxsur];\r\n\r\n }\r\n if (pcode == 'P0009') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsrateairpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateairpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateairpcl = [...this.rowsrateairpcl];\r\n\r\n }\r\n if (pcode == 'P0010') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsratesurpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratesurpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratesurpcl = [...this.rowsratesurpcl];\r\n\r\n }\r\n if (pcode == 'P0017') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsratetrpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratetrpcl = [...this.rowsratetrpcl];\r\n\r\n }\r\n if (pcode == 'P0011') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsrateprtdoc.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '0.500'\r\n custrate.pslab = '0.500'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrateprtdoc[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtdoc.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc];\r\n\r\n }\r\n if (pcode == 'P0012') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsrateprtpcl3.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3];\r\n\r\n }\r\n }\r\n AddRate1(event: any, pcode: string, pname: string) {\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = '';\r\n \r\n this.accrddox = false;\r\n this.accrddoxsur = false;\r\n\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = event;\r\n \r\n if (pcode == 'P0012') {\r\n mfromwt = '10.001';\r\n mtowt = '999999.9999';\r\n }\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n this.exRateAndDestGroup.forEach((ditem, index) => {\r\n Custr = new CustRate();\r\n Custr.destgroupName = ditem.tariffDestname;\r\n Custr.destId = ditem.tariffDestGroupId;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = '0.000';\r\n Custr.slab2 = '0.000';\r\n Custr.rate1 = '0.00';\r\n Custr.rate2 = '0.00';\r\n Custr.pslab = '0.000';\r\n Custr.prate = '0.00';\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[index] = Custr;\r\n });\r\n if (pcode == 'P0012') {\r\n tmprowsrate.forEach((custrate) => {\r\n if (custrate.productCode == pcode) {\r\n var tmprows = this.rowsrateprtpcl10.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custrate)\r\n }\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtpcl10.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10];\r\n\r\n }\r\n }\r\n\r\n funparsefloat(value) {\r\n var val = value;\r\n return parseFloat(val);\r\n }\r\n\r\n onConfirm() {\r\n this.rowsrate = [];\r\n\r\n let tmprate = new CustRate();\r\n\r\n this.rowsratedox.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0)\r\n //{\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n\r\n });\r\n this.rowsratedoxsur.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0)\r\n //{\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n\r\n });\r\n this.rowsrateairpcl.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n tmprate.fromWt = this.minchargewtair;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n\r\n });\r\n this.rowsratesurpcl.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n tmprate.fromWt = this.minchargewtsur;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n });\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n tmprate.fromWt = this.minchargewttr;\r\n\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n });\r\n this.rowsrateprtdoc.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n\r\n });\r\n this.rowsrateprtpcl3.forEach((itemr, index, awbs) => {\r\n\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n //if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n });\r\n this.rowsrateprtpcl10.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n // if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n //}\r\n });\r\n this.dialogRef.close(this.rowsrate)\r\n }\r\n \r\n onDismiss() {\r\n this.dialogRef.close(null)\r\n }\r\n\r\n\r\n clear() {\r\n $('#Region').val('0');\r\n $('#rateCity').val('');\r\n $('#ratePinCode').val('');\r\n\r\n }\r\n getRateStateList($event) {\r\n this.GetStateMaster();\r\n this.arrcity2rate = this.arrcityrate\r\n $('#rateState').autocomplete({\r\n source: this.arrcity,\r\n delay: 500\r\n });\r\n }\r\n getRateCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2rate = this.arrcityrate\r\n $('#rateCity').autocomplete({\r\n source: this.arrcity,\r\n delay: 500\r\n });\r\n }\r\n GetStateMaster() {\r\n this.ServiceMaster.getstateslist().subscribe(result => this.onDatagetSuccessful(result, 'STATE'), error => this.onDataLoadFailed(error));\r\n }\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n GetRateCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.RateonDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n RateonDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n if (listof == \"CITY\") {\r\n this.arrcityrate = states;\r\n }\r\n }\r\n onItemDeSelect(item: any) {\r\n var isfind = false;\r\n for (let i = 0; i < this.rowsrate.length; i++) {\r\n if (this.rowsrate[i].productCode == item.item_id)\r\n this.rowsrate.splice(i, 1)\r\n }\r\n\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57)) {\r\n if (ASCIICode == 46) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n else {\r\n return true;\r\n }\r\n\r\n }\r\n}\r\n\r\nexport class CustRate {\r\n public CustRateId: string\r\n public customerId: string\r\n public OfficeId: string\r\n public CustomerCode: string\r\n public productCode: string\r\n public productName: string\r\n public destcityName: string\r\n public destCityPincode: string\r\n public destStateName: string\r\n public destgroupName: string\r\n public destId: string\r\n public fromWt: string\r\n public toWt: string\r\n public slab1: string\r\n public rate1: string\r\n public slab2: string\r\n public rate2: string\r\n public slab3: string\r\n public rate3: string\r\n public pslab: string\r\n public prate: string\r\n public fsurcharge: string\r\n}\r\nexport class ConfirmDialogRateModels {\r\n\r\n constructor(public title: string, public message: string,\r\n public IsEdit: boolean, public MPS?: CustRate[],\r\n public retMessage?: CustRate[], public CustomerId?: string, public customercode?: string) {\r\n }\r\n}\r\n\r\n\r\n","export default \".row {\\n margin-right: 0px;\\n margin-left: 0px;\\n}\\n\\n.form-group {\\n margin-bottom: 5px;\\n}\\n\\n.card-header {\\n background-color: #142c4c;\\n color: white;\\n}\\n\\n.toggle.btn-sm {\\n min-width: 70px !important;\\n min-height: 30px;\\n}\\n\\n.toggle.btn {\\n min-width: 70px !important;\\n min-height: 34px;\\n}\\n\\n.multiselect-dropdown {\\n position: relative;\\n width: 100%;\\n font-size: inherit;\\n font-family: inherit;\\n}\\n\\n.multiselect-dropdown .dropdown-btn {\\n display: inline-block;\\n border: 1px solid #adadad;\\n width: 100%;\\n padding: 6px 12px;\\n margin-bottom: 0;\\n font-weight: normal;\\n line-height: 1.52857143;\\n text-align: left;\\n vertical-align: middle;\\n cursor: pointer;\\n background-image: none;\\n border-radius: 4px;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .selected-item {\\n border: 1px solid #e63fae !important;\\n margin-right: 4px;\\n background: #e63fae !important;\\n padding: 0px 5px;\\n color: #fff;\\n border-radius: 2px;\\n float: left;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .selected-item a {\\n text-decoration: none;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .selected-item:hover {\\n box-shadow: 1px 1px #959595;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .dropdown-down {\\n display: inline-block;\\n top: 10px;\\n width: 0;\\n height: 0;\\n border-top: 10px solid #adadad;\\n border-left: 10px solid transparent;\\n border-right: 10px solid transparent;\\n}\\n\\n.multiselect-dropdown .dropdown-btn .dropdown-up {\\n display: inline-block;\\n width: 0;\\n height: 0;\\n border-bottom: 10px solid #adadad;\\n border-left: 10px solid transparent;\\n border-right: 10px solid transparent;\\n}\\n\\n.multiselect-dropdown .disabled > span {\\n background-color: #eceeef;\\n}\\n\\n.dropdown-list {\\n position: absolute;\\n padding-top: 6px;\\n width: 100%;\\n z-index: 9999;\\n border: 1px solid #ccc;\\n border-radius: 3px;\\n background: #fff;\\n margin-top: 10px;\\n box-shadow: 0px 1px 5px #959595;\\n}\\n\\n.dropdown-list ul {\\n padding: 0px;\\n list-style: none;\\n overflow: auto;\\n margin: 0px;\\n}\\n\\n.dropdown-list li {\\n padding: 6px 10px;\\n cursor: pointer;\\n text-align: left;\\n}\\n\\n.dropdown-list .filter-textbox {\\n border-bottom: 1px solid #ccc;\\n position: relative;\\n padding: 10px;\\n}\\n\\n.dropdown-list .filter-textbox input {\\n border: 0px;\\n width: 100%;\\n padding: 0px 0px 0px 26px;\\n}\\n\\n.dropdown-list .filter-textbox input:focus {\\n outline: none;\\n}\\n\\n.multiselect-item-checkbox input[type=checkbox] {\\n border: 0;\\n clip: rect(0 0 0 0);\\n height: 1px;\\n margin: -1px;\\n overflow: hidden;\\n padding: 0;\\n position: absolute;\\n width: 1px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcZGFpbG9nLXJhdGUtbWFzdGVyLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21wb25lbnRzL2NvbnRyb2xzL2RhaWxvZy1yYXRlLW1hc3Rlci5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGlCQUFBO0VBQ0EsZ0JBQUE7QUNDRjs7QURFQTtFQUNFLGtCQUFBO0FDQ0Y7O0FERUE7RUFDRSx5QkFBQTtFQUNBLFlBQUE7QUNDRjs7QURFQTtFQUNFLDBCQUFBO0VBQ0EsZ0JBQUE7QUNDRjs7QURFQTtFQUNFLDBCQUFBO0VBQ0EsZ0JBQUE7QUNDRjs7QURJQTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7QUNERjs7QURHRTtFQUNFLHFCQUFBO0VBQ0EseUJBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0VBQ0EsZUFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7QUNESjs7QURHSTtFQUNFLG9DQUFBO0VBQ0EsaUJBQUE7RUFDQSw4QkFBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtBQ0ROOztBREdNO0VBQ0UscUJBQUE7QUNEUjs7QURLSTtFQUNFLDJCQUFBO0FDSE47O0FETUk7RUFDRSxxQkFBQTtFQUNBLFNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLDhCQUFBO0VBQ0EsbUNBQUE7RUFDQSxvQ0FBQTtBQ0pOOztBRE9JO0VBQ0UscUJBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLGlDQUFBO0VBQ0EsbUNBQUE7RUFDQSxvQ0FBQTtBQ0xOOztBRFVJO0VBQ0UseUJBOURxQjtBQ3NEM0I7O0FEYUE7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLCtCQUFBO0FDVkY7O0FEWUU7RUFDRSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsV0FBQTtBQ1ZKOztBRGFFO0VBQ0UsaUJBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7QUNYSjs7QURjRTtFQUNFLDZCQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0FDWko7O0FEY0k7RUFDRSxXQUFBO0VBQ0EsV0FBQTtFQUNBLHlCQUFBO0FDWk47O0FEZUk7RUFDRSxhQUFBO0FDYk47O0FEa0JBO0VBQ0UsU0FBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7QUNmRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvZGFpbG9nLXJhdGUtbWFzdGVyLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnJvdyB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDBweDtcclxufVxyXG5cclxuLmZvcm0tZ3JvdXAge1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLmNhcmQtaGVhZGVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYzRjO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLnRvZ2dsZS5idG4tc20ge1xyXG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xyXG4gIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbn1cclxuXHJcbi50b2dnbGUuYnRuIHtcclxuICBtaW4td2lkdGg6IDcwcHggIWltcG9ydGFudDtcclxuICBtaW4taGVpZ2h0OiAzNHB4O1xyXG59XHJcbiRiYXNlLWNvbG9yOiAjZTYzZmFlO1xyXG4kZGlzYWJsZS1iYWNrZ3JvdW5kLWNvbG9yOiAjZWNlZWVmO1xyXG5cclxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cclxuICAuZHJvcGRvd24tYnRuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhZGFkYWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMS41Mjg1NzE0MztcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHJcbiAgICAuc2VsZWN0ZWQtaXRlbSB7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRiYXNlLWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYmFzZS1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nOiAwcHggNXB4O1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3RlZC1pdGVtOmhvdmVyIHtcclxuICAgICAgYm94LXNoYWRvdzogMXB4IDFweCAjOTU5NTk1O1xyXG4gICAgfVxyXG5cclxuICAgIC5kcm9wZG93bi1kb3duIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB0b3A6IDEwcHg7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgI2FkYWRhZDtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuXHJcbiAgICAuZHJvcGRvd24tdXAge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgI2FkYWRhZDtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5kaXNhYmxlZCB7XHJcbiAgICAmID4gc3BhbiB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlLWJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZHJvcGRvd24tbGlzdCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHBhZGRpbmctdG9wOiA2cHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgei1pbmRleDogOTk5OTtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggIzk1OTU5NTtcclxuXHJcbiAgdWwge1xyXG4gICAgcGFkZGluZzogMHB4O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwcHg7XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAuZmlsdGVyLXRleHRib3gge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgYm9yZGVyOiAwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCAyNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0OmZvY3VzIHtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5tdWx0aXNlbGVjdC1pdGVtLWNoZWNrYm94IGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xyXG4gIGJvcmRlcjogMDtcclxuICBjbGlwOiByZWN0KDAgMCAwIDApO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG1hcmdpbjogLTFweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxcHg7XHJcbn1cclxuIiwiLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MmM0YztcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4udG9nZ2xlLmJ0bi1zbSB7XG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAzMHB4O1xufVxuXG4udG9nZ2xlLmJ0biB7XG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAzNHB4O1xufVxuXG4ubXVsdGlzZWxlY3QtZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhZGFkYWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA2cHggMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTI4NTcxNDM7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLnNlbGVjdGVkLWl0ZW0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTYzZmFlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICBiYWNrZ3JvdW5kOiAjZTYzZmFlICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDBweCA1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLnNlbGVjdGVkLWl0ZW0gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5tdWx0aXNlbGVjdC1kcm9wZG93biAuZHJvcGRvd24tYnRuIC5zZWxlY3RlZC1pdGVtOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMXB4IDFweCAjOTU5NTk1O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLmRyb3Bkb3duLWRvd24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRvcDogMTBweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjYWRhZGFkO1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLm11bHRpc2VsZWN0LWRyb3Bkb3duIC5kcm9wZG93bi1idG4gLmRyb3Bkb3duLXVwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICNhZGFkYWQ7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4ubXVsdGlzZWxlY3QtZHJvcGRvd24gLmRpc2FibGVkID4gc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VlZWY7XG59XG5cbi5kcm9wZG93bi1saXN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nLXRvcDogNnB4O1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk5OTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBib3gtc2hhZG93OiAwcHggMXB4IDVweCAjOTU5NTk1O1xufVxuLmRyb3Bkb3duLWxpc3QgdWwge1xuICBwYWRkaW5nOiAwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBtYXJnaW46IDBweDtcbn1cbi5kcm9wZG93bi1saXN0IGxpIHtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5kcm9wZG93bi1saXN0IC5maWx0ZXItdGV4dGJveCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4uZHJvcGRvd24tbGlzdCAuZmlsdGVyLXRleHRib3ggaW5wdXQge1xuICBib3JkZXI6IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDBweCAwcHggMHB4IDI2cHg7XG59XG4uZHJvcGRvd24tbGlzdCAuZmlsdGVyLXRleHRib3ggaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ubXVsdGlzZWxlY3QtaXRlbS1jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufSJdfQ== */\"","import { TemplateRef } from '@angular/core';\r\nimport { Component, Inject, AfterViewInit, ViewChild, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MatRadioChange, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { document } from 'ngx-bootstrap/utils';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-dailog-rate-master',\r\n templateUrl: './dailog-rate-master.component.html',\r\n styleUrls: ['./dailog-rate-master.component.scss']\r\n})\r\nexport class DailogRateMasterComponent implements OnInit,AfterViewInit {\r\n ratear: CustRate[] = [];\r\n title: string;\r\n message: string;\r\n retMessage: string;\r\n columnsmps: any[] = [];\r\n requestData: ConfirmDialogRateModels = null;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n columnsratedox: any[] = [];\r\n columnsrateairpcl: any[] = [];\r\n columnsratesurpcl: any[] = [];\r\n columnsratetrpcl: any[] = [];\r\n columnsrateprtdoc: any[] = [];\r\n columnsrateprtpcl3: any[] = [];\r\n columnsrateprtpcl10: any[] = [];\r\n accrddox: boolean = true;\r\n accrdairpcl: boolean = false;\r\n accrdsurpcl: boolean = false;\r\n accrdtrpcl: boolean = false;\r\n accrdprtdoc: boolean = false;\r\n accrdprtpcl3: boolean = false;\r\n accrdrtpcl10: boolean = false;\r\n\r\n rowsratedox: any[] = [];\r\n rowsrateairpcl: any[] = [];\r\n rowsratesurpcl: any[] = [];\r\n rowsratetrpcl: any[] = [];\r\n rowsrateprtdoc: any[] = [];\r\n rowsrateprtpcl3: any[] = [];\r\n rowsrateprtpcl10: any[] = [];\r\n arrcityrate: any[] = [];\r\n arrcity2rate: any[] = [];\r\n rowsrate: CustRate[] = [];\r\n isCity: any = false;\r\n isRegion: any = false;\r\n istable: any = false;\r\n exRateAndDestGroup: any[] = [];\r\n open = true;\r\n typee = '0';\r\n @ViewChild('indexTemplate1dox', { static: true })\r\n indexTemplate1dox: TemplateRef;\r\n @ViewChild('actionfromwtdox', { static: true })\r\n actionfromwtdox: TemplateRef;\r\n @ViewChild('actionstowtdox', { static: true })\r\n actionstowtdox: TemplateRef;\r\n @ViewChild('actionslab1dox', { static: true })\r\n actionslab1dox: TemplateRef;\r\n @ViewChild('actionrate1dox', { static: true })\r\n actionrate1dox: TemplateRef;\r\n @ViewChild('actionslab2dox', { static: true })\r\n actionslab2dox: TemplateRef;\r\n @ViewChild('actionrate2dox', { static: true })\r\n actionrate2dox: TemplateRef;\r\n @ViewChild('actionpslabdox', { static: true })\r\n actionpslabdox: TemplateRef;\r\n @ViewChild('actionpratedox', { static: true })\r\n actionpratedox: TemplateRef;\r\n /* for city*/\r\n\r\n @ViewChild('indexTemplate1airpcl', { static: true })\r\n indexTemplate1airpcl: TemplateRef;\r\n @ViewChild('actionfromwtairpcl', { static: true })\r\n actionfromwtairpcl: TemplateRef;\r\n @ViewChild('actionstowtairpcl', { static: true })\r\n actionstowtairpcl: TemplateRef;\r\n @ViewChild('actionslab1airpcl', { static: true })\r\n actionslab1airpcl: TemplateRef;\r\n @ViewChild('actionrate1airpcl', { static: true })\r\n actionrate1airpcl: TemplateRef;\r\n @ViewChild('actionslab2airpcl', { static: true })\r\n actionslab2airpcl: TemplateRef;\r\n @ViewChild('actionrate2airpcl', { static: true })\r\n actionrate2airpcl: TemplateRef;\r\n @ViewChild('actionpslabairpcl', { static: true })\r\n actionpslabairpcl: TemplateRef;\r\n @ViewChild('actionprateairpcl', { static: true })\r\n actionprateairpcl: TemplateRef;\r\n\r\n\r\n @ViewChild('indexTemplate1surpcl', { static: true })\r\n indexTemplate1surpcl: TemplateRef;\r\n @ViewChild('actionfromwtsurpcl', { static: true })\r\n actionfromwtsurpcl: TemplateRef;\r\n @ViewChild('actionstowtsurpcl', { static: true })\r\n actionstowtsurpcl: TemplateRef;\r\n @ViewChild('actionslab1surpcl', { static: true })\r\n actionslab1surpcl: TemplateRef;\r\n @ViewChild('actionrate1surpcl', { static: true })\r\n actionrate1surpcl: TemplateRef;\r\n @ViewChild('actionslab2surpcl', { static: true })\r\n actionslab2surpcl: TemplateRef;\r\n @ViewChild('actionrate2surpcl', { static: true })\r\n actionrate2surpcl: TemplateRef;\r\n @ViewChild('actionpslabsurpcl', { static: true })\r\n actionpslabsurpcl: TemplateRef;\r\n @ViewChild('actionpratesurpcl', { static: true })\r\n actionpratesurpcl: TemplateRef;\r\n\r\n @ViewChild('indexTemplate1trpcl', { static: true })\r\n indexTemplate1trpcl: TemplateRef;\r\n @ViewChild('actionfromwttrpcl', { static: true })\r\n actionfromwttrpcl: TemplateRef;\r\n @ViewChild('actionstowttrpcl', { static: true })\r\n actionstowttrpcl: TemplateRef;\r\n @ViewChild('actionslab1trpcl', { static: true })\r\n actionslab1trpcl: TemplateRef;\r\n @ViewChild('actionrate1trpcl', { static: true })\r\n actionrate1trpcl: TemplateRef;\r\n @ViewChild('actionslab2trpcl', { static: true })\r\n actionslab2trpcl: TemplateRef;\r\n @ViewChild('actionrate2trpcl', { static: true })\r\n actionrate2trpcl: TemplateRef;\r\n @ViewChild('actionpslabtrpcl', { static: true })\r\n actionpslabtrpcl: TemplateRef;\r\n @ViewChild('actionpratetrpcl', { static: true })\r\n actionpratetrpcl: TemplateRef;\r\n\r\n\r\n\r\n @ViewChild('indexTemplate1prtdoc', { static: true })\r\n indexTemplate1prtdoc: TemplateRef;\r\n @ViewChild('actionfromwtprtdoc', { static: true })\r\n actionfromwtprtdoc: TemplateRef;\r\n @ViewChild('actionstowtprtdoc', { static: true })\r\n actionstowtprtdoc: TemplateRef;\r\n @ViewChild('actionslab1prtdoc', { static: true })\r\n actionslab1prtdoc: TemplateRef;\r\n @ViewChild('actionrate1prtdoc', { static: true })\r\n actionrate1prtdoc: TemplateRef;\r\n @ViewChild('actionslab2prtdoc', { static: true })\r\n actionslab2prtdoc: TemplateRef;\r\n @ViewChild('actionrate2prtdoc', { static: true })\r\n actionrate2prtdoc: TemplateRef;\r\n @ViewChild('actionpslabprtdoc', { static: true })\r\n actionpslabprtdoc: TemplateRef;\r\n @ViewChild('actionprateprtdoc', { static: true })\r\n actionprateprtdoc: TemplateRef;\r\n\r\n\r\n @ViewChild('indexTemplate1prtpcl3', { static: true })\r\n indexTemplate1prtpcl3: TemplateRef;\r\n @ViewChild('actionfromwtprtpcl3', { static: true })\r\n actionfromwtprtpcl3: TemplateRef;\r\n @ViewChild('actionstowtprtpcl3', { static: true })\r\n actionstowtprtpcl3: TemplateRef;\r\n @ViewChild('actionslab1prtpcl3', { static: true })\r\n actionslab1prtpcl3: TemplateRef;\r\n @ViewChild('actionrate1prtpcl3', { static: true })\r\n actionrate1prtpcl3: TemplateRef;\r\n @ViewChild('actionslab2prtpcl3', { static: true })\r\n actionslab2prtpcl3: TemplateRef;\r\n @ViewChild('actionrate2prtpcl3', { static: true })\r\n actionrate2prtpcl3: TemplateRef;\r\n @ViewChild('actionpslabprtpcl3', { static: true })\r\n actionpslabprtpcl3: TemplateRef;\r\n @ViewChild('actionprateprtpcl3', { static: true })\r\n actionprateprtpcl3: TemplateRef;\r\n\r\n @ViewChild('indexTemplate1', { static: true })\r\n indexTemplate1: TemplateRef;\r\n @ViewChild('actionfromwt', { static: true })\r\n actionfromwt: TemplateRef;\r\n @ViewChild('actionstowt', { static: true })\r\n actionstowt: TemplateRef;\r\n @ViewChild('actionslab1', { static: true })\r\n actionslab1: TemplateRef;\r\n @ViewChild('actionrate1', { static: true })\r\n actionrate1: TemplateRef;\r\n @ViewChild('actionslab2', { static: true })\r\n actionslab2: TemplateRef;\r\n @ViewChild('actionrate2', { static: true })\r\n actionrate2: TemplateRef;\r\n @ViewChild('actionpslab', { static: true })\r\n actionpslab: TemplateRef;\r\n @ViewChild('actionprate', { static: true })\r\n actionprate: TemplateRef;\r\n\r\n @ViewChild('indexTemplateCity1', { static: true })\r\n indexTemplateCity1: TemplateRef;\r\n @ViewChild('actionfromwtCity', { static: true })\r\n actionfromwtCity: TemplateRef;\r\n @ViewChild('actionstowtCity', { static: true })\r\n actionstowtCity: TemplateRef;\r\n @ViewChild('actionslab1City', { static: true })\r\n actionslab1City: TemplateRef;\r\n @ViewChild('actionrate1City', { static: true })\r\n actionrate1City: TemplateRef;\r\n @ViewChild('actionslab2City', { static: true })\r\n actionslab2City: TemplateRef;\r\n @ViewChild('actionrate2City', { static: true })\r\n actionrate2City: TemplateRef;\r\n @ViewChild('actionpslabCity', { static: true })\r\n actionpslabCity: TemplateRef;\r\n @ViewChild('actionprateCity', { static: true })\r\n actionprateCity: TemplateRef;\r\n\r\n\r\n dropdownList: any[] = [];\r\n selectedItems: any[] = [];\r\n dropdownSettings: IDropdownSettings = {};\r\n constructor(public dialogRef: MatDialogRef, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogRateModels) {\r\n // Update view with given values\r\n this.title = data.title;\r\n this.message = data.message;\r\n this.retMessage = null;\r\n this.requestData = data;\r\n }\r\n ngAfterViewInit() {\r\n if (!isNullOrUndefined(this.requestData.MPS) && this.requestData.MPS.length > 0) {\r\n this.rowsratedox = [];\r\n this.rowsrateairpcl = [];\r\n this.rowsratesurpcl = [];\r\n this.rowsratetrpcl = [];\r\n this.rowsrateprtdoc= [];\r\n this.rowsrateprtpcl3 = [];\r\n this.rowsrateprtpcl10= [];\r\n this.requestData.MPS.forEach((custarr) => {\r\n if (custarr.productCode == 'P0001') {\r\n var tmprow = this.rowsratedox.find(e => e.productCode == 'P0001' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedox.push(custarr);\r\n }\r\n }\r\n }\r\n\r\n if (custarr.productCode == 'P0002') {\r\n var tmprow = this.rowsrateairpcl.find(e => e.productCode == 'P0002' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0003') {\r\n var tmprow = this.rowsratesurpcl.find(e => e.productCode == 'P0003' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0016') {\r\n var tmprow = this.rowsratetrpcl.find(e => e.productCode == 'P0016' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0005') {\r\n var tmprow = this.rowsrateprtdoc.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrate[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0006' && custarr.fromWt == '3.000') {\r\n var tmprow = this.rowsrateprtpcl3.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0006' && custarr.fromWt == '10.001') {\r\n var tmprow = this.rowsrateprtpcl10.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custarr);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n ngOnInit() {\r\n \r\n this.columnsratedox = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2dox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabdox, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionpratedox, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateairpcl = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2airpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateairpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsratesurpcl = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2surpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabsurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionpratesurpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsratetrpcl = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2trpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabtrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionpratetrpcl, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateprtdoc = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtdoc, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateprtpcl3 = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2prtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslabprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprateprtpcl3, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columnsrateprtpcl10 = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, cellTemplate: this.actionslab1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, cellTemplate: this.actionrate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, cellTemplate: this.actionslab2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, cellTemplate: this.actionrate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, cellTemplate: this.actionpslab, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, cellTemplate: this.actionprate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n \r\n //this.columns.push({ prop: 'fsurcharge', name: 'Fuel(%)', width: 50, innerHeight: 51, cellTemplate: this.actionprate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n //{ item_id: 'P0007', ProductName: 'International Dox ' },\r\n //{ item_id: 'P0008', ProductName: 'International Parcel' },\r\n this.dropdownList = [\r\n { item_id: 'P0001', ProductName: 'Document' },\r\n { item_id: 'P0002', ProductName: 'Air Parcel' },\r\n { item_id: 'P0003', ProductName: 'Surface Parcel' },\r\n { item_id: 'P0016', ProductName: 'Train Parcel' },\r\n { item_id: 'P0005', ProductName: 'Priority Document' },\r\n { item_id: 'P0006', ProductName: 'Priority Parcel' },\r\n { item_id: 'P0018', ProductName: 'Air On Demand' },\r\n { item_id: 'P0020', ProductName: 'Surface On Demand' },\r\n { item_id: 'P0024', ProductName: 'Divine' },\r\n ];\r\n this.selectedItems = [];\r\n this.dropdownSettings = {\r\n idField: 'item_id',\r\n textField: 'ProductName',\r\n enableCheckAll: false,\r\n allowSearchFilter: true,\r\n singleSelection: false,\r\n };\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetDestGroupByCustomer'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"customerid\"\r\n pr.PropertyValue = this.data.CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n Req = new CommRequest();\r\n Req.ProcessName = \"Get_CustRateMaster\"\r\n Parameter = new Array(1);\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"CustommerMasterId\"\r\n pr.PropertyValue = this.data.CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(\r\n result => {\r\n this.requestData.MPS = result\r\n if (!isNullOrUndefined(this.requestData.MPS) && this.requestData.MPS.length > 0) {\r\n this.rowsratedox = [];\r\n this.data.IsEdit = false;\r\n this.rowsrateairpcl = [];\r\n this.rowsratesurpcl = [];\r\n this.rowsratetrpcl = [];\r\n this.rowsrateprtdoc = [];\r\n this.rowsrateprtpcl3 = [];\r\n this.rowsrateprtpcl10 = [];\r\n this.requestData.MPS.forEach((custarr) => {\r\n if (custarr.productCode == 'P0001') {\r\n this.columnsratedox = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n var tmprow = this.rowsratedox.find(e => e.productCode == 'P0001' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custarr;\r\n }\r\n else {\r\n this.rowsratedox.push(custarr);\r\n }\r\n }\r\n }\r\n\r\n if (custarr.productCode == 'P0002') {\r\n this.columnsrateairpcl = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n var tmprow = this.rowsrateairpcl.find(e => e.productCode == 'P0002' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0003') {\r\n this.columnsratesurpcl = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n var tmprow = this.rowsratesurpcl.find(e => e.productCode == 'P0003' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0016') {\r\n this.columnsratetrpcl = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n var tmprow = this.rowsratetrpcl.find(e => e.productCode == 'P0016' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custarr;\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0005') {\r\n this.columnsrateprtdoc = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n\r\n var tmprow = this.rowsrateprtdoc.find(e => e.productCode == 'P0005' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrate[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0006' && custarr.fromWt == '3.000') {\r\n this.columnsrateprtpcl3 = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n\r\n var tmprow = this.rowsrateprtpcl3.find(e => e.productCode == 'P0006' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custarr);\r\n }\r\n }\r\n }\r\n if (custarr.productCode == 'P0006' && custarr.fromWt == '10.001') {\r\n this.columnsrateprtpcl10 = [\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'destgroupName', name: 'Destination', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fromWt', name: 'From Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'toWt', name: 'To Weight', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab1', name: 'Slab1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate1', name: 'Rate1', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'slab2', name: 'Slab2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'rate2', name: 'Rate2', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pslab', name: 'Pslab', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'prate', name: 'Prate', width: 100, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n var tmprow = this.rowsrateprtpcl10.find(e => e.productCode == 'P0006' && e.fromWt == custarr.fromWt && e.destgroupName == custarr.destgroupName)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custarr;\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custarr);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n },\r\n error => this.onDataLoadFailed(error))\r\n }\r\n getSucessDataExrate(result: any) {\r\n this.exRateAndDestGroup = result\r\n }\r\n funHide() {\r\n var typeee = this.typee == \"1\" ? \"1\" : \"2\";\r\n if (typeee == \"1\") {\r\n this.isRegion = true;\r\n this.isCity = false;\r\n this.istable = true;\r\n this.clear();\r\n\r\n } else {\r\n this.isRegion = false;\r\n this.isCity = true;\r\n this.istable = true;\r\n this.clear();\r\n }\r\n }\r\n funcheckslab1value(index: any, event: any, pcode: string,fromwt?:string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].slab1 = event.target.value;\r\n this.rowsratedox = [...this.rowsratedox]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].slab1 = event.target.value;\r\n this.rowsrateairpcl = [...this.rowsrateairpcl]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].slab1 = event.target.value;\r\n this.rowsratesurpcl = [...this.rowsratesurpcl]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].slab1 = \"0.000\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].slab1 = event.target.value;\r\n this.rowsratetrpcl = [...this.rowsratetrpcl]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].slab1 = event.target.value;\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000' ) {\r\n this.rowsrateprtpcl3[index - 1].slab1 = event.target.value;\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].slab1 = event.target.value;\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10]\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].slab1 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter salb1 weight grater then toWeight.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funcheckvalue(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') { \r\n this.rowsratedox[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratedox[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateairpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratesurpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsratetrpcl[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateprtdoc[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt =='3.000') {\r\n this.rowsrateprtpcl3[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl3[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].slab2 = event.target.value;\r\n var slab1 = this.rowsrateprtpcl10[index - 1].slab1;\r\n if (this.funparsefloat(slab1) > this.funparsefloat(event.target.value) || (this.funparsefloat(slab1) + this.funparsefloat(event.target.value)) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].slab2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid Slab', 'you can not enter the slab2 weight grater then slab1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funrate1(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].rate1 = event.target.value;\r\n this.rowsratedox = [...this.rowsratedox]\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].rate1 = event.target.value;\r\n this.rowsrateairpcl = [...this.rowsrateairpcl]\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].rate1 = event.target.value;\r\n this.rowsratesurpcl = [...this.rowsratesurpcl]\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].rate1 = event.target.value;\r\n this.rowsratetrpcl = [...this.rowsratetrpcl]\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].rate1 = event.target.value;\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc]\r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].rate1 = event.target.value;\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3]\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].rate1 = event.target.value;\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10]\r\n }\r\n }\r\n\r\n funrate2(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratedox[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateairpcl[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratesurpcl[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsratetrpcl[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateprtdoc[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt=='3.000') {\r\n this.rowsrateprtpcl3[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateprtpcl3[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].rate2 = event.target.value;\r\n var rate1 = this.rowsrateprtpcl10[index - 1].rate1;\r\n if (this.funparsefloat(rate1) > this.funparsefloat(event.target.value)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].rate2 = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid rate', 'you can not enter the rate2 value lower then rate1.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n funpslab(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratedox[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratedox[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateairpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateairpcl[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratesurpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratesurpcl[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsratetrpcl[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsratetrpcl[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtdoc[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtdoc[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl3[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl3[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n if (pcode == 'P0006' && fromwt=='10.001') {\r\n this.rowsrateprtpcl10[index - 1].pslab = event.target.value;\r\n if (this.funparsefloat(event.target.value) > this.funparsefloat(this.rowsrateprtpcl10[index - 1].toWt)) {\r\n event.target.value = 0;\r\n this.rowsrateprtpcl10[index - 1].pslab = \"0\";\r\n event.target.focus();\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('invalid pslab', 'you can not enter the pslab weight grater then toWt.', MessageSeverity.error, \"\");\r\n }\r\n }\r\n }\r\n\r\n funprate(index: any, event: any, pcode: string, fromwt?: string) {\r\n if (pcode == 'P0001') {\r\n this.rowsratedox[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0002') {\r\n this.rowsrateairpcl[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0003') {\r\n this.rowsratesurpcl[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0016') {\r\n this.rowsratetrpcl[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0005') {\r\n this.rowsrateprtdoc[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0006' && fromwt == '3.000') {\r\n this.rowsrateprtpcl3[index - 1].prate = event.target.value;\r\n \r\n }\r\n if (pcode == 'P0006' && fromwt == '10.001') {\r\n this.rowsrateprtpcl10[index - 1].prate = event.target.value;\r\n \r\n }\r\n }\r\n\r\n\r\n\r\n AddRateCity1(pcode: string, pname: string) {\r\n let destcity = $('#rateCity').val();\r\n let destpincode = $('#ratePinCode').val();\r\n let ratesalb1 = $('#txtslab1').val();\r\n let rate1 = $('#txtrate1').val();\r\n let ratesalb2 = $('#txtslab2').val();\r\n let rate2 = $('#txtrate2').val();\r\n let ratepsalb = $('#txtslab').val();\r\n let prate = $('#txtprate').val();\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = '';\r\n mfromwt = '10.001';\r\n mtowt = '999999.9999';\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n Custr = new CustRate();\r\n Custr.destcityName = destcity;\r\n Custr.destCityPincode = destpincode;\r\n Custr.destgroupName = destcity;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = ratesalb1.toString();\r\n Custr.slab2 = ratesalb2.toString();\r\n Custr.rate1 = rate1.toString();\r\n Custr.rate2 = rate2.toString();\r\n Custr.pslab = ratepsalb.toString();\r\n Custr.prate = prate.toString;\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n if (pcode == 'P0006') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateprtpcl10.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtpcl10.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10];\r\n\r\n }\r\n }\r\n AddRateCity( pcode: string, pname: string) {\r\n let destcity = $('#rateCity').val();\r\n let destpincode = $('#ratePinCode').val();\r\n let ratesalb1 = $('#txtslab1').val();\r\n let rate1 = $('#txtrate1').val();\r\n let ratesalb2 = $('#txtslab2').val();\r\n let rate2 = $('#txtrate2').val();\r\n let ratepsalb = $('#txtslab').val();\r\n let prate = $('#txtprate').val();\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = '';\r\n if (pcode == 'P0001' || pcode == 'P0005') {\r\n mfromwt = '0.000';\r\n mtowt = '2.999';\r\n }\r\n if (pcode == 'P0002') {\r\n mfromwt = '1.000';\r\n mtowt = '9999999.999';\r\n }\r\n if ( pcode == 'P0003' || pcode == 'P0016') {\r\n mfromwt = '3.000';\r\n mtowt = '9999999.999';\r\n }\r\n if (pcode == 'P0006') {\r\n mfromwt = '3.000';\r\n mtowt = '10.000';\r\n }\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n Custr = new CustRate();\r\n Custr.destcityName = destcity;\r\n Custr.destCityPincode = destpincode;\r\n Custr.destgroupName = destcity;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = ratesalb1.toString();\r\n Custr.slab2 = ratesalb2.toString();\r\n Custr.rate1 = rate1.toString();\r\n Custr.rate2 = rate2.toString();\r\n Custr.pslab = ratepsalb.toString();\r\n Custr.prate = prate.toString();\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n if (pcode == 'P0001') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsratedox.find(e => e.productCode == custrate.productCode && e.destgroupName == custrate.destgroupName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custrate\r\n }\r\n else {\r\n this.rowsratedox.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsratedox.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratedox = [...this.rowsratedox];\r\n\r\n }\r\n if (pcode == 'P0002') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateairpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsrateairpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateairpcl = [...this.rowsrateairpcl];\r\n\r\n }\r\n if (pcode == 'P0003') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsratesurpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsratesurpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratesurpcl = [...this.rowsratesurpcl];\r\n\r\n }\r\n if (pcode == 'P0016') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsratetrpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratetrpcl = [...this.rowsratetrpcl];\r\n\r\n }\r\n if (pcode == 'P0005') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateprtdoc.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrateprtdoc[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtdoc.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc];\r\n\r\n }\r\n if (pcode == 'P0006') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateprtpcl3.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3];\r\n\r\n }\r\n }\r\n\r\n\r\n AddRate(event: any, pcode: string, pname: string) {\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = '';\r\n\r\n if (pcode == 'P0001') {\r\n this.accrddox = event\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this. accrdprtpcl3 = false;\r\n this. accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0002') {\r\n this.accrddox = false;\r\n this.accrdairpcl = event;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0003') {\r\n this.accrddox = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = event;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0016') {\r\n this.accrddox = false\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = event;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0005') {\r\n this.accrddox = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = event;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = false;\r\n }\r\n if (pcode == 'P0006') {\r\n this.accrddox = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = event;\r\n this.accrdrtpcl10 = false;\r\n }\r\n \r\n\r\n if (pcode == 'P0001' || pcode == 'P0005') {\r\n mfromwt = '0.000';\r\n mtowt = '2.999';\r\n }\r\n if (pcode == 'P0002') {\r\n mfromwt = '1.000';\r\n mtowt = '9999999.999';\r\n }\r\n if (pcode == 'P0003' || pcode == 'P0016') {\r\n mfromwt = '3.000';\r\n mtowt = '9999999.999';\r\n }\r\n if (pcode == 'P0006') {\r\n mfromwt = '3.000';\r\n mtowt = '10.000';\r\n }\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n this.exRateAndDestGroup.forEach((ditem, index) => {\r\n Custr = new CustRate();\r\n Custr.destgroupName = ditem.tariffDestname;\r\n Custr.destId = ditem.tariffDestGroupId;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = '0.000';\r\n Custr.slab2 = '0.000';\r\n Custr.rate1 = '0.00';\r\n Custr.rate2 = '0.00';\r\n Custr.pslab = '0.000';\r\n Custr.prate = '0.00';\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[index] = Custr;\r\n });\r\n if (pcode == 'P0001') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsratedox.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '0.250'\r\n custrate.pslab = '0.250'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratedox.length == 0) {\r\n this.rowsratedox[0] = custrate\r\n }\r\n else {\r\n this.rowsratedox.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsratedox.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratedox = [...this.rowsratedox];\r\n \r\n }\r\n if (pcode == 'P0002') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateairpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateairpcl.length == 0) {\r\n this.rowsrateairpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsrateairpcl.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsrateairpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateairpcl = [...this.rowsrateairpcl];\r\n\r\n }\r\n if (pcode == 'P0003') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsratesurpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratesurpcl.length == 0) {\r\n this.rowsratesurpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratesurpcl.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsratesurpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratesurpcl = [...this.rowsratesurpcl];\r\n\r\n }\r\n if (pcode == 'P0016') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsratetrpcl.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsratetrpcl.length == 0) {\r\n this.rowsratetrpcl[0] = custrate\r\n }\r\n else {\r\n this.rowsratetrpcl.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsratetrpcl = [...this.rowsratetrpcl];\r\n\r\n }\r\n if (pcode == 'P0005') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateprtdoc.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '0.500'\r\n custrate.pslab = '0.500'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtdoc.length == 0) {\r\n this.rowsrateprtdoc[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtdoc.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtdoc.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtdoc = [...this.rowsrateprtdoc];\r\n\r\n }\r\n if (pcode == 'P0006') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateprtpcl3.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl3.length == 0) {\r\n this.rowsrateprtpcl3[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl3.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl3 = [...this.rowsrateprtpcl3];\r\n\r\n }\r\n }\r\n AddRate1(event: any, pcode: string, pname: string) {\r\n let tmprowsrate: CustRate[] = [];\r\n let mfromwt = '';\r\n let mtowt = '';\r\n \r\n this.accrddox = false;\r\n this.accrdairpcl = false;\r\n this.accrdsurpcl = false;\r\n this.accrdtrpcl = false;\r\n this.accrdprtdoc = false;\r\n this.accrdprtpcl3 = false;\r\n this.accrdrtpcl10 = event;\r\n \r\n if (pcode == 'P0006') {\r\n mfromwt = '10.001';\r\n mtowt = '999999.9999';\r\n }\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: CustRate = null;\r\n this.exRateAndDestGroup.forEach((ditem, index) => {\r\n Custr = new CustRate();\r\n Custr.destgroupName = ditem.tariffDestname;\r\n Custr.destId = ditem.tariffDestGroupId;\r\n Custr.fromWt = mfromwt;\r\n Custr.toWt = mtowt;\r\n Custr.slab1 = '0.000';\r\n Custr.slab2 = '0.000';\r\n Custr.rate1 = '0.00';\r\n Custr.rate2 = '0.00';\r\n Custr.pslab = '0.000';\r\n Custr.prate = '0.00';\r\n Custr.productCode = pcode;\r\n Custr.productName = pname;\r\n Custr.OfficeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[index] = Custr;\r\n });\r\n if (pcode == 'P0006') {\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = this.rowsrateprtpcl10.find(e => e.productCode == custrate.productCode && e.destId == custrate.destId)\r\n custrate.slab1 = '1.000'\r\n custrate.pslab = '1.000'\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsrateprtpcl10.length == 0) {\r\n this.rowsrateprtpcl10[0] = custrate\r\n }\r\n else {\r\n this.rowsrateprtpcl10.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsrateprtpcl10.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsrateprtpcl10 = [...this.rowsrateprtpcl10];\r\n\r\n }\r\n }\r\n\r\n funparsefloat(value) {\r\n var val = value;\r\n return parseFloat(val);\r\n }\r\n\r\n onConfirm() {\r\n this.rowsrate = [];\r\n\r\n let tmprate = new CustRate();\r\n\r\n this.rowsratedox.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0)\r\n {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n }\r\n\r\n });\r\n this.rowsrateairpcl.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n }\r\n\r\n });\r\n this.rowsratesurpcl.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n }\r\n });\r\n this.rowsratetrpcl.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n }\r\n });\r\n this.rowsrateprtdoc.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n\r\n });\r\n this.rowsrateprtpcl3.forEach((itemr, index, awbs) => {\r\n\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n }\r\n });\r\n this.rowsrateprtpcl10.forEach((itemr, index, awbs) => {\r\n tmprate = new CustRate();\r\n tmprate = itemr;\r\n tmprate.customerId = this.data.CustomerId;\r\n tmprate.CustomerCode = this.data.customercode;\r\n if ((parseFloat(tmprate.rate1) + parseFloat(tmprate.rate2) + parseFloat(tmprate.prate)) > 0) {\r\n if (this.rowsrate.length == 0) {\r\n this.rowsrate[0] = tmprate;\r\n }\r\n else {\r\n this.rowsrate.push(tmprate);\r\n }\r\n }\r\n });\r\n this.dialogRef.close(this.rowsrate)\r\n }\r\n \r\n onDismiss() {\r\n this.dialogRef.close(null)\r\n }\r\n\r\n\r\n clear() {\r\n $('#Region').val('0');\r\n $('#rateCity').val('');\r\n $('#ratePinCode').val('');\r\n\r\n }\r\n getRateCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2rate = this.arrcityrate\r\n $('#rateCity').autocomplete({\r\n source: this.arrcity,\r\n delay: 500\r\n });\r\n }\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n GetRateCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.RateonDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n RateonDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n if (listof == \"CITY\") {\r\n this.arrcityrate = states;\r\n }\r\n }\r\n onItemDeSelect(item: any) {\r\n var isfind = false;\r\n for (let i = 0; i < this.rowsrate.length; i++) {\r\n if (this.rowsrate[i].productCode == item.item_id)\r\n this.rowsrate.splice(i, 1)\r\n }\r\n\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57)) {\r\n if (ASCIICode == 46) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n else {\r\n return true;\r\n }\r\n\r\n }\r\n}\r\n\r\nexport class CustRate {\r\n public CustRateId: string\r\n public customerId: string\r\n public OfficeId: string\r\n public CustomerCode: string\r\n public productCode: string\r\n public productName: string\r\n public destcityName: string\r\n public destCityPincode: string\r\n public destgroupName: string\r\n public destId: string\r\n public fromWt: string\r\n public toWt: string\r\n public slab1: string\r\n public rate1: string\r\n public slab2: string\r\n public rate2: string\r\n public pslab: string\r\n public prate: string\r\n public fsurcharge: string\r\n}\r\nexport class ConfirmDialogRateModels {\r\n\r\n constructor(public title: string, public message: string,\r\n public IsEdit: boolean, public MPS?: CustRate[],\r\n public retMessage?: CustRate[], public CustomerId?: string, public customercode?: string) {\r\n }\r\n}\r\n\r\n\r\n","export default \".multiselect-dropdown {\\n width: 150px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcZGlhbG9nLVF1b3Rlb3RoZXItY2hhcmdlLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21wb25lbnRzL2NvbnRyb2xzL2RpYWxvZy1RdW90ZW90aGVyLWNoYXJnZS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLFlBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvZGlhbG9nLVF1b3Rlb3RoZXItY2hhcmdlLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm11bHRpc2VsZWN0LWRyb3Bkb3due1xyXG4gICAgd2lkdGg6MTUwcHg7XHJcbn1cclxuIiwiLm11bHRpc2VsZWN0LWRyb3Bkb3duIHtcbiAgd2lkdGg6IDE1MHB4O1xufSJdfQ== */\"","import { Component, Inject, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-dialog-Quoteother-charge',\r\n templateUrl: './dialog-Quoteother-charge.component.html',\r\n styleUrls: ['./dialog-Quoteother-charge.component.scss']\r\n})\r\nexport class DialogQuoteOtherChargeComponent implements OnInit {\r\n dropdownList: any[] = [];\r\n selectedItems: any[] = [];\r\n dropdownSettings: IDropdownSettings = {};\r\n loadingIndicator = false;\r\n columns: any[] = [];\r\n otherrow: OtherChargesRateMaster[] = [];\r\n custcode: string;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n arrcityrate: any[] = [];\r\n arrcity2rate: any[] = [];\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n\r\n constructor(public dialogRef: MatDialogRef, private localstre: LocalStoreManager, private configurations: ConfigurationService,\r\n private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogocModels) {\r\n }\r\n ngOnInit() {\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Get_OtherCharges'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"customercode\"\r\n pr.PropertyValue = this.data.customercode;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.OnSuccessOtherCharge(result), error => this.onDataLoadFailed(error))\r\n\r\n\r\n\r\n this.dropdownList = [\r\n { item_id: 'P0001', ProductName: 'Document' },\r\n { item_id: 'P0002', ProductName: 'Air Parcel' },\r\n { item_id: 'P0003', ProductName: 'Surface Parcel' },\r\n { item_id: 'P0016', ProductName: 'Train Parcel' },\r\n { item_id: 'P0005', ProductName: 'Priority Document' },\r\n { item_id: 'P0006', ProductName: 'Priority Parcel' },\r\n { item_id: 'P0018', ProductName: 'Air On Demand' },\r\n { item_id: 'P0020', ProductName: 'Surface On Demand' },\r\n { item_id: 'P0024', ProductName: 'Divine' },\r\n ];\r\n this.custcode = this.data.customercode;\r\n\r\n this.columns = [\r\n\r\n { prop: 'otherChargesMasterName', name: 'Charges Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'state', name: 'State', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'city', name: 'City', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'pinCode', name: 'PinCode', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fixCharges', name: 'Fix Charge', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'charges_perKg', name: 'Charge Perkg', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'charges_percent', name: 'FixCharge(%)', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n\r\n ];\r\n this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n this.selectedItems = [];\r\n $('#Region option:selected').val('0')\r\n $('#Region option:selected').text('--Select--')\r\n $('#txtfromwt').val('0');\r\n $('#txttowt').val('0');\r\n $('#txtfromvalue').val('0');\r\n $('#txttovalue').val('0');\r\n $('#txtfixchrg').val('0');\r\n $('#txtperkgchrg').val('0');\r\n $('#txtfixchrgper').val('0');\r\n $('#txtstate').val('');\r\n $('#txtcity').val('');\r\n $('#txtpincode').val('');\r\n this.dropdownSettings = {\r\n idField: 'item_id', \r\n textField: 'ProductName',\r\n enableCheckAll: false,\r\n allowSearchFilter: true,\r\n singleSelection: true,\r\n \r\n };\r\n }\r\n getRateStateList($event) {\r\n this.GetStateMaster();\r\n this.arrcity2rate = this.arrcityrate\r\n $('#txtstate').autocomplete({\r\n source: this.arrcity,\r\n delay: 500\r\n });\r\n }\r\n delete(row: OtherChargesRateMaster) {\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_DeleteFuelSurcharge'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"OtherchargesId\"\r\n pr.PropertyValue = row.otherChargesRateMasterId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.otherrow.forEach((value, index, arr) => {\r\n if (value.otherChargesRateMasterId == row.otherChargesRateMasterId) {\r\n this.otherrow.splice(index, 1);\r\n }\r\n this.otherrow = [...this.otherrow];\r\n })\r\n this.alertService.showDialog(\"Record deleted successfully\")\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n\r\n\r\n getRateCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2rate = this.arrcityrate\r\n $('#txtcity').autocomplete({\r\n source: this.arrcity,\r\n delay: 500\r\n });\r\n }\r\n GetStateMaster() {\r\n this.ServiceMaster.getstateslist().subscribe(result => this.onDatagetSuccessful(result, 'STATE'), error => this.onDataLoadFailed(error));\r\n }\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n OnSuccessOtherCharge(result: any) {\r\n this.otherrow = result;\r\n this.otherrow =[...this.otherrow]\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n addchg() {\r\n let chgcode = $('#Region option:selected').val().toString();\r\n let chgname = $('#Region option:selected').text().toString();\r\n let prodcode = this.selectedItems[0].item_id;\r\n let prodname = this.selectedItems[0].ProductName;\r\n let fromwt = $('#txtfromwt').val().toString();\r\n let towt = $('#txttowt').val().toString();\r\n let fromvalue = $('#txtfromvalue').val().toString();\r\n let tovalue = $('#txttovalue').val().toString();\r\n let fixchg = $('#txtfixchrg').val().toString();\r\n let perkg = $('#txtperkgchrg').val().toString();\r\n let fixchgper = $('#txtfixchrgper').val().toString();\r\n let state = $('#txtstate').val().toString();\r\n let city = $('#txtcity').val().toString();\r\n let pincode = $('#txtpincode').val().toString();\r\n var chg: OtherChargesRateMaster = new OtherChargesRateMaster();\r\n chg.otherChargesMasterCode = chgcode;\r\n chg.otherChargesMasterName = chgname;\r\n chg.productCode = prodcode;\r\n chg.productName = prodname;\r\n chg.from_wt = fromwt;\r\n chg.to_wt = towt;\r\n chg.from_Value = fromvalue;\r\n chg.to_Value = tovalue;\r\n chg.fixCharges = fixchg;\r\n chg.charges_perKg = perkg;\r\n chg.charges_percent = fixchgper;\r\n chg.tariffMasterCode = this.data.customercode;\r\n chg.tariffMasterId = this.data.CustomerId;\r\n chg.state = state;\r\n chg.city = city;\r\n chg.pinCode = pincode;\r\n var tmprow = this.otherrow.find(e => e.productCode == chg.productCode && e.otherChargesMasterCode == chg.otherChargesMasterCode && e.state == chg.state && e.city == chg.city && e.pinCode == chg.pinCode)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.otherrow.length == 0) {\r\n this.otherrow[0] = chg;\r\n\r\n }\r\n else {\r\n this.otherrow.push(chg);\r\n }\r\n }\r\n else {\r\n this.otherrow.forEach((itemr,index) => {\r\n if (itemr.productCode == chg.productCode && itemr.otherChargesMasterCode == chg.otherChargesMasterCode && itemr.state == chg.state && itemr.city == chg.city && itemr.pinCode == chg.pinCode) {\r\n this.otherrow[index] = chg;\r\n }\r\n });\r\n }\r\n this.otherrow = [...this.otherrow];\r\n // $('#Region option:selected').val('0')\r\n //$('#Region option:selected').text('--Select--')\r\n this.selectedItems = [];\r\n $('#txtfromwt').val('0');\r\n $('#txttowt').val('0');\r\n $('#txtfromvalue').val('0');\r\n $('#txttovalue').val('0');\r\n $('#txtfixchrg').val('0');\r\n $('#txtperkgchrg').val('0');\r\n $('#txtfixchrgper').val('0');\r\n $('#txtstate').val('');\r\n $('#txtcity').val('');\r\n $('#txtpincode').val('');\r\n }\r\n onConfirm() {\r\n this.dialogRef.close(this.otherrow)\r\n \r\n }\r\n onDismiss() {\r\n this.dialogRef.close(null);\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\nexport class OtherChargesRateMaster {\r\n public otherChargesRateMasterId: string;\r\n public tariffMasterId: string;\r\n public tariffMasterCode: string;\r\n public otherChargesMasterCode: string;\r\n public otherChargesMasterId: string;\r\n public otherChargesMasterName: string;\r\n public fixCharges: string;\r\n public from_wt: string;\r\n public to_wt: string;\r\n public from_Value: string;\r\n public to_Value: string;\r\n public charges_perKg: string;\r\n public charges_percent: string;\r\n public productmasterId: string;\r\n public productName: string;\r\n public productCode: string;\r\n public CreatedBy: string;\r\n public UpdatedBy: string;\r\n public createdOn: string;\r\n public updatedOn: string;\r\n public state: string;\r\n public city: string;\r\n public pinCode: string;\r\n}\r\nexport class ConfirmDialogocModels {\r\n\r\n constructor(public title: string, public message: string,\r\n public IsEdit: boolean, public MPS?: OtherChargesRateMaster[],\r\n public retMessage?: OtherChargesRateMaster[], public CustomerId?: string, public customercode?: string) {\r\n }\r\n}\r\n","export default \":host ::ng-deep .row-color1 {\\n background-color: darkred;\\n color: white;\\n}\\n\\n:host ::ng-deep .row-color2 {\\n background-color: darkgreen;\\n color: white;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcZGlhbG9nLW1wcy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9kaWFsb2ctbXBzLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSwyQkFBQTtFQUNBLFlBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvZGlhbG9nLW1wcy5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIjpob3N0IDo6bmctZGVlcCAucm93LWNvbG9yMSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya3JlZDtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbjpob3N0IDo6bmctZGVlcCAucm93LWNvbG9yMiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2dyZWVuO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG4iLCI6aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrcmVkO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbjpob3N0IDo6bmctZGVlcCAucm93LWNvbG9yMiB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtncmVlbjtcbiAgY29sb3I6IHdoaXRlO1xufSJdfQ== */\"","import { TemplateRef } from '@angular/core';\r\nimport { Component, Inject, AfterViewInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MatRadioChange, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { document } from 'ngx-bootstrap/utils';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\n\r\n@Component({\r\n selector: 'app-dialog-mps',\r\n templateUrl: './dialog-mps.component.html',\r\n styleUrls: ['./dialog-mps.component.scss']\r\n})\r\nexport class DialogMpsComponent implements AfterViewInit {\r\n mps: MPStransaction[] = [];\r\n title: string;\r\n message: string;\r\n retMessage: string;\r\n columnsmps: any[] = [];\r\n requestData: ConfirmDialogMpsModels = null;\r\n\r\n \r\n @ViewChild('weighttemplate', { static: true })\r\n weighttemplate: TemplateRef;\r\n @ViewChild('lengthtemplate', { static: true })\r\n lengthtemplate: TemplateRef;\r\n @ViewChild('unittemplate', { static: true })\r\n unittemplate: TemplateRef;\r\n @ViewChild('widthtemplate', { static: true })\r\n widthtemplate: TemplateRef;\r\n @ViewChild('heighttemplate', { static: true })\r\n heighttemplate: TemplateRef;\r\n @ViewChild('volwttemplate', { static: true })\r\n volwttemplate: TemplateRef;\r\n \r\n constructor(\r\n public dialogRef: MatDialogRef, private localstre: LocalStoreManager,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogMpsModels) {\r\n // Update view with given values\r\n this.title = data.title;\r\n this.message = data.message;\r\n this.retMessage = null;\r\n this.requestData = data;\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n\r\n // if (this.data.IsEdit) {\r\n // (document.getElementById('weight')).disabled = true;\r\n //}\r\n\r\n if (this.data.awbno.length >= 10) {\r\n\r\n }\r\n else {\r\n if (!isNullOrUndefined(this.data.MPS)) {\r\n if (this.data.MPS.length > 0) {\r\n this.mps = this.data.MPS;\r\n for (let i = 0; i < this.data.MPS.length; i++) {\r\n this.mps[i].isedit = this.data.IsEdit;\r\n }\r\n }\r\n else {\r\n if (parseInt(this.message.split(\",\")[0].toString()) > 1) {\r\n var i: number;\r\n this.mps = new Array(parseInt(this.message));\r\n for (i = parseInt(this.message); i >= 1; i--) {\r\n this.mps[i - 1] = new MPStransaction();\r\n this.mps[i - 1].srlno = i.toString();\r\n this.mps[i - 1].unit = this.message.split(\",\")[1];\r\n this.mps[i - 1].isedit = this.data.IsEdit;\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n if (parseInt(this.message.split(\",\")[0].toString()) > 1) {\r\n var i: number;\r\n this.mps = new Array(parseInt(this.message));\r\n for (i = parseInt(this.message); i >= 1; i--) {\r\n this.mps[i - 1] = new MPStransaction();\r\n this.mps[i - 1].srlno = i.toString();\r\n this.mps[i - 1].unit = this.message.split(\",\")[1];\r\n this.mps[i - 1].isedit = this.data.IsEdit;\r\n }\r\n }\r\n }\r\n }\r\n\r\n \r\n this.columnsmps = [\r\n { prop: 'srlno', name: 'Sl No', width: 70, outerHeight: 30, canAutoResize: false },\r\n ];\r\n this.columnsmps.push({ prop: 'weight', name: 'Weight', width: 150, innerHeight: 51, cellTemplate: this.weighttemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'unit', name: 'Unit', width: 150, innerHeight: 51, cellTemplate: this.unittemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'length', name: 'Length', width: 150, innerHeight: 51, cellTemplate: this.lengthtemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'width', name: 'Width', width: 150, innerHeight: 51, cellTemplate: this.widthtemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'height', name: 'Height', width: 150, innerHeight: 51, cellTemplate: this.heighttemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'volwt', name: 'Vol. Weight', width: 150, innerHeight: 51, cellTemplate: this.volwttemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n }\r\n onConfirm(): void {\r\n // Close the dialog, return true\r\n this.data.retMessage = this.mps\r\n var ErroronClose = false;\r\n for (let i = 0; i < this.mps.length; i++) {\r\n if (isNullOrUndefined(this.mps[i].height) || isNullOrUndefined(this.mps[i].weight) || isNullOrUndefined(this.mps[i].width) || isNullOrUndefined(this.mps[i].length)) {\r\n ErroronClose = true;\r\n break;\r\n }\r\n if (this.mps[i].unit == \"0\") {\r\n ErroronClose = true;\r\n break;\r\n }\r\n var volwt = ''\r\n\r\n if (this.data.airsurface == \"1\") {\r\n volwt = ((parseFloat(this.data.retMessage[i].length) * parseFloat(this.data.retMessage[i].width) * parseFloat(this.data.retMessage[i].height)) / 5000).toString();\r\n }\r\n if (this.data.airsurface == \"2\" || this.data.airsurface == \"3\") {\r\n volwt = ((parseFloat(this.data.retMessage[i].length) * parseFloat(this.data.retMessage[i].width) * parseFloat(this.data.retMessage[i].height)) / 4750).toString();\r\n }\r\n this.data.retMessage[i].volwt = isNaN(parseFloat(volwt)) ? \"0\" : volwt;\r\n\r\n }\r\n if (ErroronClose == false) {\r\n this.data.retMessage[0].IsError = false; \r\n this.dialogRef.close(this.data.retMessage);\r\n\r\n }\r\n else {\r\n this.data.retMessage[0].IsError = true;\r\n this.dialogRef.close(this.data.retMessage);\r\n\r\n }\r\n\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n getRowClass = (row) => {\r\n return {\r\n 'row-color1': row.inout == 'No',\r\n 'row-color2': row.inout == 'Yes',\r\n };\r\n }\r\n onDismiss(): void {\r\n // Close the dialog, return false\r\n this.data.retMessage = this.mps;//\"Yes,\" + (document.getElementById('recivedBy')).value + \",\" + (document.getElementById('Action')).value;\r\n if (this.data.retMessage.length > 0) {\r\n this.data.retMessage[0].IsError = true;\r\n this.data.retMessage[0].IsCancel = true;\r\n }\r\n this.dialogRef.close(this.data.retMessage);\r\n }\r\n \r\n}\r\nexport class MPStransaction {\r\n public awbno: string\r\n public srlno: string\r\n public weight: string\r\n public length: string\r\n public width: string\r\n public height: string\r\n public volwt: string\r\n public unit: string\r\n public retMessage: string\r\n public IsError: boolean\r\n public isedit: boolean\r\n public IsCancel: boolean\r\n public inout:string\r\n}\r\nexport class ConfirmDialogMpsModels {\r\n\r\n constructor(public title: string, public message: string, public pieces: string, public unit: string,\r\n public IsEdit: boolean, public awbno: string, public MPS?: MPStransaction[], public airsurface?:string,\r\n public retMessage?: MPStransaction[]) {\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvZGlhbG9nLW1wc2luc2Nhbi5jb21wb25lbnQuc2NzcyJ9 */\"","import { TemplateRef } from '@angular/core';\r\nimport { Component, Inject, AfterViewInit, ViewChild } from '@angular/core';\r\nimport { MatDialogRef, MatRadioChange, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { document } from 'ngx-bootstrap/utils';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\n\r\n@Component({\r\n selector: 'app-dialog-mpsinscan',\r\n templateUrl: './dialog-mpsinscan.component.html',\r\n styleUrls: ['./dialog-mpsinscan.component.scss']\r\n})\r\nexport class DialogMpsinscanComponent implements AfterViewInit {\r\n mps: MPStransaction[] = [];\r\n title: string;\r\n message: string;\r\n retMessage: string;\r\n columnsmps: any[] = [];\r\n mpsrow: MPStransaction[] = [];\r\n\r\n requestData: ConfirmDialogMpsModels = null;\r\n @ViewChild('awbtemplate', { static: true })\r\n awbtemplate: TemplateRef;\r\n @ViewChild('weighttemplate', { static: true })\r\n weighttemplate: TemplateRef;\r\n @ViewChild('lengthtemplate', { static: true })\r\n lengthtemplate: TemplateRef;\r\n @ViewChild('unittemplate', { static: true })\r\n unittemplate: TemplateRef;\r\n @ViewChild('widthtemplate', { static: true })\r\n widthtemplate: TemplateRef;\r\n @ViewChild('heighttemplate', { static: true })\r\n heighttemplate: TemplateRef;\r\n @ViewChild('volwttemplate', { static: true })\r\n volwttemplate: TemplateRef; \r\n constructor(\r\n public dialogRef: MatDialogRef, private localstre: LocalStoreManager,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogMpsModels) {\r\n // Update view with given values\r\n this.title = data.title;\r\n //this.message = data.message;\r\n this.retMessage = null;\r\n this.requestData = data;\r\n }\r\n\r\n ngAfterViewInit() {\r\n\r\n // if (this.data.IsEdit) {\r\n // (document.getElementById('weight')).disabled = true;\r\n //}\r\n\r\n \r\n $('#tmp').focus();\r\n \r\n this.columnsmps = [\r\n { prop: 'srlno', name: 'Sl No', width: 70, outerHeight: 30, canAutoResize: false },\r\n ];\r\n this.columnsmps.push({ prop: 'awbno', name: 'Awbno', width: 150, innerHeight: 51, cellTemplate: this.awbtemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'weight', name: 'Weight', width: 150, innerHeight: 51, cellTemplate: this.weighttemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'unit', name: 'Unit', width: 150, innerHeight: 51, cellTemplate: this.unittemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'length', name: 'Length', width: 150, innerHeight: 51, cellTemplate: this.lengthtemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'width', name: 'Width', width: 150, innerHeight: 51, cellTemplate: this.widthtemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'height', name: 'Height', width: 150, innerHeight: 51, cellTemplate: this.heighttemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columnsmps.push({ prop: 'volwt', name: 'Vol. Weight', width: 150, innerHeight: 51, cellTemplate: this.volwttemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n }\r\n onConfirm(): void {\r\n // Close the dialog, return true\r\n this.data.retMessage = this.mps\r\n var ErroronClose = false;\r\n for (let i = 0; i < this.mps.length; i++) {\r\n if (isNullOrUndefined(this.mps[i].height) || isNullOrUndefined(this.mps[i].weight) || isNullOrUndefined(this.mps[i].width) || isNullOrUndefined(this.mps[i].length)) {\r\n ErroronClose = true;\r\n break;\r\n }\r\n if (this.mps[i].unit == \"0\") {\r\n ErroronClose = true;\r\n break;\r\n }\r\n var volwt = ''\r\n\r\n if (this.data.airsurface == \"Air\") {\r\n volwt = ((parseFloat(this.mps[i].length) * parseFloat(this.mps[i].width) * parseFloat(this.mps[i].height)) / 5000).toString();\r\n }\r\n if (this.data.airsurface == \"Surface\" || this.data.airsurface == \"Train\") {\r\n volwt = ((parseFloat(this.mps[i].length) * parseFloat(this.mps[i].width) * parseFloat(this.mps[i].height)) / 4750).toString();\r\n }\r\n this.mps[i].volwt = isNaN(parseFloat(volwt)) ? \"0\" : volwt;\r\n\r\n }\r\n if (this.mps.length != this.data.MPS.length) {\r\n ErroronClose = true;\r\n }\r\n if (ErroronClose == false) {\r\n this.data.retMessage[0].IsError = false; \r\n this.dialogRef.close(this.data.retMessage);\r\n\r\n }\r\n else {\r\n this.data.retMessage[0].IsError = true;\r\n this.data.retMessage[0].IsCancel = false;\r\n this.data.retMessage[0].Message = \"Short Recieve\"\r\n this.dialogRef.close(this.data.retMessage);\r\n\r\n }\r\n\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onDismiss(): void {\r\n // Close the dialog, return false\r\n this.data.retMessage = this.mps;//\"Yes,\" + (document.getElementById('recivedBy')).value + \",\" + (document.getElementById('Action')).value;\r\n if (this.data.retMessage.length > 0) {\r\n this.data.retMessage[0].IsError = true;\r\n this.data.retMessage[0].IsCancel = true;\r\n }\r\n else {\r\n this.data.retMessage[0] = new MPStransaction();\r\n this.data.retMessage[0].IsError = true;\r\n this.data.retMessage[0].IsCancel = true;\r\n this.data.retMessage[0].Message =\"Validation Cancel\"\r\n }\r\n this.dialogRef.close(this.data.retMessage);\r\n }\r\n validate(event:any) {\r\n var awbno:string = event.target.value\r\n var tmpawb = awbno.substring(0, 10)\r\n var srlno = awbno.substring(10)\r\n var tmpAwbrow = this.mps.find(e => e.awbno === tmpawb && parseInt(e.srlno) == parseInt(srlno))\r\n if (!isNullOrUndefined(tmpAwbrow)) {\r\n alert('this awb no is already exist');\r\n return false;\r\n }\r\n var Awbrow = this.data.MPS.find(e => e.awbno === tmpawb && parseInt(e.srlno) == parseInt(srlno))\r\n if (!isNullOrUndefined(Awbrow)) {\r\n if (this.mps.length == 0) {\r\n this.mpsrow[0] = new MPStransaction();\r\n this.mpsrow[0].awbno = Awbrow.awbno;\r\n this.mpsrow[0].srlno = Awbrow.srlno;\r\n\r\n this.mpsrow[0].height = Awbrow.height;\r\n this.mpsrow[0].length = Awbrow.length;\r\n\r\n this.mpsrow[0].unit = Awbrow.unit;\r\n this.mpsrow[0].weight = Awbrow.weight;\r\n this.mpsrow[0].volwt = Awbrow.volwt;\r\n this.mpsrow[0].width = Awbrow.width;\r\n this.mps[0] = this.mpsrow[0];\r\n }\r\n else {\r\n var tmp = new MPStransaction();;\r\n tmp.awbno = Awbrow.awbno;\r\n tmp.srlno = Awbrow.srlno;\r\n tmp.height = Awbrow.height;\r\n tmp.unit = Awbrow.unit;\r\n tmp.length = Awbrow.length;\r\n\r\n tmp.weight = Awbrow.weight;\r\n tmp.volwt = Awbrow.volwt;\r\n tmp.width = Awbrow.width;\r\n this.mps.push(tmp);\r\n }\r\n this.mps = [...this.mps]\r\n }\r\n \r\n }\r\n \r\n}\r\nexport class MPStransaction {\r\n public awbno: string\r\n public srlno: string\r\n public weight: string\r\n public length: string\r\n public width: string\r\n public height: string\r\n public volwt: string\r\n public unit: string\r\n public retMessage: string\r\n public IsError: boolean\r\n public isedit: boolean\r\n public IsCancel: boolean\r\n public Message: string;\r\n}\r\nexport class ConfirmDialogMpsModels {\r\n\r\n constructor(public title: string, public MPS?: MPStransaction[],\r\n public retMessage?: MPStransaction[], public airsurface?:any) {\r\n }\r\n}\r\n","export default \".multiselect-dropdown {\\n width: 150px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcZGlhbG9nLW90aGVyLWNoYXJnZS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9kaWFsb2ctb3RoZXItY2hhcmdlLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksWUFBQTtBQ0NKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9kaWFsb2ctb3RoZXItY2hhcmdlLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm11bHRpc2VsZWN0LWRyb3Bkb3due1xyXG4gICAgd2lkdGg6MTUwcHg7XHJcbn1cclxuIiwiLm11bHRpc2VsZWN0LWRyb3Bkb3duIHtcbiAgd2lkdGg6IDE1MHB4O1xufSJdfQ== */\"","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { AlertService } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\n\r\n@Component({\r\n selector: 'app-dialog-other-charge',\r\n templateUrl: './dialog-other-charge.component.html',\r\n styleUrls: ['./dialog-other-charge.component.scss']\r\n})\r\nexport class DialogOtherChargeComponent implements OnInit {\r\n dropdownList: any[] = [];\r\n selectedItems: any[] = [];\r\n dropdownSettings: IDropdownSettings = {};\r\n loadingIndicator = false;\r\n columns: any[] = [];\r\n otherrow: OtherChargesRateMaster[] = [];\r\n constructor(public dialogRef: MatDialogRef, private localstre: LocalStoreManager, private configurations: ConfigurationService,\r\n private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogocModels) {\r\n }\r\n ngOnInit() {\r\n this.dropdownList = [\r\n { item_id: 'P0001', ProductName: 'Document' },\r\n { item_id: 'P0002', ProductName: 'Air Parcel' },\r\n { item_id: 'P0003', ProductName: 'Surface Parcel' },\r\n { item_id: 'P0016', ProductName: 'Train Parcel' },\r\n { item_id: 'P0005', ProductName: 'Priority Document' },\r\n { item_id: 'P0006', ProductName: 'Priority Parcel' },\r\n { item_id: 'P0018', ProductName: 'Air On Demand' },\r\n { item_id: 'P0020', ProductName: 'Surface On Demand' },\r\n { item_id: 'P0024', ProductName: 'Divine' },\r\n ];\r\n\r\n this.columns = [\r\n\r\n { prop: 'otherChargesMasterName', name: 'Charges Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'productName', name: 'Product Name', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'from_wt', name: 'From Weight', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'to_wt', name: 'To Weight', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'from_Value', name: 'From Value', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'to_Value', name: 'To Value', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'fixCharges', name: 'Fix Charge', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'charges_perKg', name: 'Charge Perkg', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'charges_percent', name: 'FixCharge(%)', width: 130, outerHeight: 55, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n\r\n ]\r\n this.selectedItems = [];\r\n $('#Region option:selected').val('0')\r\n $('#Region option:selected').text('--Select--')\r\n $('#txtfromwt').val('0');\r\n $('#txttowt').val('0');\r\n $('#txtfromvalue').val('0');\r\n $('#txttovalue').val('0');\r\n $('#txtfixchrg').val('0');\r\n $('#txtperkgchrg').val('0');\r\n $('#txtfixchrgper').val('0');\r\n this.dropdownSettings = {\r\n idField: 'item_id', \r\n textField: 'ProductName',\r\n enableCheckAll: false,\r\n allowSearchFilter: true,\r\n singleSelection: true,\r\n \r\n };\r\n }\r\n addchg() {\r\n let chgcode = $('#Region option:selected').val().toString();\r\n let chgname = $('#Region option:selected').text().toString();\r\n let prodcode = this.selectedItems[0].item_id;\r\n let prodname = this.selectedItems[0].ProductName;\r\n let fromwt = $('#txtfromwt').val().toString();\r\n let towt = $('#txttowt').val().toString();\r\n let fromvalue = $('#txtfromvalue').val().toString();\r\n let tovalue = $('#txttovalue').val().toString();\r\n let fixchg = $('#txtfixchrg').val().toString();\r\n let perkg = $('#txtperkgchrg').val().toString();\r\n let fixchgper = $('#txtfixchrgper').val().toString();\r\n\r\n var chg: OtherChargesRateMaster = new OtherChargesRateMaster();\r\n chg.otherChargesMasterCode = chgcode;\r\n chg.otherChargesMasterName = chgname;\r\n chg.productCode = prodcode;\r\n chg.productName = prodname;\r\n chg.from_wt = fromwt;\r\n chg.to_wt = towt;\r\n chg.from_Value = fromvalue;\r\n chg.to_Value = tovalue;\r\n chg.fixCharges = fixchg;\r\n chg.charges_perKg = perkg;\r\n chg.charges_percent = fixchgper;\r\n chg.tariffMasterCode = this.data.customercode;\r\n chg.tariffMasterId = this.data.CustomerId;\r\n var tmprow = this.otherrow.find(e => e.productCode == chg.productCode && e.otherChargesMasterCode == chg.otherChargesMasterCode)\r\n if (isNullOrUndefined(tmprow)) {\r\n if (this.otherrow.length == 0) {\r\n this.otherrow[0] = chg;\r\n\r\n }\r\n else {\r\n this.otherrow.push(chg);\r\n }\r\n }\r\n else {\r\n this.otherrow.forEach((itemr,index) => {\r\n if (itemr.productCode == chg.productCode && itemr.otherChargesMasterCode == chg.otherChargesMasterCode) {\r\n this.otherrow[index] = chg;\r\n }\r\n });\r\n }\r\n this.otherrow = [...this.otherrow];\r\n //$('#Region option:selected').val('0')\r\n //$('#Region option:selected').text('--Select--')\r\n this.selectedItems = [];\r\n $('#txtfromwt').val('0');\r\n $('#txttowt').val('0');\r\n $('#txtfromvalue').val('0');\r\n $('#txttovalue').val('0');\r\n $('#txtfixchrg').val('0');\r\n $('#txtperkgchrg').val('0');\r\n $('#txtfixchrgper').val('0');\r\n }\r\n onConfirm() {\r\n this.dialogRef.close(this.otherrow)\r\n \r\n }\r\n onDismiss() {\r\n this.dialogRef.close(null);\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n}\r\nexport class OtherChargesRateMaster {\r\n public otherChargesRateMasterId: string;\r\n public tariffMasterId: string;\r\n public tariffMasterCode: string;\r\n public otherChargesMasterCode: string;\r\n public otherChargesMasterId: string;\r\n public otherChargesMasterName: string;\r\n public fixCharges: string;\r\n public from_wt: string;\r\n public to_wt: string;\r\n public from_Value: string;\r\n public to_Value: string;\r\n public charges_perKg: string;\r\n public charges_percent: string;\r\n public productmasterId: string;\r\n public productName: string;\r\n public productCode: string;\r\n public CreatedBy: string;\r\n public UpdatedBy: string;\r\n public createdOn: string;\r\n public updatedOn: string;\r\n}\r\nexport class ConfirmDialogocModels {\r\n\r\n constructor(public title: string, public message: string,\r\n public IsEdit: boolean, public MPS?: OtherChargesRateMaster[],\r\n public retMessage?: OtherChargesRateMaster[], public CustomerId?: string, public customercode?: string) {\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvZGlhbG9nbW9uZXlyZWNpZXB0LmNvbXBvbmVudC5zY3NzIn0= */\"","\r\nimport { Component, Inject, AfterViewInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\n@Component({\r\n selector: 'app-dialogmoneyreciept',\r\n templateUrl: './dialogmoneyreciept.component.html',\r\n styleUrls: ['./dialogmoneyreciept.component.scss']\r\n})\r\nexport class DialogmoneyrecieptComponent implements AfterViewInit {\r\n public title: string;\r\n public message: string;\r\n public Tamount?: string;\r\n public mdata: AwbMoneyReceipt;\r\n constructor(\r\n public dialogRef: MatDialogRef, private localstre: LocalStoreManager,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogMoneyRcptModels, private transaction: TransactionService) {\r\n // Update view with given values\r\n this.title = data.title;\r\n this.message = data.message;\r\n this.Tamount = data.Tamount;\r\n this.mdata = new AwbMoneyReceipt();\r\n this.mdata.Awbno = data.awbno;\r\n this.mdata.RecieveAmount = '0';\r\n this.mdata.frieghtAmount = '0';\r\n this.mdata.GstAmount = '0';\r\n this.mdata.Paymode = 'CASH';\r\n this.mdata.Gstno = '';\r\n this.mdata.ErrorOnClose = false;\r\n\r\n }\r\n \r\n ngAfterViewInit() {\r\n this.transaction.GetAwbmr(this.mdata.Awbno).subscribe(result => this.onGetSucessAwbmrData(result), error => this.onDataLoadFailed(error))\r\n\r\n\r\n }\r\n onDataLoadFailed(error: any) {\r\n // this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n\r\n \r\n }\r\n onGetSucessAwbmrData(result: any) {\r\n if (result.length > 0) {\r\n this.mdata.GstAmount = result[0].gstAmount;\r\n this.mdata.frieghtAmount = result[0].frieghtAmount;\r\n this.mdata.Gstno = result[0].gstno;\r\n this.mdata.RecieveAmount = result[0].reciveAmount;\r\n this.mdata.Paymode = result[0].payMode;\r\n if (isNullOrUndefined(this.mdata.Gstno)) {\r\n this.mdata.Gstno = 'NA';\r\n }\r\n $('#txtfreightamount').val(this.mdata.frieghtAmount)\r\n $('#txtGstAmount').val(this.mdata.GstAmount);\r\n $('#txtReciveAmount').val(this.mdata.RecieveAmount);\r\n $('#CustomerGst').val(this.mdata.Gstno);\r\n $('#cmdpaymode option:selected').text(this.mdata.Paymode);\r\n }\r\n }\r\n CalcGst() {\r\n\r\n var amount: number = parseFloat($('#txtReciveAmount').val().toString());\r\n if (!isNullOrUndefined(this.Tamount)) {\r\n if (parseFloat(this.Tamount) > 1) {\r\n if (parseFloat(this.Tamount) - amount > 1) {\r\n $('#txtReciveAmount').val(this.Tamount)\r\n $('#txtReciveAmount').focus();\r\n alert(\"Invalid Amount\");\r\n return false;\r\n }\r\n }\r\n }\r\n var freightamount = ((amount / 118) * 100).toFixed(2);\r\n $('#txtfreightamount').val(freightamount);\r\n var GstAmount = (amount - ((amount / 118) * 100)).toFixed(2);\r\n $('#txtGstAmount').val(GstAmount);\r\n this.mdata.RecieveAmount = amount.toFixed(2);\r\n this.mdata.GstAmount = GstAmount;\r\n this.mdata.frieghtAmount = freightamount;\r\n \r\n }\r\n onConfirm(): void {\r\n // Close the dialog, return true\r\n this.mdata.Paymode = $('#cmdpaymode option:selected').text().toString();\r\n this.mdata.Gstno = $('#CustomerGst').val().toString();\r\n \r\n this.dialogRef.close(this.mdata);\r\n }\r\n onDismiss(): void {\r\n // Close the dialog, return false\r\n this.mdata = new AwbMoneyReceipt()//\"Yes,\" + (document.getElementById('recivedBy')).value + \",\" + (document.getElementById('Action')).value;\r\n\r\n this.dialogRef.close(this.mdata);\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n \r\n}\r\nexport class AwbMoneyReceipt {\r\n public Awbno: string;\r\n public RecieveAmount: string;\r\n public GstAmount: string;\r\n public frieghtAmount: string;\r\n public Gstno: string;\r\n public Paymode: string;\r\n public ErrorOnClose: boolean;\r\n}\r\nexport class ConfirmDialogMoneyRcptModels {\r\n\r\n constructor(public title: string, public message: string, public awbno: string,public Tamount?:string) {\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvZGlsb2ctcnRvLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, Inject, AfterViewInit } from '@angular/core';\r\nimport { MatDialogRef, MatRadioChange, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\n@Component({\r\n selector: 'app-dilog-rto',\r\n templateUrl: './dilog-rto.component.html',\r\n styleUrls: ['./dilog-rto.component.scss']\r\n})\r\nexport class DilogRTOComponent implements AfterViewInit {\r\n title: string;\r\n message: string;\r\n retMessage: string;\r\n RecivedAtHub = \"0\";\r\n recivedBy = \"\";\r\n constructor(\r\n public dialogRef: MatDialogRef, private localstre: LocalStoreManager,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogModels) {\r\n // Update view with given values\r\n this.title = data.title;\r\n this.message = data.message;\r\n this.retMessage = data.retMessage;\r\n \r\n }\r\n\r\n ngAfterViewInit() {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n (document.getElementById(\"buttonsave\")).disabled=true;\r\n (document.getElementById(\"recivedAt\")).value = logindata[0].officename;\r\n\r\n }\r\n \r\n RbSelectionchange(mrChange: MatRadioChange) {\r\n\r\n if (mrChange.value == '1') {\r\n (document.getElementById('recivedBy')).disabled = false;\r\n (document.getElementById('Action')).disabled = false;\r\n (document.getElementById('buttonsave')).disabled = false;\r\n (document.getElementById('Remark')).disabled = false;\r\n }\r\n else {\r\n (document.getElementById('recivedBy')).disabled = true;\r\n (document.getElementById('Action')).disabled = true;\r\n (document.getElementById('buttonsave')).disabled = true;\r\n (document.getElementById('Remark')).disabled = true;\r\n\r\n }\r\n }\r\n onConfirm(): void {\r\n // Close the dialog, return true\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n\r\n this.data.retMessage = \"Yes,\" + (document.getElementById('recivedBy')).value + \",\" + (document.getElementById('Action')).value+\r\n \",\" + (document.getElementById('Remark')).value + \",\" + logindata[0].officename;\r\n this.dialogRef.close(this.data.retMessage);\r\n }\r\n\r\n onDismiss(): void {\r\n // Close the dialog, return false\r\n this.data.retMessage = \"\";//\"Yes,\" + (document.getElementById('recivedBy')).value + \",\" + (document.getElementById('Action')).value;\r\n\r\n this.dialogRef.close(\"\");\r\n }\r\n}\r\nexport class ConfirmDialogModels {\r\n\r\n constructor(public title: string, public message: string,public retMessage:string) {\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvZWRpdC1hd2IuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, Inject, OnInit,AfterViewInit, ViewChild, TemplateRef } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { BillDetail_sql } from '../billing/billing.component';\r\n\r\n@Component({\r\n selector: 'app-edit-awb',\r\n templateUrl: './edit-awb.component.html',\r\n styleUrls: ['./edit-awb.component.scss']\r\n})\r\nexport class EditAwbComponent implements AfterViewInit {\r\n title: string;\r\n message: string;\r\n retMessage: string;\r\n requestData: ConfirmDialogACNModels = null;\r\n airsurface:string = \"0\";\r\n arrcity: any;\r\n ProductType: string = \"0\";\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef, private localstre: LocalStoreManager,\r\n @Inject(MAT_DIALOG_DATA) public data: ConfirmDialogACNModels, private ServiceMaster: Masters) {\r\n // Update view with given values\r\n this.title = data.title;\r\n //this.message = data.message;\r\n this.retMessage = null;\r\n this.requestData = data;\r\n }\r\n\r\n ngAfterViewInit() {\r\n $('#awbno').val(this.requestData.AwbDetail.awbno);\r\n $('#awbweight').val(this.requestData.AwbDetail.awbWeight);\r\n $('#mode').val(this.requestData.AwbDetail.mode);\r\n $('#product').val(this.requestData.AwbDetail.product);\r\n $('#ChWeight').val(this.requestData.AwbDetail.awbWeight);\r\n $('#cdest').val(this.requestData.AwbDetail.destCity);\r\n $('#cpincode').val(this.requestData.AwbDetail.destPincode);\r\n\r\n \r\n if (this.requestData.AwbDetail.mode.toUpperCase() == \"AIR\") {\r\n this.airsurface = \"1\";\r\n } else if (this.requestData.AwbDetail.mode.toUpperCase() == \"SURFACE\") {\r\n this.airsurface = \"2\";\r\n }\r\n else if(this.requestData.AwbDetail.mode.toUpperCase() == \"TRAIN\") {\r\n this.airsurface = \"3\";\r\n }\r\n if (this.requestData.AwbDetail.product.toUpperCase() == \"DOCUMENT\") {\r\n this.ProductType = \"1\";\r\n } else if (this.requestData.AwbDetail.product.toUpperCase() == \"PARCEL\") {\r\n this.ProductType = \"2\";\r\n }\r\n }\r\n //getSucessDataExrate(result, inout) {\r\n // this.loadin = result.table1;\r\n // this.InLoad = this.loadin.length;\r\n // this.loadout = result.table;\r\n // this.loadrecv = result.table2;\r\n // this.recvload = this.loadrecv.length;\r\n // this.totalLoad = this.loadout.length;\r\n //}\r\n onConfirm() {\r\n var mode = this.airsurface == \"1\" ? 'Air' : this.airsurface == \"2\" ? \"Surface\" : this.airsurface == \"3\" ? \"Train\" : \"\";\r\n var product = this.ProductType == \"1\" ? 'Document' : this.ProductType == \"2\" ? \"Parcel\" : \"\";\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_UpdateBooking'\r\n let Parameter = new Array(6);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Awbno\"\r\n pr.PropertyValue = this.requestData.AwbDetail.awbno ;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Mode\"\r\n pr.PropertyValue = mode\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Product\"\r\n pr.PropertyValue = product\r\n Parameter[2] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Saletype\"\r\n pr.PropertyValue = this.requestData.SaleType\r\n Parameter[3] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Decimal\"\r\n pr.PropertyName = \"Weight\"\r\n pr.PropertyValue = $('#ChWeight').val().toString();\r\n Parameter[4] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"pincode\"\r\n pr.PropertyValue = $('#dpincode').val().toString();\r\n Parameter[5] = pr;\r\n pr = new Prclass();\r\n var odaedl = $('#odaedl').val().toString();\r\n if (odaedl == '') {\r\n odaedl = '0';\r\n }\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Decimal\"\r\n pr.PropertyName = \"odaedl\"\r\n pr.PropertyValue = odaedl\r\n Parameter[6] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => {\r\n if (result.table !== undefined) {\r\n if (result.table.length > 0) {\r\n if (this.requestData.SaleType != 'DP') {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'USp_UpdateTariff'\r\n let Parameter = new Array(5);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Awbno\"\r\n pr.PropertyValue = this.requestData.AwbDetail.awbno;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Decimal\"\r\n pr.PropertyName = \"Fieght\"\r\n pr.PropertyValue = result.table[0].amount;\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Decimal\"\r\n pr.PropertyName = \"OtherCharge\"\r\n pr.PropertyValue = (parseFloat(result.table[0].riskCharges) + parseFloat(odaedl)).toString();\r\n Parameter[2] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Decimal\"\r\n pr.PropertyName = \"FuelSurcharge\"\r\n pr.PropertyValue =result.table[0].fusrcharge ;\r\n Parameter[3] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Decimal\"\r\n pr.PropertyName = \"ChargedWieght\"\r\n pr.PropertyValue = result.table[0].chargedWieght;\r\n Parameter[4] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.PostSaveCommonData(Req).subscribe(result => { }, error => {\r\n this.dialogRef.close(false);\r\n });\r\n }\r\n\r\n this.dialogRef.close(true);\r\n }\r\n else {\r\n this.dialogRef.close(false);\r\n }\r\n }\r\n else {\r\n this.dialogRef.close(false);\r\n }\r\n }, error => { \r\n this.dialogRef.close(false);\r\n })\r\n\r\n }\r\n \r\n onDismiss() {\r\n this.dialogRef.close(false);\r\n\r\n }\r\n}\r\n\r\nexport class ConfirmDialogACNModels {\r\n\r\n constructor(public title: string, public SaleType: string, public AwbDetail?: BillDetail_sql,\r\n public retMessage?: BillDetail_sql) {\r\n }\r\n}\r\n","export default \".unread {\\n font-weight: bold;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcbm90aWZpY2F0aW9ucy12aWV3ZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvbm90aWZpY2F0aW9ucy12aWV3ZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0E7RUFDSSxpQkFBQTtBQ0FKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9ub3RpZmljYXRpb25zLXZpZXdlci5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4udW5yZWFkIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcbiIsIi51bnJlYWQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn0iXX0= */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, OnInit, OnDestroy, TemplateRef, ViewChild, Input } from '@angular/core';\r\n\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { NotificationService } from '../../services/notification.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Notification } from '../../models/notification.model';\r\n\r\n\r\n@Component({\r\n selector: 'notifications-viewer',\r\n templateUrl: './notifications-viewer.component.html',\r\n styleUrls: ['./notifications-viewer.component.scss']\r\n})\r\nexport class NotificationsViewerComponent implements OnInit, OnDestroy {\r\n columns: any[] = [];\r\n rows: Notification[] = [];\r\n loadingIndicator: boolean;\r\n\r\n dataLoadingConsecutiveFailurs = 0;\r\n dataLoadingSubscription: any;\r\n\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n verticalScrollbar = false;\r\n\r\n\r\n @ViewChild('statusHeaderTemplate', { static: true })\r\n statusHeaderTemplate: TemplateRef;\r\n\r\n @ViewChild('statusTemplate', { static: true })\r\n statusTemplate: TemplateRef;\r\n\r\n @ViewChild('dateTemplate', { static: true })\r\n dateTemplate: TemplateRef;\r\n\r\n @ViewChild('contentHeaderTemplate', { static: true })\r\n contentHeaderTemplate: TemplateRef;\r\n\r\n @ViewChild('contenBodytTemplate', { static: true })\r\n contenBodytTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n constructor(private alertService: AlertService, private translationService: AppTranslationService, private accountService: AccountService, private notificationService: NotificationService) {\r\n }\r\n\r\n\r\n ngOnInit() {\r\n\r\n if (this.isViewOnly) {\r\n this.columns = [\r\n { prop: 'date', cellTemplate: this.dateTemplate, width: 100, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'header', cellTemplate: this.contentHeaderTemplate, width: 200, resizeable: false, sortable: false, draggable: false },\r\n ];\r\n } else {\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n\r\n this.columns = [\r\n { prop: '', name: '', width: 10, headerTemplate: this.statusHeaderTemplate, cellTemplate: this.statusTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'date', name: gT('notifications.Date'), cellTemplate: this.dateTemplate, width: 30 },\r\n { prop: 'body', name: gT('notifications.Notification'), cellTemplate: this.contenBodytTemplate, width: 500 },\r\n { name: '', width: 80, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n\r\n\r\n this.initDataLoading();\r\n }\r\n\r\n\r\n ngOnDestroy() {\r\n if (this.dataLoadingSubscription) {\r\n this.dataLoadingSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n\r\n initDataLoading() {\r\n\r\n if (this.isViewOnly && this.notificationService.recentNotifications) {\r\n this.rows = this.processResults(this.notificationService.recentNotifications);\r\n return;\r\n }\r\n\r\n this.loadingIndicator = true;\r\n\r\n const dataLoadTask = this.isViewOnly ? this.notificationService.getNewNotifications() : this.notificationService.getNewNotificationsPeriodically();\r\n\r\n this.dataLoadingSubscription = dataLoadTask\r\n .subscribe(notifications => {\r\n this.loadingIndicator = false;\r\n this.dataLoadingConsecutiveFailurs = 0;\r\n\r\n this.rows = this.processResults(notifications);\r\n },\r\n error => {\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showMessage('Load Error', 'Loading new notifications from the server failed!', MessageSeverity.warn);\r\n this.alertService.logError(error);\r\n\r\n if (this.dataLoadingConsecutiveFailurs++ < 5) {\r\n setTimeout(() => this.initDataLoading(), 5000);\r\n } else {\r\n this.alertService.showStickyMessage('Load Error', 'Loading new notifications from the server failed!', MessageSeverity.error);\r\n }\r\n\r\n });\r\n\r\n\r\n if (this.isViewOnly) {\r\n this.dataLoadingSubscription = null;\r\n }\r\n }\r\n\r\n\r\n private processResults(notifications: Notification[]) {\r\n\r\n if (this.isViewOnly) {\r\n notifications.sort((a, b) => {\r\n return b.date.valueOf() - a.date.valueOf();\r\n });\r\n }\r\n\r\n return notifications;\r\n }\r\n\r\n\r\n\r\n getPrintedDate(value: Date) {\r\n if (value) {\r\n return Utilities.printTimeOnly(value) + ' on ' + Utilities.printDateOnly(value);\r\n }\r\n }\r\n\r\n\r\n deleteNotification(row: Notification) {\r\n this.alertService.showDialog('Are you sure you want to delete the notification \\\"' + row.header + '\\\"?', DialogType.confirm, () => this.deleteNotificationHelper(row));\r\n }\r\n\r\n\r\n deleteNotificationHelper(row: Notification) {\r\n\r\n this.alertService.startLoadingMessage('Deleting...');\r\n this.loadingIndicator = true;\r\n\r\n this.notificationService.deleteNotification(row)\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.rows = this.rows.filter(item => item.id != row.id);\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Delete Error', `An error occured whilst deleting the notification.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n togglePin(row: Notification) {\r\n\r\n const pin = !row.isPinned;\r\n const opText = pin ? 'Pinning' : 'Unpinning';\r\n\r\n this.alertService.startLoadingMessage(opText + '...');\r\n this.loadingIndicator = true;\r\n\r\n this.notificationService.pinUnpinNotification(row, pin)\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n row.isPinned = pin;\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage(opText + ' Error', `An error occured whilst ${opText} the notification.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n get canManageNotifications() {\r\n return this.accountService.userHasPermission(Permission.manageRolesPermission); // Todo: Consider creating separate permission for notifications\r\n }\r\n\r\n}\r\n","export default \".row:not(:last-child) {\\n /*border-bottom: 1px solid #ccc;*/\\n}\\n\\n.separator-hr {\\n margin: 0 5px;\\n border-top-style: dashed;\\n}\\n\\n.edit-separator-hr {\\n margin: 10px 5px;\\n border-top-style: dashed;\\n}\\n\\n.last-separator-hr {\\n margin-top: 5px;\\n}\\n\\n.edit-last-separator-hr {\\n margin-top: 15px;\\n}\\n\\n.form-group {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n\\ninput.form-control {\\n border-left-width: 5px;\\n}\\n\\n.invalid-feedback {\\n display: block;\\n}\\n\\n.group-name {\\n padding-top: 0;\\n font-weight: 500;\\n padding-right: 0;\\n}\\n\\n.permissionsColumn {\\n margin-bottom: 20px;\\n}\\n\\n.permissionsRow {\\n margin: 0 15px;\\n}\\n\\n.well-sm {\\n padding: 0.5rem;\\n}\\n\\n@media (min-width: 992px) {\\n .user-enabled {\\n margin-left: 40px;\\n }\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xccm9sZS1lZGl0b3IuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvcm9sZS1lZGl0b3IuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxpQ0FBQTtBQ0NGOztBREVBO0VBQ0UsYUFBQTtFQUNBLHdCQUFBO0FDQ0Y7O0FERUE7RUFDRSxnQkFBQTtFQUNBLHdCQUFBO0FDQ0Y7O0FERUE7RUFDRSxlQUFBO0FDQ0Y7O0FERUE7RUFDRSxnQkFBQTtBQ0NGOztBREdBO0VBQ0UsYUFBQTtFQUNBLGdCQUFBO0FDQUY7O0FER0E7RUFDRSxzQkFBQTtBQ0FGOztBREdBO0VBQ0UsY0FBQTtBQ0FGOztBREdBO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7QUNBRjs7QURHQTtFQUNFLG1CQUFBO0FDQUY7O0FER0E7RUFDRSxjQUFBO0FDQUY7O0FESUE7RUFDRSxlQUFBO0FDREY7O0FESUE7RUFDRTtJQUNFLGlCQUFBO0VDREY7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvcm9sZS1lZGl0b3IuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIucm93Om5vdCg6bGFzdC1jaGlsZCkge1xyXG4gIC8qYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7Ki9cclxufVxyXG5cclxuLnNlcGFyYXRvci1ociB7XHJcbiAgbWFyZ2luOiAwIDVweDtcclxuICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7XHJcbn1cclxuXHJcbi5lZGl0LXNlcGFyYXRvci1ociB7XHJcbiAgbWFyZ2luOiAxMHB4IDVweDtcclxuICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7XHJcbn1cclxuXHJcbi5sYXN0LXNlcGFyYXRvci1ociB7XHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4uZWRpdC1sYXN0LXNlcGFyYXRvci1ociB7XHJcbiAgbWFyZ2luLXRvcDogMTVweDtcclxufVxyXG5cclxuXHJcbi5mb3JtLWdyb3VwIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbmlucHV0LmZvcm0tY29udHJvbCB7XHJcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDVweDtcclxufVxyXG5cclxuLmludmFsaWQtZmVlZGJhY2sge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uZ3JvdXAtbmFtZSB7XHJcbiAgcGFkZGluZy10b3A6IDA7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4ucGVybWlzc2lvbnNDb2x1bW4ge1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5wZXJtaXNzaW9uc1JvdyB7XHJcbiAgbWFyZ2luOiAwIDE1cHg7XHJcbn1cclxuXHJcblxyXG4ud2VsbC1zbSB7XHJcbiAgcGFkZGluZzogMC41cmVtO1xyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcclxuICAudXNlci1lbmFibGVkIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xyXG4gIH1cclxufVxyXG4iLCIucm93Om5vdCg6bGFzdC1jaGlsZCkge1xuICAvKmJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjOyovXG59XG5cbi5zZXBhcmF0b3ItaHIge1xuICBtYXJnaW46IDAgNXB4O1xuICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7XG59XG5cbi5lZGl0LXNlcGFyYXRvci1ociB7XG4gIG1hcmdpbjogMTBweCA1cHg7XG4gIGJvcmRlci10b3Atc3R5bGU6IGRhc2hlZDtcbn1cblxuLmxhc3Qtc2VwYXJhdG9yLWhyIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4uZWRpdC1sYXN0LXNlcGFyYXRvci1ociB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDVweDtcbn1cblxuLmludmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmdyb3VwLW5hbWUge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnBlcm1pc3Npb25zQ29sdW1uIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnBlcm1pc3Npb25zUm93IHtcbiAgbWFyZ2luOiAwIDE1cHg7XG59XG5cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnVzZXItZW5hYmxlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gIH1cbn0iXX0= */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, ViewChild } from '@angular/core';\r\n\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Role } from '../../models/role.model';\r\nimport { Permission } from '../../models/permission.model';\r\n\r\n\r\n@Component({\r\n selector: 'role-editor',\r\n templateUrl: './role-editor.component.html',\r\n styleUrls: ['./role-editor.component.scss']\r\n})\r\nexport class RoleEditorComponent {\r\n\r\n private isNewRole = false;\r\n public isSaving: boolean;\r\n public showValidationErrors = true;\r\n public roleEdit: Role = new Role();\r\n public allPermissions: Permission[] = [];\r\n public selectedValues: { [key: string]: boolean; } = {};\r\n private editingRoleName: string;\r\n\r\n public formResetToggle = true;\r\n\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n\r\n\r\n @ViewChild('f', { static: false })\r\n private form;\r\n\r\n\r\n\r\n constructor(private alertService: AlertService, private accountService: AccountService) {\r\n }\r\n\r\n\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n\r\n this.roleEdit.permissions = this.getSelectedPermissions();\r\n\r\n if (this.isNewRole) {\r\n this.accountService.newRole(this.roleEdit).subscribe(role => this.saveSuccessHelper(role), error => this.saveFailedHelper(error));\r\n } else {\r\n this.accountService.updateRole(this.roleEdit).subscribe(response => this.saveSuccessHelper(), error => this.saveFailedHelper(error));\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n private saveSuccessHelper(role?: Role) {\r\n if (role) {\r\n Object.assign(this.roleEdit, role);\r\n }\r\n\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.showValidationErrors = false;\r\n\r\n if (this.isNewRole) {\r\n this.alertService.showMessage('Success', `Role \\\"${this.roleEdit.name}\\\" was created successfully`, MessageSeverity.success);\r\n } else {\r\n this.alertService.showMessage('Success', `Changes to role \\\"${this.roleEdit.name}\\\" was saved successfully`, MessageSeverity.success);\r\n }\r\n\r\n\r\n this.roleEdit = new Role();\r\n this.resetForm();\r\n\r\n\r\n if (!this.isNewRole && this.accountService.currentUser.roles.some(r => r == this.editingRoleName)) {\r\n this.refreshLoggedInUser();\r\n }\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n\r\n private refreshLoggedInUser() {\r\n this.accountService.refreshLoggedInUser()\r\n .subscribe(user => { },\r\n error => {\r\n this.alertService.resetStickyMessage();\r\n this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n\r\n cancel() {\r\n this.roleEdit = new Role();\r\n\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n\r\n this.alertService.showMessage('Cancelled', 'Operation cancelled by user', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n\r\n\r\n selectAll() {\r\n this.allPermissions.forEach(p => this.selectedValues[p.value] = true);\r\n }\r\n\r\n\r\n selectNone() {\r\n this.allPermissions.forEach(p => this.selectedValues[p.value] = false);\r\n }\r\n\r\n\r\n toggleGroup(groupName: string) {\r\n let firstMemberValue: boolean;\r\n\r\n this.allPermissions.forEach(p => {\r\n if (p.groupName != groupName) {\r\n return;\r\n }\r\n\r\n if (firstMemberValue == null) {\r\n firstMemberValue = this.selectedValues[p.value] == true;\r\n }\r\n\r\n this.selectedValues[p.value] = !firstMemberValue;\r\n });\r\n }\r\n\r\n\r\n private getSelectedPermissions() {\r\n return this.allPermissions.filter(p => this.selectedValues[p.value] == true);\r\n }\r\n\r\n\r\n resetForm(replace = false) {\r\n\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n\r\n\r\n newRole(allPermissions: Permission[]) {\r\n this.isNewRole = true;\r\n this.showValidationErrors = true;\r\n\r\n this.editingRoleName = null;\r\n this.allPermissions = allPermissions;\r\n this.selectedValues = {};\r\n this.roleEdit = new Role();\r\n\r\n return this.roleEdit;\r\n }\r\n\r\n editRole(role: Role, allPermissions: Permission[]) {\r\n if (role) {\r\n this.isNewRole = false;\r\n this.showValidationErrors = true;\r\n\r\n this.editingRoleName = role.name;\r\n this.allPermissions = allPermissions;\r\n this.selectedValues = {};\r\n role.permissions.forEach(p => this.selectedValues[p.value] = true);\r\n this.roleEdit = new Role();\r\n Object.assign(this.roleEdit, role);\r\n\r\n return this.roleEdit;\r\n } else {\r\n return this.newRole(allPermissions);\r\n }\r\n }\r\n\r\n\r\n\r\n get canManageRoles() {\r\n return this.accountService.userHasPermission(Permission.manageRolesPermission);\r\n }\r\n}\r\n","export default \".control-box {\\n margin-bottom: 5px;\\n}\\n\\n.search-box {\\n margin: 0;\\n}\\n\\n.nav-item.toolbaritem a {\\n padding-top: 3px;\\n padding-bottom: 3px;\\n min-width: 100px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xccm9sZXMtbWFuYWdlbWVudC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9yb2xlcy1tYW5hZ2VtZW50LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0ksa0JBQUE7QUNBSjs7QURHQTtFQUNJLFNBQUE7QUNBSjs7QURHQTtFQUNJLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtBQ0FKIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9yb2xlcy1tYW5hZ2VtZW50LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbi5jb250cm9sLWJveCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuXHJcbi5zZWFyY2gtYm94IHtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLm5hdi1pdGVtLnRvb2xiYXJpdGVtIGEge1xyXG4gICAgcGFkZGluZy10b3A6IDNweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XHJcbiAgICBtaW4td2lkdGg6IDEwMHB4O1xyXG59IiwiLmNvbnRyb2wtYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4uc2VhcmNoLWJveCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm5hdi1pdGVtLnRvb2xiYXJpdGVtIGEge1xuICBwYWRkaW5nLXRvcDogM3B4O1xuICBwYWRkaW5nLWJvdHRvbTogM3B4O1xuICBtaW4td2lkdGg6IDEwMHB4O1xufSJdfQ== */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, OnInit, AfterViewInit, TemplateRef, ViewChild, Input } from '@angular/core';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\n\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Role } from '../../models/role.model';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { RoleEditorComponent } from './role-editor.component';\r\n\r\n\r\n@Component({\r\n selector: 'roles-management',\r\n templateUrl: './roles-management.component.html',\r\n styleUrls: ['./roles-management.component.scss']\r\n})\r\nexport class RolesManagementComponent implements OnInit, AfterViewInit {\r\n columns: any[] = [];\r\n rows: Role[] = [];\r\n rowsCache: Role[] = [];\r\n allPermissions: Permission[] = [];\r\n editedRole: Role;\r\n sourceRole: Role;\r\n editingRoleName: { name: string };\r\n loadingIndicator: boolean;\r\n\r\n\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n @ViewChild('roleEditor', { static: true })\r\n roleEditor: RoleEditorComponent;\r\n\r\n constructor(private alertService: AlertService, private translationService: AppTranslationService, private accountService: AccountService) {\r\n }\r\n\r\n\r\n ngOnInit() {\r\n\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'name', name: gT('roles.management.Name'), width: 180 },\r\n { prop: 'description', name: gT('roles.management.Description'), width: 320 },\r\n { prop: 'usersCount', name: gT('roles.management.Users'), width: 50 },\r\n { name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n\r\n this.loadData();\r\n }\r\n\r\n ngAfterViewInit() { \r\n this.roleEditor.changesSavedCallback = () => {\r\n this.addNewRoleToList();\r\n this.editorModal.hide();\r\n };\r\n\r\n this.roleEditor.changesCancelledCallback = () => {\r\n this.editedRole = null;\r\n this.sourceRole = null;\r\n this.editorModal.hide();\r\n };\r\n }\r\n\r\n\r\n addNewRoleToList() {\r\n if (this.sourceRole) {\r\n Object.assign(this.sourceRole, this.editedRole);\r\n\r\n let sourceIndex = this.rowsCache.indexOf(this.sourceRole, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.rowsCache, sourceIndex, 0);\r\n }\r\n\r\n sourceIndex = this.rows.indexOf(this.sourceRole, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.rows, sourceIndex, 0);\r\n }\r\n\r\n this.editedRole = null;\r\n this.sourceRole = null;\r\n } else {\r\n const role = new Role();\r\n Object.assign(role, this.editedRole);\r\n this.editedRole = null;\r\n\r\n let maxIndex = 0;\r\n for (const r of this.rowsCache) {\r\n if ((r as any).index > maxIndex) {\r\n maxIndex = (r as any).index;\r\n }\r\n }\r\n\r\n (role as any).index = maxIndex + 1;\r\n\r\n this.rowsCache.splice(0, 0, role);\r\n this.rows.splice(0, 0, role);\r\n this.rows = [...this.rows];\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n loadData() {\r\n this.alertService.startLoadingMessage();\r\n this.loadingIndicator = true;\r\n\r\n this.accountService.getRolesAndPermissions()\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n const roles = results[0];\r\n const permissions = results[1];\r\n\r\n roles.forEach((role, index, roles) => {\r\n (role as any).index = index + 1;\r\n });\r\n\r\n\r\n this.rowsCache = [...roles];\r\n this.rows = roles;\r\n\r\n this.allPermissions = permissions;\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve roles from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.name, r.description));\r\n }\r\n\r\n\r\n onEditorModalHidden() {\r\n this.editingRoleName = null;\r\n this.roleEditor.resetForm(true);\r\n }\r\n\r\n\r\n newRole() {\r\n this.editingRoleName = null;\r\n this.sourceRole = null;\r\n this.editedRole = this.roleEditor.newRole(this.allPermissions);\r\n this.editorModal.show();\r\n }\r\n\r\n\r\n editRole(row: Role) {\r\n this.editingRoleName = { name: row.name };\r\n this.sourceRole = row;\r\n this.editedRole = this.roleEditor.editRole(row, this.allPermissions);\r\n this.editorModal.show();\r\n }\r\n\r\n deleteRole(row: Role) {\r\n this.alertService.showDialog('Are you sure you want to delete the \\\"' + row.name + '\\\" role?', DialogType.confirm, () => this.deleteRoleHelper(row));\r\n }\r\n\r\n\r\n deleteRoleHelper(row: Role) {\r\n\r\n this.alertService.startLoadingMessage('Deleting...');\r\n this.loadingIndicator = true;\r\n\r\n this.accountService.deleteRole(row)\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.rowsCache = this.rowsCache.filter(item => item !== row);\r\n this.rows = this.rows.filter(item => item !== row);\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Delete Error', `An error occured whilst deleting the role.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n get canManageRoles() {\r\n return this.accountService.userHasPermission(Permission.manageRolesPermission);\r\n }\r\n\r\n}\r\n","export default \".search-icon {\\n pointer-events: none;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcc2VhcmNoLWJveC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9zZWFyY2gtYm94LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0ksb0JBQUE7QUNBSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvc2VhcmNoLWJveC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4uc2VhcmNoLWljb24ge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuIiwiLnNlYXJjaC1pY29uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59Il19 */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, ViewChild, ElementRef, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'search-box',\r\n templateUrl: './search-box.component.html',\r\n styleUrls: ['./search-box.component.scss']\r\n})\r\nexport class SearchBoxComponent {\r\n\r\n @Input()\r\n placeholder = 'Search...';\r\n\r\n @Output()\r\n searchChange = new EventEmitter();\r\n\r\n @ViewChild('searchInput', { static: true })\r\n searchInput: ElementRef;\r\n\r\n\r\n onValueChange(value: string) {\r\n setTimeout(() => this.searchChange.emit(value));\r\n }\r\n\r\n\r\n clear() {\r\n this.searchInput.nativeElement.value = '';\r\n this.onValueChange(this.searchInput.nativeElement.value);\r\n }\r\n}\r\n","export default \".statistics-container {\\n font-size: 0.875rem;\\n}\\n\\n.chart-container {\\n display: block;\\n}\\n\\n.refresh-btn {\\n margin-right: 10px;\\n}\\n\\n.chart-type-container {\\n display: inline-block;\\n}\\n\\n.chart-type-container .active {\\n background-color: #e8e8e8;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcc3RhdGlzdGljcy1kZW1vLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21wb25lbnRzL2NvbnRyb2xzL3N0YXRpc3RpY3MtZGVtby5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQTtFQUNJLG1CQUFBO0FDQUo7O0FER0E7RUFDSSxjQUFBO0FDQUo7O0FESUE7RUFDSSxrQkFBQTtBQ0RKOztBRElBO0VBQ0kscUJBQUE7QUNESjs7QURLQTtFQUNJLHlCQUFBO0FDRkoiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2NvbnRyb2xzL3N0YXRpc3RpY3MtZGVtby5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4uc3RhdGlzdGljcy1jb250YWluZXIge1xyXG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxufVxyXG5cclxuLmNoYXJ0LWNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuXHJcbi5yZWZyZXNoLWJ0biB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi5jaGFydC10eXBlLWNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcblxyXG4uY2hhcnQtdHlwZS1jb250YWluZXIgLmFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4O1xyXG59XHJcbiIsIi5zdGF0aXN0aWNzLWNvbnRhaW5lciB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5jaGFydC1jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJlZnJlc2gtYnRuIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4uY2hhcnQtdHlwZS1jb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jaGFydC10eXBlLWNvbnRhaW5lciAuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbn0iXX0= */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, OnInit, OnDestroy, AfterViewInit } from '@angular/core';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { Subscription, Observable, fromEvent, of, merge } from 'rxjs';\r\nimport { map, distinctUntilChanged } from 'rxjs/operators';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TallyService } from '../../services/tally.service'\r\nimport {PaytmRequest,paytmCustomerMaster,CartData } from '../../components/home/home.component'\r\nimport { isNullOrUndefined } from 'util';\r\n\r\nrequire('chart.js');\r\n\r\n\r\n\r\n@Component({\r\n selector: 'statistics-demo',\r\n templateUrl: './statistics-demo.component.html',\r\n styleUrls: ['./statistics-demo.component.scss']\r\n})\r\nexport class StatisticsDemoComponent implements OnInit, OnDestroy,AfterViewInit {\r\n\r\n chartData: any[] = []\r\n monthdata: any[] = [];\r\n officedata: any[] = [];\r\n saledata: any[] = [];\r\n // { data: [65, 59, 80, 81, 56, 55], label: 'Series A' },\r\n // { data: [28, 48, 40, 19, 86, 27], label: 'Series B' },\r\n // { data: [18, 48, 77, 9, 100, 27], label: 'Series C' }\r\n //];\r\n chartLabels = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'];\r\n chartOptions = {\r\n responsive: true,\r\n title: {\r\n display: false,\r\n fontSize: 16,\r\n text: 'Important Stuff'\r\n }\r\n };\r\n chartColors = [\r\n { // grey\r\n backgroundColor: 'rgba(51,51,255,0.2)',\r\n borderColor: 'rgba(255,255,51,1)',\r\n pointBackgroundColor: 'rgba(255,51,51,1)',\r\n pointBorderColor: '#fff',\r\n pointHoverBackgroundColor: '#fff',\r\n pointHoverBorderColor: 'rgba(148,159,177,0.8)'\r\n },\r\n { // dark grey\r\n backgroundColor: 'rgba(0,128,255,0.2)',\r\n borderColor: 'rgba(204,102,0,1)',\r\n pointBackgroundColor: 'rgba(153,0,0,1)',\r\n pointBorderColor: '#fff',\r\n pointHoverBackgroundColor: '#fff',\r\n pointHoverBorderColor: 'rgba(77,83,96,1)'\r\n },\r\n { // something else\r\n backgroundColor: 'rgba(0,255,255,0.2)',\r\n borderColor: 'rgba(51,102,0,1)',\r\n pointBackgroundColor: 'rgba(255,0,255,1)',\r\n pointBorderColor: '#fff',\r\n pointHoverBackgroundColor: '#fff',\r\n pointHoverBorderColor: 'rgba(128,128,128,0.8)'\r\n },\r\n { // something else\r\n backgroundColor: 'rgba(229,255,204,0.5)',\r\n borderColor: 'rgba(51,0,102,1)',\r\n pointBackgroundColor: 'rgba(255,204,204,1)',\r\n pointBorderColor: '#fff',\r\n pointHoverBackgroundColor: '#fff',\r\n pointHoverBorderColor: 'rgba(128,128,128,0.8)'\r\n }\r\n ];\r\n chartLegend = true;\r\n chartType = 'line';\r\n\r\n timerReference: any;\r\n windowWidth$: Observable;\r\n windowWidthSub: Subscription;\r\n\r\n\r\n constructor(private localstre: LocalStoreManager, private troute: ActivatedRoute, private datePipe: DatePipe, private excelService: ExcelService, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n\r\n\r\n ngOnInit() {\r\n // this.randomize()\r\n this.timerReference = setInterval(() => this.randomize(), 10000);\r\n\r\n const initialWidth$ = of(window.innerWidth);\r\n const resizedWidth$ = fromEvent(window, 'resize').pipe(map((event: any) => event.target.innerWidth as number));\r\n this.windowWidth$ = merge(initialWidth$, resizedWidth$).pipe(distinctUntilChanged());\r\n\r\n this.windowWidthSub = this.windowWidth$.subscribe(width => this.chartLegend = width < 600 ? false : true);\r\n }\r\n ngAfterViewInit() {\r\n //this.randomize()\r\n }\r\n ngOnDestroy() {\r\n clearInterval(this.timerReference);\r\n this.windowWidthSub.unsubscribe();\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n randomize(): void {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName ='Usp_GetShaleDashboardNew'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"OfficeId\"\r\n pr.PropertyValue = logindata[0].officeid;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n\r\n //const _chartData = new Array(this.chartData.length);\r\n //for (let i = 0; i < this.chartData.length; i++) {\r\n // _chartData[i] = { data: new Array(this.chartData[i].data.length), label: this.chartData[i].label };\r\n\r\n // for (let j = 0; j < this.chartData[i].data.length; j++) {\r\n // _chartData[i].data[j] = Math.floor((Math.random() * 100) + 1);\r\n // }\r\n //}\r\n\r\n //this.chartData = _chartData;\r\n }\r\n getSucessDataExrate(result: any) {\r\n if (!isNullOrUndefined(result.table)) {\r\n if (result.table.length > 0) {\r\n this.chartData = [];\r\n let vchardata = new vChartdata();\r\n let numarr = [];\r\n result.table.forEach((obj, ind, arrobj) => {\r\n numarr = []\r\n vchardata = new vChartdata();\r\n vchardata.data = [];\r\n vchardata.label = obj.saleType;\r\n for (const key in obj) {\r\n if (obj.hasOwnProperty(key)) {\r\n if (key != 'saleType')\r\n if (vchardata.data.length == 0) {\r\n vchardata.data[0] = isNaN(parseFloat(obj[key])) ? 0 : parseFloat(obj[key]);\r\n\r\n }\r\n else {\r\n vchardata.data.push(isNaN(parseFloat(obj[key])) ? 0 : parseFloat(obj[key]));\r\n }\r\n }\r\n }\r\n if (this.chartData.length == 0) {\r\n this.chartData[0] = vchardata\r\n\r\n }\r\n else {\r\n this.chartData.push(vchardata)\r\n }\r\n });\r\n this.chartData = [...this.chartData];\r\n this.monthdata = result.table2;\r\n this.saledata = result.table1;\r\n this.officedata = result.table3;\r\n this.monthdata.forEach((tobj, ind, arr) => {\r\n let monstr: string = tobj.column1;\r\n let monarr = monstr.split(\",\");\r\n this.chartLabels = []\r\n monarr.forEach((str, tind, tarr) => {\r\n if (this.chartLabels.length == 0) {\r\n this.chartLabels[0] = str.substring(1, 4);\r\n }\r\n else {\r\n this.chartLabels.push(str.substring(1, 4));\r\n }\r\n\r\n });\r\n });\r\n this.chartLabels = [...this.chartLabels];\r\n }\r\n }\r\n }\r\n changeChartType(type: string) {\r\n this.chartType = type;\r\n }\r\n\r\n showMessage(msg: string): void {\r\n this.alertService.showMessage('Demo', msg, MessageSeverity.info);\r\n }\r\n\r\n showDialog(msg: string): void {\r\n this.alertService.showDialog(msg, DialogType.prompt, (val) => this.configure(true, val), () => this.configure(false));\r\n }\r\n\r\n configure(response: boolean, value?: string) {\r\n\r\n if (response) {\r\n\r\n this.alertService.showStickyMessage('Simulating...', '', MessageSeverity.wait);\r\n\r\n setTimeout(() => {\r\n\r\n this.alertService.resetStickyMessage();\r\n this.alertService.showMessage('Demo', `Your settings was successfully configured to \\\"${value}\\\"`, MessageSeverity.success);\r\n }, 2000);\r\n } else {\r\n this.alertService.showMessage('Demo', 'Operation cancelled by user', MessageSeverity.default);\r\n }\r\n }\r\n\r\n chartClicked(e): void {\r\n console.log(e);\r\n }\r\n\r\n chartHovered(e): void {\r\n console.log(e);\r\n }\r\n \r\n\r\n}\r\nexport class vChartdata {\r\n data: number[];\r\n label: string;\r\n}\r\n","export default \"input.form-control {\\n border-left-width: 5px;\\n}\\n\\n.control-box {\\n margin-bottom: 5px;\\n}\\n\\n.search-box {\\n margin: 0;\\n}\\n\\n.nav-item.toolbaritem a {\\n padding-top: 3px;\\n padding-bottom: 3px;\\n min-width: 100px;\\n font-weight: bold;\\n}\\n\\n.completed {\\n text-decoration: line-through;\\n}\\n\\n.form-check {\\n margin: 0;\\n}\\n\\n.inline-label {\\n width: 100%;\\n min-height: 1rem;\\n display: inline-block;\\n}\\n\\n.inline-editor {\\n width: 100%;\\n}\\n\\n.description-form-group {\\n margin-bottom: 5px;\\n}\\n\\n.actionBtn-form-group {\\n margin: 0;\\n}\\n\\n.edit-last-separator-hr {\\n margin: 10px 0;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcdG9kby1kZW1vLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21wb25lbnRzL2NvbnRyb2xzL3RvZG8tZGVtby5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQTtFQUNJLHNCQUFBO0FDQUo7O0FER0E7RUFDSSxrQkFBQTtBQ0FKOztBREdBO0VBQ0ksU0FBQTtBQ0FKOztBREdBO0VBQ0ksZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7QUNBSjs7QURJQTtFQUNJLDZCQUFBO0FDREo7O0FESUE7RUFDSSxTQUFBO0FDREo7O0FES0E7RUFDSSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxxQkFBQTtBQ0ZKOztBREtBO0VBQ0ksV0FBQTtBQ0ZKOztBREtBO0VBQ0ksa0JBQUE7QUNGSjs7QURLQTtFQUNJLFNBQUE7QUNGSjs7QURLQTtFQUNJLGNBQUE7QUNGSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvdG9kby1kZW1vLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmlucHV0LmZvcm0tY29udHJvbCB7XHJcbiAgICBib3JkZXItbGVmdC13aWR0aDogNXB4O1xyXG59XHJcblxyXG4uY29udHJvbC1ib3gge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcblxyXG4uc2VhcmNoLWJveCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5uYXYtaXRlbS50b29sYmFyaXRlbSBhIHtcclxuICAgIHBhZGRpbmctdG9wOiAzcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogM3B4O1xyXG4gICAgbWluLXdpZHRoOiAxMDBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG5cclxuLmNvbXBsZXRlZCB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxufVxyXG5cclxuLmZvcm0tY2hlY2sge1xyXG4gICAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG5cclxuLmlubGluZS1sYWJlbCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDFyZW07XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi5pbmxpbmUtZWRpdG9yIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZGVzY3JpcHRpb24tZm9ybS1ncm91cCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuXHJcbi5hY3Rpb25CdG4tZm9ybS1ncm91cCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5lZGl0LWxhc3Qtc2VwYXJhdG9yLWhyIHtcclxuICAgIG1hcmdpbjogMTBweCAwO1xyXG59IiwiaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDVweDtcbn1cblxuLmNvbnRyb2wtYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4uc2VhcmNoLWJveCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm5hdi1pdGVtLnRvb2xiYXJpdGVtIGEge1xuICBwYWRkaW5nLXRvcDogM3B4O1xuICBwYWRkaW5nLWJvdHRvbTogM3B4O1xuICBtaW4td2lkdGg6IDEwMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmNvbXBsZXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xufVxuXG4uZm9ybS1jaGVjayB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmlubGluZS1sYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5pbmxpbmUtZWRpdG9yIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5kZXNjcmlwdGlvbi1mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4uYWN0aW9uQnRuLWZvcm0tZ3JvdXAge1xuICBtYXJnaW46IDA7XG59XG5cbi5lZGl0LWxhc3Qtc2VwYXJhdG9yLWhyIHtcbiAgbWFyZ2luOiAxMHB4IDA7XG59Il19 */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, OnInit, OnDestroy, Input, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\n\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'todo-demo',\r\n templateUrl: './todo-demo.component.html',\r\n styleUrls: ['./todo-demo.component.scss']\r\n})\r\nexport class TodoDemoComponent implements OnInit, OnDestroy {\r\n public static readonly DBKeyTodoDemo = 'todo-demo.todo_list';\r\n\r\n rows = [];\r\n rowsCache = [];\r\n columns = [];\r\n editing = {};\r\n taskEdit: any = {};\r\n isDataLoaded = false;\r\n loadingIndicator = true;\r\n formResetToggle = true;\r\n _currentUserId: string;\r\n _hideCompletedTasks = false;\r\n\r\n\r\n get currentUserId() {\r\n if (this.authService.currentUser) {\r\n this._currentUserId = this.authService.currentUser.id;\r\n }\r\n\r\n return this._currentUserId;\r\n }\r\n\r\n\r\n set hideCompletedTasks(value: boolean) {\r\n\r\n if (value) {\r\n this.rows = this.rowsCache.filter(r => !r.completed);\r\n } else {\r\n this.rows = [...this.rowsCache];\r\n }\r\n\r\n\r\n this._hideCompletedTasks = value;\r\n }\r\n\r\n get hideCompletedTasks() {\r\n return this._hideCompletedTasks;\r\n }\r\n\r\n\r\n @Input()\r\n verticalScrollbar = false;\r\n\r\n\r\n @ViewChild('statusHeaderTemplate', { static: true })\r\n statusHeaderTemplate: TemplateRef;\r\n\r\n @ViewChild('statusTemplate', { static: true })\r\n statusTemplate: TemplateRef;\r\n\r\n @ViewChild('nameTemplate', { static: true })\r\n nameTemplate: TemplateRef;\r\n\r\n @ViewChild('descriptionTemplate', { static: true })\r\n descriptionTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n\r\n constructor(private alertService: AlertService, private translationService: AppTranslationService, private localStorage: LocalStoreManager, private authService: AuthService) {\r\n }\r\n\r\n\r\n\r\n ngOnInit() {\r\n this.loadingIndicator = true;\r\n\r\n this.fetch((data) => {\r\n this.refreshDataIndexes(data);\r\n this.rows = data;\r\n this.rowsCache = [...data];\r\n this.isDataLoaded = true;\r\n\r\n setTimeout(() => { this.loadingIndicator = false; }, 1500);\r\n });\r\n\r\n\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n\r\n this.columns = [\r\n { prop: 'completed', name: '', width: 30, headerTemplate: this.statusHeaderTemplate, cellTemplate: this.statusTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'name', name: gT('todoDemo.management.Task'), cellTemplate: this.nameTemplate, width: 200 },\r\n { prop: 'description', name: gT('todoDemo.management.Description'), cellTemplate: this.descriptionTemplate, width: 500 },\r\n { name: '', width: 80, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n }\r\n\r\n ngOnDestroy() {\r\n this.saveToDisk();\r\n }\r\n\r\n\r\n\r\n fetch(cb) {\r\n let data = this.getFromDisk();\r\n\r\n if (data == null) {\r\n setTimeout(() => {\r\n\r\n data = this.getFromDisk();\r\n\r\n if (data == null) {\r\n data = [\r\n { completed: true, important: true, name: 'Create visual studio extension', description: 'Create a visual studio VSIX extension package that will add this project as an aspnet-core project template' },\r\n { completed: false, important: true, name: 'Do a quick how-to writeup', description: '' },\r\n {\r\n completed: false, important: false, name: 'Create aspnet-core/Angular8 tutorials based on this project', description: 'Create tutorials (blog/video/youtube) on how to build applications (full stack)' +\r\n ' using aspnet-core/Angular8. The tutorial will focus on getting productive with the technology right away rather than the details on how and why they work so audience can get onboard quickly.'\r\n },\r\n ];\r\n }\r\n\r\n cb(data);\r\n }, 1000);\r\n } else {\r\n cb(data);\r\n }\r\n }\r\n\r\n\r\n refreshDataIndexes(data) {\r\n let index = 0;\r\n\r\n for (const i of data) {\r\n i.$$index = index++;\r\n }\r\n }\r\n\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.name, r.description) || value == 'important' && r.important || value == 'not important' && !r.important);\r\n }\r\n\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n\r\n addTask() {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n\r\n this.taskEdit = {};\r\n this.editorModal.show();\r\n });\r\n }\r\n\r\n save() {\r\n this.rowsCache.splice(0, 0, this.taskEdit);\r\n this.rows.splice(0, 0, this.taskEdit);\r\n this.refreshDataIndexes(this.rowsCache);\r\n this.rows = [...this.rows];\r\n\r\n this.saveToDisk();\r\n this.editorModal.hide();\r\n }\r\n\r\n\r\n updateValue(event, cell, cellValue, row) {\r\n this.editing[row.$$index + '-' + cell] = false;\r\n this.rows[row.$$index][cell] = event.target.value;\r\n this.rows = [...this.rows];\r\n\r\n this.saveToDisk();\r\n }\r\n\r\n\r\n delete(row) {\r\n this.alertService.showDialog('Are you sure you want to delete the task?', DialogType.confirm, () => this.deleteHelper(row));\r\n }\r\n\r\n\r\n deleteHelper(row) {\r\n this.rowsCache = this.rowsCache.filter(item => item !== row);\r\n this.rows = this.rows.filter(item => item !== row);\r\n\r\n this.saveToDisk();\r\n }\r\n\r\n getFromDisk() {\r\n return this.localStorage.getDataObject(`${TodoDemoComponent.DBKeyTodoDemo}:${this.currentUserId}`);\r\n }\r\n\r\n saveToDisk() {\r\n if (this.isDataLoaded) {\r\n this.localStorage.saveSyncedSessionData(this.rowsCache, `${TodoDemoComponent.DBKeyTodoDemo}:${this.currentUserId}`);\r\n }\r\n }\r\n}\r\n","export default \".row:not(:last-child) {\\n /*border-bottom: 1px solid #ccc;*/\\n}\\n\\n.separator-hr {\\n margin: 0 5px;\\n border-top-style: dashed;\\n}\\n\\n.edit-separator-hr {\\n margin: 10px 5px;\\n border-top-style: dashed;\\n}\\n\\n.last-separator-hr {\\n margin-top: 5px;\\n}\\n\\n.edit-last-separator-hr {\\n margin-top: 15px;\\n}\\n\\n.password-separator-hr {\\n margin: 5px;\\n border-style: none;\\n}\\n\\n.form-group {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n\\ninput.form-control {\\n border-left-width: 5px;\\n}\\n\\n.invalid-feedback {\\n display: block;\\n}\\n\\n.password-well {\\n padding: 0.5rem;\\n}\\n\\n.hint-sm {\\n display: block;\\n}\\n\\n.form-check.user-enabled {\\n display: inline-block;\\n}\\n\\n.unblock-user {\\n margin-left: 34px;\\n}\\n\\n@media (min-width: 992px) {\\n .user-enabled {\\n margin-left: 40px;\\n }\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcdXNlci1pbmZvLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9jb21wb25lbnRzL2NvbnRyb2xzL3VzZXItaW5mby5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGlDQUFBO0FDQ0Y7O0FERUE7RUFDRSxhQUFBO0VBQ0Esd0JBQUE7QUNDRjs7QURFQTtFQUNFLGdCQUFBO0VBQ0Esd0JBQUE7QUNDRjs7QURFQTtFQUNFLGVBQUE7QUNDRjs7QURFQTtFQUNFLGdCQUFBO0FDQ0Y7O0FERUE7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7QUNDRjs7QURHQTtFQUNFLGFBQUE7RUFDQSxnQkFBQTtBQ0FGOztBREdBO0VBQ0Usc0JBQUE7QUNBRjs7QURHQTtFQUNFLGNBQUE7QUNBRjs7QURHQTtFQUNFLGVBQUE7QUNBRjs7QURHQTtFQUNFLGNBQUE7QUNBRjs7QURHQTtFQUNFLHFCQUFBO0FDQUY7O0FER0E7RUFDRSxpQkFBQTtBQ0FGOztBRElBO0VBQ0U7SUFDRSxpQkFBQTtFQ0RGO0FBQ0YiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2NvbnRyb2xzL3VzZXItaW5mby5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5yb3c6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgLypib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYzsqL1xyXG59XHJcblxyXG4uc2VwYXJhdG9yLWhyIHtcclxuICBtYXJnaW46IDAgNXB4O1xyXG4gIGJvcmRlci10b3Atc3R5bGU6IGRhc2hlZDtcclxufVxyXG5cclxuLmVkaXQtc2VwYXJhdG9yLWhyIHtcclxuICBtYXJnaW46IDEwcHggNXB4O1xyXG4gIGJvcmRlci10b3Atc3R5bGU6IGRhc2hlZDtcclxufVxyXG5cclxuLmxhc3Qtc2VwYXJhdG9yLWhyIHtcclxuICBtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcbi5lZGl0LWxhc3Qtc2VwYXJhdG9yLWhyIHtcclxuICBtYXJnaW4tdG9wOiAxNXB4O1xyXG59XHJcblxyXG4ucGFzc3dvcmQtc2VwYXJhdG9yLWhyIHtcclxuICBtYXJnaW46IDVweDtcclxuICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4uZm9ybS1ncm91cCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG5pbnB1dC5mb3JtLWNvbnRyb2wge1xyXG4gIGJvcmRlci1sZWZ0LXdpZHRoOiA1cHg7XHJcbn1cclxuXHJcbi5pbnZhbGlkLWZlZWRiYWNrIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLnBhc3N3b3JkLXdlbGwge1xyXG4gIHBhZGRpbmc6IDAuNXJlbTtcclxufVxyXG5cclxuLmhpbnQtc20ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uZm9ybS1jaGVjay51c2VyLWVuYWJsZWQge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLnVuYmxvY2stdXNlciB7XHJcbiAgbWFyZ2luLWxlZnQ6IDM0cHg7XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcclxuICAudXNlci1lbmFibGVkIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xyXG4gIH1cclxufVxyXG4iLCIucm93Om5vdCg6bGFzdC1jaGlsZCkge1xuICAvKmJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjOyovXG59XG5cbi5zZXBhcmF0b3ItaHIge1xuICBtYXJnaW46IDAgNXB4O1xuICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7XG59XG5cbi5lZGl0LXNlcGFyYXRvci1ociB7XG4gIG1hcmdpbjogMTBweCA1cHg7XG4gIGJvcmRlci10b3Atc3R5bGU6IGRhc2hlZDtcbn1cblxuLmxhc3Qtc2VwYXJhdG9yLWhyIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4uZWRpdC1sYXN0LXNlcGFyYXRvci1ociB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi5wYXNzd29yZC1zZXBhcmF0b3ItaHIge1xuICBtYXJnaW46IDVweDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmlucHV0LmZvcm0tY29udHJvbCB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiA1cHg7XG59XG5cbi5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wYXNzd29yZC13ZWxsIHtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuXG4uaGludC1zbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZm9ybS1jaGVjay51c2VyLWVuYWJsZWQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi51bmJsb2NrLXVzZXIge1xuICBtYXJnaW4tbGVmdDogMzRweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC51c2VyLWVuYWJsZWQge1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICB9XG59Il19 */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, OnInit, ViewChild, Input } from '@angular/core';\r\n\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { User } from '../../models/user.model';\r\nimport { UserEdit } from '../../models/user-edit.model';\r\nimport { Role } from '../../models/role.model';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { Masters} from '../../services/masters.service';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'user-info',\r\n templateUrl: './user-info.component.html',\r\n styleUrls: ['./user-info.component.scss']\r\n})\r\nexport class UserInfoComponent implements OnInit {\r\n\r\n public isEditMode = false;\r\n public isNewUser = false;\r\n public isSaving = false;\r\n public isChangePassword = false;\r\n public isEditingSelf = false;\r\n public showValidationErrors = false;\r\n public uniqueId: string = Utilities.uniqueId();\r\n public user: User = new User();\r\n public userEdit: UserEdit;\r\n public allRoles: Role[] = [];\r\n public formResetToggle = true;\r\n public officearr: any[] = []\r\n public deptarr: any[] = []\r\n public changesSavedCallback: () => void;\r\n public changesFailedCallback: () => void;\r\n public changesCancelledCallback: () => void;\r\n\r\n @Input()\r\n isViewOnly: boolean;\r\n\r\n @Input()\r\n isGeneralEditor = false;\r\n\r\n\r\n\r\n\r\n\r\n @ViewChild('f', { static: false })\r\n public form;\r\n\r\n // ViewChilds Required because ngIf hides template variables from global scope\r\n @ViewChild('userName', { static: false })\r\n public userName;\r\n\r\n @ViewChild('userPassword', { static: false })\r\n public userPassword;\r\n\r\n @ViewChild('email', { static: false })\r\n public email;\r\n\r\n @ViewChild('currentPassword', { static: false })\r\n public currentPassword;\r\n\r\n @ViewChild('newPassword', { static: false })\r\n public newPassword;\r\n\r\n @ViewChild('confirmPassword', { static: false })\r\n public confirmPassword;\r\n\r\n @ViewChild('roles', { static: false })\r\n public roles;\r\n\r\n @ViewChild('rolesSelector', { static: false })\r\n public rolesSelector;\r\n\r\n\r\n constructor(private alertService: AlertService, private masterService:Masters, private accountService: AccountService) {\r\n }\r\n\r\n ngOnInit() {\r\n if (!this.isGeneralEditor) {\r\n this.loadCurrentUserData();\r\n }\r\n }\r\n\r\n gethelplist($event, name:string) {\r\n \r\n this.masterService.getHelplist(name).subscribe(result => this.onDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n if (name == 'department') {\r\n $('#departmentName').autocomplete({\r\n source: this.officearr,\r\n delay: 500\r\n });\r\n }\r\n else {\r\n $('#officeName').autocomplete({\r\n source: this.officearr,\r\n delay: 500\r\n });\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve list from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n onDatagetSuccessful(states: string[])\r\n {\r\n this.alertService.stopLoadingMessage();\r\n this.officearr = states;\r\n }\r\n private loadCurrentUserData() {\r\n this.alertService.startLoadingMessage();\r\n\r\n if (this.canViewAllRoles) {\r\n this.accountService.getUserAndRoles().subscribe(results => this.onCurrentUserDataLoadSuccessful(results[0], results[1]), error => this.onCurrentUserDataLoadFailed(error));\r\n } else {\r\n this.accountService.getUser().subscribe(user => this.onCurrentUserDataLoadSuccessful(user, user.roles.map(x => new Role(x))), error => this.onCurrentUserDataLoadFailed(error));\r\n }\r\n }\r\n\r\n\r\n private onCurrentUserDataLoadSuccessful(user: User, roles: Role[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.user = user;\r\n this.allRoles = roles;\r\n }\r\n\r\n private onCurrentUserDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve user data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n\r\n this.user = new User();\r\n }\r\n\r\n\r\n\r\n getRoleByName(name: string) {\r\n return this.allRoles.find((r) => r.name == name);\r\n }\r\n\r\n\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n\r\n deletePasswordFromUser(user: UserEdit | User) {\r\n const userEdit = user as UserEdit;\r\n\r\n delete userEdit.currentPassword;\r\n delete userEdit.newPassword;\r\n delete userEdit.confirmPassword;\r\n }\r\n\r\n\r\n edit() {\r\n if (!this.isGeneralEditor) {\r\n this.isEditingSelf = true;\r\n this.userEdit = new UserEdit();\r\n Object.assign(this.userEdit, this.user);\r\n } else {\r\n if (!this.userEdit) {\r\n this.userEdit = new UserEdit();\r\n }\r\n\r\n this.isEditingSelf = this.accountService.currentUser ? this.userEdit.id == this.accountService.currentUser.id : false;\r\n }\r\n\r\n this.isEditMode = true;\r\n this.showValidationErrors = true;\r\n this.isChangePassword = false;\r\n }\r\n\r\n\r\n save() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.userEdit.departmentName = $('#departmentName').val();\r\n this.userEdit.officeName = $('#officeName').val();\r\n\r\n if (this.isNewUser) {\r\n this.accountService.newUser(this.userEdit).subscribe(user => this.saveSuccessHelper(user), error => this.saveFailedHelper(error));\r\n } else {\r\n this.accountService.updateUser(this.userEdit).subscribe(response => this.saveSuccessHelper(), error => this.saveFailedHelper(error));\r\n }\r\n }\r\n\r\n\r\n private saveSuccessHelper(user?: User) {\r\n this.testIsRoleUserCountChanged(this.user, this.userEdit);\r\n\r\n if (user) {\r\n Object.assign(this.userEdit, user);\r\n }\r\n\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.isChangePassword = false;\r\n this.showValidationErrors = false;\r\n\r\n this.deletePasswordFromUser(this.userEdit);\r\n Object.assign(this.user, this.userEdit);\r\n this.userEdit = new UserEdit();\r\n this.resetForm();\r\n\r\n\r\n if (this.isGeneralEditor) {\r\n if (this.isNewUser) {\r\n this.alertService.showMessage('Success', `User \\\"${this.user.userName}\\\" was created successfully`, MessageSeverity.success);\r\n } else if (!this.isEditingSelf) {\r\n this.alertService.showMessage('Success', `Changes to user \\\"${this.user.userName}\\\" was saved successfully`, MessageSeverity.success);\r\n }\r\n }\r\n\r\n if (this.isEditingSelf) {\r\n this.alertService.showMessage('Success', 'Changes to your User Profile was saved successfully', MessageSeverity.success);\r\n this.refreshLoggedInUser();\r\n }\r\n\r\n this.isEditMode = false;\r\n\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n\r\n private saveFailedHelper(error: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n\r\n if (this.changesFailedCallback) {\r\n this.changesFailedCallback();\r\n }\r\n }\r\n\r\n\r\n\r\n private testIsRoleUserCountChanged(currentUser: User, editedUser: User) {\r\n\r\n const rolesAdded = this.isNewUser ? editedUser.roles : editedUser.roles.filter(role => currentUser.roles.indexOf(role) == -1);\r\n const rolesRemoved = this.isNewUser ? [] : currentUser.roles.filter(role => editedUser.roles.indexOf(role) == -1);\r\n\r\n const modifiedRoles = rolesAdded.concat(rolesRemoved);\r\n\r\n if (modifiedRoles.length) {\r\n setTimeout(() => this.accountService.onRolesUserCountChanged(modifiedRoles));\r\n }\r\n }\r\n\r\n\r\n\r\n cancel() {\r\n if (this.isGeneralEditor) {\r\n this.userEdit = this.user = new UserEdit();\r\n } else {\r\n this.userEdit = new UserEdit();\r\n }\r\n\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n\r\n this.alertService.showMessage('Cancelled', 'Operation cancelled by user', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n\r\n if (!this.isGeneralEditor) {\r\n this.isEditMode = false;\r\n }\r\n\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n\r\n\r\n close() {\r\n this.userEdit = this.user = new UserEdit();\r\n this.showValidationErrors = false;\r\n this.resetForm();\r\n this.isEditMode = false;\r\n\r\n if (this.changesSavedCallback) {\r\n this.changesSavedCallback();\r\n }\r\n }\r\n\r\n\r\n\r\n private refreshLoggedInUser() {\r\n this.accountService.refreshLoggedInUser()\r\n .subscribe(user => {\r\n this.loadCurrentUserData();\r\n },\r\n error => {\r\n this.alertService.resetStickyMessage();\r\n this.alertService.showStickyMessage('Refresh failed', 'An error occured whilst refreshing logged in user information from the server', MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n changePassword() {\r\n this.isChangePassword = true;\r\n }\r\n\r\n\r\n unlockUser() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Unblocking user...');\r\n\r\n\r\n this.accountService.unblockUser(this.userEdit.id)\r\n .subscribe(() => {\r\n this.isSaving = false;\r\n this.userEdit.isLockedOut = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', 'User has been successfully unblocked', MessageSeverity.success);\r\n },\r\n error => {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Unblock Error', 'The below errors occured whilst unblocking the user:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n });\r\n }\r\n\r\n\r\n resetForm(replace = false) {\r\n this.isChangePassword = false;\r\n\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n newUser(allRoles: Role[]) {\r\n this.isGeneralEditor = true;\r\n this.isNewUser = true;\r\n this.allRoles = [...allRoles];\r\n this.user = this.userEdit = new UserEdit();\r\n this.userEdit.isEnabled = true;\r\n this.edit();\r\n\r\n return this.userEdit;\r\n }\r\n\r\n editUser(user: User, allRoles: Role[]) {\r\n if (user) {\r\n this.isGeneralEditor = true;\r\n this.isNewUser = false;\r\n\r\n this.setRoles(user, allRoles);\r\n this.user = new User();\r\n this.userEdit = new UserEdit();\r\n Object.assign(this.user, user);\r\n Object.assign(this.userEdit, user);\r\n this.edit();\r\n\r\n return this.userEdit;\r\n } else {\r\n return this.newUser(allRoles);\r\n }\r\n }\r\n\r\n\r\n displayUser(user: User, allRoles?: Role[]) {\r\n\r\n this.user = new User();\r\n Object.assign(this.user, user);\r\n this.deletePasswordFromUser(this.user);\r\n this.setRoles(user, allRoles);\r\n\r\n this.isEditMode = false;\r\n }\r\n\r\n\r\n\r\n private setRoles(user: User, allRoles?: Role[]) {\r\n\r\n this.allRoles = allRoles ? [...allRoles] : [];\r\n\r\n if (user.roles) {\r\n for (const ur of user.roles) {\r\n if (!this.allRoles.some(r => r.name == ur)) {\r\n this.allRoles.unshift(new Role(ur));\r\n }\r\n }\r\n }\r\n\r\n if (allRoles == null || this.allRoles.length != allRoles.length) {\r\n setTimeout(() => {\r\n if (this.rolesSelector) {\r\n this.rolesSelector.refresh();\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n\r\n get canViewAllRoles() {\r\n return this.accountService.userHasPermission(Permission.viewRolesPermission);\r\n }\r\n\r\n get canAssignRoles() {\r\n return this.accountService.userHasPermission(Permission.assignRolesPermission);\r\n }\r\n}\r\n","export default \".separator-hr {\\n margin: 7px 5px;\\n border-top-style: dashed;\\n}\\n\\n.subseparator-hr {\\n margin: 7px 5px;\\n border-top-style: none;\\n}\\n\\n.last-separator-hr {\\n margin-top: 7px;\\n}\\n\\n.form-group {\\n margin-top: 0;\\n margin-bottom: 0;\\n}\\n\\n.form-control-plaintext {\\n min-height: 0;\\n}\\n\\n.checkbox {\\n padding-top: 0;\\n}\\n\\n.col-reset-default {\\n padding-right: 0;\\n}\\n\\n.col-set-default {\\n padding-left: 5px;\\n}\\n\\n.col-reset-default .btn,\\n.col-set-default .btn {\\n min-width: 150px;\\n}\\n\\n@media (min-width: 768px) {\\n .col-form-label {\\n padding-top: 5px;\\n }\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcdXNlci1wcmVmZXJlbmNlcy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy91c2VyLXByZWZlcmVuY2VzLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0UsZUFBQTtFQUNBLHdCQUFBO0FDQUY7O0FER0E7RUFDRSxlQUFBO0VBQ0Esc0JBQUE7QUNBRjs7QURHQTtFQUNFLGVBQUE7QUNBRjs7QURHQTtFQUNFLGFBQUE7RUFDQSxnQkFBQTtBQ0FGOztBREdBO0VBQ0UsYUFBQTtBQ0FGOztBREdBO0VBQ0UsY0FBQTtBQ0FGOztBREdBO0VBQ0UsZ0JBQUE7QUNBRjs7QURHQTtFQUNFLGlCQUFBO0FDQUY7O0FER0E7O0VBRUUsZ0JBQUE7QUNBRjs7QURHQTtFQUNFO0lBQ0UsZ0JBQUE7RUNBRjtBQUNGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy91c2VyLXByZWZlcmVuY2VzLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbi5zZXBhcmF0b3ItaHIge1xyXG4gIG1hcmdpbjogN3B4IDVweDtcclxuICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7XHJcbn1cclxuXHJcbi5zdWJzZXBhcmF0b3ItaHIge1xyXG4gIG1hcmdpbjogN3B4IDVweDtcclxuICBib3JkZXItdG9wLXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4ubGFzdC1zZXBhcmF0b3ItaHIge1xyXG4gIG1hcmdpbi10b3A6IDdweDtcclxufVxyXG5cclxuLmZvcm0tZ3JvdXAge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xyXG4gIG1pbi1oZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi5jaGVja2JveCB7XHJcbiAgcGFkZGluZy10b3A6IDA7XHJcbn1cclxuXHJcbi5jb2wtcmVzZXQtZGVmYXVsdCB7XHJcbiAgcGFkZGluZy1yaWdodDogMDtcclxufVxyXG5cclxuLmNvbC1zZXQtZGVmYXVsdCB7XHJcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi5jb2wtcmVzZXQtZGVmYXVsdCAuYnRuLFxyXG4uY29sLXNldC1kZWZhdWx0IC5idG4ge1xyXG4gIG1pbi13aWR0aDogMTUwcHg7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gIC5jb2wtZm9ybS1sYWJlbCB7XHJcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xyXG4gIH1cclxufVxyXG4iLCIuc2VwYXJhdG9yLWhyIHtcbiAgbWFyZ2luOiA3cHggNXB4O1xuICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7XG59XG5cbi5zdWJzZXBhcmF0b3ItaHIge1xuICBtYXJnaW46IDdweCA1cHg7XG4gIGJvcmRlci10b3Atc3R5bGU6IG5vbmU7XG59XG5cbi5sYXN0LXNlcGFyYXRvci1ociB7XG4gIG1hcmdpbi10b3A6IDdweDtcbn1cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIG1pbi1oZWlnaHQ6IDA7XG59XG5cbi5jaGVja2JveCB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uY29sLXJlc2V0LWRlZmF1bHQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4uY29sLXNldC1kZWZhdWx0IHtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG5cbi5jb2wtcmVzZXQtZGVmYXVsdCAuYnRuLFxuLmNvbC1zZXQtZGVmYXVsdCAuYnRuIHtcbiAgbWluLXdpZHRoOiAxNTBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtZm9ybS1sYWJlbCB7XG4gICAgcGFkZGluZy10b3A6IDVweDtcbiAgfVxufSJdfQ== */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, OnInit, OnDestroy, ViewChild } from '@angular/core';\r\n\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { BootstrapSelectDirective } from '../../directives/bootstrap-select.directive';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { ThemeManager } from '../../services/theme-manager';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Permission } from '../../models/permission.model';\r\n\r\n\r\n@Component({\r\n selector: 'user-preferences',\r\n templateUrl: './user-preferences.component.html',\r\n styleUrls: ['./user-preferences.component.scss']\r\n})\r\nexport class UserPreferencesComponent implements OnInit, OnDestroy {\r\n\r\n themeSelectorToggle = true;\r\n\r\n languageChangedSubscription: any;\r\n\r\n @ViewChild('languageSelector', { static: true })\r\n languageSelector: BootstrapSelectDirective;\r\n\r\n @ViewChild('homePageSelector', { static: true })\r\n homePageSelector: BootstrapSelectDirective;\r\n\r\n constructor(\r\n private alertService: AlertService,\r\n private translationService: AppTranslationService,\r\n private accountService: AccountService,\r\n public themeManager: ThemeManager,\r\n public configurations: ConfigurationService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.languageChangedSubscription = this.translationService.languageChanged$.subscribe(data => {\r\n this.themeSelectorToggle = false;\r\n\r\n setTimeout(() => {\r\n this.languageSelector.refresh();\r\n this.homePageSelector.refresh();\r\n this.themeSelectorToggle = true;\r\n });\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.languageChangedSubscription.unsubscribe();\r\n }\r\n\r\n\r\n\r\n reloadFromServer() {\r\n this.alertService.startLoadingMessage();\r\n\r\n this.accountService.getUserPreferences()\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n\r\n this.configurations.import(results);\r\n\r\n this.alertService.showMessage('Defaults loaded!', '', MessageSeverity.info);\r\n\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve user preferences from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n setAsDefault() {\r\n this.alertService.showDialog('Are you sure you want to set the current configuration as your new defaults?', DialogType.confirm,\r\n () => this.setAsDefaultHelper(),\r\n () => this.alertService.showMessage('Operation Cancelled!', '', MessageSeverity.default));\r\n }\r\n\r\n setAsDefaultHelper() {\r\n this.alertService.startLoadingMessage('', 'Saving new defaults');\r\n\r\n this.accountService.updateUserPreferences(this.configurations.export())\r\n .subscribe(response => {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('New Defaults', 'Account defaults updated successfully', MessageSeverity.success);\r\n\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', `An error occured whilst saving configuration defaults.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n\r\n resetDefault() {\r\n this.alertService.showDialog('Are you sure you want to reset your defaults?', DialogType.confirm,\r\n () => this.resetDefaultHelper(),\r\n () => this.alertService.showMessage('Operation Cancelled!', '', MessageSeverity.default));\r\n }\r\n\r\n resetDefaultHelper() {\r\n this.alertService.startLoadingMessage('', 'Resetting defaults');\r\n\r\n this.accountService.updateUserPreferences(null)\r\n .subscribe(response => {\r\n this.alertService.stopLoadingMessage();\r\n this.configurations.import(null);\r\n this.alertService.showMessage('Defaults Reset', 'Account defaults reset completed successfully', MessageSeverity.success);\r\n\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', `An error occured whilst resetting configuration defaults.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n get canViewCustomers() {\r\n return this.accountService.userHasPermission(Permission.viewUsersPermission); // eg. viewCustomersPermission\r\n }\r\n\r\n get canViewProducts() {\r\n return this.accountService.userHasPermission(Permission.viewUsersPermission); // eg. viewProductsPermission\r\n }\r\n\r\n get canViewOrders() {\r\n return true; // eg. viewOrdersPermission\r\n }\r\n}\r\n","export default \".user-role {\\n font-size: 0.8em !important;\\n margin-right: 1px;\\n}\\n\\n.control-box {\\n margin-bottom: 5px;\\n}\\n\\n.search-box {\\n margin: 0;\\n}\\n\\n.nav-item.toolbaritem a {\\n padding-top: 3px;\\n padding-bottom: 3px;\\n min-width: 100px;\\n}\\n\\n.user-disabled {\\n color: #777;\\n font-style: italic;\\n}\\n\\n.locked-out {\\n background-color: orangered;\\n color: whitesmoke;\\n width: 100%;\\n display: inline-block;\\n padding-left: 5px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxjb250cm9sc1xcdXNlcnMtbWFuYWdlbWVudC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvY29tcG9uZW50cy9jb250cm9scy91c2Vycy1tYW5hZ2VtZW50LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0ksMkJBQUE7RUFDQSxpQkFBQTtBQ0FKOztBREdBO0VBQ0ksa0JBQUE7QUNBSjs7QURHQTtFQUNJLFNBQUE7QUNBSjs7QURHQTtFQUNJLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtBQ0FKOztBREdBO0VBQ0ksV0FBQTtFQUNBLGtCQUFBO0FDQUo7O0FER0E7RUFDSSwyQkFBQTtFQUNBLGlCQUFBO0VBQ0EsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsaUJBQUE7QUNBSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvdXNlcnMtbWFuYWdlbWVudC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4udXNlci1yb2xlIHtcclxuICAgIGZvbnQtc2l6ZTogMC44ZW0gIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi1yaWdodDogMXB4O1xyXG59XHJcblxyXG4uY29udHJvbC1ib3gge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcblxyXG4uc2VhcmNoLWJveCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5uYXYtaXRlbS50b29sYmFyaXRlbSBhIHtcclxuICAgIHBhZGRpbmctdG9wOiAzcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogM3B4O1xyXG4gICAgbWluLXdpZHRoOiAxMDBweDtcclxufVxyXG5cclxuLnVzZXItZGlzYWJsZWQge1xyXG4gICAgY29sb3I6ICM3Nzc7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi5sb2NrZWQtb3V0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IG9yYW5nZXJlZDtcclxuICAgIGNvbG9yOiB3aGl0ZXNtb2tlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxufSIsIi51c2VyLXJvbGUge1xuICBmb250LXNpemU6IDAuOGVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuXG4uY29udHJvbC1ib3gge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5zZWFyY2gtYm94IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubmF2LWl0ZW0udG9vbGJhcml0ZW0gYSB7XG4gIHBhZGRpbmctdG9wOiAzcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzcHg7XG4gIG1pbi13aWR0aDogMTAwcHg7XG59XG5cbi51c2VyLWRpc2FibGVkIHtcbiAgY29sb3I6ICM3Nzc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmxvY2tlZC1vdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2VyZWQ7XG4gIGNvbG9yOiB3aGl0ZXNtb2tlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbn0iXX0= */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, OnInit, AfterViewInit, TemplateRef, ViewChild, Input } from '@angular/core';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\n\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AppTranslationService } from '../../services/app-translation.service';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { User } from '../../models/user.model';\r\nimport { Role } from '../../models/role.model';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { UserEdit } from '../../models/user-edit.model';\r\nimport { UserInfoComponent } from './user-info.component';\r\n\r\n\r\n@Component({\r\n selector: 'users-management',\r\n templateUrl: './users-management.component.html',\r\n styleUrls: ['./users-management.component.scss']\r\n})\r\nexport class UsersManagementComponent implements OnInit, AfterViewInit {\r\n columns: any[] = [];\r\n rows: User[] = [];\r\n rowsCache: User[] = [];\r\n editedUser: UserEdit;\r\n sourceUser: UserEdit;\r\n editingUserName: { name: string };\r\n loadingIndicator: boolean;\r\n\r\n allRoles: Role[] = [];\r\n\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n @ViewChild('userNameTemplate', { static: true })\r\n userNameTemplate: TemplateRef;\r\n\r\n @ViewChild('rolesTemplate', { static: true })\r\n rolesTemplate: TemplateRef;\r\n\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n @ViewChild('userEditor', { static: true })\r\n userEditor: UserInfoComponent;\r\n\r\n constructor(private alertService: AlertService, private translationService: AppTranslationService, private accountService: AccountService) {\r\n }\r\n\r\n\r\n ngOnInit() {\r\n\r\n const gT = (key: string) => this.translationService.getTranslation(key);\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'jobTitle', name: gT('users.management.Title'), width: 50 },\r\n { prop: 'userName', name: gT('users.management.UserName'), width: 90, cellTemplate: this.userNameTemplate },\r\n { prop: 'fullName', name: gT('users.management.FullName'), width: 120 },\r\n { prop: 'email', name: gT('users.management.Email'), width: 140 },\r\n { prop: 'roles', name: gT('users.management.Roles'), width: 120, cellTemplate: this.rolesTemplate },\r\n { prop: 'phoneNumber', name: gT('users.management.PhoneNumber'), width: 100 }\r\n ];\r\n\r\n if (this.canManageUsers) {\r\n this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n }\r\n\r\n this.loadData();\r\n }\r\n\r\n\r\n ngAfterViewInit() {\r\n\r\n this.userEditor.changesSavedCallback = () => {\r\n this.addNewUserToList();\r\n this.editorModal.hide();\r\n };\r\n\r\n this.userEditor.changesCancelledCallback = () => {\r\n this.editedUser = null;\r\n this.sourceUser = null;\r\n this.editorModal.hide();\r\n };\r\n }\r\n\r\n\r\n addNewUserToList() {\r\n if (this.sourceUser) {\r\n Object.assign(this.sourceUser, this.editedUser);\r\n\r\n let sourceIndex = this.rowsCache.indexOf(this.sourceUser, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.rowsCache, sourceIndex, 0);\r\n }\r\n\r\n sourceIndex = this.rows.indexOf(this.sourceUser, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.rows, sourceIndex, 0);\r\n }\r\n\r\n this.editedUser = null;\r\n this.sourceUser = null;\r\n } else {\r\n const user = new User();\r\n Object.assign(user, this.editedUser);\r\n this.editedUser = null;\r\n\r\n let maxIndex = 0;\r\n for (const u of this.rowsCache) {\r\n if ((u as any).index > maxIndex) {\r\n maxIndex = (u as any).index;\r\n }\r\n }\r\n\r\n (user as any).index = maxIndex + 1;\r\n\r\n this.rowsCache.splice(0, 0, user);\r\n this.rows.splice(0, 0, user);\r\n this.rows = [...this.rows];\r\n }\r\n }\r\n\r\n\r\n loadData() {\r\n this.alertService.startLoadingMessage();\r\n this.loadingIndicator = true;\r\n\r\n if (this.canViewRoles) {\r\n this.accountService.getUsersAndRoles().subscribe(results => this.onDataLoadSuccessful(results[0], results[1]), error => this.onDataLoadFailed(error));\r\n } else {\r\n this.accountService.getUsers().subscribe(users => this.onDataLoadSuccessful(users, this.accountService.currentUser.roles.map(x => new Role(x))), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n\r\n\r\n onDataLoadSuccessful(users: User[], roles: Role[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n users.forEach((user, index, users) => {\r\n (user as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...users];\r\n this.rows = users;\r\n\r\n this.allRoles = roles;\r\n }\r\n\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve users from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.userName, r.fullName, r.email, r.phoneNumber, r.jobTitle, r.roles));\r\n }\r\n\r\n onEditorModalHidden() {\r\n this.editingUserName = null;\r\n this.userEditor.resetForm(true);\r\n }\r\n\r\n\r\n newUser() {\r\n this.editingUserName = null;\r\n this.sourceUser = null;\r\n this.editedUser = this.userEditor.newUser(this.allRoles);\r\n this.editorModal.show();\r\n }\r\n\r\n\r\n editUser(row: UserEdit) {\r\n this.editingUserName = { name: row.userName };\r\n this.sourceUser = row;\r\n this.editedUser = this.userEditor.editUser(row, this.allRoles);\r\n this.editorModal.show();\r\n }\r\n\r\n\r\n deleteUser(row: UserEdit) {\r\n this.alertService.showDialog('Are you sure you want to delete \\\"' + row.userName + '\\\"?', DialogType.confirm, () => this.deleteUserHelper(row));\r\n }\r\n\r\n\r\n deleteUserHelper(row: UserEdit) {\r\n\r\n this.alertService.startLoadingMessage('Deleting...');\r\n this.loadingIndicator = true;\r\n\r\n this.accountService.deleteUser(row)\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.rowsCache = this.rowsCache.filter(item => item !== row);\r\n this.rows = this.rows.filter(item => item !== row);\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Delete Error', `An error occured whilst deleting the user.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n\r\n\r\n\r\n get canAssignRoles() {\r\n return this.accountService.userHasPermission(Permission.assignRolesPermission);\r\n }\r\n\r\n get canViewRoles() {\r\n return this.accountService.userHasPermission(Permission.viewRolesPermission);\r\n }\r\n\r\n get canManageUsers() {\r\n return this.accountService.userHasPermission(Permission.manageUsersPermission);\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY29udHJvbHMvd3Bwb2RkaWFsb2cuY29tcG9uZW50LnNjc3MifQ== */\"","import { Inject } from '@angular/core';\r\nimport { AfterViewInit } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Dimensions, ImageCroppedEvent, ImageTransform } from 'ngx-image-cropper';\r\nimport { isNullOrUndefined } from 'util';\r\ndeclare var Tesseract;\r\ndeclare var $ : any;\r\n\r\n@Component({\r\n selector: 'app-wppoddialog',\r\n templateUrl: './wppoddialog.component.html',\r\n styleUrls: ['./wppoddialog.component.scss']\r\n})\r\nexport class WppoddialogComponent implements AfterViewInit, OnInit {\r\n imageChangedEvnt: any = '';\r\n croppedImage: any = '';\r\n canvasRotation = 0;\r\n cropper: any;\r\n rotation = 0;\r\n scale = 1;\r\n showCropper = false;\r\n imageTransform: ImageTransform = {};\r\n param: PoddialogModel = null;\r\n\r\n title: string;\r\n imageid: string;\r\n podimage:any;\r\n constructor(public dialogRef: MatDialogRef, private localstre: LocalStoreManager,\r\n @Inject(MAT_DIALOG_DATA) public data: PoddialogModel, private ServiceMaster: Masters, private transaction: TransactionService) {\r\n this.imageid = data.imageid;\r\n this.param = data;\r\n }\r\n\r\n \r\n ngOnInit() {\r\n \r\n }\r\n ngAfterViewInit() {\r\n this.transaction.GetWPImage(this.imageid).subscribe(_result => {\r\n let result: any = _result;\r\n this.podimage = result.imagestring;\r\n this.test(this.podimage);\r\n $('#txtpoddate').val(this.param.Podate);\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n imageCropped(event: ImageCroppedEvent) {\r\n this.croppedImage = event.base64;\r\n this.test(event.base64)\r\n }\r\n rotateLeft() {\r\n this.canvasRotation--;\r\n }\r\n\r\n rotateRight() {\r\n this.canvasRotation++;\r\n }\r\n\r\n flipHorizontal() {\r\n this.imageTransform = {\r\n ...this.imageTransform,\r\n flipH: !this.imageTransform.flipH\r\n };\r\n }\r\n\r\n flipVertical() {\r\n this.imageTransform = {\r\n ...this.imageTransform,\r\n flipV: !this.imageTransform.flipV\r\n };\r\n }\r\n imageLoaded() {\r\n this.showCropper = true;\r\n }\r\n\r\n loadImageFailed() {\r\n console.log('Load failed');\r\n }\r\n\r\n zoomOut() {\r\n this.scale -= .1;\r\n this.imageTransform = {\r\n ...this.imageTransform,\r\n scale: this.scale\r\n };\r\n }\r\n\r\n zoomIn() {\r\n this.scale += .1;\r\n this.imageTransform = {\r\n ...this.imageTransform,\r\n scale: this.scale\r\n };\r\n }\r\n onDataLoadFailed(error: any) {\r\n error;\r\n alert(\"Error\");\r\n }\r\n onConfirm(): void {\r\n\r\n \r\n var Awbno: string = $('#txtAwbno').val().toString();\r\n if (Awbno.length == 10) {\r\n this.transaction.GetDrsno(Awbno, 'One-x Mahipalpur').subscribe(result => {\r\n const _result: any = result\r\n if (_result.length > 0 && !isNullOrUndefined(result[0].drsNo)) {\r\n var pospod = new WpPostPod\r\n pospod.Awbno = Awbno;\r\n pospod.Drsno = (result[0].drsNo);\r\n pospod.Latitude = \"\";\r\n pospod.Longitude = \"\";\r\n pospod.messageid = this.data.Messageid;\r\n pospod.Mobileno = this.data.mobileno;\r\n pospod.Otp = \"0000\";\r\n pospod.Recievername = \"\";\r\n pospod.podDate = $('#txtpoddate').val().toString();\r\n pospod.SignImage = this.croppedImage.replace(\"data:image/png;base64,\", \"\");\r\n this.transaction.PostWpImage(pospod).subscribe(result => {\r\n alert(\"Pod Updated Successfully\"); \r\n this.dialogRef.close(true);\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n alert(\"Drs Not found\");\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n\r\n }\r\n else {\r\n $('#txtAwbno').val().toString();\r\n } \r\n\r\n }\r\n\r\n test(data:any) {\r\n //Tesseract.recognize(data).then(function (result) {\r\n // alert(result.text);\r\n //});\r\n } \r\n\r\n onDismiss(): void {\r\n // Close the dialog, return false\r\n \r\n\r\n this.dialogRef.close(false);\r\n }\r\n}\r\nexport class PoddialogModel {\r\n\r\n constructor(public title: string, \r\n public imageid: string,public Messageid: string, public mobileno: string,public Podate:string){\r\n }\r\n \r\n}\r\nexport class WpPostPod {\r\n public Awbno: string;\r\n public Mobileno: string;\r\n public Drsno: string; \r\n public SignImage:string\r\n public Longitude: string; \r\n public Latitude: string;\r\n public Recievername: string;\r\n public Otp: string;\r\n public messageid: string;\r\n public podDate: string;\r\n\r\n }\r\nexport class poddata {\r\n\r\n\r\n public dsrno: string\r\n public deliveryboy: string\r\n public date: string\r\n public time: string\r\n public Awbno: string\r\n public otp: string\r\n public receivername: string\r\n public confirmationtype: string\r\n public confirmationremark: string\r\n public base64Outputdrsimage: any;\r\n public reciveathub: string;\r\n public recivedBy: string;\r\n public rtoaction: string;\r\n public remark: string\r\n public officename: string\r\n public DrsDate: string\r\n public ConrMobileno: string\r\n public ConsMobileno: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY3VzdG9tZXItYmlsbC1wYXltZW50L2N1c3RvbWVyLWJpbGwtcGF5bWVudC5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, ElementRef, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var require: any;\r\ndeclare var $: any;\r\nimport * as pdfMake from \"pdfmake/build/pdfmake\";\r\nimport * as pdfFonts from \"pdfmake/build/vfs_fonts\";\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nconst htmlToPdfmake = require(\"html-to-pdfmake\");\r\n(pdfMake as any).vfs = pdfFonts.pdfMake.vfs;\r\n\r\n@Component({\r\n selector: 'app-customer-bill-payment',\r\n templateUrl: './customer-bill-payment.component.html',\r\n styleUrls: ['./customer-bill-payment.component.scss']\r\n})\r\nexport class CustomerBillPaymentComponent implements OnInit {\r\n rows: any = [];\r\n columns: any = [];\r\n payData: PayResult;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n tledgermaster: any;\r\n logindata: any;\r\n AutocompList: any;\r\n constructor(private transaction: TransactionService, private ServiceMaster: Masters,\r\n private alertService: AlertService, private configurations: ConfigurationService,\r\n private authService: AuthService, public router: ActivatedRoute, private _router: Router,\r\n private tallyservice: TallyService, private localstre: LocalStoreManager) { }\r\n\r\n ngOnInit() {\r\n //this.loadData();\r\n this.columns = [\r\n { prop: 'created_At', name: 'Date', width: 50 },\r\n { prop: 'customerName', name: 'Name', width: 100 },\r\n { prop: 'orderid', name: 'Order ID', width: 50 },\r\n { prop: 'paymentid', name: 'Pay Id', width: 50 },\r\n { prop: 'orderAmount', name: 'Order Amount', width: 20 },\r\n { prop: 'amount_paid', name: 'Paid', width: 20 },\r\n { prop: 'amount_due', name: 'Due', width: 20 },\r\n { prop: 'status', name: 'Status', width: 30 },\r\n ];\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.logindata = this.localstre.getData(\"BaLoginData\");\r\n this.tallyservice.GetTallyLedger().subscribe(result => {\r\n if (result) {\r\n this.localstre.saveSessionData(result, \"TallyLedgerMaster\")\r\n this.tledgermaster = result;\r\n }\r\n });\r\n }\r\n CreateVoucher(row: any) {\r\n \r\n this.consignereditorModal.show();\r\n \r\n\r\n }\r\n \r\n loadData() {\r\n let todt = $('#todate').val();\r\n let fromdt = $('#fromdate').val()\r\n if (fromdt == '') {\r\n this.alertService.showMessage(\"From Date\", \"From Date cannot blank\", MessageSeverity.error)\r\n $('#fromdate').focus();\r\n return;\r\n }\r\n if (todt == '') {\r\n this.alertService.showMessage(\"From Date\", \"From Date cannot blank\", MessageSeverity.error)\r\n $('#todate').focus();\r\n return;\r\n }\r\n \r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Sp_GetPaymentOrders'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"fromdate\"\r\n pr.PropertyValue = fromdt.toString();\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"todate\"\r\n pr.PropertyValue = todt.toString();\r\n Parameter[1] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.OngetsuccessGatePass(result), error => this.onDataLoadFailed(error))\r\n }\r\n GetLedgerHelp($event) {\r\n\r\n this.AutocompList = [];\r\n this.tledgermaster.forEach((ledger, index, ledarr) => {\r\n if (this.AutocompList.length == 0) {\r\n this.AutocompList[0] = ledger.name;\r\n }\r\n else {\r\n this.AutocompList.push(ledger.name);\r\n }\r\n });\r\n $('#tallyledger').autocomplete({\r\n source: this.AutocompList,\r\n delay: 50\r\n });\r\n }\r\n\r\n OngetsuccessGatePass(result: any) {\r\n var data = result\r\n this.payData = result;\r\n this.rows = this.payData.table;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n}\r\nexport interface PayResult {\r\n table: Table[]\r\n}\r\n\r\nexport interface Table {\r\n customerCode: string\r\n customerName: string\r\n orderid: string\r\n paymentid?: string\r\n orderAmount: number\r\n amount_paid: number\r\n amount_due: number\r\n currency: string\r\n status: string\r\n created_At: string\r\n notes: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY3VzdG9tZXItYm9vay1lbWFpbC9jdXN0b21lci1ib29rLWVtYWlsLmNvbXBvbmVudC5zY3NzIn0= */\"","import { DatePipe } from '@angular/common';\r\nimport { AfterViewInit, Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { interval, Subscription } from 'rxjs';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { Bookmail } from '../../services/transactionendpoint.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { CustomExcelService } from '../../services/customexcel.service';\r\nimport { promise } from 'protractor';\r\nimport { async } from '@angular/core/testing';\r\n@Component({\r\n selector: 'app-customer-book-email',\r\n templateUrl: './customer-book-email.component.html',\r\n styleUrls: ['./customer-book-email.component.scss']\r\n})\r\nexport class CustomerBookEmailComponent implements OnInit,AfterViewInit {\r\n custlist: any[] = [];\r\n loadingIndicator: boolean;\r\n subscription: Subscription;\r\n constructor(public dialog: MatDialog, private excelService: CustomExcelService, private transaction: TransactionService,public datepipe: DatePipe, private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters, private localstre: LocalStoreManager) {\r\n }\r\n ngAfterViewInit() {\r\n this.getcustlist(\"\");\r\n\r\n }\r\n ngOnInit() {\r\n\r\n\r\n let currentDateTime = this.datepipe.transform((new Date), 'MM/dd/yyyy H:mm');\r\n const source = interval(100000);\r\n const text = 'Your Text Here';\r\n //this.subscription = source.subscribe(val => this.getcustlist(currentDateTime));\r\n\r\n //Object { customerId: \"a16d38b8-d576-4ec9-9663-022d3c03dd44\", customerName: \"Intouch\", customercode: \"DP000013\", … }\r\n\r\n\r\n }\r\n getcustlist(DATE: string) {\r\n let dt = new Date();\r\n //if (dt.getHours() == 21 && dt.getMinutes() == 30) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'getCustList'\r\n let Parameter = new Array();\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"statename\"\r\n pr.PropertyValue = this.localstre.getData(\"BaLoginData\")[0].state;\r\n Parameter = null;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.custlist = result\r\n this.processemail(result);\r\n }, error => this.onDataLoadFailed(error))\r\n //}\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve customer from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n async processemail(res) {\r\n this.custlist = res;\r\n if (this.custlist.length > 0) {\r\n for( let i = 0; i < this.custlist.length; i++) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getEmailSendOrnot'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"CustomerCode\"\r\n pr.PropertyValue = this.custlist[i].customercode\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n await this.ServiceMaster.Postcommondata(Req).subscribe(async result => await this.sendmail(result, this.custlist[i].customercode, this.custlist[i].contactEmail, this.custlist[i].customerName, this.custlist[i].customercode.city), error => this.onDataLoadFailed(error))\r\n \r\n }\r\n\r\n\r\n }\r\n }\r\n async sendmail(issendmail:any,custcode,email,Name,city) {\r\n if (!issendmail[0].sendmail && !isNullOrUndefined(email)) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetCustomerBooking'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Custmercode\"\r\n pr.PropertyValue = custcode\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n await this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.generateExcel(result, custcode, email, Name, city)\r\n }\r\n , error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n\r\n async generateExcel(result, custcode, _email, Name, city){\r\n\r\n let message = \"\";\r\n if (result.length > 0) { \r\n\r\n message = \"

From:

\" +\r\n \"

Team Onex.

\" +\r\n \"

To M/S \" + Name + \"

\" +\r\n \"

\" + city + \"

\" +\r\n \"

Client Code : \" + custcode + \"

\" +\r\n \"

Dear Sir/Madam

\" +\r\n \"

Details of the shipment booked on : \" + this.datepipe.transform((new Date()), 'dd/MM/yyyy') +\"along with the status of the booking done till date is enclosed\"+ \"

\" + \r\n \"

Team Onex

\" +\r\n \"

https://www.one-x.in

\";\r\n var email: Bookmail = new Bookmail();\r\n email.customercode = custcode;\r\n email.message = message\r\n email.ExcelData = \"\";\r\n this.transaction.PostBookEmail(email).subscribe(res => {\r\n this.alertService.showMessage(\"Email\", \"Mail send successfully\", MessageSeverity.info);\r\n }, error => {\r\n this.alertService.showMessage(\"Email\", \"Mail not send successfully\", MessageSeverity.error);\r\n })\r\n \r\n\r\n }\r\n }\r\n convertBlobToBase64 = (blob) => new Promise((resolve, reject) => {\r\n const reader = new FileReader;\r\n reader.onerror = reject;\r\n reader.onload = () => {\r\n resolve(reader.result);\r\n };\r\n reader.readAsDataURL(blob);\r\n });\r\n \r\n}\r\n\r\n//\"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\"\r\n//var row = \"\"\r\n\r\n//result.forEach((custb, indexb, custarb) => {\r\n// row = \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\" +\r\n// \"\"\r\n// message += row;\r\n\r\n//});\r\n//message = message + \" {\r\n this.strcustomerId = params.customerId;\r\n\r\n }\r\n );\r\n var CustomerId = this.strcustomerId;\r\n this.getregions(CustomerId);\r\n this.getproductdetails(CustomerId);\r\n this.getGetCustomerMapped(CustomerId);\r\n }\r\n getregions(CustomerId) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetCoustomerdetails'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"CustomerId\"\r\n pr.PropertyValue = CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getCoustomerdetails(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getCoustomerdetails(result) {\r\n this.customercode = result[0].customercode;\r\n this.CustomerName = result[0].customerName;\r\n this.ContactPerson = result[0].contactPerson;\r\n this.ContactMobileNo = result[0].contactMobileNo;\r\n this.ContactEmail = result[0].contactEmail;\r\n this.ContactValidForm = result[0].contactValidForm;\r\n this.ContactValidTill = result[0].contactValidTill;\r\n this.HouseNo = result[0].houseNo; \r\n this.StreetName = result[0].streetName;\r\n this.StateName = result[0].stateName;\r\n this.City = result[0].city;\r\n this.Pincode = result[0].pincode;\r\n this.gstnumber = result[0].gstnumber;\r\n this.panno = result[0].panno;\r\n this.dateOfEstablishment = result[0].dateOfEstablishment;\r\n this.natureOfService = result[0].natureOfService;\r\n this.bPersonName = result[0].bPersonName;\r\n this.bemail = result[0].bemail;\r\n this.bmobileno = result[0].bmobileno;\r\n this.blandLineno = result[0].blandLineno;\r\n this.Designation = result[0].designation;\r\n this.MapedCityNamelocal2 = result[0].mapedCityNamelocal2;\r\n this.Branch = result[0].branch;\r\n this.Signedby = result[0].signedby;\r\n this.ContactDate = result[0].contactDate;\r\n this.ExecutiveName = result[0].executiveName;\r\n this.Domsticdocment = result[0].domsticdocment;\r\n this.DomsticParcel = result[0].domsticParcel;\r\n this.Interdocment = result[0].interdocment;\r\n this.InterParcel = result[0].interParcel;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n getproductdetails(CustomerId) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetCoustomerratedetails'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"CustomerId\"\r\n pr.PropertyValue = CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getGetCoustomerratedetails(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getGetCoustomerratedetails(result) {\r\n var tmp = result\r\n var productname = \"\";\r\n var j = 1;\r\n this.printcustmerObj = [];\r\n var rn: printCustomerRateMaster = new printCustomerRateMaster()\r\n for (let i = 0; i < result.length; i++) {\r\n rn = new printCustomerRateMaster();\r\n rn.Serialno = j;\r\n \r\n if (productname != result[i].productName) {\r\n productname = result[i].productName\r\n rn.ProductName = result[i].productName\r\n } else {\r\n rn.ProductName = '';\r\n }\r\n \r\n rn.Destination = result[i].destgroupName;\r\n rn.FromWeight = result[i].fromWt;\r\n rn.ToWeight = result[i].toWt;\r\n rn.Slab1 = result[i].slab1;\r\n rn.Rate1 = result[i].rate1;\r\n rn.Slab2 = result[i].slab2;\r\n rn.Rate2 = result[i].rate2;\r\n rn.Pslab = result[i].pslab;\r\n rn.Prate = result[i].prate;\r\n if (this.printcustmerObj.length == 0) {\r\n this.printcustmerObj[0] = rn;\r\n j++;\r\n }\r\n else {\r\n this.printcustmerObj.push(rn);\r\n j++;\r\n }\r\n\r\n }\r\n }\r\n getGetCustomerMapped(CustomerId) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetCustomermapping'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"CustomerId\"\r\n pr.PropertyValue = CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getGetCustomerMapping(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n\r\n getGetCustomerMapping(result) {\r\n var tmp = result\r\n var j = 1;\r\n this.printCustomerMapping = [];\r\n var rn: printCustomerMapping = new printCustomerMapping()\r\n for (let i = 0; i < result.length; i++) {\r\n rn = new printCustomerMapping();\r\n rn.Serialno = j;\r\n rn.RegionName = result[i].regionName;\r\n rn.mappedname = result[i].mappedname;\r\n \r\n if (this.printCustomerMapping.length == 0) {\r\n this.printCustomerMapping[0] = rn;\r\n j++;\r\n }\r\n else {\r\n this.printCustomerMapping.push(rn);\r\n j++;\r\n }\r\n\r\n }\r\n }\r\n}\r\nexport class printCustomerRateMaster {\r\n public Serialno: any\r\n public ProductName: string\r\n public Destination: string\r\n public FromWeight: string\r\n public ToWeight: string\r\n public Slab1: string\r\n public Rate1: string\r\n public Slab2: string\r\n public Rate2: string\r\n public Pslab: string\r\n public Prate: string\r\n}\r\nexport class printCustomerMapping {\r\n public Serialno: any\r\n public RegionName: string\r\n public mappedname: string\r\n \r\n}\r\n \r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY3VzdG9tZXJzL2N1c3RvbWVycy5jb21wb25lbnQuc2NzcyJ9 */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n\r\n@Component({\r\n selector: 'customers',\r\n templateUrl: './customers.component.html',\r\n styleUrls: ['./customers.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class CustomersComponent {\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvY3VzdHJvbWVyLW1hc3Rlci9jdXN0cm9tZXItbWFzdGVyLmNvbXBvbmVudC5zY3NzIn0= */\"","import { flatten } from '@angular/compiler';\r\nimport { AfterViewInit, ViewChild, ViewChildren } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { letterSpacing } from 'html2canvas/dist/types/css/property-descriptors/letter-spacing';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { LocalStoreManager } from 'src/app/services/local-store-manager.service';\r\n//import { document } from 'ngx-bootstrap';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Address, AddressmasterComponent } from '../controls/addressmaster.component';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { ConfirmDialogRateModels, DailogRateMasterComponent } from '../controls/dailog-rate-master.component';\r\nimport { MatDialog } from '@angular/material';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { ConfirmDialogocModels, DialogOtherChargeComponent, OtherChargesRateMaster } from '../controls/dialog-other-charge.component';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\n\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-custromer-master',\r\n templateUrl: './custromer-master.component.html',\r\n styleUrls: ['./custromer-master.component.scss']\r\n})\r\nexport class CustromerMasterComponent implements OnInit {\r\n\r\n editedCustomers: CustomerName = new CustomerName();\r\n columns: any[] = [];\r\n columnsrate: any[] = [];\r\n rows: CustomerName[] = [];\r\n rowsCache: CustomerName[] = [];\r\n vaddress = new Address();\r\n rowsrate: CustRate[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n\r\n arrcityba: any[] = [];\r\n arrcity2ba: any[] = [];\r\n arrcityrate: any[] = [];\r\n arrcity2rate: any[] = [];\r\n public officearr: any[] = [];\r\n otherchg:OtherChargesRateMaster[]=[]\r\n localstate2: any = \"\";\r\n localcity2: any = \"\";\r\n isSate2: any = false;\r\n isCity2: any = false;\r\n isEditModePin:any=false;\r\n typee: string = \"0\";\r\n isCity:any=false;\r\n isRegion:any=false;\r\n istable: any = false;\r\n dialogRef: any;\r\n\r\n GCustomerId: any;\r\n Local1: boolean = true;\r\n Local2: boolean = true;\r\n WithinState: boolean = true;\r\n WithinRegion1: boolean = true;\r\n WithinRegion2: boolean = true;\r\n Zone1: boolean = true;\r\n Zone2: boolean = true;\r\n Metro1: boolean = true;\r\n Metro2: boolean = true;\r\n SpecialStation1: boolean = true;\r\n SpecialStation2: boolean = true;\r\n DiplomaticStation1: boolean = true;\r\n DiplomaticStation2: boolean = true;\r\n\r\n Local1city: any[] = [];\r\n Local2city: any[] = [];\r\n WithinStatecity: any[] = [];\r\n WithinRegion1city: any[] = [];\r\n WithinRegion2city: any[] = [];\r\n Zone1city: any[] = [];\r\n Zone2city: any[] = [];\r\n Metro1city: any[] = [];\r\n Metro2city: any[] = [];\r\n SpecialStation1city: any[] = [];\r\n SpecialStation2city: any[] = [];\r\n DiplomaticStation1city: any[] = [];\r\n DiplomaticStation2city: any[] = [];\r\n custregion:any[]=[]\r\n Local1city1: any[] = [];\r\n Local2city1: any[] = [];\r\n WithinStatecity1: any[] = [];\r\n WithinRegion1city1: any[] = [];\r\n WithinRegion2city1: any[] = [];\r\n Zone1city1: any[] = [];\r\n Zone2city1: any[] = [];\r\n Metro1city1: any[] = [];\r\n Metro2city1: any[] = [];\r\n SpecialStation1city1: any[] = [];\r\n SpecialStation2city1: any[] = [];\r\n DiplomaticStation1city1: any[] = [];\r\n DiplomaticStation2city1: any[] = [];\r\n\r\n isShowEditModePin: any;\r\n\r\n columnsLocal1: any[] = [];\r\n columnsLocal2: any[] = [];\r\n columnsWithinState: any[] = [];\r\n columnsWithinRegion1: any[] = [];\r\n columnsWithinRegion2: any[] = [];\r\n columnsZone1: any[] = [];\r\n columnsZone2: any[] = [];\r\n columnsMetro1: any[] = [];\r\n columnsMetro2: any[] = [];\r\n columnsSpecialStation1: any[] = [];\r\n columnsSpecialStation2: any[] = [];\r\n columnsDiplomaticStation1: any[] = [];\r\n columnsDiplomaticStation2: any[] = [];\r\n\r\n rowsLocal1: any[] = [];\r\n rowsLocal2: any[] = [];\r\n rowsWithinState: any[] = [];\r\n rowsWithinRegion1: any[] = [];\r\n rowsWithinRegion2: any[] = [];\r\n rowsZone1: any[] = [];\r\n rowsZone2: any[] = [];\r\n rowsMetro1: any[] = [];\r\n rowsMetro2: any[] = [];\r\n rowsSpecialStation1: any[] = [];\r\n rowsSpecialStation2: any[] = [];\r\n rowsDiplomaticStation1: any[] = [];\r\n rowsDiplomaticStation2: any[] = [];\r\n\r\n rowsregion: RegionMaster[] = [];\r\n exRateAndDestGroup: any[] = [];\r\n\r\n\r\n \r\n constructor(public dialog: MatDialog,private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters,private localstre: LocalStoreManager) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n @ViewChild('actionsTemplate2', { static: true })\r\n actionsTemplate2: TemplateRef;\r\n @ViewChild('actionsTemplate3', { static: true })\r\n actionsTemplate3: TemplateRef;\r\n @ViewChild('actionsTemplate4', { static: true })\r\n actionsTemplate4: TemplateRef;\r\n @ViewChild('actionsTemplate5', { static: true })\r\n actionsTemplate5: TemplateRef; \r\n @ViewChildren('addressEditor') addressEditor: AddressmasterComponent;\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n @ViewChild('editorRegionModal', { static: true })\r\n editorRegionModal: ModalDirective;\r\n @ViewChild('indexTemplate1', { static: true })\r\n indexTemplate1: TemplateRef;\r\n @ViewChild('actionfromwt', { static: true })\r\n actionfromwt: TemplateRef;\r\n @ViewChild('actionstowt', { static: true })\r\n actionstowt: TemplateRef;\r\n @ViewChild('actionslab1', { static: true })\r\n actionslab1: TemplateRef;\r\n @ViewChild('actionrate1', { static: true })\r\n actionrate1: TemplateRef;\r\n @ViewChild('actionslab2', { static: true })\r\n actionslab2: TemplateRef;\r\n @ViewChild('actionrate2', { static: true })\r\n actionrate2: TemplateRef;\r\n\r\n @ViewChild('actionpslab', { static: true })\r\n actionpslab: TemplateRef;\r\n @ViewChild('actionprate', { static: true })\r\n actionprate: TemplateRef;\r\n \r\n\r\n\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'customerName', name: 'Customer Name', width: 200 },\r\n { prop: 'customercode', name: 'Code', width: 50 },\r\n { prop: 'contactMobileNo', name: 'Mobile No', width: 50 },\r\n { prop: 'contactEmail', name: 'Email', width: 100 },\r\n ];\r\n this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate3, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 50, cellTemplate: this.actionsTemplate4, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 50, cellTemplate: this.actionsTemplate5, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n \r\n this.columnsLocal1 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsLocal2 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsWithinState = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsWithinRegion1 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsWithinRegion2 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsZone1 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsZone2 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsMetro1 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsMetro2 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsSpecialStation1 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsSpecialStation2 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsDiplomaticStation1 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsDiplomaticStation2 = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.loaddata();\r\n this.getregions(); \r\n }\r\n \r\n ngAfterViewInit() {\r\n this.vaddress = this.addressEditor.editedAddress;\r\n this.editedCustomers.ro = this.localstre.getData(\"User_Office\");\r\n }\r\n confirmDialog_Rate(mes: any, Rate: CustRate[], callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogRateModels(\"RateMaster\", message, true, Rate, null, mes, callback);\r\n this.dialogRef = this.dialog.open(DailogRateMasterComponent, {\r\n disableClose: true,\r\n maxWidth: '100vw',\r\n maxHeight: '100vh',\r\n width: '100%',\r\n height:'100%',\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n confirmDialog_Oc(mes: any, Rate: OtherChargesRateMaster[], callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogocModels(\"other\", message, true, Rate, null, mes, callback);\r\n this.dialogRef = this.dialog.open(DialogOtherChargeComponent, {\r\n disableClose: true,\r\n maxWidth: '100vw',\r\n maxHeight: '100vh',\r\n width: '100%',\r\n height: '100%',\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnOcResultofmodel(dialogResult) });\r\n }\r\n\r\n OnOcResultofmodel(dialogResult) {\r\n this.otherchg = dialogResult\r\n if (!isNullOrUndefined(this.otherchg)) {\r\n this.ServiceMaster.PostCustrate(this.rowsrate).subscribe(result => { this.alertService.showMessage(\"Customer Other Charge\", \"Customer other charge Has Been Saved\", MessageSeverity.success) }, error => { this.alertService.showMessage(\"Customer Other Charges\", \"Error In Customer Other Charge\", MessageSeverity.error) });\r\n\r\n }\r\n }\r\n OnMPSResultofmodel(dialogResult) {\r\n this.rowsrate = dialogResult;\r\n if (!isNullOrUndefined(this.rowsrate)) {\r\n this.ServiceMaster.PostCustrate(this.rowsrate).subscribe(result => { this.alertService.showMessage(\"Customer Rate\", \"Customer Rate Has Been Saved\", MessageSeverity.success) }, error => { this.alertService.showMessage(\"Customer Rate\", \"Error In Customer Rate\", MessageSeverity.error) });\r\n }\r\n } \r\n loaddata() {\r\n this.loadingIndicator = true;\r\n this.ServiceMaster.getCustomer().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n this.GetCityMaster();\r\n this.GetRateCityMaster();\r\n this.Getba();\r\n }\r\n getbaList($event) {\r\n this.Getba();\r\n this.arrcity2ba = this.arrcityba\r\n $('#ba').autocomplete({\r\n source: this.arrcity2ba,\r\n delay: 500\r\n });\r\n }\r\n Getba() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.baonDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n baonDatagetSuccessful(ba: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"ba\") {\r\n this.arrcityba = ba;\r\n }\r\n }\r\n getCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2ba = this.arrcityba\r\n $('#MapedCityNamelocal12').autocomplete({\r\n source: this.arrcity2ba,\r\n delay: 500 \r\n });\r\n }\r\n\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n \r\n LoadSucessdata(Customers: any[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n Customers.forEach((prod, index, Customers) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...Customers];\r\n this.rows = Customers;\r\n }\r\n SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('MapedCityNamelocal12')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n // (document.getElementById('city')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n this.localcity2 += citystate + \",\";\r\n $('#MapedCityNamelocal2').val(this.localcity2);\r\n $('#MapedCityNamelocal12').val('');\r\n $('#MapedCityNamelocal12').focus();\r\n \r\n // (document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1); \r\n\r\n }\r\n }\r\n gethelplist($event, name: string) {\r\n if (name == 'alloffice') {\r\n this.ServiceMaster.getHelplist(name).subscribe(result => this.onhelpDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n $('#Branch').autocomplete({\r\n source: this.officearr,\r\n delay: 100\r\n });\r\n }\r\n }\r\n onhelpDatagetSuccessful(states: string[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.officearr = states;\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertCustomer() {\r\n\r\n //var json=JSON.stringify(this.editedCustomers);\r\n //console.log(json)\r\n if (this.editedCustomers.CustomerName == '' || this.editedCustomers.gstnumber== '') {\r\n this.alertService.showMessage(\"Failure\", \"Please Select Correct Value\", MessageSeverity.error);\r\n return false;\r\n }\r\n var removefirst2digitgstno= this.editedCustomers.gstnumber.slice(2, -3);\r\n if (this.editedCustomers.gstnumber != '' || this.editedCustomers.panno != '') {\r\n if(removefirst2digitgstno == this.editedCustomers.panno){ \r\n }\r\n else{\r\n this.alertService.showMessage(\"Failure\", \"Please Check GST Number or Pan Number\", MessageSeverity.error);\r\n return false;\r\n\r\n }\r\n \r\n \r\n }\r\n this.isSaving = true;\r\n this.editedCustomers.stateName = (document.getElementById('state')).value\r\n this.editedCustomers.cityName = (document.getElementById('city')).value\r\n this.editedCustomers.pinCode = (document.getElementById('pincode')).value\r\n this.editedCustomers.address[0].city = this.editedCustomers.cityName\r\n this.editedCustomers.address[0].stateName = this.editedCustomers.stateName;\r\n this.editedCustomers.address[0].houseNo = (document.getElementById('houseNo')).value\r\n this.editedCustomers.address[0].streetName = (document.getElementById('streetName')).value\r\n this.editedCustomers.address[0].pincode = (document.getElementById('pincode')).value\r\n this.editedCustomers.address[0].landMark = (document.getElementById(\"landMark\")).value;\r\n this.editedCustomers.Branch = (document.getElementById('Branch')).value\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.ServiceMaster.postsaveCustomer(this.editedCustomers).subscribe(vendors => this.saveSuccessHelper(vendors), error => this.saveFailedHelper(error));\r\n }\r\n private saveSuccessHelper(Customers?: CustomerName) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `Customers \\\"${this.editedCustomers.CustomerName + \"-\" + this.editedCustomers.CustomerName}\\\" was created successfully`, MessageSeverity.success);\r\n if (this.rows.length == 0) {\r\n this.rows[0] = Customers[0];\r\n }\r\n else {\r\n this.rows.push(Customers[0]);\r\n }\r\n try {\r\n this.rows.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n }\r\n catch {\r\n\r\n }\r\n this.rows = [...this.rows];\r\n this.rowsCache = [...this.rows];\r\n this.editedCustomers = new CustomerName()\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rows.filter(r => Utilities.searchArray(value, false,r.CustomerCode, r.CustomerName, r.ContactMobileNo));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n \r\n funchnge(dom:any)\r\n {\r\n var tmp: any = dom.target;\r\n if(tmp.checked==true)\r\n {\r\n $(\"#Domsticdocment\" ).prop( \"disabled\", false);\r\n $(\"#DomsticParcel\" ).prop( \"disabled\", false);\r\n }\r\n else{\r\n $(\"#Domsticdocment\" ).prop( \"disabled\", true);\r\n $(\"#DomsticParcel\" ).prop( \"disabled\", true);\r\n $(\"#Domsticdocment\" ).val('');\r\n $(\"#DomsticParcel\" ).val('');\r\n }\r\n \r\n }\r\n funinter(Inter:any)\r\n {\r\n var tmp: any = Inter.target;\r\n if(tmp.checked==true)\r\n {\r\n $(\"#Interdocment\" ).prop( \"disabled\", false);\r\n $(\"#InterParcel\" ).prop( \"disabled\", false);\r\n }\r\n else{\r\n $(\"#Interdocment\" ).prop( \"disabled\", true);\r\n $(\"#InterParcel\" ).prop( \"disabled\", true);\r\n $(\"#Interdocment\" ).val('');\r\n $(\"#InterParcel\" ).val('');\r\n }\r\n \r\n }\r\n local2city() {\r\n this.isCity2 = true;\r\n }\r\n\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n //Start Pin-Code Enter part\r\n Addrate(ratedata?: any) { \r\n\r\n this.confirmDialog_Rate(ratedata.customerId, this.rowsrate, ratedata.customercode);\r\n }\r\n AddOtherChrg(ratedata?: any) {\r\n this.confirmDialog_Oc(ratedata.customerId, this.otherchg, ratedata.customercode);\r\n\r\n }\r\n onEditorModalHidden() { \r\n this.isEditModePin = false;\r\n this.isRegion = false;\r\n this.isCity = false;\r\n this.istable = false;\r\n this.clear();\r\n this.editorModal.hide();\r\n }\r\n funHide()\r\n {\r\n var typeee=this.typee ==\"1\" ?\"1\":\"2\";\r\n if(typeee ==\"1\")\r\n {\r\n this.isRegion = true;\r\n this.isCity = false;\r\n this.istable = true;\r\n this.clear();\r\n\r\n }else{\r\n this.isRegion = false;\r\n this.isCity = true;\r\n this.istable = true;\r\n this.clear();\r\n }\r\n }\r\n\r\n Print(row: CustomerName) {\r\n this.route.navigate(['/customerprint'], {\r\n queryParams: {\r\n customerId: row.customerId\r\n\r\n }\r\n }); // define your component where\r\n }\r\n\r\n\r\nclear()\r\n{\r\n $('#Region').val('0');\r\n $('#rateCity').val('');\r\n $('#ratePinCode').val('');\r\n $('#DocFrmWeight').val('');\r\n $('#DocToWeight').val('');\r\n $('#ParcelFrmWeight').val('');\r\n $('#ParcelToFrmWeight').val('');\r\n $('#OnDemandFrmWeight').val('');\r\n $('#OnDemandToFrmWeight').val('');\r\n $('#CriticalFrmWeight').val('');\r\n $('#CriticalToFrmWeight').val('');\r\n $('#DivineFrmWeight').val('');\r\n $('#DivineToFrmWeight').val('');\r\n $('#DocSlab1').val('');\r\n $('#Docrate1').val('');\r\n $('#DocSlab2').val('');\r\n $('#Docrate2').val('');\r\n $('#DocPSlab').val('');\r\n $('#DocPrate').val('');\r\n $('#ParcelSlab1').val('');\r\n $('#Parcelrate1').val('');\r\n $('#ParcelSlab2').val('');\r\n $('#Parcelrate2').val('');\r\n $('#ParcelPSlab').val('');\r\n $('#ParcelPrate').val('');\r\n $('#CriticalSlab1').val('');\r\n $('#Criticalrate1').val('');\r\n $('#CriticalSlab2').val('');\r\n $('#Criticalrate2').val('');\r\n $('#CriticalPSlab').val('');\r\n $('#CriticalPrate').val('');\r\n $('#OnDemandSlab1').val('');\r\n $('#OnDemandrate1').val('');\r\n $('#OnDemandSlab2').val('');\r\n $('#OnDemandrate2').val('');\r\n $('#OnDemandPSlab').val('');\r\n $('#OnDemandPrate').val('');\r\n $('#DivineSlab1').val('');\r\n $('#Divinerate1').val('');\r\n $('#DivineSlab2').val('');\r\n $('#Divinerate2').val('');\r\n $('#DivinePSlab').val('');\r\n $('#DivinePrate').val('');\r\n}\r\n getRateCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2rate = this.arrcityrate\r\n $('#rateCity').autocomplete({\r\n source: this.arrcity2rate,\r\n delay: 500 \r\n });\r\n }\r\n\r\n GetRateCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.RateonDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n RateonDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"CITY\") {\r\n this.arrcityrate = states;\r\n }\r\n }\r\n\r\n\r\n ApprovalbyCorporate(data?: any)\r\n {\r\n\r\n }\r\n ApprovalbyRO(data?: any)\r\n {\r\n\r\n }\r\n InsertRateDeatils()\r\n {\r\n alert('hi..');\r\n }\r\n\r\n\r\n onConfirm() {\r\n this.rowsregion = [];\r\n let tmprate = new RegionMaster();\r\n this.rowsLocal1.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n this.rowsLocal2.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n this.rowsWithinState.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n this.rowsWithinRegion1.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n this.rowsWithinRegion2.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n this.rowsZone1.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n this.rowsZone2.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n this.rowsMetro1.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n this.rowsMetro2.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n this.rowsSpecialStation1.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n this.rowsSpecialStation2.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n this.rowsDiplomaticStation1.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n this.rowsDiplomaticStation2.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n //this.rowsregion.length;\r\n this.ServiceMaster.PostcustRegion(this.rowsregion).subscribe(vendors => this.saveSSuccessHelper(vendors), error => this.saveFailedHelper(error));\r\n }\r\n private saveSSuccessHelper(Customers?: RegionMaster[]) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success','Region Saved Successfully', MessageSeverity.success);\r\n //if (this.rows.length == 0) {\r\n // this.rows[0] = Customers[0];\r\n // this.rowsCache[0] = Customers[0];\r\n //}\r\n //else {\r\n // this.rows.push(Customers[0]);\r\n // this.rowsCache.push(Customers[0]);\r\n //}\r\n //this.rows.forEach((state, index, citys) => {\r\n // (state as any).index = index + 1;\r\n //});\r\n //this.rowsCache.forEach((state, index, citys) => {\r\n // (state as any).index = index + 1;\r\n //});\r\n //this.rowsCache = [...this.rowsCache]\r\n //this.rows = [...this.rows]\r\n //this.editedCustomers = new CustomerName()\r\n\r\n }\r\n AddCustomerRegionMaster(pcode: string, pname: string) {\r\n\r\n if (pcode == \"1\") {\r\n let Local1mapedcity = $('#Local1mapedcity').val();\r\n let Local1mapedState = $('#Local1mapedState').val();\r\n let Local1mapedpincode = $('#Local1mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = Local1mapedcity;\r\n Custr.mapedStateName = Local1mapedState;\r\n Custr.mapedPinCode = Local1mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsLocal1.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n })\r\n //var tmprows = this.rowsLocal1.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsLocal1.length == 0) {\r\n this.rowsLocal1[0] = custrate\r\n }\r\n else {\r\n this.rowsLocal1.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsLocal1.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsLocal1 = [...this.rowsLocal1];\r\n $('#Local1mapedcity').val('');\r\n $('#Local1mapedState').val('');\r\n $('#Local1mapedpincode').val('');\r\n }\r\n if (pcode == \"2\") {\r\n let Local2mapedcity = $('#Local2mapedcity').val();\r\n let Local2mapedState = $('#Local2mapedState').val();\r\n let Local2mapedpincode = $('#Local2mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = Local2mapedcity;\r\n Custr.mapedStateName = Local2mapedState;\r\n Custr.mapedPinCode = Local2mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsLocal2.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsLocal2.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsLocal2.length == 0) {\r\n this.rowsLocal2[0] = custrate\r\n }\r\n else {\r\n this.rowsLocal2.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsLocal2.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsLocal2 = [...this.rowsLocal2];\r\n $('#Local2mapedcity').val('');\r\n $('#Local2mapedState').val('');\r\n $('#Local2mapedpincode').val('');\r\n }\r\n if (pcode == \"3\") {\r\n\r\n let WithinStatemapedcity = $('#WithinStatemapedcity').val();\r\n let WithinStatemapedState = $('#WithinStatemapedState').val();\r\n let WithinStatemapedpincode = $('#WithinStatemapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = WithinStatemapedcity;\r\n Custr.mapedStateName = WithinStatemapedState;\r\n Custr.mapedPinCode = WithinStatemapedpincode;\r\n Custr.regionId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsWithinState.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsWithinState.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsWithinState.length == 0) {\r\n this.rowsWithinState[0] = custrate\r\n }\r\n else {\r\n this.rowsWithinState.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsWithinState.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsWithinState = [...this.rowsWithinState];\r\n $('#WithinStatemapedcity').val('');\r\n $('#WithinStatemapedState').val('');\r\n $('#WithinStatemapedpincode').val('');\r\n }\r\n if (pcode == \"4\") {\r\n let WithinRegion1mapedcity = $('#WithinRegion1mapedcity').val();\r\n let WithinRegion1mapedState = $('#WithinRegion1mapedState').val();\r\n let WithinRegion1mapedpincode = $('#WithinRegion1mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = WithinRegion1mapedcity;\r\n Custr.mapedStateName = WithinRegion1mapedState;\r\n Custr.mapedPinCode = WithinRegion1mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsWithinRegion1.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsWithinRegion1.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsWithinRegion1.length == 0) {\r\n this.rowsWithinRegion1[0] = custrate\r\n }\r\n else {\r\n this.rowsWithinRegion1.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsWithinRegion1.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsWithinRegion1 = [...this.rowsWithinRegion1];\r\n $('#WithinRegion1mapedcity').val('');\r\n $('#WithinRegion1mapedState').val('');\r\n $('#WithinRegion1mapedpincode').val('');\r\n }\r\n if (pcode == \"5\") {\r\n let WithinRegion2mapedcity = $('#WithinRegion2mapedcity').val();\r\n let WithinRegion2mapedState = $('#WithinRegion2mapedState').val();\r\n let WithinRegion2mapedpincode = $('#WithinRegion2mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = WithinRegion2mapedcity;\r\n Custr.mapedStateName = WithinRegion2mapedState;\r\n Custr.mapedPinCode = WithinRegion2mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsWithinRegion2.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsWithinRegion2.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsWithinRegion2.length == 0) {\r\n this.rowsWithinRegion2[0] = custrate\r\n }\r\n else {\r\n this.rowsWithinRegion2.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsWithinRegion2.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsWithinRegion2 = [...this.rowsWithinRegion2];\r\n $('#WithinRegion2mapedcity').val('');\r\n $('#WithinRegion2mapedState').val('');\r\n $('#WithinRegion2mapedpincode').val('');\r\n }\r\n if (pcode == \"6\") {\r\n let Zone1mapedcity = $('#Zone1mapedcity').val();\r\n let Zone1mapedState = $('#Zone1mapedState').val();\r\n let Zone1mapedpincode = $('#Zone1mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = Zone1mapedcity;\r\n Custr.mapedStateName = Zone1mapedState;\r\n Custr.mapedPinCode = Zone1mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsZone1.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n var tmprows = this.rowsZone1.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsZone1.length == 0) {\r\n this.rowsZone1[0] = custrate\r\n }\r\n else {\r\n this.rowsZone1.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsZone1.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsZone1 = [...this.rowsZone1];\r\n $('#Zone1mapedcity').val('');\r\n $('#Zone1mapedState').val('');\r\n $('#Zone1mapedpincode').val('');\r\n }\r\n if (pcode == \"7\") {\r\n // Metro1mapedcity, Metro1mapedState, Metro1mapedpincode, rowsMetro1\r\n let Zone2mapedcity = $('#Zone2mapedcity').val();\r\n let Zone2mapedState = $('#Zone2mapedState').val();\r\n let Zone2mapedpincode = $('#Zone2mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = Zone2mapedcity;\r\n Custr.mapedStateName = Zone2mapedState;\r\n Custr.mapedPinCode = Zone2mapedpincode;\r\n Custr.regionId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsZone2.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsZone2.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsZone2.length == 0) {\r\n this.rowsZone2[0] = custrate\r\n }\r\n else {\r\n this.rowsZone2.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsZone2.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsZone2 = [...this.rowsZone2];\r\n $('#Zone2mapedcity').val('');\r\n $('#Zone2mapedState').val('');\r\n $('#Zone2mapedpincode').val('');\r\n }\r\n if (pcode == \"8\") {\r\n let Metro1mapedcity = $('#Metro1mapedcity').val();\r\n let Metro1mapedState = $('#Metro1mapedState').val();\r\n let Metro1mapedpincode = $('#Metro1mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = Metro1mapedcity;\r\n Custr.mapedStateName = Metro1mapedState;\r\n Custr.mapedPinCode = Metro1mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsMetro1.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsMetro1.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsMetro1.length == 0) {\r\n this.rowsMetro1[0] = custrate\r\n }\r\n else {\r\n this.rowsMetro1.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsMetro1.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsMetro1 = [...this.rowsMetro1];\r\n $('#Metro1mapedcity').val('');\r\n $('#Metro1mapedState').val('');\r\n $('#Metro1mapedpincode').val('');\r\n }\r\n if (pcode == \"9\") {\r\n let Metro2mapedcity = $('#Metro2mapedcity').val();\r\n let Metro2mapedState = $('#Metro2mapedState').val();\r\n let Metro2mapedpincode = $('#Metro2mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = Metro2mapedcity;\r\n Custr.mapedStateName = Metro2mapedState;\r\n Custr.mapedPinCode = Metro2mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsMetro2.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n var tmprows = this.rowsMetro2.find(e => e.mapedCityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsMetro2.length == 0) {\r\n this.rowsMetro2[0] = custrate\r\n }\r\n else {\r\n this.rowsMetro2.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsMetro2.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsMetro2 = [...this.rowsMetro2];\r\n $('#Metro2mapedcity').val('');\r\n $('#Metro2mapedState').val('');\r\n $('#Metro2mapedpincode').val('');\r\n }\r\n if (pcode == \"10\") {\r\n let SpecialStation1mapedcity = $('#SpecialStation1mapedcity').val();\r\n let SpecialStation1mapedState = $('#SpecialStation1mapedState').val();\r\n let SpecialStation1mapedpincode = $('#SpecialStation1mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = SpecialStation1mapedcity;\r\n Custr.mapedStateName = SpecialStation1mapedState;\r\n Custr.mapedPinCode = SpecialStation1mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsSpecialStation1.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsSpecialStation1.find(e => e.mapedCityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsSpecialStation1.length == 0) {\r\n this.rowsSpecialStation1[0] = custrate\r\n }\r\n else {\r\n this.rowsSpecialStation1.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsSpecialStation1.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsSpecialStation1 = [...this.rowsSpecialStation1];\r\n $('#SpecialStation1mapedcity').val('');\r\n $('#SpecialStation1mapedState').val('');\r\n $('#SpecialStation1mapedpincode').val('');\r\n }\r\n if (pcode == \"11\") {\r\n let SpecialStation2mapedcity = $('#SpecialStation2mapedcity').val();\r\n let SpecialStation2mapedState = $('#SpecialStation2mapedState').val();\r\n let SpecialStation2mapedpincode = $('#SpecialStation2mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = SpecialStation2mapedcity;\r\n Custr.mapedStateName = SpecialStation2mapedState;\r\n Custr.mapedPinCode = SpecialStation2mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsSpecialStation2.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsSpecialStation2.find(e => e.mapedCityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsSpecialStation2.length == 0) {\r\n this.rowsSpecialStation2[0] = custrate\r\n }\r\n else {\r\n this.rowsSpecialStation2.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsSpecialStation2.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsSpecialStation2 = [...this.rowsSpecialStation2];\r\n $('#SpecialStation2mapedcity').val('');\r\n $('#SpecialStation2mapedState').val('');\r\n $('#SpecialStation2mapedpincode').val('');\r\n }\r\n if (pcode == \"12\") {\r\n\r\n let DiplomaticStation1mapedcity = $('#DiplomaticStation1mapedcity').val();\r\n let DiplomaticStation1mapedState = $('#DiplomaticStation1mapedState').val();\r\n let DiplomaticStation1mapedpincode = $('#DiplomaticStation1mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = DiplomaticStation1mapedcity;\r\n Custr.mapedStateName = DiplomaticStation1mapedState;\r\n Custr.mapedPinCode = DiplomaticStation1mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsDiplomaticStation1.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsDiplomaticStation1.find(e => e.mapedCityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsDiplomaticStation1.length == 0) {\r\n this.rowsDiplomaticStation1[0] = custrate\r\n }\r\n else {\r\n this.rowsDiplomaticStation1.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsDiplomaticStation1.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsDiplomaticStation1 = [...this.rowsDiplomaticStation1];\r\n $('#DiplomaticStation1mapedcity').val('');\r\n $('#DiplomaticStation1mapedState').val('');\r\n $('#DiplomaticStation1mapedpincode').val('');\r\n }\r\n if (pcode == \"13\") {\r\n\r\n let DiplomaticStation2mapedcity = $('#DiplomaticStation2mapedcity').val();\r\n let DiplomaticStation2mapedState = $('#DiplomaticStation2mapedState').val();\r\n let DiplomaticStation2mapedpincode = $('#DiplomaticStation2mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = DiplomaticStation2mapedcity;\r\n Custr.mapedStateName = DiplomaticStation2mapedState;\r\n Custr.mapedPinCode = DiplomaticStation2mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.rowsDiplomaticStation2.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsDiplomaticStation2.find(e => e.mapedCityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.rowsDiplomaticStation2.length == 0) {\r\n this.rowsDiplomaticStation2[0] = custrate\r\n }\r\n else {\r\n this.rowsDiplomaticStation2.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.rowsDiplomaticStation2.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.rowsDiplomaticStation2 = [...this.rowsDiplomaticStation2];\r\n $('#DiplomaticStation2mapedcity').val('');\r\n $('#DiplomaticStation2mapedState').val('');\r\n $('#DiplomaticStation2mapedpincode').val('');\r\n }\r\n }\r\n AddRegion(event: any, pcode: string, pname: string) {\r\n let tmprowsrate: RegionMaster[] = [];\r\n let mcustomerId = '';\r\n let mcityname = '';\r\n let mstatename = '';\r\n\r\n if (pcode == '1') {\r\n this.Local1 = event\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == 'Local 1') {\r\n // if (this.rowsLocal1.length == 0) {\r\n // this.rowsLocal1[0] = item\r\n // }\r\n // else {\r\n // this.rowsLocal1.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsLocal1 = [...this.rowsLocal1]\r\n }\r\n if (pcode == '2') {\r\n this.Local1 = false\r\n this.Local2 = event;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == 'Local 2') {\r\n // if (this.rowsLocal2.length == 0) {\r\n // this.rowsLocal2[0] = item\r\n // }\r\n // else {\r\n // this.rowsLocal2.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsLocal2 = [...this.rowsLocal2]\r\n \r\n }\r\n if (pcode == '3') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = event;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == 'Within State') {\r\n // if (this.rowsWithinState.length == 0) {\r\n // this.rowsWithinState[0] = item\r\n // }\r\n // else {\r\n // this.rowsWithinState.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsWithinState = [...this.rowsWithinState]\r\n }\r\n \r\n if (pcode == '4') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = event;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == 'Within Region 1') {\r\n // if (this.rowsWithinRegion1.length == 0) {\r\n // this.rowsWithinRegion1[0] = item\r\n // }\r\n // else {\r\n // this.rowsWithinRegion1.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsWithinRegion1 = [...this.rowsWithinRegion1]\r\n }\r\n if (pcode == '5') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = event;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == 'Within Region 2') {\r\n // if (this.rowsLocal2.length == 0) {\r\n // this.rowsWithinRegion2[0] = item\r\n // }\r\n // else {\r\n // this.rowsWithinRegion2.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsWithinRegion2 = [...this.rowsWithinRegion2]\r\n }\r\n if (pcode == '6') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = event;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == 'Zone 1') {\r\n // if (this.rowsZone1.length == 0) {\r\n // this.rowsZone1[0] = item\r\n // }\r\n // else {\r\n // this.rowsZone1.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsZone1 = [...this.rowsZone1]\r\n \r\n }\r\n if (pcode == '7') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = event;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == 'Zone 2') {\r\n // if (this.rowsZone2.length == 0) {\r\n // this.rowsZone2[0] = item\r\n // }\r\n // else {\r\n // this.rowsZone2.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsZone2 = [...this.rowsZone2]\r\n\r\n }\r\n if (pcode == '8') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = event;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == pname) {\r\n // if (this.rowsMetro1.length == 0) {\r\n // this.rowsMetro1[0] = item\r\n // }\r\n // else {\r\n // this.rowsMetro1.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsMetro1 = [...this.rowsMetro1]\r\n\r\n \r\n \r\n }\r\n if (pcode == '9') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = event;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == pname) {\r\n // if (this.rowsMetro2.length == 0) {\r\n // this.rowsMetro2[0] = item\r\n // }\r\n // else {\r\n // this.rowsMetro2.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsMetro2 = [...this.rowsMetro2]\r\n\r\n }\r\n if (pcode == '10') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = event;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == pname) {\r\n // if (this.rowsSpecialStation1.length == 0) {\r\n // this.rowsSpecialStation1[0] = item\r\n // }\r\n // else {\r\n // this.rowsSpecialStation1.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsSpecialStation1 = [...this.rowsSpecialStation1]\r\n }\r\n if (pcode == '11') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = event;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == pname) {\r\n // if (this.rowsSpecialStation2.length == 0) {\r\n // this.rowsSpecialStation2[0] = item\r\n // }\r\n // else {\r\n // this.rowsSpecialStation2.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsSpecialStation2 = [...this.rowsSpecialStation2]\r\n }\r\n if (pcode == '12') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = event;\r\n this.DiplomaticStation2 = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == pname) {\r\n // if (this.rowsDiplomaticStation1.length == 0) {\r\n // this.rowsDiplomaticStation1[0] = item\r\n // }\r\n // else {\r\n // this.rowsDiplomaticStation1.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsDiplomaticStation1 = [...this.rowsDiplomaticStation1]\r\n }\r\n if (pcode == '13') {\r\n this.Local1 = false\r\n this.Local2 = false;\r\n this.WithinState = false;\r\n this.WithinRegion1 = false;\r\n this.WithinRegion2 = false;\r\n this.Zone1 = false;\r\n this.Zone2 = false;\r\n this.Metro1 = false;\r\n this.Metro2 = false;\r\n this.SpecialStation1 = false;\r\n this.SpecialStation2 = false;\r\n this.DiplomaticStation1 = false;\r\n this.DiplomaticStation2 = event;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == pname) {\r\n // if (this.rowsDiplomaticStation2.length == 0) {\r\n // this.rowsDiplomaticStation2[0] = item\r\n // }\r\n // else {\r\n // this.rowsDiplomaticStation2.push(item)\r\n // }\r\n // }\r\n //});\r\n this.rowsDiplomaticStation2 = [...this.rowsDiplomaticStation2]\r\n }\r\n }\r\n AddCustomerRegion(customerdata?: any) {\r\n this.GCustomerId = customerdata.customerId;\r\n this.getcustregion(this.GCustomerId);\r\n this.isShowEditModePin = true;\r\n this.editorRegionModal.show();\r\n }\r\n onEditorModalHiddenregion() {\r\n this.isShowEditModePin = false;\r\n this.GCustomerId = \"\";\r\n this.rowsLocal1 = [] = [];\r\n this.rowsLocal2 = [] = [];\r\n this.rowsWithinState = [] = [];\r\n this.rowsWithinRegion1 = [] = [];\r\n this.rowsWithinRegion2 = [] = [];\r\n this.rowsZone1 = [] = [];\r\n this.rowsZone2 = [] = [];\r\n this.rowsMetro1 = [] = [];\r\n this.rowsMetro2 = [] = [];\r\n this.rowsSpecialStation1 = [] = [];\r\n this.rowsSpecialStation2 = [] = [];\r\n this.rowsDiplomaticStation1 = [] = [];\r\n this.rowsDiplomaticStation2 = [] = [];\r\n\r\n\r\n this.rowsregion = [] = [];\r\n this.exRateAndDestGroup = [] = [];\r\n this.editorRegionModal.hide();\r\n }\r\n\r\n\r\n\r\n //1\r\n Local1getCityList($event) {\r\n this.Local1GetCityMaster();\r\n this.Local1city1 = this.Local1city\r\n $('#Local1mapedcity').autocomplete({\r\n source: this.Local1city1,\r\n delay: 50\r\n });\r\n }\r\n Local1GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetLocal1Successful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetLocal1Successful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.Local1city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.Local1city = states;\r\n }\r\n }\r\n Local1SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('Local1mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('Local1mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('Local1mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n\r\n\r\n //2\r\n Local2getCityList($event) {\r\n this.Local2GetCityMaster();\r\n this.Local2city1 = this.Local2city\r\n $('#Local2mapedcity').autocomplete({\r\n source: this.Local2city1,\r\n delay: 50\r\n });\r\n }\r\n Local2GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.Local2onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n Local2onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.Local2city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.Local2city = states;\r\n }\r\n }\r\n Local2SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('Local2mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('Local2mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('Local2mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n\r\n //3\r\n WithinStategetCityList($event) {\r\n this.WithinStateGetCityMaster();\r\n this.WithinStatecity1 = this.WithinStatecity\r\n $('#WithinStatemapedcity').autocomplete({\r\n source: this.WithinStatecity1,\r\n delay: 50\r\n });\r\n }\r\n WithinStateGetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.WithinStateonDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n WithinStateonDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.WithinStatecity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.WithinStatecity = states;\r\n }\r\n }\r\n WithinStateSetCityAndState($event) {\r\n let citystate: string = (document.getElementById('WithinStatemapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('WithinStatemapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('WithinStatemapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n //4\r\n WithinRegion1getCityList($event) {\r\n this.WithinRegion1GetCityMaster();\r\n this.WithinRegion1city1 = this.WithinRegion1city\r\n $('#WithinRegion1mapedcity').autocomplete({\r\n source: this.WithinRegion1city1,\r\n delay: 50\r\n });\r\n }\r\n WithinRegion1GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.WithinRegion1onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n WithinRegion1onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.WithinRegion1city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.WithinRegion1city = states;\r\n }\r\n }\r\n WithinRegion1SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('WithinRegion1mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('WithinRegion1mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('WithinRegion1mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n //5\r\n WithinRegion2getCityList($event) {\r\n this.WithinRegion2GetCityMaster();\r\n this.WithinRegion2city1 = this.WithinRegion2city\r\n $('#WithinRegion2mapedcity').autocomplete({\r\n source: this.WithinRegion2city1,\r\n delay: 50\r\n });\r\n }\r\n WithinRegion2GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.WithinRegion2onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n WithinRegion2onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.WithinRegion2city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.WithinRegion2city = states;\r\n }\r\n }\r\n WithinRegion2SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('WithinRegion2mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('WithinRegion2mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('WithinRegion2mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n //6\r\n Zone1getCityList($event) {\r\n this.Zone1GetCityMaster();\r\n this.Zone1city1 = this.Zone1city\r\n $('#Zone1mapedcity').autocomplete({\r\n source: this.Zone1city1,\r\n delay: 50\r\n });\r\n }\r\n Zone1GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.Zone1onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n Zone1onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.Zone1city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.Zone1city = states;\r\n }\r\n }\r\n Zone1SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('Zone1mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('Zone1mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('Zone1mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n //7\r\n Zone2getCityList($event) {\r\n this.Zone2GetCityMaster();\r\n this.Zone2city1 = this.Zone2city\r\n $('#Zone2mapedcity').autocomplete({\r\n source: this.Zone2city1,\r\n delay: 50\r\n });\r\n }\r\n Zone2GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.Zone2onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n Zone2onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.Zone2city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.Zone2city = states;\r\n }\r\n }\r\n Zone2SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('Zone2mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('Zone2mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('Zone2mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n //8\r\n Metro1getCityList($event) {\r\n this.Metro1GetCityMaster();\r\n this.Metro1city1 = this.Metro1city\r\n $('#Metro1mapedcity').autocomplete({\r\n source: this.Metro1city1,\r\n delay: 50\r\n });\r\n }\r\n Metro1GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.Metro1onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n Metro1onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.Metro1city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.Metro1city = states;\r\n }\r\n }\r\n Metro1SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('Metro1mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n // (document.getElementById('Metro1mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n // (document.getElementById('Metro1mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n //9\r\n Metro2getCityList($event) {\r\n this.Metro2GetCityMaster();\r\n this.Metro2city1 = this.Metro2city\r\n $('#Metro2mapedcity').autocomplete({\r\n source: this.Metro2city1,\r\n delay: 50\r\n });\r\n }\r\n Metro2GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.Metro2onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n Metro2onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.Metro2city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.Metro2city = states;\r\n }\r\n }\r\n Metro2SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('Metro2mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n // (document.getElementById('Metro2mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('Metro2mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n //10\r\n SpecialStation1getCityList($event) {\r\n this.SpecialStation1GetCityMaster();\r\n this.SpecialStation1city1 = this.SpecialStation1city\r\n $('#SpecialStation1mapedcity').autocomplete({\r\n source: this.SpecialStation1city1,\r\n delay: 50\r\n });\r\n }\r\n SpecialStation1GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.SpecialStation1onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n SpecialStation1onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.SpecialStation1city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.SpecialStation1city = states;\r\n }\r\n }\r\n SpecialStation1SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('SpecialStation1mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n // (document.getElementById('SpecialStation1mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n // (document.getElementById('SpecialStation1mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : 'userid';\r\n }\r\n\r\n DeleteCustomer(row: CustomerName) {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n var Req = new CommRequest();\r\n Req.ProcessName = \"InactiveCustomer\"\r\n var Parameter = new Array(1);\r\n var pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"CustomerId\"\r\n pr.PropertyValue = row.customerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(\r\n result => {\r\n\r\n this.alertService.showMessage(\"Customer\", \"Customer Deactivated\", MessageSeverity.success)\r\n });\r\n\r\n }\r\n else {\r\n this.alertService.showMessage(\"Customer\", \"You are not authorised\", MessageSeverity.success)\r\n }\r\n }\r\n //11 \r\n SpecialStation2getCityList($event) {\r\n this.SpecialStation2GetCityMaster();\r\n this.SpecialStation2city1 = this.SpecialStation2city\r\n $('#SpecialStation2mapedcity').autocomplete({\r\n source: this.SpecialStation2city1,\r\n delay: 50\r\n });\r\n }\r\n SpecialStation2GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.SpecialStation2onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n SpecialStation2onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.SpecialStation2city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.SpecialStation2city = states;\r\n }\r\n }\r\n SpecialStation2SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('SpecialStation2mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n // (document.getElementById('SpecialStation2mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n // (document.getElementById('SpecialStation2mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n\r\n //12 \r\n DiplomaticStation1getCityList($event) {\r\n this.DiplomaticStation1GetCityMaster();\r\n this.DiplomaticStation1city1 = this.DiplomaticStation1city\r\n $('#DiplomaticStation1mapedcity').autocomplete({\r\n source: this.DiplomaticStation1city1,\r\n delay: 50\r\n });\r\n }\r\n DiplomaticStation1GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.DiplomaticStation1onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n DiplomaticStation1onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.DiplomaticStation1city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.DiplomaticStation1city = states;\r\n }\r\n }\r\n DiplomaticStation1SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('DiplomaticStation1mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('DiplomaticStation1mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('DiplomaticStation1mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n //13\r\n DiplomaticStation2getCityList($event) {\r\n this.DiplomaticStation2GetCityMaster();\r\n this.DiplomaticStation2city1 = this.DiplomaticStation2city\r\n $('#DiplomaticStation2mapedcity').autocomplete({\r\n source: this.DiplomaticStation2city1,\r\n delay: 50\r\n });\r\n }\r\n DiplomaticStation2GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.DiplomaticStation2onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n DiplomaticStation2onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.DiplomaticStation2city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.DiplomaticStation2city = states;\r\n }\r\n }\r\n DiplomaticStation2SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('DiplomaticStation2mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n // (document.getElementById('DiplomaticStation2mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n // (document.getElementById('DiplomaticStation2mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n getregions() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetDestgroup'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"statename\"\r\n pr.PropertyValue = this.localstre.getData(\"BaLoginData\")[0].state;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n\r\n getcustregion(customerid:string) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetCustRegion'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"customerId\"\r\n pr.PropertyValue = customerid;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getsuccessregion(result), error => this.onDataLoadFailed(error)) \r\n\r\n }\r\n getsuccessregion(result) {\r\n this.custregion = result;\r\n this.rowsLocal1 = []\r\n this.rowsLocal2 =[]\r\n this.rowsWithinState = []\r\n this.rowsWithinRegion1 = []\r\n this.rowsWithinRegion2 = []\r\n this.rowsMetro1 = []\r\n this.rowsMetro2 = []\r\n this.rowsZone1 = []\r\n this.rowsZone2 = []\r\n this.rowsSpecialStation1 = []\r\n this.rowsSpecialStation2 = []\r\n this.rowsDiplomaticStation1 = []\r\n this.rowsDiplomaticStation2 = []\r\n this.custregion.forEach((item, index, tmprr) => {\r\n (item as any).index = index + 1;\r\n if (item.regionName == 'Local 1') {\r\n if (this.rowsLocal1.length == 0) {\r\n this.rowsLocal1[0] = item\r\n }\r\n else {\r\n this.rowsLocal1.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Local 2') {\r\n if (this.rowsLocal2.length == 0) {\r\n this.rowsLocal2[0] = item\r\n }\r\n else {\r\n this.rowsLocal1.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Within State') {\r\n if (this.rowsWithinState.length == 0) {\r\n this.rowsWithinState[0] = item\r\n }\r\n else {\r\n this.rowsWithinState.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Within Region 1') {\r\n if (this.rowsWithinRegion1.length == 0) {\r\n this.rowsWithinRegion1[0] = item\r\n }\r\n else {\r\n this.rowsWithinRegion1.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Within Region 2') {\r\n if (this.rowsWithinRegion2.length == 0) {\r\n this.rowsWithinRegion2[0] = item\r\n }\r\n else {\r\n this.rowsWithinRegion2.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Zone 1') {\r\n if (this.rowsZone1.length == 0) {\r\n this.rowsZone1[0] = item\r\n }\r\n else {\r\n this.rowsZone1.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Zone 2') {\r\n if (this.rowsZone2.length == 0) {\r\n this.rowsZone2[0] = item\r\n }\r\n else {\r\n this.rowsZone2.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Metro 1') {\r\n if (this.rowsMetro1.length == 0) {\r\n this.rowsMetro1[0] = item\r\n }\r\n else {\r\n this.rowsMetro1.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Metro 2') {\r\n if (this.rowsMetro2.length == 0) {\r\n this.rowsMetro2[0] = item\r\n }\r\n else {\r\n this.rowsMetro2.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Metro 2') {\r\n if (this.rowsMetro2.length == 0) {\r\n this.rowsMetro2[0] = item\r\n }\r\n else {\r\n this.rowsMetro2.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Special Station 1') {\r\n if (this.rowsSpecialStation1.length == 0) {\r\n this.rowsSpecialStation1[0] = item\r\n }\r\n else {\r\n this.rowsSpecialStation1.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Special Station 2') {\r\n if (this.rowsSpecialStation2.length == 0) {\r\n this.rowsSpecialStation2[0] = item\r\n }\r\n else {\r\n this.rowsSpecialStation2.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Diplomatic Station 1') {\r\n if (this.rowsDiplomaticStation1.length == 0) {\r\n this.rowsDiplomaticStation1[0] = item\r\n }\r\n else {\r\n this.rowsDiplomaticStation1.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Diplomatic Station 2') {\r\n if (this.rowsDiplomaticStation2.length == 0) {\r\n this.rowsDiplomaticStation2[0] = item\r\n }\r\n else {\r\n this.rowsDiplomaticStation2.push(item)\r\n }\r\n }\r\n });\r\n this.rowsLocal1 = [...this.rowsLocal1]\r\n this.rowsLocal2 = [...this.rowsLocal2]\r\n this.rowsWithinState = [...this.rowsWithinState]\r\n this.rowsWithinRegion1 = [...this.rowsWithinRegion1]\r\n this.rowsWithinRegion2 = [...this.rowsWithinRegion2]\r\n this.rowsMetro1 = [...this.rowsMetro1]\r\n this.rowsMetro2 = [...this.rowsMetro2]\r\n this.rowsZone1 = [...this.rowsZone1]\r\n this.rowsZone2 = [...this.rowsZone2]\r\n this.rowsSpecialStation1 = [...this.rowsSpecialStation1]\r\n this.rowsSpecialStation2 = [...this.rowsSpecialStation2]\r\n this.rowsDiplomaticStation1 = [...this.rowsDiplomaticStation1]\r\n this.rowsDiplomaticStation2 = [...this.rowsDiplomaticStation2]\r\n\r\n }\r\n\r\n getSucessDataExrate(result) {\r\n this.exRateAndDestGroup = result \r\n }\r\n GetRegionId(regname: string) {\r\n let tmpid = \"\";\r\n this.exRateAndDestGroup.forEach((item, index, tmpar) => {\r\n if (item.regionName.toUpperCase() == regname.toUpperCase()) {\r\n tmpid = item.regionId;\r\n }\r\n });\r\n return tmpid\r\n }\r\n \r\n\r\n\r\nShowState($event,id:string) {\r\n this.ServiceMaster.getstateslist().subscribe(result => this.Autocompstate(result, id), error => this.onDataLoadFailed(error));\r\n }\r\n Autocompstate(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n $(listof).autocomplete({\r\n source: states,\r\n delay: 50\r\n });\r\n }\r\n\r\n}\r\nexport class CustomerName {\r\n constructor(CustomerName?: string, address?: string, pinCode?: string, city?: string\r\n , state?: string, gstn?: string, panno?: string, mobileno?: string, landLineno?: string,\r\n email?: string, dateOfEstablishment?: string, natureOfService?: string, surface?: string, local?: string,\r\n air?: string, vehicle?: string, haveWeUsedTheirServiceInanyform?: string, bankName?: string, accountno?: string,\r\n ifsccode?: string, bankaddress?: string, accountholdername?: string) {\r\n\r\n this.CustomerName = CustomerName;\r\n this.vendAddress = address;\r\n this.pinCode = pinCode;\r\n this.cityName = city;\r\n this.stateName = state;\r\n this.gstnumber = gstn;\r\n this.panno = panno;\r\n this.dateOfEstablishment = dateOfEstablishment;\r\n this.natureOfService = natureOfService; \r\n\r\n this.address = [new Address()];\r\n };\r\n \r\n public CustomerName: string\r\n public vendAddress: string\r\n public pinCode: string\r\n public cityName: string\r\n public stateName: string\r\n public gstnumber: string\r\n public panno: string \r\n public PersonName : string;\r\n public dateOfEstablishment: string\r\n public natureOfService: string \r\n public address: Address[]; \r\n\r\n public bPersonName: string\r\n public bemail: string\r\n public blandLineno: string\r\n public bmobileno: string\r\n public Product:string\r\n public ba:string\r\n\r\n public ContactPerson:string\r\n public ContactMobileNo:string\r\n public ContactEmail:string\r\n public ContactValidForm:string\r\n public ContactValidTill:string\r\n\r\n public Domsticdocment:string\r\n public Interdocment:string\r\n public MapedCityNamelocal2:string\r\n public CustomerCode:string\r\n\r\n public ro:string\r\n public Branch:string\r\n public ContactDate:string\r\n public Signedby:string\r\n public ExecutiveName:string\r\n public Approvalby:string\r\n public CorporateApproval:string\r\n public ROApprovalBy:string\r\n public customerId: string\r\n}\r\nexport class CustRate {\r\n public CustRateId:string\r\n public customerId: string\r\n public OfficeId: string\r\n public CustomerCode: string\r\n public productCode: string\r\n public productName: string\r\n public destcityName: string\r\n public destCityPincode: string\r\n public destgroupName: string\r\n public destId: string \r\n public fromWt: string\r\n public toWt: string\r\n public slab1: string\r\n public rate1: string\r\n public slab2: string\r\n public rate2: string\r\n public slab3: string\r\n public rate3: string\r\n public pslab: string\r\n public prate: string\r\n public fsurcharge:string\r\n\r\n}\r\nexport class RegionMaster {\r\n public officeId: string\r\n public regionId: string\r\n public regionName: string\r\n public customerId: string\r\n public mapedCityId: string\r\n public mapedcityName: string\r\n public mapedStateId: string\r\n public mapedStateName: string\r\n public mapedPinCode: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZGViYWdpbmcvZGViYWdpbmcuY29tcG9uZW50LnNjc3MifQ== */\"","import { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { from } from 'rxjs';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-debaging',\r\n templateUrl: './debaging.component.html',\r\n styleUrls: ['./debaging.component.scss']\r\n})\r\nexport class DebagingComponent implements OnInit {\r\n\r\n \r\n editedawbbagging: awbbagging = new awbbagging();\r\n columns: any[] = [];\r\n rows: awbbagging[] = [];\r\n addrow: awbbagging[] = [];\r\n rowsCache: awbbagging[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditMode = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n tabledate: any[] = [];\r\n public timeLeft: any;\r\n public timerId: any;\r\n\r\n constructor(private configurations: ConfigurationService, private transaction: TransactionService, private localstre: LocalStoreManager, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n actionsTemplate: TemplateRef;\r\n\r\n ngOnInit() {\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n\r\n this.editedawbbagging.OfficeName = logindata[0].officename;\r\n this.timeLeft = \"30\";\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'Awbno', name: 'Awb No', width: 100 },\r\n { prop: 'BagNo', name: 'BagNo', width: 100 },\r\n { prop: 'BagType', name: 'Bag Type', width: 100 },\r\n { prop: 'Piece', name: 'Piece', width: 100 },\r\n { prop: 'Weight', name: 'Weight', width: 100 },\r\n { prop: 'DestPincode', name: 'Destination Pin-Code', width: 150 },\r\n ];\r\n\r\n }\r\n\r\n awbbagnodetails(event: any) {\r\n var tmp: string = event.target.value;\r\n var Awbrow = this.rows.find(e => e.Awbno === tmp)\r\n if (isNullOrUndefined(Awbrow)) {\r\n Awbrow = this.rows.find(e => e.Awbno === tmp)\r\n\r\n }\r\n if (isNullOrUndefined(tmp) || tmp == '') {\r\n event.target.focus();\r\n return;\r\n }\r\n\r\n this.OngetSuceesInout(tmp)\r\n }\r\n OngetSuceesInout(awbno: string) {\r\n if (awbno !=\"\") {\r\n this.transaction.getAwbdebagingSummery(awbno).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n this.showErrorAlert(\"Awbno\", \"Out Scan Not Done By \")\r\n }\r\n }\r\n\r\n onGetSucessAwbbookingData(result: any) {\r\n if (result.length > 0) {\r\n result[0].awbbagingId\r\n $('#BagType').val(result[0].baggingtype);\r\n $('#SerialNo').val(result[0].sealNo);\r\n $('#BagWeight').val(result[0].bagWeight);\r\n $('#oldawbno').val(result[0].noofAwb);\r\n $('#oldtotalweight').val(result[0].totalWeight);\r\n $('#oldtotalpieces').val(result[0].totalPieces);\r\n $('#BagNo').val(result[0].sealNo);\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.editedawbbagging.OfficeName = logindata[0].officename;\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve awb bagging from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n awbbaggingdetails(event: any) {\r\n var tmp: string = event.target.value;\r\n var prmawbno = tmp.length;\r\n if (prmawbno == 10) {\r\n var Awbrow = this.rows.find(e => e.Awbno === tmp)\r\n if (isNullOrUndefined(Awbrow)) {\r\n Awbrow = this.rows.find(e => e.Awbno === tmp)\r\n\r\n }\r\n if (isNullOrUndefined(tmp) || tmp == '') {\r\n event.target.focus();\r\n return;\r\n }\r\n var bagno = $('#BagNo').val();\r\n if (bagno == \"\" || bagno == undefined || bagno == null) {\r\n alert(\"Please Enter Bag no.\");\r\n $('#BagNo').focus();\r\n return;\r\n } else {\r\n this.baggingdetails(tmp, bagno)\r\n }\r\n }\r\n \r\n }\r\n baggingdetails(awbno: string, bagno: string) {\r\n if (awbno != \"\") {\r\n this.transaction.getAwbdebagingdetails(awbno, bagno).subscribe(result => this.onGetSucessAwbbagingdetails(result), error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n this.showErrorAlert(\"Awbno\", \"D-Bagging Not Done \")\r\n }\r\n }\r\n\r\n onGetSucessAwbbagingdetails(result: any) {\r\n if (result.length > 0) {\r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n for (let i = 0; i < result.length; i++) {\r\n //this.editedawbbagging = result[i];\r\n var tmpawb: string = result[i].awbno;\r\n var Awbrow = this.rows.find(e => e.Awbno === tmpawb)\r\n if (!isNullOrUndefined(Awbrow) && (Awbrow.Awbno == tmpawb)) {\r\n continue;\r\n }\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbbagging();\r\n this.addrow[0].OfficeName = $(\"#OfficeName\").val();\r\n this.addrow[0].BagType = $(\"#BagType\").val();\r\n this.addrow[0].BagNo = $(\"#BagNo\").val();\r\n this.addrow[0].BagWeight = $('#BagWeight').val();\r\n this.addrow[0].SerialNo = $(\"#SerialNo\").val();\r\n this.addrow[0].Awbno = $(\"#Awbno\").val();\r\n this.addrow[0].Stickerno = result[i].awbstickerNo;;\r\n this.addrow[0].Piece = result[i].pieces;\r\n this.addrow[0].Weight = result[i].awbWeight; \r\n this.addrow[0].DestPincode = result[i].desPinCode;\r\n this.rows[0] = this.addrow[0];\r\n }\r\n else {\r\n var tmp = new awbbagging();\r\n tmp.OfficeName = $(\"#OfficeName\").val();\r\n tmp.BagType = $(\"#BagType\").val();\r\n tmp.BagNo = $(\"#BagNo\").val();\r\n tmp.BagWeight = $('#BagWeight').val();\r\n tmp.SerialNo = $(\"#SerialNo\").val();\r\n tmp.Awbno = $(\"#Awbno\").val();\r\n tmp.Stickerno = result[i].awbstickerNo;;\r\n tmp.Piece = result[i].pieces;\r\n tmp.Weight = result[i].awbWeight;\r\n tmp.DestPincode = result[i].desPinCode;\r\n this.rows.push(tmp);\r\n }\r\n\r\n }\r\n \r\n \r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n if (awb.Piece == '' || awb.Piece == 'NaN') {\r\n totalpiece = parseInt(totalpiece) + parseInt('0');\r\n } else {\r\n totalpiece = parseInt(totalpiece) + parseInt(awb.Piece);\r\n }\r\n if (awb.Weight == '' || awb.Weight == 'NaN') {\r\n totalWeight = parseFloat(totalWeight) + parseFloat('0');\r\n } else {\r\n totalWeight = parseFloat(totalWeight) + parseFloat(awb.Weight);\r\n }\r\n totalNoofAwb = index + 1;\r\n });\r\n this.editedawbbagging.NoofAwb = totalNoofAwb;\r\n this.editedawbbagging.TotalWeight = totalWeight;\r\n this.editedawbbagging.TotalPieces = totalpiece;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n awb.TotalPieces = totalpiece;\r\n awb.TotalWeight = totalWeight;\r\n awb.NoofAwb = totalNoofAwb;\r\n });\r\n\r\n this.rows = [...this.rows]\r\n $('#Awbno').val('');\r\n $('#Awbno').focus();\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.editedawbbagging.OfficeName = logindata[0].officename;\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n Insertawbbagging() {\r\n\r\n if (isNullOrUndefined(this.editedawbbagging.OfficeName)) {\r\n (document.getElementById('OfficeName')).focus();\r\n return;\r\n }\r\n if (this.rows.length <= 0) {\r\n this.showErrorAlert(\"Awbno\", \"No Record To Save\")\r\n return;\r\n }\r\n var shortrec = $('#ShortReceived').val();\r\n if (shortrec == \"\" || shortrec == undefined || shortrec == null) {\r\n shortrec = \"Success\";\r\n }\r\n var totalPieces = $('#TotalPieces').val();\r\n var oldtotalpieces = $('#oldtotalpieces').val();\r\n if (parseInt(oldtotalpieces) != parseInt(totalPieces)) {\r\n if (shortrec == \"\" || shortrec == undefined || shortrec == null) {\r\n this.showErrorAlert(\"Region\", \"Please Enter Short Received Region\")\r\n $('#ShortReceived').focus();\r\n return;\r\n }\r\n }\r\n if (shortrec == \"\" || shortrec == undefined || shortrec == null) {\r\n shortrec = \"Success\";\r\n }\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.transaction.PostAwbDBagging(shortrec,this.rows).subscribe(Result => this.saveSuccessHelper(Result), error => this.saveFailedHelper(error))\r\n this.isLoading = false;\r\n }\r\n private saveSuccessHelper(awbInScanss?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `AWB D-bagging \\\"${this.editedawbbagging.OfficeName}\\\" was Saved successfully`, MessageSeverity.success);\r\n this.editedawbbagging = new awbbagging();\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.editedawbbagging.OfficeName = logindata[0].officename;\r\n $('#BagType').val(0);\r\n $('#SerialNo').val('');\r\n $('#BagWeight').val('');\r\n $('#oldawbno').val('');\r\n $('#oldtotalweight').val('');\r\n $('#oldtotalpieces').val('');\r\n $('#BagNo').val('');\r\n this.rows = [];\r\n this.rows = [...this.rows];\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n onEditorModalHidden() {\r\n this.editorModal.hide();\r\n }\r\n \r\n}\r\nexport class awbbagging {\r\n public OfficeName: string\r\n public BagType: string\r\n public BagNo: string\r\n public Awbno: string\r\n public Stickerno: string\r\n public arrivalno: string\r\n public Piece: string\r\n public Weight: string \r\n public DestPincode: string\r\n public NoofAwb: string\r\n public TotalWeight: string\r\n public TotalVolWeight: string\r\n public TotalPieces: string\r\n public SerialNo: string\r\n public BagWeight: string\r\n public ShortReceived:string\r\n}\r\n\r\n","export default \".row {\\n margin-right: 0px;\\n margin-left: 0px;\\n}\\n\\n.form-group {\\n margin-bottom: 5px;\\n}\\n\\n.card-header {\\n background-color: #142c4c;\\n color: white;\\n}\\n\\n.toggle.btn-sm {\\n min-width: 70px !important;\\n min-height: 30px;\\n}\\n\\n.toggle.btn {\\n min-width: 70px !important;\\n min-height: 34px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9kZWxpdmVyeS1jb21tLW1hc3Rlci9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxkZWxpdmVyeS1jb21tLW1hc3RlclxcZGVsaXZlcnktY29tbS1tYXN0ZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvZGVsaXZlcnktY29tbS1tYXN0ZXIvZGVsaXZlcnktY29tbS1tYXN0ZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxpQkFBQTtFQUVDLGdCQUFBO0FDQUg7O0FERUE7RUFDSSxrQkFBQTtBQ0NKOztBRENBO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0FDRUY7O0FEQUE7RUFDRSwwQkFBQTtFQUNBLGdCQUFBO0FDR0Y7O0FEREE7RUFDRSwwQkFBQTtFQUNBLGdCQUFBO0FDSUYiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2RlbGl2ZXJ5LWNvbW0tbWFzdGVyL2RlbGl2ZXJ5LWNvbW0tbWFzdGVyLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnJvdyB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgXHJcbiAgIG1hcmdpbi1sZWZ0OiAwcHg7XHJcbn1cclxuLmZvcm0tZ3JvdXB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjVweDtcclxufVxyXG4uY2FyZC1oZWFkZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDJjNGM7XHJcbiAgY29sb3I6d2hpdGU7XHJcbn1cclxuLnRvZ2dsZS5idG4tc20ge1xyXG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xyXG4gIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbn1cclxuLnRvZ2dsZS5idG4ge1xyXG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xyXG4gIG1pbi1oZWlnaHQ6IDM0cHg7XHJcbn1cclxuIiwiLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MmM0YztcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4udG9nZ2xlLmJ0bi1zbSB7XG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAzMHB4O1xufVxuXG4udG9nZ2xlLmJ0biB7XG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAzNHB4O1xufSJdfQ== */\"","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Guid } from 'guid-typescript';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { isEmpty } from 'rxjs/operators';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { Pincodemaster } from '../../models/pincodemaster.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-delivery-comm-master',\r\n templateUrl: './delivery-comm-master.component.html',\r\n styleUrls: ['./delivery-comm-master.component.scss']\r\n})\r\nexport class DeliveryCommMasterComponent implements OnInit {\r\n\r\n Delv: DeliveryCommMaster = new DeliveryCommMaster();\r\n Active: any = true;\r\n officearr: any;\r\n DocrateApply: any = true;\r\n ParcelRateApply: any = true;\r\n PriorityRateApply: any = true;\r\n CriticalRateApply: any = true;\r\n columns: any[] = [];\r\n lstmapcode: BadaMapPincode[] = [];\r\n lstodamapcode: BadaMapPincode[] = [];\r\n\r\n rows: any[] = [];\r\n odarows: any[] = [];\r\n\r\n Name: string = \"\";\r\n selected: any[] = [];\r\n selectedpins: any[] = [];\r\n\r\n constructor(private transaction: TransactionService, private configurations: ConfigurationService, private localstre: LocalStoreManager, private router: Router, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) { }\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n /* { prop: 'index', name: '#', width: 30, },*/\r\n { prop: 'selected', name: '', sortable: false, canAutoResize: false, draggable: false, resizable: false, headerCheckboxable: true, checkboxable: true, width: 30 },\r\n { prop: 'pincode', name: 'Pincode', width: 180 },\r\n ];\r\n }\r\n onSelect(row: any) {\r\n this.selectedpins = row.selected;\r\n }\r\n Show() {\r\n if (isNullOrUndefined($('#txtBaDaname').val().toString()))\r\n {\r\n this.alertService.showMessage(\"Please select BA/DA first !\")\r\n $('#txtBaDaname').focus();\r\n return;\r\n }\r\n this.Name = \"Pincode Maping\";\r\n \r\n this.editorModal.show();\r\n\r\n }\r\n validateparceanddoxweight(event) {\r\n var docweight = $('#txtdocuptoweight').val();\r\n var parclweight = $('#txtpclfromwt').val();\r\n if (parseFloat(docweight.toString()) > 0) {\r\n $('#txtpclfromwt').val((parseFloat(docweight.toString()) + 0.001).toFixed(3));\r\n $('#txtpclfromwt').attr('disabled', 'true');\r\n }\r\n if (parseFloat(docweight.toString()) > parseFloat(parclweight.toString())) {\r\n this.alertService.showMessage(\"Invalid weight range\", \"Document weight is not grater then parcel weight\", MessageSeverity.error)\r\n $('#txtdocuptoweight').focus();\r\n return false;\r\n }\r\n return true;\r\n }\r\n insertDevcomm() {\r\n if (isNullOrUndefined(this.Delv)) {\r\n this.Delv = new DeliveryCommMaster()\r\n }\r\n this.Delv.badaName = $('#txtBaDaname').val().toString();\r\n this.Delv.minWeightODA = $('#txtdocuptoweight').val().toString() == '' ? '0': $('#txtdocuptoweight').val().toString();\r\n this.Delv.minWeightNormal = $('#txtpclfromwt').val().toString() == '' ? '0' : $('#txtpclfromwt').val().toString();\r\n this.Delv.documentRatePerPcs = $('#txtdocperpcsrate').val().toString() == '' ? '0' : $('#txtdocperpcsrate').val().toString();\r\n this.Delv.documentRatePerKg = $('#txtdocperkgrate').val().toString() == '' ? '0' : $('#txtdocperpcsrate').val().toString();\r\n this.Delv.parcelRateperKg = $('#txtpclperkgrate').val().toString() == '' ? '0' : $('#txtdocperpcsrate').val().toString();\r\n this.Delv.parcelRatePerPcs = $('#txtpclperpcsrate').val().toString() == '' ? '0' : $('#txtpclperpcsrate').val().toString();\r\n this.Delv.minAmountODA = $('#txtdocminamt').val() == '' ? '0':$('#txtdocminamt').val();\r\n this.Delv.minAmountNormal = $('#txtpclminamt').val() == '' ? '0': $('#txtpclminamt').val();\r\n this.Delv.walletAplly = this.Active; \r\n this.Delv.docrateApply = this.DocrateApply;\r\n this.Delv.parcelRateApply = this.ParcelRateApply;\r\n this.Delv.isactive = this.Active;\r\n if (this.selectedpins.length > 0) {\r\n this.lstmapcode = new Array(this.selectedpins.length);\r\n for (let i = 0; i < this.selectedpins.length; i++) {\r\n var mappin = new BadaMapPincode();\r\n mappin.pincode = this.selectedpins[i].pincode;\r\n mappin.Badaname = this.Delv.badaName;\r\n this.lstmapcode[i] = mappin;\r\n }\r\n this.Delv.lstMappincode = this.lstmapcode;\r\n }\r\n if (isNullOrUndefined(this.Delv.badaName)) {\r\n this.alertService.showStickyMessage(\"Please select BA/DA\")\r\n $('#txtBaDaname').focus();\r\n }\r\n this.ServiceMaster.Postdelvcomm(this.Delv).subscribe(result => this.onhelpDatagetpostSuccessful(result), error => this.onDataLoadFailed(error));\r\n }\r\n onhelpDatagetpostSuccessful(result) {\r\n this.alertService.showMessage(\"Delivery Master\",\"Saved Successfully !\",MessageSeverity.success)\r\n }\r\n gethelplist(event, name: string) {\r\n if (name == 'BADA') {\r\n this.ServiceMaster.getHelplist('BADACITY').subscribe(result => this.onhelpDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n \r\n }\r\n }\r\n onchnageba(event) {\r\n var Baname = $('#txtBaDaname').val().toString();\r\n if (!isNullOrUndefined(Baname) && Baname != '') {\r\n this.ServiceMaster.Getdelvcomm(Baname).subscribe(result => this.GetDelvDatagetSuccessful(result), error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n GetDelvDatagetSuccessful(result: DeliveryCommMaster) {\r\n this.Delv = result;\r\n if (this.Delv.walletAplly) {\r\n this.Active = this.Delv.walletAplly\r\n }\r\n else {\r\n this.Active = false;\r\n }\r\n if (this.Delv.batype == \"BA\" || this.Delv.batype == \"ECC\" ) {\r\n $('#Active').prop(\"disabled\", false)\r\n }\r\n else {\r\n $('#Active').prop(\"disabled\", true)\r\n }\r\n\r\n if (this.Delv.baDaMasterId == Guid.EMPTY) {\r\n if (result.pincodes.length > 0) {\r\n this.rows = [];\r\n this.rows = [result.pincodes.length];\r\n var pins: Pincodes = new Pincodes();\r\n for (let i = 0; i < result.pincodes.length; i++) {\r\n pins = new Pincodes();\r\n pins.pincode = result.pincodes[i];\r\n this.rows[i] = pins;\r\n }\r\n\r\n }\r\n }\r\n else {//public LstMappincode\r\n // $('#txtBaDaname').val(this.Delv.badaName);\r\n $('#txtdocuptoweight').val(this.Delv.minWeightODA);\r\n $('#txtpclfromwt').val(this.Delv.minWeightNormal);\r\n $('#txtdocperpcsrate').val(this.Delv.documentRatePerPcs);\r\n $('#txtdocperkgrate').val(this.Delv.documentRatePerKg);\r\n $('#txtpclperkgrate').val(this.Delv.parcelRateperKg);\r\n $('#txtpclperpcsrate').val(this.Delv.parcelRatePerPcs); \r\n $('#txtdocminamt').val(this.Delv.minAmountODA);\r\n $('#txtpclminamt').val(this.Delv.minAmountNormal); \r\n\r\n this.DocrateApply = this.Delv.docrateApply;\r\n this.ParcelRateApply = this.Delv.parcelRateApply;\r\n this.PriorityRateApply = this.Delv.priorityRateApply;\r\n this.CriticalRateApply = this.Delv.criticalRateApply;\r\n this.rows = [];\r\n this.rows = new Array(result.pincodes.length)\r\n this.selected = new Array(this.Delv.lstMappincode.length); \r\n if (result.pincodes.length > 0) { \r\n var pins: Pincodes = new Pincodes();\r\n \r\n for (let i = 0; i < result.pincodes.length; i++) {\r\n pins = new Pincodes();\r\n pins.pincode = result.pincodes[i];\r\n var tmprow = this.Delv.lstMappincode.find(e => e.pincode === result.pincodes[i])\r\n if (!isNullOrUndefined(tmprow)) {\r\n this.selected[i] = pins;\r\n this.rows[i] = pins;\r\n }\r\n else {\r\n this.rows[i] = pins;\r\n }\r\n }\r\n this.selectedpins = this.selected;\r\n } \r\n }\r\n }\r\n\r\n\r\n onhelpDatagetSuccessful(states: string[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.officearr = states;\r\n $('#txtBaDaname').autocomplete({\r\n source: this.officearr,\r\n delay: 500\r\n });\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n }\r\n}\r\nexport class DeliveryCommMaster {\r\n public delvCommId: string\r\n public badaName:string\r\n public baDaMasterId:string\r\n public baDaType:string\r\n public isactive:boolean\r\n public parcelRateperKg:string\r\n public parcelRatePerPcs:string\r\n public documentRatePerKg:string\r\n public documentRatePerPcs:string \r\n public prioityRatePerKg:string\r\n public prioityRatePerPcs:string\r\n public criticalRatePerKg:string\r\n public criticalRatePerPcs: string\r\n public docrateApply: boolean\r\n public parcelRateApply: boolean \r\n public priorityRateApply: boolean\r\n public criticalRateApply: boolean;\r\n public docWeight: string\r\n public parcelWeight: string\r\n public minWeightNormal: string\r\n public minWeightODA: string\r\n public minAmountNormal: string\r\n public minAmountODA: string\r\n public mappedPincode: string\r\n public lstMappincode: BadaMapPincode[]\r\n public pincodes: any;\r\n public walletAplly: any;\r\n public batype: any;\r\n}\r\nexport class Pincodes {\r\n public pincode:string\r\n}\r\nexport class BadaMapPincode {\r\n public BadaMapPincodeId: string;\r\n\t\tpublic DelvcommId:string \r\n\t\tpublic BadaMasterId:string \r\n\t\tpublic Badaname:string\r\n public pincode: string\r\n\r\n}\r\n\r\n","export default \".row {\\n margin-right: 0px;\\n margin-left: 0px;\\n}\\n\\n.form-group {\\n margin-bottom: 5px;\\n}\\n\\n.card-header {\\n background-color: #142c4c;\\n color: white;\\n}\\n\\n.toggle.btn-sm {\\n min-width: 70px !important;\\n min-height: 30px;\\n}\\n\\n.toggle.btn {\\n min-width: 70px !important;\\n min-height: 34px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9kZWxpdmVyeS1jb21tLXdhbGxldC9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxkZWxpdmVyeS1jb21tLXdhbGxldFxcZGVsaXZlcnktY29tbS13YWxsZXQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvZGVsaXZlcnktY29tbS13YWxsZXQvZGVsaXZlcnktY29tbS13YWxsZXQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0FDQ0Y7O0FERUE7RUFDRSxrQkFBQTtBQ0NGOztBREVBO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSwwQkFBQTtFQUNBLGdCQUFBO0FDQ0Y7O0FERUE7RUFDRSwwQkFBQTtFQUNBLGdCQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2RlbGl2ZXJ5LWNvbW0td2FsbGV0L2RlbGl2ZXJ5LWNvbW0td2FsbGV0LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnJvdyB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDBweDtcclxufVxyXG5cclxuLmZvcm0tZ3JvdXAge1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLmNhcmQtaGVhZGVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYzRjO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLnRvZ2dsZS5idG4tc20ge1xyXG4gIG1pbi13aWR0aDogNzBweCAhaW1wb3J0YW50O1xyXG4gIG1pbi1oZWlnaHQ6IDMwcHg7XHJcbn1cclxuXHJcbi50b2dnbGUuYnRuIHtcclxuICBtaW4td2lkdGg6IDcwcHggIWltcG9ydGFudDtcclxuICBtaW4taGVpZ2h0OiAzNHB4O1xyXG59XHJcbiIsIi5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbn1cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5jYXJkLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDJjNGM7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnRvZ2dsZS5idG4tc20ge1xuICBtaW4td2lkdGg6IDcwcHggIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMzBweDtcbn1cblxuLnRvZ2dsZS5idG4ge1xuICBtaW4td2lkdGg6IDcwcHggIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMzRweDtcbn0iXX0= */\"","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-delivery-comm-wallet',\r\n templateUrl: './delivery-comm-wallet.component.html',\r\n styleUrls: ['./delivery-comm-wallet.component.scss']\r\n})\r\nexport class DeliveryCommWalletComponent implements OnInit {\r\n ParcelRateApply: any = true;\r\n PriorityRateApply: any = true;\r\n WalletApply: any = true;\r\n officearr: any;\r\n WActive: any = false;\r\n constructor(private transaction: TransactionService, private configurations: ConfigurationService, private localstre: LocalStoreManager, private router: Router, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) { }\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n }\r\n gethelplist(event, name: string) {\r\n this.ServiceMaster.getHelplist(\"BADACITY\").subscribe(result => this.onhelpDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n onchnageba(event) {\r\n var Baname = $('#txtBaDaname').val().toString();\r\n if (!isNullOrUndefined(Baname) && Baname != '' ) {\r\n this.ServiceMaster.Getdelvcomm(Baname).subscribe(result => { }, error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n onhelpDatagetSuccessful(states: string[],ba:any) {\r\n this.alertService.stopLoadingMessage();\r\n this.officearr = states;\r\n $('#txtBaDaname').autocomplete({\r\n source: this.officearr,\r\n delay: 500\r\n });\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZGVsaXZlcnktY29tbWlzaW9uL2RlbGl2ZXJ5LWNvbW1pc2lvbi5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { Guid } from 'guid-typescript';\r\nimport { gunzip } from 'zlib';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-delivery-commision',\r\n templateUrl: './delivery-commision.component.html',\r\n styleUrls: ['./delivery-commision.component.scss']\r\n})\r\nexport class DeliveryCommisionComponent implements OnInit {\r\n billNo: string;\r\n ledgers: any[];\r\n\r\n constructor(private transaction: TransactionService, private ServiceMaster: Masters,\r\n private alertService: AlertService, private configurations: ConfigurationService,\r\n private authService: AuthService, public router: ActivatedRoute, private _router: Router,\r\n private tallyservice: TallyService, private localstre: LocalStoreManager) { }\r\n\r\n officeData: any[] = [];\r\n rows: DelvData[] = [];\r\n columns: any[] = [];\r\n totcomm: number = 0;\r\n totpcs: number = 0;\r\n totawb: number = 0;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n ngOnInit() {\r\n this.GetOfficeHelp();\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 40, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'awbno', name: 'Awb No', width: 110, cellTemplate: this.actionsTemplate, canAutoResize: false },\r\n { prop: 'ofdDate', name: 'OFD Date', width: 100 },\r\n { prop: 'Drsno', name: 'DRS No', width: 100 },\r\n { prop: 'actualWeight', name: 'Actual Wt.', width: 50 },\r\n { prop: 'chargeWeight', name: 'Charge Wt.', width: 50 },\r\n { prop: 'pieces', name: 'Pieces', width: 50 },\r\n { prop: 'NormalComm', name: 'Normal Charge', width: 100 },\r\n { prop: 'OdaComm', name: 'ODA Charge', width: 100 },\r\n { prop: 'DeliveryDate', name: 'Delv. Date', width: 50 },\r\n \r\n ];\r\n }\r\n GetOfficeHelp() {\r\n this.officeData = []\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetOfficeHelp'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr = null;\r\n Parameter = null;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n result.forEach((obj, ind, arr) => {\r\n if (this.officeData.length == 0) {\r\n this.officeData[0] = obj.officeName\r\n }\r\n else {\r\n this.officeData.push(obj.officeName)\r\n }\r\n });\r\n\r\n }, error => this.onDataLoadFailed(error))\r\n Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetLedger'\r\n Parameter = new Array(1);\r\n pr = new Prclass();\r\n pr = null;\r\n Parameter = null;\r\n this.ledgers = [];\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n result.forEach((obj, ind, arrres) => {\r\n if (this.ledgers.length == 0) {\r\n this.ledgers[0] = obj.name;\r\n }\r\n else {\r\n this.ledgers.push(obj.name);\r\n }\r\n });\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n getOfficeHelp() {\r\n $('#Officecode').autocomplete({\r\n source: this.officeData,\r\n delay: 50\r\n });\r\n }\r\n getledger() {\r\n $('#ledgername').autocomplete({\r\n source: this.ledgers,\r\n delay: 50\r\n });\r\n\r\n }\r\n\r\n setOfficeName() {\r\n if ($('#Officecode').val() != '' && !isNullOrUndefined($('#Officecode').val())) {\r\n if ($('#Officecode').val().includes('~')) {\r\n let officename = $('#Officecode').val();\r\n $('#OfficeName').val(officename.split('~')[1]);\r\n $('#Officecode').val(officename.split('~')[0]);\r\n }\r\n }\r\n }\r\n GetDeliveryData() {\r\n this.totcomm = 0;\r\n this.totpcs = 0;\r\n this.totawb = 0;\r\n\r\n let officeCode = $('#Officecode').val();\r\n let FromDate = $('#fromDate').val();\r\n let ToDate = $('#todate').val();\r\n let ledger = $('ledgername').val();\r\n if (officeCode == '' || isNullOrUndefined(officeCode)) {\r\n $('#Officecode').focus();\r\n return;\r\n }\r\n if (FromDate == '' || isNullOrUndefined(FromDate)) {\r\n $('#fromDate').focus();\r\n return;\r\n\r\n }\r\n if (ToDate == '' || isNullOrUndefined(ToDate)) {\r\n $('#todate').focus();\r\n return;\r\n\r\n }\r\n\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetDeliveryComm'\r\n let Parameter = new Array(3);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"OfficeCode\"\r\n pr.PropertyValue = officeCode;\r\n Parameter[0] = pr\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"FromDate\"\r\n pr.PropertyValue = FromDate;\r\n Parameter[1] = pr\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"ToDate\"\r\n pr.PropertyValue = ToDate;\r\n Parameter[2] = pr\r\n Req.LstParameter = Parameter;\r\n\r\n this.rows = [];\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n $('#ledgername').val(result[0].ledgerName)\r\n }\r\n result.forEach((obj, ind, arr) => {\r\n\r\n if (this.rows.length == 0) {\r\n let delv = new DelvData()\r\n delv.actualWeight = obj.actualWeight;\r\n delv.awbno = obj.awbno;\r\n delv.chargeWeight = obj.chargeWeight;\r\n delv.controloffice = obj.controloffice;\r\n delv.DeliveryDate = obj.deliveryDate;\r\n delv.Drsno = obj.drsNo;\r\n delv.ofdDate = obj.ofdDate;\r\n delv.pieces = parseInt(obj.pieces)\r\n delv.isODA = obj.isODA;\r\n if (delv.isODA == \"Yes\") {\r\n delv.NormalComm = 0;\r\n delv.OdaComm = parseFloat(obj.delvComm)\r\n }\r\n else {\r\n delv.NormalComm = parseFloat(obj.delvComm);\r\n delv.OdaComm = 0\r\n }\r\n delv.DeliveryDate = obj.deliveryDate\r\n this.rows[0] = delv;\r\n }\r\n else {\r\n let delv = new DelvData()\r\n delv.actualWeight = obj.actualWeight;\r\n delv.awbno = obj.awbno;\r\n delv.chargeWeight = obj.chargeWeight;\r\n delv.controloffice = obj.controloffice;\r\n delv.DeliveryDate = obj.deliveryDate;\r\n delv.Drsno = obj.drsNo;\r\n delv.isODA = obj.isODA\r\n delv.pieces = parseInt(obj.pieces)\r\n delv.ofdDate = obj.ofdDate;\r\n if (delv.isODA == \"Yes\") {\r\n delv.NormalComm = 0;\r\n delv.OdaComm = parseFloat(obj.delvComm)\r\n }\r\n else {\r\n delv.NormalComm = parseFloat(obj.delvComm);\r\n delv.OdaComm = 0\r\n }\r\n delv.DeliveryDate = obj.deliveryDate\r\n\r\n this.rows.push(delv);\r\n }\r\n \r\n });\r\n var totcomm\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1\r\n this.totcomm += obj.OdaComm + obj.NormalComm;\r\n this.totpcs += obj.pieces;\r\n this.totawb += 1;\r\n\r\n });\r\n this.rows = [...this.rows];\r\n $('#noofAwb').val(this.totawb);\r\n $('#noofPices').val(this.totpcs);\r\n $('#freightAmount').val(this.totcomm);\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n SaveDeliveryBill() {\r\n let officeCode = $('#Officecode').val();\r\n let FromDate = $('#fromDate').val();\r\n let ToDate = $('#todate').val();\r\n let ledger = $('#ledgername').val();\r\n let billdate = $('#billDate').val();\r\n if (officeCode == '' || isNullOrUndefined(officeCode)) {\r\n $('#Officecode').focus();\r\n return;\r\n }\r\n if (FromDate == '' || isNullOrUndefined(FromDate)) {\r\n $('#fromDate').focus();\r\n return;\r\n\r\n }\r\n if (ToDate == '' || isNullOrUndefined(ToDate)) {\r\n $('#todate').focus();\r\n return;\r\n\r\n }\r\n if (ledger == '' || isNullOrUndefined(ledger)) {\r\n $('#ledgername').focus();\r\n return;\r\n\r\n }\r\n if (billdate == '' || isNullOrUndefined(billdate)) {\r\n $('#billDate').focus();\r\n return;\r\n\r\n }\r\n var delvbill = new DelvBillsummary();\r\n delvbill.ControlOffice = this.rows[0].controloffice;\r\n delvbill.officecode = officeCode;\r\n delvbill.officename = $('#OfficeName').val();\r\n delvbill.billdate = billdate;\r\n delvbill.billno = \"\";\r\n delvbill.Billdetail = this.rows;\r\n delvbill.FromDate = FromDate;\r\n delvbill.Todate = ToDate;\r\n delvbill.LedgerName = ledger;\r\n delvbill.NoOfAwb = this.totawb;\r\n delvbill.noofPcs = this.totpcs;\r\n delvbill.Billamount = this.totcomm;\r\n delvbill.Billdetail.forEach((obj, ind, arr) => {\r\n obj.ofdDate = obj.ofdDate.split(\"/\")[2] + \"/\" + obj.ofdDate.split(\"/\")[1] + \"/\" + obj.ofdDate.split(\"/\")[0];\r\n obj.DeliveryDate = obj.DeliveryDate.split(\"/\")[2] + \"/\" + obj.DeliveryDate.split(\"/\")[1] + \"/\" + obj.DeliveryDate.split(\"/\")[0];\r\n }); \r\n delvbill.DelvbillSummaryid = Guid.raw();\r\n this.transaction.PostSaveDelvBill(delvbill).subscribe(result => {\r\n if (!isNullOrUndefined(result.billNo) && result.billNo != '') {\r\n this._router.navigate(['/delvblprint'], {\r\n queryParams: {\r\n billNo: result.billNo,\r\n backurl: '/delvcomm'\r\n }\r\n }); \r\n this.alertService.showDialog(\"Bill Saved Successfully\")\r\n this.rows = [];\r\n this.totcomm = 0;\r\n this.totawb = 0;\r\n this.totpcs = 0;\r\n $('#Officecode').val('');\r\n $('#fromDate').val('');\r\n $('#todate').val('');\r\n $('#ledgername').val('');\r\n $('#billDate').val('');\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n}\r\nexport class DelvData {\r\n officecode: string;\r\n officename: string;\r\n controloffice: string;\r\n ofdDate: string;\r\n awbno: string;\r\n Drsno: string;\r\n actualWeight: string;\r\n chargeWeight: string;\r\n pieces: number;\r\n isODA: string;\r\n NormalComm: number;\r\n OdaComm: number;\r\n DeliveryDate: string;\r\n}\r\nexport class DelvBillsummary {\r\n DelvbillSummaryid: string;\r\n officecode: string;\r\n officename: string;\r\n billno: string;\r\n billdate: string;\r\n FromDate: string;\r\n Todate: string;\r\n LedgerName: string;\r\n ControlOffice: string;\r\n Billdetail: DelvData[];\r\n NoOfAwb: number;\r\n noofPcs: number;\r\n Billamount: number;\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZGVsaXZlcnljb25maXJtYXRpb24vZGVsaXZlcnljb25maXJtYXRpb24uY29tcG9uZW50LnNjc3MifQ== */\"","import { DatePipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { map, share } from 'rxjs/operators';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { InscanResponse } from '../inscan/inscan.component';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { awbInScan } from '../awbinscan/awbinscan.component';\r\nimport { runsheet } from '../deliveryrunsheet/deliveryrunsheet.component';\r\nimport { ConfirmDialogModels, DilogRTOComponent } from '../controls/dilog-rto.component';\r\nimport { MatDialog } from '@angular/material';\r\nimport { DATE } from 'ngx-bootstrap/chronos/units/constants';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-deliveryconfirmation',\r\n templateUrl: './deliveryconfirmation.component.html',\r\n styleUrls: ['./deliveryconfirmation.component.scss']\r\n})\r\nexport class DeliveryconfirmationComponent implements OnInit {\r\n\r\n editeddeliveryconfir: deliveryconfir = new deliveryconfir();\r\n columns: any[] = [];\r\n bagcolumns: any[] = [];\r\n addrow: deliveryconfir[] = [];\r\n rows: deliveryconfir[] = [];\r\n rowsCache: deliveryconfir[] = [];\r\n bagrows: deliveryconfir[] = [];\r\n bagrowsCache: deliveryconfir[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n checkinout = true;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n base64Outputdrsimage: any;\r\n reciveathub: string;\r\n recivedBy: string;\r\n rtoaction: string;\r\n remark: string = \"\";\r\n officename: string = \"\";\r\n msg = '';\r\n isInOut = false;\r\n Islable: any;\r\n datepipe: any;\r\n modee: string = \"1\"\r\n drsno: string = \"\";\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss s');\r\n dialogRef: any;\r\n \r\n constructor(public dialog: MatDialog,private transaction: TransactionService, private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private localstre: LocalStoreManager, private ServiceMaster: Masters,) {\r\n\r\n this.editeddeliveryconfir.date = this.datee;\r\n }\r\n time = new Date();\r\n rxTime = new Date();\r\n intervalId;\r\n subscription: Subscription;\r\n\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n @ViewChild('actionsTemplate2', { static: true })\r\n actionsTemplate2: TemplateRef;\r\n @ViewChild('actionsTemplate3', { static: true })\r\n actionsTemplate3: TemplateRef;\r\n @ViewChild('actionsTemplate4', { static: true })\r\n actionsTemplate4: TemplateRef;\r\n\r\n ngOnInit() {\r\n \r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50,outerHeight:55, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'Awbno', name: 'AWB No', width: 30, outerHeight: 55 },\r\n ];\r\n this.columns.push({ prop: 'confirmationtype', name: 'Type', width: 160, innerHeight: 51, cellTemplate: this.actionsTemplate3, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ prop: 'confirmationremark', name: 'Remark', width: 250, innerHeight: 51, cellTemplate: this.actionsTemplate4, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ prop: 'otp', name: 'OTP', width: 160,innerHeight:51, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ prop: 'receivername',name: 'Reciver Name', width: 250,innerHeight:51, cellTemplate: this.actionsTemplate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: 'Action', width: 160,innerHeight:51, cellTemplate: this.actionsTemplate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.officename = logindata[0].officename;\r\n //this.bindgrid();\r\n // Using Basic Interval\r\n this.intervalId = setInterval(() => {\r\n this.time = new Date();\r\n }, 1000);\r\n\r\n // Using RxJS Timer\r\n this.subscription = timer(0, 1000)\r\n .pipe(\r\n map(() => new Date()),\r\n share()\r\n )\r\n .subscribe(time => {\r\n this.rxTime = time;\r\n });\r\n }\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.Awbno));\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n confirmDialog_rto(mes: any, callback: any,row:any): void {\r\n const message = mes;\r\n\r\n const dialogData = new ConfirmDialogModels(\"Undelivered Action\", message,\"\");\r\n\r\n this.dialogRef = this.dialog.open(DilogRTOComponent, {\r\n maxWidth: \"700px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnEdlResultofmodel(dialogResult,row) });\r\n\r\n }\r\n OnEdlResultofmodel(result:string,row) {\r\n if (!isNullOrUndefined(result)) {\r\n var newstr = result.split(\",\")\r\n this.reciveathub = newstr[0]\r\n this.recivedBy = newstr[1];\r\n this.rtoaction = newstr[2];\r\n this.remark = newstr[3];\r\n this.officename = newstr[4];\r\n for (let i = 0; i < this.rows.length; i++) {\r\n if (this.rows[i].Awbno == row.Awbno) {\r\n this.rows[i].confirmationremark = this.remark ;\r\n\r\n }\r\n }\r\n }\r\n }\r\n \r\n saverow(row:deliveryconfir) {\r\n row.base64Outputdrsimage = this.base64Outputdrsimage;\r\n row.date = (document.getElementById(\"date\")).value;\r\n row.time = this.time.toTimeString();\r\n row.officename = this.officename;\r\n row.deliveryboy = this.editeddeliveryconfir.deliveryboy\r\n row.dsrno = this.editeddeliveryconfir.dsrno;\r\n row.reciveathub = this.reciveathub;\r\n row.recivedBy = this.recivedBy;\r\n row.remark = this.remark;\r\n row.rtoaction = this.rtoaction;\r\n if (row.confirmationtype == 'DL') {\r\n if (isNullOrUndefined(row.otp)) {\r\n //this.showErrorAlert(\"OTP\", \"Please Enter OTP\")\r\n //return\r\n }\r\n if (isNullOrUndefined(row.receivername)) {\r\n this.showErrorAlert(\"Name\", \"Please Enter Reciever Name\")\r\n return\r\n }\r\n }\r\n if (isNullOrUndefined(row.base64Outputdrsimage)) {\r\n this.showErrorAlert(\"PDF\", \"Drs scan Pdf not selected\")\r\n return\r\n }\r\n this.transaction.PostPodProcess(row.confirmationtype, row).subscribe(Result => this.saveSuccessHelper(Result), error => this.saveFailedHelper(error))\r\n }\r\n onFileSelected(evt: any, ftype: string) {\r\n this.base64Outputdrsimage = null;\r\n var files = evt.target.files;\r\n var file: File = files[0];\r\n if (isNullOrUndefined(file)) {\r\n this.showErrorAlert(\"DRS PDF\", \"Please Select PDF Only\");\r\n \r\n return;\r\n }\r\n if (file.type != 'application/pdf' && file.type != 'image/jpeg' && file.type != 'image/png' )\r\n {\r\n this.showErrorAlert(\"DRS IMAGE\", \"Please Select PDF,png or jpg format Only\");\r\n return;\r\n }\r\n if ((Math.round(file.size / 1024)) > 1024) {\r\n this.showErrorAlert(\"DRS IMAGE\", \"File size exceeded from 1 mb ,please compress it first !\");\r\n return;\r\n }\r\n if (files.length > 0 && file.size > 0) {\r\n var reader = new FileReader();\r\n reader.onload = this._handleReaderLoadedCheque.bind(this);\r\n reader.readAsDataURL(file);\r\n\r\n }\r\n else {\r\n this.showErrorAlert(\"DRS IMAGE\", \"Please Select PDF,png or jpg format Only\");\r\n }\r\n }\r\n _handleReaderLoadedCheque(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64Outputdrsimage = btoa(binaryString);\r\n }\r\n Changeoption(event, row: any) {\r\n if (event.target.value != 'DL' && event.target.value != 'NA') {\r\n this.confirmDialog_rto(\"\", this.OnEdlResultofmodel,row)\r\n \r\n }\r\n else {\r\n\r\n }\r\n }\r\n bindgrid(awbno: string, conrmob: string, consmob: string, drsno: string, drsDate: any) {\r\n var find: boolean = false;\r\n this.rows.forEach((awb, index, awbs) => {\r\n if ((awb as any).Awbno == awbno) {\r\n find = true;\r\n }\r\n\r\n });\r\n if (find) {\r\n return;\r\n }\r\n var tmp = new deliveryconfir();\r\n\r\n tmp.Awbno = awbno;\r\n tmp.ConrMobileno = conrmob;\r\n tmp.ConsMobileno = consmob;\r\n tmp.DrsDate = drsDate\r\n if (this.rows.length == 0)\r\n {\r\n this.rows[0] = tmp;\r\n }\r\n else\r\n {\r\n this.rows.push(tmp);\r\n }\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n \r\n });\r\n \r\n\r\n this.rows = [...this.rows]\r\n }\r\n\r\n LoadSucessdata(deliveryconfirs: deliveryconfir[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n deliveryconfirs.forEach((prod, index, deliveryconfirs) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n //this.rowsCache = [...rowsCache];\r\n this.rows = deliveryconfirs;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve Data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n saveSuccessHelper(Result) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n\r\n for (let i = 0; i < this.rows.length; i++) {\r\n if (this.rows[i].Awbno == Result.awbno) {\r\n this.rows.splice(i,1);\r\n\r\n }\r\n }\r\n this.rows = [...this.rows];\r\n this.rowsCache = [...this.rows];\r\n this.alertService.showStickyMessage( Result.confirmationtype==\"DL\"?\"POD\":\"UNDEL\", 'SuccesfFully Saved:', MessageSeverity.success);\r\n\r\n }\r\n getdrsdetail(event) {\r\n this.drsno = event.target.value;\r\n if (this.drsno.length > 0) {\r\n\r\n this.transaction.Getgendrs(this.drsno).subscribe(result => this.onGetSucessdrsData(result), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n onGetSucessdrsData(result: any) {\r\n\r\n this.editeddeliveryconfir.deliveryboy = result[0].name;\r\n this.editeddeliveryconfir.dsrno = result[0].drsno;\r\n for (let i = 0; i < result.length; i++) {\r\n if (result[i].ispoddone ) {\r\n continue;\r\n }\r\n\r\n this.bindgrid(result[i].awbno, result[i].consMobileno, result[i].conrMobileno, result[i].drsno, result[i].drsdate);\r\n }\r\n this.base64Outputdrsimage = null;\r\n\r\n if (this.rows.length == 0){\r\n this.showErrorAlert(\"DRS Data\", \"No Record Found\");\r\n }\r\n }\r\n \r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n \r\n getdrs() {\r\n var Awbno:string = $('#txtAwbno').val().toString();\r\n if (Awbno.length == 10) {\r\n this.transaction.GetDrsno(Awbno, this.officename).subscribe(result => this.onGetSucessdrsDatadrs(result), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n }\r\n onGetSucessdrsDatadrs(result: any) {\r\n if (result.length > 0) {\r\n $('#dsrno').val(result[0].drsNo);\r\n this.drsno = result[0].drsNo\r\n if (this.drsno.length > 0) {\r\n this.transaction.Getgendrs(this.drsno).subscribe(result => this.onGetSucessdrsData(result), error => this.onDataLoadFailed(error));\r\n $('#txtAwbno').val('');\r\n }\r\n }\r\n }\r\n}\r\nexport class deliveryconfir {\r\n constructor(dsrno?: string, deliveryboy?: string,\r\n date?: string, time?: string, Awbno?: string, otp?: string, receivername?: string) {\r\n\r\n this.dsrno = dsrno;\r\n this.deliveryboy = deliveryboy;\r\n this.date = date;\r\n this.time = time;\r\n this.Awbno = Awbno;\r\n this.otp = otp;\r\n this.receivername = receivername;\r\n };\r\n \r\n public dsrno:string\r\n public deliveryboy:string\r\n public date: string\r\n public time:string\r\n public Awbno: string\r\n public otp: string\r\n public receivername: string\r\n public confirmationtype: string\r\n public confirmationremark: string\r\n public base64Outputdrsimage: any;\r\n public reciveathub: string;\r\n public recivedBy: string;\r\n public rtoaction: string;\r\n public remark: string \r\n public officename: string\r\n public DrsDate: string\r\n public ConrMobileno: string\r\n public ConsMobileno:string\r\n}\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZGVsaXZlcnlvdXRzY2FuL2RlbGl2ZXJ5b3V0c2Nhbi5jb21wb25lbnQuc2NzcyJ9 */\"","import { DatePipe } from '@angular/common';\r\nimport { AfterViewInit, ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MatRadioChange } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { map, share } from 'rxjs/operators';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-deliveryoutscan',\r\n templateUrl: './deliveryoutscan.component.html',\r\n styleUrls: ['./deliveryoutscan.component.scss']\r\n})\r\nexport class DeliveryoutscanComponent implements OnInit,AfterViewInit {\r\n\r\n editclassoutscan: classoutscan = new classoutscan();\r\n columns: any[] = [];\r\n rows: classoutscan[] = [];\r\n rowsCache: classoutscan[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n public officearr: any[] = [];\r\n\r\n time = new Date();\r\n rxTime = new Date();\r\n intervalId;\r\n subscription: Subscription;\r\n badavehicle: string = \"1\";\r\n checkinout: any = true;\r\n bookingdata: any;\r\n istopay:string = \"2\"\r\n iscdod:string =\"2\"\r\n\r\n constructor(private configurations: ConfigurationService, private transaction: TransactionService, private localstre: LocalStoreManager ,private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss s');\r\n\r\n ngOnInit() {\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'hub', name: 'Hub', width: 100 },\r\n { prop: 'city', name: 'City', width: 100 },\r\n { prop: 'pincodes', name: 'Pin-Code', width: 100 },\r\n { prop: 'dekiveries', name: 'Dekiveries', width: 100 },\r\n { prop: 'times', name: 'Timings', width: 100 },\r\n { prop: 'deliversby', name: 'Delivers By', width: 100 },\r\n { prop: 'covers', name: 'Covers', width: 100 },\r\n { prop: 'deliverypincode', name: 'Delivery Pin-Code', width: 100 },\r\n\r\n ];\r\n // this.loaddata();\r\n \r\n this.intervalId = setInterval(() => {\r\n this.time = new Date();\r\n }, 1000);\r\n\r\n // Using RxJS Timer\r\n this.subscription = timer(0, 1000)\r\n .pipe(\r\n map(() => new Date()),\r\n share()\r\n )\r\n .subscribe(time => {\r\n this.rxTime = time;\r\n });\r\n }\r\n ngAfterViewInit() {\r\n \r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.editclassoutscan.originhub = logindata[0].officename;\r\n\r\n //this.RbSelectionchange();\r\n }\r\n \r\n RbSelectionchange() {\r\n if (this.badavehicle == \"1\" || this.badavehicle == \"2\") {\r\n (document.getElementById('vehiclecode')).disabled = true;\r\n (document.getElementById('Name')).disabled = true;\r\n (document.getElementById('badaName')).disabled = false;\r\n (document.getElementById('badacode')).disabled = false;\r\n (document.getElementById('vendorname')).disabled = true;\r\n\r\n }\r\n if ( this.badavehicle == \"3\") {\r\n (document.getElementById('vehiclecode')).disabled = false;\r\n (document.getElementById('Name')).disabled = false;\r\n (document.getElementById('badaName')).disabled = true;\r\n (document.getElementById('badacode')).disabled = true;\r\n (document.getElementById('vendorname')).disabled = true;\r\n\r\n }\r\n if (this.badavehicle == \"4\") {\r\n (document.getElementById('vehiclecode')).disabled = true;\r\n (document.getElementById('Name')).disabled = true;\r\n (document.getElementById('badaName')).disabled = true;\r\n (document.getElementById('badacode')).disabled = true;\r\n (document.getElementById('vendorname')).disabled = false;\r\n\r\n }\r\n }\r\n\r\n gethelplist($event, name: string) {\r\n if (name == 'alloffice') {\r\n this.ServiceMaster.getHelplist(name).subscribe(result => this.onhelpDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n $('#tohub').autocomplete({\r\n source: this.officearr,\r\n delay: 10\r\n });\r\n return;\r\n }\r\n var tmpname = this.badavehicle == \"1\" ? 'da' : this.badavehicle == \"2\" ? 'ba' : this.badavehicle == \"3\" ? 'vr' : 'fr'\r\n name = tmpname;\r\n if (name == 'ba' || name == 'da') {\r\n this.ServiceMaster.getHelplist(name).subscribe(result => this.onhelpDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n $('#badacode').autocomplete({\r\n source: this.officearr,\r\n delay: 10\r\n });\r\n }\r\n }\r\n SetBadacode($event) {\r\n let citystate: string = (document.getElementById('badacode')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n (document.getElementById('badacode')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n (document.getElementById('badaName')).value = citystate.substring(citystate.indexOf('-') + 2);\r\n\r\n }\r\n }\r\n \r\n onhelpDatagetSuccessful(states: string[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.officearr = states;\r\n }\r\n loaddata() {\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve item receive from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n Insertdestinationdelivery() {\r\n debugger;\r\n var strvalue = this.editclassoutscan;\r\n }\r\n private saveSuccessHelper(classoutscans?: classoutscan) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `DELIVERY OUTSCAN \\\"${this.editclassoutscan.originhub}\\\" was created successfully`, MessageSeverity.success);\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.originhub));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n awbbaggingdetails(event: any) {\r\n var tmp: string = event.target.value;\r\n \r\n if (isNullOrUndefined(tmp) || tmp == '') {\r\n event.target.focus();\r\n return;\r\n }\r\n var tmpname = this.editclassoutscan.originhub\r\n\r\n this.transaction.GetInoutForAwb(tmpname, tmp, \"IN\").subscribe(\r\n result => this.OngetSuceesInout(result, tmp), error => this.onDataLoadFailed(error));\r\n }\r\n OngetSuceesInout(result: any, awbno: string) {\r\n this.checkinout = result;\r\n if (awbno.length == 10 && this.checkinout) {\r\n this.transaction.getAwbbookingDetail(awbno).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n this.showErrorAlert(\"Awbno\", \"In Scan Not Done By \" + (document.getElementById('hub')).value)\r\n }\r\n }\r\n onGetSucessAwbbookingData(result: any) {\r\n\r\n if (result.length > 0) {\r\n this.bookingdata = result[0];\r\n if (result[0].isconnected != false) {\r\n this.editclassoutscan.weight = this.bookingdata.awbWeight;\r\n this.editclassoutscan.cod = this.bookingdata.dodAmount; \r\n \r\n }\r\n else {\r\n alert(\"Booking Connection In Scan Has not Done For This Awb.\")\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n}\r\nexport class classoutscan {\r\n constructor(originhub?: string, tohub?: string, time?: string, date?: string,\r\n type?: string, vehicletype?: string, vehiclecode?: string, Name?: string, vendorname?: string\r\n , outscan?: string, noofshipment?: string, weight?: string, topay?: string, dod?: string\r\n , cod?: string, amount?: string, starttime?: string, endtime?: string) {\r\n this.originhub = originhub;\r\n this.tohub = tohub;\r\n this.time = time;\r\n this.date = date;\r\n this.type = type;\r\n this.vehicletype = vehicletype;\r\n this.vehiclecode = vehiclecode;\r\n this.Name = Name;\r\n this.vendorname = vendorname;\r\n this.outscan = outscan;\r\n this.noofshipment = noofshipment;\r\n this.weight = weight;\r\n this.topay = topay;\r\n this.dod = dod;\r\n this.cod = cod;\r\n this.amount = amount;\r\n this.starttime = starttime;\r\n this.endtime = endtime;\r\n };\r\n\r\n public originhub: string\r\n public tohub: string\r\n public time: string\r\n public date: string\r\n public type: string\r\n public vehicletype: string\r\n public vehiclecode: string\r\n public Name: string\r\n public vendorname: string\r\n public outscan: string\r\n public noofshipment: string\r\n public weight: string\r\n public topay: string\r\n public dod: string\r\n public cod: string\r\n public amount: string\r\n public starttime: string\r\n public endtime: string\r\n public awbno: string\r\n public stickerno: string\r\n public Badacode: string\r\n public BADAName: string\r\n public tpamount: string\r\n public mobileno:string\r\n}\r\n\r\n","export default \"#deliveryrunsheet {\\n font-family: Arial, Helvetica, sans-serif;\\n /*border-collapse: collapse;*/\\n width: 100%;\\n}\\n\\n#deliveryrunshee td, #deliveryrunshee th {\\n /* border: 1px solid #000;*/\\n padding: 3px;\\n}\\n\\n#deliveryrunshee th {\\n padding-top: 12px;\\n padding-bottom: 12px;\\n text-align: left;\\n color: #fff;\\n}\\n\\n.center {\\n text-align: center;\\n}\\n\\n.right {\\n text-align: right;\\n}\\n\\n.color {\\n color: #000;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9kZWxpdmVyeXJ1bnNoZWV0L0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXGRlbGl2ZXJ5cnVuc2hlZXRcXGRlbGl2ZXJ5cnVuc2hlZXQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvZGVsaXZlcnlydW5zaGVldC9kZWxpdmVyeXJ1bnNoZWV0LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0UseUNBQUE7RUFDQSw2QkFBQTtFQUNBLFdBQUE7QUNBRjs7QURHQTtFQUNDLDJCQUFBO0VBQ0MsWUFBQTtBQ0FGOztBRE9BO0VBQ0UsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0VBRUEsV0FBQTtBQ0xGOztBRE9BO0VBQ0Usa0JBQUE7QUNKRjs7QURPQTtFQUNFLGlCQUFBO0FDSkY7O0FETUE7RUFDRSxXQUFBO0FDSEYiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2RlbGl2ZXJ5cnVuc2hlZXQvZGVsaXZlcnlydW5zaGVldC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4jZGVsaXZlcnlydW5zaGVldCB7XHJcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgLypib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyovXHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbiNkZWxpdmVyeXJ1bnNoZWUgdGQsICNkZWxpdmVyeXJ1bnNoZWUgdGgge1xyXG4gLyogYm9yZGVyOiAxcHggc29saWQgIzAwMDsqL1xyXG4gIHBhZGRpbmc6IDNweDtcclxufVxyXG5cclxuLy8gI2RlbGl2ZXJ5cnVuc2hlZSB0cjpudGgtY2hpbGQoZXZlbil7YmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjt9XHJcblxyXG4vLyAjZGVsaXZlcnlydW5zaGVlIHRyOmhvdmVyIHtiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO31cclxuXHJcbiNkZWxpdmVyeXJ1bnNoZWUgdGgge1xyXG4gIHBhZGRpbmctdG9wOiAxMnB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogIzE0MmM0YztcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG4uY2VudGVye1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnJpZ2h0e1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcbi5jb2xvcntcclxuICBjb2xvcjogIzAwMDtcclxufVxyXG4iLCIjZGVsaXZlcnlydW5zaGVldCB7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAvKmJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7Ki9cbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNkZWxpdmVyeXJ1bnNoZWUgdGQsICNkZWxpdmVyeXJ1bnNoZWUgdGgge1xuICAvKiBib3JkZXI6IDFweCBzb2xpZCAjMDAwOyovXG4gIHBhZGRpbmc6IDNweDtcbn1cblxuI2RlbGl2ZXJ5cnVuc2hlZSB0aCB7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uY29sb3Ige1xuICBjb2xvcjogIzAwMDtcbn0iXX0= */\"","import { Component, OnInit, ViewChild, ElementRef, TemplateRef } from '@angular/core';\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { QRCodeComponent } from 'angular2-qrcode'\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ConfigurationService } from 'src/app/services/configuration.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-deliveryrunsheet',\r\n templateUrl: './deliveryrunsheet.component.html',\r\n styleUrls: ['./deliveryrunsheet.component.scss']\r\n})\r\nexport class DeliveryrunsheetComponent implements OnInit {\r\n\r\n appLogo = require('../../assets/images/logos-02.png');\r\n deliberyrunsheet: runsheet[] = [];\r\n drsno: string = \"\";\r\n deliverydate: any;\r\n deliveryrunsheet: any;\r\n delofficename: any;\r\n officecode: any;\r\n delboyname: any;\r\n delboymob: any;\r\n awbno: any;\r\n elementType = 'svg';\r\n width = 2;\r\n height = 25;\r\n marginLeft = -20;\r\n textMargin = 1;\r\n\r\n constructor(private transaction: TransactionService, private alertService: AlertService, private configurations: ConfigurationService, private authService: AuthService, public router: ActivatedRoute, private _router: Router) {\r\n\r\n\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss');\r\n ngOnInit() {\r\n this.deliverydate = this.datee;\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.drsno = params.drsno;\r\n\r\n }\r\n );\r\n if (this.drsno.length > 0) {\r\n\r\n this.transaction.Getgendrs(this.drsno).subscribe(result => this.onGetSucessdrsData(result), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n loaddata() {\r\n\r\n }\r\n\r\n onGetSucessdrsData(result: any) {\r\n var tmp = result\r\n var rn: runsheet = new runsheet()\r\n for (let i = 0; i < result.length; i++) {\r\n this.delofficename = result[i].scanOfficeid + \" | Code: \" + result[i].officeCode;\r\n this.officecode = result[i].officeCode;\r\n this.deliveryrunsheet = result[i].drsno;//\r\n this.delboyname = result[i].name + \" | Code: NA \" \r\n this.delboymob = result[i].mobileno;\r\n rn = new runsheet();\r\n rn.bookingbranch = result[i].officename;\r\n rn.consignmeename = result[i].consName \r\n rn.Consaddress = result[i].houseNo + \" , \" + result[i].streetName + \" , \" + result[i].city + \"-\" + result[i].pincode;\r\n rn.consignmentno = result[i].awbno;\r\n rn.consMobileno = result[i].consMobileno;\r\n rn.stickerno = result[i].stickerno;\r\n rn.srlno = (i + 1).toString();\r\n rn.Product = result[i].productType + \" \" + result[i].product\r\n rn.pieces = result[i].pieces.toString()\r\n rn.weight = result[i].awbWeight.toString();\r\n if (this.deliberyrunsheet.length == 0) {\r\n this.deliberyrunsheet[0] = rn;\r\n }\r\n else {\r\n this.deliberyrunsheet.push(rn);\r\n }\r\n\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n\r\n\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n\r\n}\r\nexport class runsheet {\r\n public srlno: string\r\n public consignmentno: string\r\n public stickerno: string\r\n public bookingbranch: string\r\n public weight: string\r\n public consignmeename: string\r\n public Product: string\r\n public pieces: string\r\n public Consaddress: string\r\n public consMobileno: string\r\n}\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZGVsb3Zlcnktb3V0LXNjYW4tbmV3L2RlbG92ZXJ5LW91dC1zY2FuLW5ldy5jb21wb25lbnQuc2NzcyJ9 */\"","\r\nimport { DatePipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { map, share } from 'rxjs/operators';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { InscanResponse } from '../inscan/inscan.component';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { awbInScan } from '../awbinscan/awbinscan.component';\r\n\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-delovery-out-scan-new',\r\n templateUrl: './delovery-out-scan-new.component.html',\r\n styleUrls: ['./delovery-out-scan-new.component.scss']\r\n})\r\nexport class DeloveryOutScanNewComponent implements OnInit {\r\n\r\n\r\n editedawbOutScan: awbOutScanDel = new awbOutScanDel();\r\n columns: any[] = [];\r\n bagcolumns: any[] = [];\r\n addrow: awbOutScanDel[] = [];\r\n rows: awbOutScanDel[] = [];\r\n rowsCache: awbOutScanDel[] = [];\r\n bagrows: awbOutScanDel[] = [];\r\n bagrowsCache: awbOutScanDel[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n checkinout = true;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n displayedFirstImage;\r\n displayedSecondImage;\r\n msg = '';\r\n isInOut = false;\r\n Islable: any;\r\n datepipe: any;\r\n public officearr: any[] = [];\r\n bookingdata: InscanResponse = new InscanResponse();\r\n modee: string = \"1\"\r\n\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss s');\r\n\r\n\r\n\r\n constructor(private transaction: TransactionService, private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private localstre: LocalStoreManager, private ServiceMaster: Masters,) {\r\n\r\n this.editedawbOutScan.date = this.datee;\r\n }\r\n time = new Date();\r\n rxTime = new Date();\r\n intervalId;\r\n subscription: Subscription;\r\n\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'gridAwbno', name: 'AWB No', width: 100 },\r\n { prop: 'Origin', name: 'Origin', width: 100 },\r\n { prop: 'Destination', name: 'Destination', width: 100 },\r\n { prop: 'Weight', name: 'Weight', width: 100 },\r\n { prop: 'Product', name: 'Product', width: 150 },\r\n { prop: 'Pieces', name: 'Pieces', width: 150 },\r\n { prop: 'Topay', name: 'Topay Amount', width: 150 },\r\n { prop: 'CODDOD', name: 'COD/DOD Amount', width: 150 },\r\n\r\n\r\n ];\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.editedawbOutScan.hub = logindata[0].officename;\r\n this.editedawbOutScan.scheduleorpriority = \"Scheduled\";\r\n // Using Basic Interval\r\n this.intervalId = setInterval(() => {\r\n this.time = new Date();\r\n }, 1000);\r\n\r\n // Using RxJS Timer\r\n this.subscription = timer(0, 1000)\r\n .pipe(\r\n map(() => new Date()),\r\n share()\r\n )\r\n .subscribe(time => {\r\n this.rxTime = time;\r\n });\r\n this.getOrigin();\r\n }\r\n getOriginList($event) {\r\n this.getOrigin();\r\n this.arrcity2 = this.arrcity\r\n $('#hub').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n\r\n getOrigin() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(ba: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"ba\") {\r\n this.arrcity = ba;\r\n }\r\n }\r\n gethelplist($event, name: string) {\r\n if (name == 'alloffice') {\r\n this.ServiceMaster.getHelplist(name).subscribe(result => this.onhelpDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n $('#to').autocomplete({\r\n source: this.officearr,\r\n delay: 500\r\n });\r\n }\r\n }\r\n onhelpDatagetSuccessful(states: string[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.officearr = states;\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n LoadSucessdata(awbOutScans: awbOutScanDel[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n awbOutScans.forEach((prod, index, awbOutScans) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n //this.rowsCache = [...rowsCache];\r\n this.rows = awbOutScans;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertAwbOutScan() {\r\n debugger;\r\n if (isNullOrUndefined(this.editedawbOutScan.to)) {\r\n (document.getElementById('to')).focus();\r\n return;\r\n }\r\n if (this.rows.length <= 0) {\r\n this.showErrorAlert(\"Awbno\", \"No Record To Save\")\r\n\r\n return;\r\n }\r\n this.transaction.POSTawbinoutscan(\"DEL\", this.rows).subscribe(Result => this.saveSuccessHelper(Result), error => this.saveFailedHelper(error))\r\n }\r\n private saveSuccessHelper(awbOutScanss?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `awbOutScan \\\"${awbOutScanss[0].manifestno}\\\" was created successfully`, MessageSeverity.success);\r\n this.editedawbOutScan = new awbOutScanDel();\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.editedawbOutScan.hub = logindata[0].officename;\r\n this.editedawbOutScan.scheduleorpriority = \"Scheduled\";\r\n this.editedawbOutScan.Manifestno = awbOutScanss[0].manifestno;\r\n this.route.navigate(['/awbdrs'], {\r\n queryParams: {\r\n drsno: this.editedawbOutScan.Manifestno,\r\n \r\n }\r\n }); // define your component where you want to go\r\n this.rows = [];\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.hub));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n onGetSucessAwbbookingData(result: any) {\r\n if (result.length > 0) {\r\n if (result[0].isOutforDelivery || result[0].isDelivered) {\r\n this.showErrorAlert(\"OFD\", \"Can't Done OFD This Awb Is Already Done OFD or Has Been Deliverd\")\r\n return;\r\n }\r\n this.bookingdata = result[0];\r\n var awbfind = false;\r\n this.rows.forEach((awb, index, arawb) => {\r\n if (awb.Awbno == this.bookingdata.awbno) {\r\n awbfind = true;\r\n }\r\n });\r\n if (awbfind) {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Already Exist\")\r\n return;\r\n }\r\n var Awbrow = this.rows.find(e => e.Awbno === this.bookingdata.awbno)\r\n if (!isNullOrUndefined(Awbrow) && Awbrow.Awbno == this.bookingdata.awbno) {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Already Exist\")\r\n return;\r\n }\r\n //if (result[0].isconnected != false ) {\r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbOutScanDel();\r\n this.addrow[0].gridAwbno = this.bookingdata.awbno // $('#Awbno').val();\r\n this.addrow[0].Awbno = this.bookingdata.awbno// $('#Awbno').val();\r\n this.addrow[0].Origin = this.bookingdata.orgCity;\r\n this.addrow[0].Destination = this.bookingdata.destCity;\r\n this.addrow[0].Weight = this.bookingdata.awbWeight;\r\n this.addrow[0].Product = this.bookingdata.bookingFor;\r\n this.addrow[0].Pieces = this.bookingdata.pieces;\r\n this.addrow[0].to = this.editedawbOutScan.to = (document.getElementById('to')).value;\r\n this.addrow[0].date = this.editedawbOutScan.date;\r\n this.addrow[0].coloader = this.editedawbOutScan.coloader = isNullOrUndefined((document.getElementById('coloader')).value) ? ' ' : (document.getElementById('coloader')).value;\r\n //this.addrow[0].origindispatchdate = this.editedawbOutScan.origindispatchdate = (document.getElementById('origindispatchdate')).value;\r\n this.addrow[0].loadManifesttime = this.editedawbOutScan.loadManifesttime = (document.getElementById('loadManifesttime')).value;\r\n this.addrow[0].Manifestno = this.editedawbOutScan.Manifestno;\r\n this.addrow[0].mobileNo = this.editedawbOutScan.mobileNo + \"|\" + this.bookingdata.consMobileno;\r\n this.addrow[0].vehicleNo = \"\";\r\n this.addrow[0].Topay = this.bookingdata.isTopay ? this.bookingdata.topayamt : \"0.00\";;\r\n this.addrow[0].CODDOD = this.bookingdata.isCOD || this.bookingdata.isDoD ? this.bookingdata.codDodamount : \"0.00\";\r\n\r\n //this.addrow[0].SearchManifestNo = this.editedawbInScan.SearchManifestNo = (document.getElementById('SearchManifestNo')).value;\r\n this.addrow[0].hub = this.editedawbOutScan.hub;\r\n this.addrow[0].mode = \"\"\r\n this.rows[0] = this.addrow[0];\r\n }\r\n else {\r\n var tmp = new awbOutScanDel();\r\n tmp.gridAwbno = this.bookingdata.awbno;\r\n tmp.Awbno = this.bookingdata.awbno;\r\n tmp.to = this.editedawbOutScan.to = (document.getElementById('to')).value\r\n tmp.date = this.editedawbOutScan.date;\r\n tmp.coloader = this.editedawbOutScan.coloader = (document.getElementById('coloader')).value\r\n tmp.origindispatchdate = this.editedawbOutScan.origindispatchdate;\r\n tmp.loadManifesttime = this.editedawbOutScan.loadManifesttime;\r\n tmp.Manifestno = this.editedawbOutScan.Manifestno;\r\n //tmp.SearchManifestNo = this.editedawbInScan.SearchManifestNo = (document.getElementById('SearchManifestNo')).value;\r\n tmp.hub = this.editedawbOutScan.hub;\r\n tmp.Origin = this.bookingdata.orgCity;\r\n tmp.Destination = this.bookingdata.destCity;;\r\n tmp.Weight = this.bookingdata.awbWeight;;\r\n tmp.Product = this.bookingdata.bookingFor;;\r\n tmp.Pieces = this.bookingdata.pieces;\r\n tmp.mobileNo = this.editedawbOutScan.mobileNo+\"|\"+this.bookingdata.consMobileno;\r\n tmp.vehicleNo = \"\";\r\n tmp.Topay = this.bookingdata.isTopay ? this.bookingdata.topayamt:\"0.00\";\r\n tmp.CODDOD = this.bookingdata.isCOD || this.bookingdata.isDoD?this.bookingdata.codDodamount:\"0.00\";\r\n //tmp.mode = this.modee == \"1\" ? \"Air\" : \"Surface\";\r\n this.rows.push(tmp);\r\n }\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n if (awb.Pieces == '' || awb.Pieces == 'NaN') {\r\n totalpiece = parseInt(totalpiece) + parseInt('0');\r\n } else {\r\n totalpiece = parseInt(totalpiece) + parseInt(awb.Pieces);\r\n }\r\n if (awb.Weight == '' || awb.Weight == 'NaN') {\r\n totalWeight = parseFloat(totalWeight) + parseFloat('0');\r\n } else {\r\n totalWeight = parseFloat(totalWeight) + parseFloat(awb.Weight);\r\n }\r\n totalNoofAwb = index + 1;\r\n });\r\n this.editedawbOutScan.NoofAwb = totalNoofAwb;\r\n this.editedawbOutScan.TotalWeight = totalWeight;\r\n this.editedawbOutScan.TotalPieces = totalpiece;\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n awb.TotalPieces = totalpiece;\r\n awb.TotalWeight = totalWeight;\r\n awb.NoofAwb = totalNoofAwb;\r\n });\r\n\r\n this.rows = [...this.rows]\r\n $('#Awbno').val('');\r\n $('#Awbno').focus();\r\n //}\r\n //else {\r\n // alert(\"Booking Connection In Scan Has not Done For This Awb.\")\r\n //}\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n awbbaggingdetails(event: any) {\r\n var tmp: string = event.target.value;\r\n var Awbrow = this.rows.find(e => e.Awbno === tmp)\r\n if (!isNullOrUndefined(Awbrow) && Awbrow.Awbno == tmp) {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Already Exist\")\r\n return;\r\n }\r\n if (isNullOrUndefined(this.editedawbOutScan.to)) {\r\n (document.getElementById('to')).focus();\r\n return;\r\n }\r\n if ((isNullOrUndefined(tmp) || tmp == '') && this.rows.length ==0) {\r\n event.target.focus();\r\n return;\r\n }\r\n else\r\n { }\r\n\r\n var tmpname = (document.getElementById('hub')).value\r\n\r\n this.transaction.GetInoutForAwb((document.getElementById('hub')).value, tmp, \"IN\").subscribe(\r\n result => this.OngetSuceesInout(result, tmp), error => this.onDataLoadFailed(error));\r\n }\r\n OngetSuceesInout(result: any, awbno: string) {\r\n this.checkinout = result;\r\n if (awbno.length == 10 && this.checkinout) {\r\n \r\n this.transaction.getAwbbookingDetail(awbno).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n this.showErrorAlert(\"Awbno\", \"In Scan Not Done By \" + (document.getElementById('hub')).value)\r\n }\r\n }\r\n}\r\nexport class awbOutScanDel {\r\n constructor(hub?: string, date?: string, to?: string,\r\n mode?: string, origindispatchdate?: string, coloader?: string, Awbno?: string, Origin?: string,\r\n Destination?: string, Weight?: string, Product?: string, Pieces?: string, NoofAwb?: string, TotalPieces?: string\r\n , TotalWeight?: string, scheduleorpriority?: string, Manifestno?: string, loadManifesttime?: string, gridAwbno?: string) {\r\n\r\n this.hub = hub;\r\n this.date = date;\r\n this.to = to;\r\n \r\n this.mode = mode;\r\n this.origindispatchdate = origindispatchdate;\r\n this.coloader = coloader;\r\n this.Awbno = Awbno;\r\n this.Origin = Origin;\r\n this.Destination = Destination;\r\n this.Weight = Weight;\r\n this.Product = Product;\r\n this.Pieces = Pieces;\r\n this.NoofAwb = NoofAwb;\r\n this.TotalPieces = TotalPieces;\r\n this.TotalWeight = TotalWeight;\r\n this.scheduleorpriority = scheduleorpriority;\r\n this.Manifestno = Manifestno;\r\n this.loadManifesttime = loadManifesttime;\r\n this.gridAwbno = gridAwbno;\r\n };\r\n public hub: string\r\n public date: string\r\n public to: string\r\n public mode: string\r\n public origindispatchdate: string\r\n public coloader: string\r\n public Awbno: string\r\n public Origin: string\r\n public Destination: string\r\n public Weight: string\r\n public Product: string\r\n public Pieces: string\r\n public NoofAwb: string\r\n public TotalPieces: string\r\n public TotalWeight: string\r\n public scheduleorpriority: string\r\n public Manifestno: string\r\n public loadManifesttime: string\r\n public gridAwbno: string\r\n public mobileNo: string\r\n public vehicleNo: string\r\n public Topay: string\r\n public CODDOD: string;\r\n \r\n}\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZGVsdmJpbGwtcHJpbnQvZGVsdmJpbGwtcHJpbnQuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-delvbill-print',\r\n templateUrl: './delvbill-print.component.html',\r\n styleUrls: ['./delvbill-print.component.scss']\r\n})\r\nexport class DelvbillPrintComponent implements OnInit {\r\n\r\n appLogo = require('../../assets/images/logos-02.png');\r\n fullAdress: string;\r\n cityName: string;\r\n billType: string;\r\n bstatename: string;\r\n customerName: string;\r\n HouseNo: string;\r\n StreetName: string;\r\n City: string;\r\n StateName: string;\r\n gstnumber: string;\r\n billNo: string = \"\";\r\n billDate: string = \"\";\r\n billFrom: string;\r\n BillTo: string;\r\n TotalFreight: string;\r\n FuelSurcharge: string;\r\n OtherCharges: string;\r\n TaxableAmount: string;\r\n GatepassResult: any[] = [];\r\n Bagdetail: any[] = [];\r\n GatePassDate: string = \"\";\r\n GatePassTime: string = \"\";\r\n CgstAmount: string;\r\n SgstAmount: string;\r\n IgstAmount: string;\r\n TotalAmount: string;\r\n PlusMinus: string;\r\n roundvalue: string;\r\n valueinword: string;\r\n billdetail: any[];\r\n backurl: any;\r\n Gstno: string;\r\n opincode: string;\r\n saleType: string;\r\n tLedgerName: string;\r\n voffice: string;\r\n _officename\r\n @ViewChild('contentprint', { static: true }) contentprint: ElementRef;\r\n BillSummaryId: string;\r\n controloffice: any;\r\n batype: string;\r\n constructor(private transaction: TransactionService, private ServiceMaster: Masters,\r\n private alertService: AlertService, private configurations: ConfigurationService,\r\n private authService: AuthService, public router: ActivatedRoute, private _router: Router,\r\n private tallyservice: TallyService, private localstre: LocalStoreManager) { }\r\n\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.billNo = params.billNo;\r\n this.backurl = params.backurl;\r\n });\r\n //this.billNo = 'ONEX/22-23/000000007';\r\n\r\n this.loadData()\r\n this.tLedgerName = '';\r\n }\r\n loadData() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getDelvBillPrintData'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"BillNo\"\r\n pr.PropertyValue = this.billNo;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.OngetsuccessGatePass(result), error => this.onDataLoadFailed(error))\r\n }\r\n\r\n OngetsuccessGatePass(result: any) {\r\n this.billdetail = result.table1;\r\n this.GatepassResult = result.table;\r\n this.billNo = result.table[0].billNo;\r\n this._officename = result.table[0].officeName;\r\n this.fullAdress = result.table[0].houseNo + \" , \" + result.table[0].streetName;\r\n this.cityName = result.table[0].city;\r\n this.bstatename = result.table[0].stateName;\r\n this.Gstno = result.table[0].gstno;\r\n this.gstnumber = result.table[0].controloffice != 'One-x Guwahati' ? '07AAHFO2331H1ZH' : '18AAHFO2331H1ZE'\r\n this.customerName = 'Onex Deliviries LLP'; \r\n this.billNo = result.table[0].billNo;\r\n this.billDate = result.table[0].billDate;\r\n this.billFrom = result.table[0].billFrom;\r\n this.tLedgerName = result.table[0].tallyLedger\r\n this.BillTo = result.table[0].billTo;\r\n this.controloffice = result.table[0].controloffice\r\n this.TotalFreight = parseFloat(result.table[0].billAmount).toFixed(2); \r\n let roundval = Math.round(parseFloat(result.table[0].billAmount)) - parseFloat(result.table[0].billAmount)\r\n this.PlusMinus = roundval.toFixed(2);\r\n this.roundvalue = '₹' + Math.round(parseFloat(result.table[0].billAmount)).toFixed(0);\r\n this.TotalAmount = parseFloat(result.table[0].billAmount).toFixed(2); \r\n this.valueinword = this.convertToword(Math.round(parseFloat(result.table[0].billAmount)));\r\n this.opincode = result.table[0].pincode; \r\n if (this.backurl == '/delvcomm') {\r\n this.GetVoucher(this.billNo);\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n GetVoucher(billNo: string) {\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_CheckSaleVoucher'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"refrence\"\r\n pr.PropertyValue = this.billNo;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(vresult => this.postVoucher(vresult), error => this.onDataLoadFailed(error));\r\n }\r\n\r\n postVoucher(vresult: any) {\r\n\r\n var rounadamt: number = 0;\r\n if (vresult.length > 0) {\r\n //this.alertService.showDialog(\"Voucher already created ,vocher no is \" + vresult[0].voucherNo);\r\n //return;\r\n }\r\n if (this.tLedgerName == '') {\r\n //$('#tallyledger').focus();\r\n return;\r\n }\r\n\r\n var salevoucher = new TallyVoucher();\r\n salevoucher.voucherType = 'Journal'\r\n \r\n let roundval = Math.round(parseFloat(this.TotalAmount)) - parseFloat(this.TotalAmount)\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n salevoucher.OfficeName = _Balogindata[0].officename;\r\n salevoucher.OfficeId = _Balogindata[0].officeid;\r\n if (vresult.length > 0) {\r\n salevoucher.voucherNo = vresult[0].voucherNo;\r\n salevoucher.masterId = vresult[0].masterId;\r\n salevoucher.Action = 'Alter';\r\n\r\n }\r\n else {\r\n salevoucher.voucherNo = '';\r\n salevoucher.masterId = '';\r\n salevoucher.Action = 'Create';\r\n\r\n }\r\n var centname: string = '';\r\n\r\n switch (this.controloffice) {\r\n case 'One-x Guwahati':\r\n centname = 'GUWAHATI OFFICE';\r\n break;\r\n case 'One-x Patna':\r\n centname = 'PATNA OFFICE';\r\n break;\r\n case 'One-x Kolkata':\r\n centname = 'KOLKATA OFFICE';\r\n break;\r\n case 'One-x Mahipalpur':\r\n centname = 'DELHI OFFICE';\r\n break;\r\n case 'One-x Siliguri':\r\n centname = 'Siliguri Area Office';\r\n break;\r\n\r\n default:\r\n centname = ''\r\n break;\r\n }\r\n let vDate = this.billDate;\r\n salevoucher.VoucherDate = vDate.split(\"/\")[2].toString() + \"-\" + vDate.split(\"/\")[1].toString() + \"-\" + vDate.split(\"/\")[0].toString();\r\n salevoucher.Narration = 'BEING DELIVERY EXPENSES AT ' + this.cityName.toUpperCase() + ' LOCATION BY ' + this.GatepassResult[0].officeName.toUpperCase() + ' VIDE BILL NO '+ this.billNo\r\n salevoucher.referenceno = this.billNo;\r\n var vledgers: vledger[] = [];\r\n var veledr = new vledger();\r\n veledr.Amount = parseFloat(this.TotalAmount) + roundval;\r\n rounadamt = parseFloat(this.TotalAmount) + roundval;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = veledr.Amount.toFixed(2);\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'DR';\r\n veledr.ledgerName = 'Delivery Expenses';\r\n veledr.refrenceno = this.billNo;\r\n var billdetails: billdetail[] = [];\r\n var bill: billdetail = new billdetail();\r\n bill.billamount = (parseFloat(this.TotalAmount) + roundval).toFixed(2);\r\n bill.billreftype = 'New_ref';\r\n bill.Billid = this.BillSummaryId;\r\n bill.Name = this.billNo;\r\n billdetails[0] = bill;\r\n salevoucher.TotalCredit = parseFloat(bill.billamount);\r\n salevoucher.TotalDebit = parseFloat(bill.billamount);\r\n //veledr.billDetail = billdetails\r\n vledgers[0] = veledr;\r\n\r\n\r\n \r\n //if (this.controloffice == 'One-x Guwahati') {\r\n // centname = 'GUWAHATI OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Patna') {\r\n // centname = 'PATNA OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Kolkata') {\r\n // centname = 'KOLKATA OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Mahipalpur') {\r\n // centname = 'DELHI OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Siliguri') {\r\n // centname = 'Siliguri Area Office'\r\n //}\r\n\r\n \r\n\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(this.TotalAmount) + roundval; \r\n veledr.ledgerName = this.tLedgerName;\r\n\r\n \r\n veledr.drcr = 'CR';\r\n // veledr.ledgerName = 'Regional Office Sale A/c'\r\n veledr.refrenceno = this.billNo;\r\n veledr.billDetail = billdetails\r\n vledgers.push(veledr);\r\n roundval = 0\r\n if (roundval < 0 || roundval > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(Math.abs(roundval).toFixed(2))\r\n if (centname != '') {\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = Math.abs(roundval).toFixed(2);\r\n veledr.costcenterName = centname;\r\n }\r\n else {\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n }\r\n veledr.drcr = roundval < 0 ? 'DR' : 'CR';\r\n veledr.ledgerName = 'Short & Excess'\r\n veledr.refrenceno = this.billNo;\r\n vledgers.push(veledr);\r\n }\r\n salevoucher.Ledgerdetail = vledgers;\r\n //salevoucher.billDetail = billdetails;\r\n this.tallyservice.PostTallyVoucher(salevoucher).subscribe(result => {\r\n if (result) {\r\n if (result.status == 0) {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.success);\r\n $('#tallyledger').val('');\r\n }\r\n else {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.error);\r\n }\r\n }\r\n }, error => { this.alertService.showMessage(\"Error\", JSON.stringify(error), MessageSeverity.error) });\r\n }\r\n\r\n convertToword(num: any) {\r\n var a = ['', 'one ', 'two ', 'three ', 'four ', 'five ', 'six ', 'seven ', 'eight ', 'nine ', 'ten ', 'eleven ', 'twelve ', 'thirteen ', 'fourteen ', 'fifteen ', 'sixteen ', 'seventeen ', 'eighteen ', 'nineteen '];\r\n var b = ['', '', 'twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety'];\r\n\r\n\r\n if ((num = num.toString()).length > 9) return 'overflow';\r\n var n: any = ('000000000' + num).substr(-9).match(/^(\\d{2})(\\d{2})(\\d{2})(\\d{1})(\\d{2})$/);\r\n if (!n) {\r\n return;\r\n }\r\n var str = '';\r\n str += (n[1] != 0) ? (a[Number(n[1])] || b[n[1][0]] + ' ' + a[n[1][1]]) + 'crore ' : '';\r\n str += (n[2] != 0) ? (a[Number(n[2])] || b[n[2][0]] + ' ' + a[n[2][1]]) + 'lakh ' : '';\r\n str += (n[3] != 0) ? (a[Number(n[3])] || b[n[3][0]] + ' ' + a[n[3][1]]) + 'thousand ' : '';\r\n str += (n[4] != 0) ? (a[Number(n[4])] || b[n[4][0]] + ' ' + a[n[4][1]]) + 'hundred ' : '';\r\n str += (n[5] != 0) ? ((str != '') ? 'and ' : '') + (a[Number(n[5])] || b[n[5][0]] + ' ' + a[n[5][1]]) + 'only ' : '';\r\n return str;\r\n }\r\n\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n GobackUrl() {\r\n this._router.navigate([this.backurl]);\r\n }\r\n //public exportPDF() {\r\n // const pdfTable = this.contentprint.nativeElement;\r\n // var html = htmlToPdfmake(pdfTable.innerHTML);\r\n // const documentDefinition = { content: html };\r\n // pdfMake.createPdf(documentDefinition).download();\r\n\r\n //}\r\n Exportprint(): void {\r\n let printContents, popupWin;\r\n const pdfTable = this.contentprint.nativeElement;\r\n printContents = pdfTable.innerHTML\r\n popupWin = window.open('', '_blank');\r\n popupWin.document.open();\r\n popupWin.document.write(`\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n\r\n `\r\n );\r\n popupWin.document.close();\r\n\r\n }\r\n}\r\nexport class TallyVoucher {\r\n voucherType: string;\r\n VoucherDate: string;\r\n voucherNo: string;\r\n masterId: string;\r\n Narration: string;\r\n Ledgerdetail: vledger[];\r\n Action: string;\r\n OfficeId: string;\r\n OfficeName: string;\r\n TotalCredit: number;\r\n TotalDebit: number;\r\n referenceno: string;\r\n}\r\nexport class vledger {\r\n ledgerName: string;\r\n ledgerId: string;\r\n indexNumber: string;\r\n drcr: string;\r\n Amount: number;\r\n costcenterName: string;\r\n costcategoryname: string;\r\n costcenterAmount: string;\r\n refrenceno: string;\r\n billDetail: billdetail[];\r\n\r\n\r\n}\r\nexport class billdetail {\r\n billreftype: string;\r\n Name: string;\r\n Billid: string;\r\n billamount: string;\r\n ledgerid: string;\r\n\r\n}\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZGVsdmJpbGwtcmVwb3J0L2RlbHZiaWxsLXJlcG9ydC5jb21wb25lbnQuc2NzcyJ9 */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { MatDialog } from '@angular/material';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { billdetail, TallyVoucher, vledger } from '../bill-print/bill-print.component';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-delvbill-report',\r\n templateUrl: './delvbill-report.component.html',\r\n styleUrls: ['./delvbill-report.component.scss']\r\n})\r\nexport class DelvbillReportComponent implements OnInit {\r\n\r\n typee: string = \"0\";\r\n rows: any = [];\r\n columns: any = [];\r\n isgpwise: boolean;\r\n isDatewise: boolean;\r\n isbutton: boolean;\r\n loadingIndicator: boolean = false;\r\n text: string = \"\";\r\n dialogRef: any;\r\n logindata: any;\r\n rowsdata: any = [];\r\n vbillno: any;\r\n vtaxAmount: any;\r\n cgstamount: any;\r\n sgstamount: any;\r\n igstamount: any;\r\n voffice: any;\r\n tledgermaster: any;\r\n AutocompList: any[] = [];\r\n billamount: any;\r\n voucherdate: any[];\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n @ViewChild('actionsTemplate2', { static: true })\r\n actionsTemplate2: TemplateRef;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n controloffice: any;\r\n BillSummaryId: any;\r\n BillType: any;\r\n batype: any;\r\n BillDate: any;\r\n constructor(private localstre: LocalStoreManager, private tallyservice: TallyService, public dialog: MatDialog, private troute: ActivatedRoute, private datePipe: DatePipe, private excelService: ExcelService, private configurations: ConfigurationService, private router: Router,\r\n private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n ngOnInit() {\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 20, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'officeName', name: 'Office Name', width: 100 },\r\n { prop: 'officeCode', name: 'Code', width: 100 },\r\n { prop: 'billNo', name: 'Bill No', width: 130 },\r\n { prop: 'billFrom', name: 'Bill From ', width: 70 },\r\n { prop: 'billTo', name: 'Bill To', width: 70 },\r\n { prop: 'noOfAwb', name: 'Total Awb', width: 50 },\r\n { prop: 'billAmount', name: 'Bill Amount', width: 70 }\r\n ];\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.logindata = this.localstre.getData(\"BaLoginData\");\r\n //this.tallyservice.GetTallyLedger().subscribe(result => {\r\n // if (result) {\r\n // this.localstre.saveSessionData(result, \"TallyLedgerMaster\")\r\n // this.tledgermaster = result;\r\n // }\r\n // });\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getDelvBillReport'\r\n let parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"office\";\r\n pr.PropertyValue = this.logindata[0].officename\r\n parameter[0] = pr\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getSucessDataExrate(result) {\r\n this.rows = result.table;\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n })\r\n this.rows = [...this.rows];\r\n this.rowsdata = this.rows;\r\n }\r\n onSearchChanged(value: string) {\r\n if (value != '') {\r\n this.rows = this.rowsdata.filter(r => Utilities.searchArray(value, false, r.branchOfficeName, r.customerName, r.billNo, r.customecode));\r\n }\r\n else {\r\n this.rows = this.rowsdata;\r\n }\r\n this.rows = [...this.rows];\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.loadingIndicator = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n funHide() {\r\n var typeee = this.typee == \"1\" ? \"1\" : \"2\";\r\n if (typeee == \"1\") {\r\n this.isgpwise = true;\r\n this.text = \"Bill No.\";\r\n this.isDatewise = false;\r\n this.isbutton = true;\r\n } else {\r\n this.text = \"Date Range\";\r\n this.isgpwise = false;\r\n this.isDatewise = true;\r\n this.isbutton = true;\r\n }\r\n }\r\n get officename(): string {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n return logindata[0].officename;\r\n }\r\n getdate() {\r\n if (this.typee == \"1\") {\r\n if ((document.getElementById(\"gatepassno\")).value == '') {\r\n (document.getElementById(\"gatepassno\")).focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getDelvBillReport'\r\n let parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Billno\";\r\n pr.PropertyValue = (document.getElementById(\"BillNo\")).value\r\n parameter[0] = pr;\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n else {\r\n if ((document.getElementById(\"fromdate\")).value == '') {\r\n (document.getElementById(\"fromdate\")).focus();\r\n return;\r\n }\r\n if ((document.getElementById(\"todate\")).value == '') {\r\n (document.getElementById(\"todate\")).focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n Req.ProcessName = '[Usp_getDelvBillReport]'\r\n let parameter = new Array(3);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"FromDate\";\r\n pr.PropertyValue = (document.getElementById(\"fromdate\")).value\r\n parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"ToDate\";\r\n pr.PropertyValue = (document.getElementById(\"todate\")).value\r\n parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"office\";\r\n pr.PropertyValue = this.logindata[0].officename\r\n parameter[2] = pr;\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : 'userid';\r\n }\r\n Cancebill(row: any) {\r\n if (this.userId != 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n this.alertService.showMessage(\"Cancel Bill\", \"You have no rights to cancel the bill\", MessageSeverity.error)\r\n return\r\n }\r\n var tmprow = row;\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_cancelDelvBill'\r\n let parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Guid\";\r\n pr.PropertyName = \"Billid\";\r\n pr.PropertyValue = row.delvbillSummaryId\r\n parameter[0] = pr\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Userid\";\r\n pr.PropertyValue = this.userId;\r\n parameter[1] = pr\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.alertService.showMessage(\"Cancel Bill\", result[0].message, MessageSeverity.info)\r\n if (!isNullOrUndefined(tmprow.masterId)) {\r\n let vdate = tmprow.voucherDate.split('/')[2] + '-' + tmprow.voucherDate.split('/')[1] + '-' + tmprow.voucherDate.split('/')[0]\r\n this.tallyservice.PostDeleteVoucher(tmprow.voucherNo, vdate, tmprow.voucherType, tmprow.masterId).subscribe(delv => {\r\n if (delv.status == 0) {\r\n this.alertService.showMessage(\"Cancel Voucher\", 'Voucher has been canceled !', MessageSeverity.info)\r\n }\r\n else {\r\n this.alertService.showMessage(\"Cancel Voucher\", 'Voucher has not canceled !', MessageSeverity.error)\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n\r\n this.getdate();\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n GenerateSummary() {\r\n return;\r\n if (this.typee != \"2\") {\r\n this.alertService.showMessage(\"Please select date\")\r\n return;\r\n }\r\n if ((document.getElementById(\"fromdate\")).value == '') {\r\n (document.getElementById(\"fromdate\")).focus();\r\n return;\r\n }\r\n if ((document.getElementById(\"todate\")).value == '') {\r\n (document.getElementById(\"todate\")).focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetBillSummaryReport'\r\n let parameter = new Array(3);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"FromDate\";\r\n pr.PropertyValue = (document.getElementById(\"fromdate\")).value\r\n parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"ToDate\";\r\n pr.PropertyValue = (document.getElementById(\"todate\")).value\r\n parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"BillingOffice\";\r\n pr.PropertyValue = this.logindata[0].officename\r\n parameter[2] = pr;\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => {\r\n var data = []\r\n var Badata = this.localstre.getData(\"BaLoginData\");\r\n for (let index = 0; index < result.table.length; index++) {\r\n data[index] = [index + 1,\r\n result.table[index].month,\r\n result.table[index].officeName,\r\n result.table[index].city,\r\n result.table[index].controlro, \r\n result.table[index]['invoice Date'],\r\n result.table[index]['invoice No.'],\r\n result.table[index]['hsN/SAC Code'],\r\n result.table[index]['taxable Amount'],\r\n result.table[index]['cgsT@9%'],\r\n result.table[index]['sgsT@9%'],\r\n result.table[index]['igsT@18%'],\r\n result.table[index]['total Invoice Amount']\r\n ]\r\n }\r\n\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Bill Summary\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"S.no\", \"Month\", \"Office Name\", \"Location\", \"RO\", \"Sale Type\", \"Party Name\", \"Party Gstin\", \"Invoice Date\", \"Invoice No.\", \"HSN/SAC Code\", \"Taxable Amount\", \"CGST@9%\", \"SGST@9%\", \"IGST@18%\", \"total Invoice Amount\"]\r\n this.excelService.title = Office + \" Bill Summary Report\"\r\n this.excelService.Widths = [8, 10, 30, 10, 30, 10, 30, 10, 15, 20, 10, 10, 10, 10, 8, 10, 10]\r\n this.excelService.generateExcel();\r\n result.table[0]['invoice No.'];\r\n\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n }\r\n awbprint(row: any) {\r\n this.router.navigate(['/delvblprint'], {\r\n queryParams: {\r\n billNo: row.billNo,\r\n backurl: '/delvblreport'\r\n }\r\n }); // define your component where you want to go\r\n\r\n }\r\n private checkVoucher() {\r\n\r\n }\r\n\r\n\r\n\r\n\r\n\r\n GetLedgerHelp($event) {\r\n\r\n this.AutocompList = [];\r\n this.tledgermaster.forEach((ledger, index, ledarr) => {\r\n if (this.AutocompList.length == 0) {\r\n this.AutocompList[0] = ledger.name;\r\n }\r\n else {\r\n this.AutocompList.push(ledger.name);\r\n }\r\n });\r\n $('#tallyledger').autocomplete({\r\n source: this.AutocompList,\r\n delay: 50\r\n });\r\n }\r\n CreateVoucher(row: any) {\r\n this.voffice = row.billingOfficeName;\r\n this.vbillno = row.billNo;\r\n this.vtaxAmount = row.taxableAmount;\r\n this.sgstamount = row.sgstAmount;\r\n this.cgstamount = row.cgstAmount;\r\n this.igstamount = row.igstAmount;\r\n this.billamount = row.totalAmount;\r\n this.controloffice = row.controloffice;\r\n this.BillSummaryId = row.billSummaryId;\r\n this.BillType = row.billType;\r\n this.BillDate = row.billDate;\r\n this.batype = row.batype;\r\n this.consignereditorModal.show();\r\n if (row.customerName == 'CASH' || row.customerName == 'Kart') {\r\n $('#custname').text(row.branchOfficeName)\r\n\r\n }\r\n else {\r\n $('#custname').text(row.customerName)\r\n }\r\n $('#tallyledger').val('')\r\n\r\n }\r\n PostVoucher() {\r\n\r\n if (this.BillType != 'ACTUAL') {\r\n this.alertService.showDialog(\"Invalid bill to generare voucher\");\r\n return;\r\n }\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_CheckSaleVoucher'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"refrence\"\r\n pr.PropertyValue = this.vbillno;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(vresult => { } , error => this.onDataLoadFailed(error));\r\n }\r\n Savevoucher(vresult: any[]) {\r\n var rounadamt: number = 0;\r\n if (vresult.length > 0) {\r\n this.alertService.showDialog(\"Voucher already created ,vocher no is \" + vresult[0].voucherNo);\r\n return;\r\n }\r\n if (isNullOrUndefined($('#tallyledger').val())) {\r\n $('#tallyledger').focus();\r\n return;\r\n }\r\n if ($('#tallyledger').val() == '') {\r\n $('#tallyledger').focus();\r\n return;\r\n }\r\n\r\n var salevoucher = new TallyVoucher();\r\n if (this.voffice == 'One-x Guwahati') {\r\n salevoucher.voucherType = 'SALE (GHY)'\r\n }\r\n else {\r\n salevoucher.voucherType = 'SALE (DEL)'\r\n }\r\n let roundval = Math.round(parseFloat(this.billamount)) - parseFloat(this.billamount)\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n salevoucher.OfficeName = _Balogindata[0].officename;\r\n salevoucher.OfficeId = _Balogindata[0].officeid;\r\n let vDate = this.BillDate;\r\n salevoucher.VoucherDate = vDate.split(\"/\")[2].toString() + \"-\" + vDate.split(\"/\")[1].toString() + \"-\" + vDate.split(\"/\")[0].toString();\r\n salevoucher.Narration = 'BEING RO SALE TO ' + $('#custname').text() + ' VIDE BILL NO. ' + this.vbillno\r\n salevoucher.Action = 'Create';\r\n salevoucher.referenceno = this.vbillno;\r\n var vledgers: vledger[] = [];\r\n var veledr = new vledger();\r\n veledr.Amount = parseFloat(this.billamount) + roundval;\r\n rounadamt = parseFloat(this.billamount) + roundval;\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n veledr.drcr = 'DR';\r\n veledr.ledgerName = $('#tallyledger').val();\r\n veledr.refrenceno = this.vbillno;\r\n var billdetails: billdetail[] = [];\r\n var bill: billdetail = new billdetail();\r\n bill.billamount = (parseFloat(this.billamount) + roundval).toFixed(2);\r\n bill.billreftype = 'New_ref';\r\n bill.Billid = this.BillSummaryId;\r\n bill.Name = this.vbillno;\r\n billdetails[0] = bill;\r\n salevoucher.TotalCredit = parseFloat(bill.billamount);\r\n salevoucher.TotalDebit = parseFloat(bill.billamount);\r\n veledr.billDetail = billdetails\r\n vledgers[0] = veledr;\r\n var centname: string = '';\r\n\r\n\r\n switch (this.controloffice) {\r\n case 'One-x Guwahati':\r\n centname = 'GUWAHATI OFFICE';\r\n break;\r\n case 'One-x Patna':\r\n centname = 'PATNA OFFICE';\r\n break;\r\n case 'One-x Kolkata':\r\n centname = 'KOLKATA OFFICE';\r\n break;\r\n case 'One-x Mahipalpur':\r\n centname = 'DELHI OFFICE';\r\n break;\r\n case 'One-x Siliguri':\r\n centname = 'Siliguri Area Office';\r\n break;\r\n\r\n default:\r\n centname = ''\r\n break;\r\n }\r\n //if (this.controloffice == 'One-x Guwahati') {\r\n // centname = 'GUWAHATI OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Patna') {\r\n // centname = 'PATNA OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Kolkata') {\r\n // centname = 'KOLKATA OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Mahipalpur') {\r\n // centname = 'DELHI OFFICE'\r\n //}\r\n //if (this.controloffice == 'One-x Siliguri') {\r\n // centname = 'Siliguri Area Office'\r\n //}\r\n\r\n if (this.voffice == 'One-x Guwahati' && parseFloat(this.sgstamount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = this.sgstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.sgstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT- SGST @9% (Assam)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n veledr = new vledger();\r\n veledr.Amount = this.cgstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.cgstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - CGST@9% (Assam)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n }\r\n if (this.voffice == 'One-x Mahipalpur' && parseFloat(this.sgstamount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = this.sgstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.sgstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - SGST @9% (Delhi)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n veledr = new vledger();\r\n veledr.Amount = this.cgstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.cgstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - CGST@9% (Delhi)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n }\r\n if (this.voffice == 'One-x Guwahati' && parseFloat(this.igstamount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = this.igstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.igstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - IGST @18% (Assam)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n\r\n }\r\n if (this.voffice == 'One-x Mahipalpur' && parseFloat(this.igstamount) > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = this.igstamount;\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.igstamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = 'OUTPUT - IGST @18% (Delhi)'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n\r\n }\r\n\r\n veledr = new vledger();\r\n veledr.Amount = this.vtaxAmount;\r\n if (centname != '') {\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = this.vtaxAmount;\r\n veledr.costcenterName = centname;\r\n }\r\n else {\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n }\r\n if (this.batype == 'BA' || this.batype == 'ECC') {\r\n veledr.ledgerName = 'BA SALES (Income)'\r\n\r\n }\r\n else {\r\n veledr.ledgerName = 'Regional Office Sale A/c'\r\n\r\n }\r\n veledr.drcr = 'CR';\r\n // veledr.ledgerName = 'Regional Office Sale A/c'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n roundval = rounadamt - this.igstamount - this.sgstamount - this.cgstamount - this.vtaxAmount\r\n if (roundval < 0 || roundval > 0) {\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(Math.abs(roundval).toFixed(2))\r\n if (centname != '') {\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = Math.abs(roundval).toFixed(2);\r\n veledr.costcenterName = centname;\r\n }\r\n else {\r\n veledr.costcategoryname = \"\";\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n }\r\n veledr.drcr = roundval < 0 ? 'DR' : 'CR';\r\n veledr.ledgerName = 'Short & Excess'\r\n veledr.refrenceno = this.vbillno;\r\n vledgers.push(veledr);\r\n }\r\n\r\n\r\n salevoucher.Ledgerdetail = vledgers;\r\n //salevoucher.billDetail = billdetails;\r\n this.tallyservice.PostTallyVoucher(salevoucher).subscribe(result => {\r\n if (result) {\r\n if (result.status == 0) {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.success)\r\n $('#tallyledger').val('')\r\n //this.route.navigate(['/vchprint'], {\r\n // queryParams: {\r\n // billNo: result.response.split(',')[1].split('-')[1].trim(),\r\n // backurl: '/billrep'\r\n // }\r\n //});// define your componen\r\n this.consignereditorModal.hide();\r\n\r\n }\r\n else {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.error);\r\n }\r\n }\r\n }, error => { this.alertService.showMessage(\"Error\", JSON.stringify(error), MessageSeverity.error) });\r\n\r\n\r\n }\r\n\r\n getRowClass = (row) => {\r\n\r\n return {\r\n 'row-color1': isNullOrUndefined(row.masterId),\r\n 'row-color2': !isNullOrUndefined(row.masterId)\r\n };\r\n\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZGVzdGluYXRpb25kZWxpdmVyeXNjaGVkdWxlL2Rlc3RpbmF0aW9uZGVsaXZlcnlzY2hlZHVsZS5jb21wb25lbnQuc2NzcyJ9 */\"","import { ViewChild } from '@angular/core';\nimport { TemplateRef } from '@angular/core';\nimport { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { AuthService } from '../../services/auth.service';\nimport { ConfigurationService } from '../../services/configuration.service';\nimport { Masters } from '../../services/masters.service';\nimport { Utilities } from '../../services/utilities';\ndeclare var $: any;\n\n@Component({\n selector: 'app-destinationdeliveryschedule',\n templateUrl: './destinationdeliveryschedule.component.html',\n styleUrls: ['./destinationdeliveryschedule.component.scss']\n})\nexport class DestinationdeliveryscheduleComponent implements OnInit {\n\n editeddestinationdeliverysch: destinationdeliverysch = new destinationdeliverysch();\n columns: any[] = [];\n rows: destinationdeliverysch[] = [];\n rowsCache: destinationdeliverysch[] = [];\n isSaving = false;\n isLoading = false;\n formResetToggle = true;\n loadingIndicator = false;\n lastkeydown2: number = 0;\n isEditModeconsignee = false;\n isEditModeconsigner = false;\n arritemlist: any[] = [];\n arritemlist2: any[] = [];\n arrunit: any[] = [];\n arrunit2: any[] = [];\n arrcity: any[] = [];\n arrcity2: any[] = [];\n displayedFirstImage;\n displayedSecondImage;\n msg = ''\n\n\n\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\n }\n @ViewChild('f', { static: false })\n @ViewChild('indexTemplate', { static: true })\n indexTemplate: TemplateRef;\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n\n ngOnInit() {\n\n this.columns = [\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\n { prop: 'bookingPinCode', name: 'BookingPinCode', width: 100 },\n { prop: 'bookingCity', name: 'BookingCity', width: 100 },\n { prop: 'mapeHub', name: 'MapeHub', width: 100 },\n { prop: 'mode', name: 'Mode', width: 100 },\n { prop: 'destinationPinCode', name: 'DestinationPinCode', width: 100 },\n { prop: 'destinationCity', name: 'DestinationCity', width: 100 },\n { prop: 'controllingHub', name: 'ControllingHub', width: 100 },\n ];\n // this.loaddata();\n }\n\n\n loaddata() {\n this.loadingIndicator = true;\n this.Getmaphub();\n this.Getmode();\n this.GetcontrollingHub();\n }\n\n\n getbookingPinCode($event) {\n this.GetCityMaster();\n this.arrcity2 = this.arrcity\n $('#bookingPinCode').autocomplete({\n source: this.arrcity2,\n delay: 500\n });\n }\n\n GetCityMaster() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetcity1Successful(result, 'CITY'), error => this.onDataLoadFailed(error));\n }\n onDatagetcity1Successful(states: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"STATE\") {\n this.arrcity = states;\n }\n if (listof == \"CITY\") {\n this.arrcity = states;\n }\n }\n SetCityAndState($event) {\n let citystate: string = (document.getElementById('bookingPinCode')).value;\n if (citystate.indexOf('-') > 0) {\n (document.getElementById('bookingPinCode')).value = citystate.substring(0, citystate.indexOf('-') - 1);\n (document.getElementById('bookingCity')).value = citystate.substring(citystate.indexOf('-') + 1);\n\n }\n }\n //second\n getDestinationPinCode($event) {\n this.GetDestinationPinCode();\n this.arrcity2 = this.arrcity\n $('#destinationPinCode').autocomplete({\n source: this.arrcity2,\n delay: 500\n });\n }\n\n GetDestinationPinCode() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetDestinationPinCodeSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\n }\n onDatagetDestinationPinCodeSuccessful(states: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"STATE\") {\n this.arrcity = states;\n }\n if (listof == \"CITY\") {\n this.arrcity = states;\n }\n }\n SetDestinationCityAndState($event) {\n let citystate: string = (document.getElementById('destinationPinCode')).value;\n if (citystate.indexOf('-') > 0) {\n (document.getElementById('destinationPinCode')).value = citystate.substring(0, citystate.indexOf('-') - 1);\n (document.getElementById('destinationCity')).value = citystate.substring(citystate.indexOf('-') + 1);\n\n }\n }\n\n\n\n getmapeHub($event) {\n this.Getmaphub();\n this.arritemlist2 = this.arritemlist\n $('#mapeHub').autocomplete({\n source: this.arritemlist2,\n delay: 50\n });\n }\n Getmaphub() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'mapeHub'), error => this.onDataLoadFailed(error));\n }\n onDatagetSuccessful(itemlist: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"mapeHub\") {\n this.arritemlist = itemlist;\n }\n }\n\n\n getmode($event) {\n this.Getmode();\n this.arritemlist = this.arritemlist\n $('#mode').autocomplete({\n source: this.arritemlist,\n delay: 50\n });\n }\n Getmode() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatamodeSuccessful(result, 'mode'), error => this.onDataLoadFailed(error));\n }\n onDatamodeSuccessful(itemlist: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"mode\") {\n this.arritemlist = itemlist;\n }\n }\n\n getcontrollingHub($event) {\n this.GetcontrollingHub();\n this.arritemlist = this.arritemlist\n $('#controllingHub').autocomplete({\n source: this.arritemlist,\n delay: 50\n });\n }\n GetcontrollingHub() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatacontrollingHubSuccessful(result, 'controllingHub'), error => this.onDataLoadFailed(error));\n }\n onDatacontrollingHubSuccessful(itemlist: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"controllingHub\") {\n this.arritemlist = itemlist;\n }\n }\n\n onDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve item receive from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n\n Insertdestinationdelivery() {\n debugger;\n var strvalue = this.editeddestinationdeliverysch;\n // this.isSaving = true;\n //this.alertService.startLoadingMessage('Saving changes...');\n\n // this.ServiceMaster.NewVendore(this.editeddestinationdeliverysch).subscribe(inscaning => this.saveSuccessHelper(inscaning), error => this.saveFailedHelper(error));\n }\n private saveSuccessHelper(destinationdeliveryschs?: destinationdeliverysch) {\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Success', `Destination Delivery Schedule \\\"${this.editeddestinationdeliverysch.bookingPinCode}\\\" was created successfully`, MessageSeverity.success);\n if (this.rows.length == 0) {\n this.rows[0] = destinationdeliveryschs[0];\n this.rowsCache[0] = destinationdeliveryschs[0];\n }\n else {\n this.rows.push(destinationdeliveryschs[0]);\n this.rowsCache.push(destinationdeliveryschs[0]);\n }\n this.rows.forEach((delivery, index, citys) => {\n (delivery as any).index = index + 1;\n });\n this.rowsCache.forEach((delivery, index, citys) => {\n (delivery as any).index = index + 1;\n });\n this.rowsCache = [...this.rowsCache]\n this.rows = [...this.rows]\n this.editeddestinationdeliverysch = new destinationdeliverysch()\n\n }\n onSearchChanged(value: string) {\n\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.bookingPinCode));\n }\n private saveFailedHelper(error: any) {\n\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\n }\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n onlyNumberKey(event) {\n var ASCIICode = (event.which) ? event.which : event.keyCode\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\n return false;\n return true;\n }\n}\nexport class destinationdeliverysch {\n constructor(bookingPinCode?: string, bookingCity?: string, mapeHub?: string, mode?: string,\n destinationPinCode?: string, destinationCity?: string, controllingHub?: string) {\n this.bookingPinCode = bookingPinCode;\n this.bookingCity = bookingCity;\n this.mapeHub = mapeHub;\n this.mode = mode;\n this.destinationPinCode = destinationPinCode;\n this.destinationCity = destinationCity;\n this.controllingHub = controllingHub;\n };\n\n public bookingPinCode: string\n public bookingCity: string\n public mapeHub: string\n public mode: string\n public destinationPinCode: string\n public destinationCity: string\n public controllingHub: string\n\n}\n","export default \"body {\\n margin: 0;\\n font-family: \\\"Source Sans Pro\\\", -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\", Arial, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\";\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n background-color: #fff;\\n}\\n\\n.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {\\n position: relative;\\n width: 100%;\\n padding-right: 7.5px;\\n padding-left: 7.5px;\\n}\\n\\n.small-box {\\n border-radius: 0.25rem;\\n box-shadow: 0 0 1px rgba(0, 0, 0, 0.13), 0 1px 3px rgba(0, 0, 0, 0.2);\\n display: block;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n\\n.small-box > .small-box-footer {\\n background-color: rgba(0, 0, 0, 0.1);\\n color: rgba(255, 255, 255, 0.8);\\n display: block;\\n padding: 3px 0;\\n position: relative;\\n text-align: center;\\n text-decoration: none;\\n z-index: 10;\\n}\\n\\n.bg-info > a {\\n color: #fff !important;\\n}\\n\\n.row {\\n display: flex;\\n flex-wrap: wrap;\\n margin-right: -7.5px;\\n margin-left: -7.5px;\\n}\\n\\n.col-lg-3 .small-box h3, .col-md-3 .small-box h3, .col-xl-3 .small-box h3 {\\n font-size: 2.2rem;\\n}\\n\\n.small-box h3 {\\n font-size: 2.2rem;\\n font-weight: 700;\\n margin: 0 0 10px;\\n padding: 0;\\n white-space: nowrap;\\n color: #fff;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box:hover {\\n text-decoration: none;\\n}\\n\\n.bg-success, .bg-success > a {\\n color: #fff !important;\\n}\\n\\n.inner {\\n height: 120px !important;\\n padding-left: 10px;\\n padding-top: 10px;\\n}\\n\\n.color {\\n color: #fff;\\n font-size: 1.4rem !important;\\n}\\n\\nbutton.close {\\n position: absolute;\\n top: 0.25rem;\\n right: 1.5rem;\\n z-index: 100;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9kaXZpbmVkYXNoYm9hcmQvRDpcXE9uZXhXZWJcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xcZGl2aW5lZGFzaGJvYXJkXFxkaXZpbmVkYXNoYm9hcmQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvZGl2aW5lZGFzaGJvYXJkL2RpdmluZWRhc2hib2FyZC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFLFNBQUE7RUFDQSxvTEFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7QUNERjs7QURJQTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7QUNERjs7QURJQTtFQUNFLHNCQUFBO0VBQ0EscUVBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBQ0RGOztBRElBO0VBQ0Usb0NBQUE7RUFDQSwrQkFBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtBQ0RGOztBRElBO0VBQ0Usc0JBQUE7QUNERjs7QURJQTtFQUVFLGFBQUE7RUFDQSxlQUFBO0VBQ0Esb0JBQUE7RUFDQSxtQkFBQTtBQ0RGOztBRElBO0VBQ0UsaUJBQUE7QUNERjs7QURJQTtFQUNFLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLFVBQUE7RUFDQSxtQkFBQTtFQUNBLFdBQUE7QUNERjs7QURJQTtFQUNFLFVBQUE7QUNERjs7QURJQTtFQUNFLGVBQUE7QUNERjs7QURJQTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtBQ0RGOztBRElBO0VBQ0Usc0JBQUE7QUNERjs7QURJQTtFQUNFLGNBQUE7RUFDQSwwQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJBQUE7VUFBQSxxQkFBQTtFQUNBLHlCQUFBO1VBQUEsd0JBQUE7RUFDQSx1QkFBQTtVQUFBLHNCQUFBO0FDREY7O0FESUE7RUFDRSxVQUFBO0FDREY7O0FESUE7RUFDRSxlQUFBO0FDREY7O0FESUE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QUNERjs7QURJQTtFQUNFLHNCQUFBO0FDREY7O0FESUE7RUFDRSxjQUFBO0VBQ0EsMEJBQUE7VUFBQSx1QkFBQTtFQUNBLHlCQUFBO1VBQUEscUJBQUE7RUFDQSx5QkFBQTtVQUFBLHdCQUFBO0VBQ0EsdUJBQUE7VUFBQSxzQkFBQTtBQ0RGOztBRElBO0VBQ0UscUJBQUE7QUNERjs7QURJQTtFQUNFLHNCQUFBO0FDREY7O0FESUE7RUFDRSx3QkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7QUNERjs7QURJQTtFQUNFLFdBQUE7RUFDQSw0QkFBQTtBQ0RGOztBRE1BO0VBQ0Usa0JBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7QUNIRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZGl2aW5lZGFzaGJvYXJkL2RpdmluZWRhc2hib2FyZC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5cclxuYm9keSB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFwiU2Vnb2UgVUlcIixSb2JvdG8sXCJIZWx2ZXRpY2EgTmV1ZVwiLEFyaWFsLHNhbnMtc2VyaWYsXCJBcHBsZSBDb2xvciBFbW9qaVwiLFwiU2Vnb2UgVUkgRW1vamlcIixcIlNlZ29lIFVJIFN5bWJvbFwiO1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmNvbCwgLmNvbC0xLCAuY29sLTEwLCAuY29sLTExLCAuY29sLTEyLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC1hdXRvLCAuY29sLWxnLCAuY29sLWxnLTEsIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIsIC5jb2wtbGctMiwgLmNvbC1sZy0zLCAuY29sLWxnLTQsIC5jb2wtbGctNSwgLmNvbC1sZy02LCAuY29sLWxnLTcsIC5jb2wtbGctOCwgLmNvbC1sZy05LCAuY29sLWxnLWF1dG8sIC5jb2wtbWQsIC5jb2wtbWQtMSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZC0yLCAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLmNvbC1tZC01LCAuY29sLW1kLTYsIC5jb2wtbWQtNywgLmNvbC1tZC04LCAuY29sLW1kLTksIC5jb2wtbWQtYXV0bywgLmNvbC1zbSwgLmNvbC1zbS0xLCAuY29sLXNtLTEwLCAuY29sLXNtLTExLCAuY29sLXNtLTEyLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS1hdXRvLCAuY29sLXhsLCAuY29sLXhsLTEsIC5jb2wteGwtMTAsIC5jb2wteGwtMTEsIC5jb2wteGwtMTIsIC5jb2wteGwtMiwgLmNvbC14bC0zLCAuY29sLXhsLTQsIC5jb2wteGwtNSwgLmNvbC14bC02LCAuY29sLXhsLTcsIC5jb2wteGwtOCwgLmNvbC14bC05LCAuY29sLXhsLWF1dG8ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nLXJpZ2h0OiA3LjVweDtcclxuICBwYWRkaW5nLWxlZnQ6IDcuNXB4O1xyXG59XHJcblxyXG4uc21hbGwtYm94IHtcclxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xyXG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiKDAgMCAwIC8gMTMlKSwgMCAxcHggM3B4IHJnYigwIDAgMCAvIDIwJSk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggPiAuc21hbGwtYm94LWZvb3RlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMSk7XHJcbiAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjgpO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDNweCAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4uYmctaW5mbyA+IGEge1xyXG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5yb3cge1xyXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIG1hcmdpbi1yaWdodDogLTcuNXB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAtNy41cHg7XHJcbn1cclxuXHJcbi5jb2wtbGctMyAuc21hbGwtYm94IGgzLCAuY29sLW1kLTMgLnNtYWxsLWJveCBoMywgLmNvbC14bC0zIC5zbWFsbC1ib3ggaDMge1xyXG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xyXG59XHJcblxyXG4uc21hbGwtYm94IGgzIHtcclxuICBmb250LXNpemU6IDIuMnJlbTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgcGFkZGluZzogMDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xyXG4gIHotaW5kZXg6IDU7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggcCB7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG59XHJcblxyXG5wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbiosIDo6YWZ0ZXIsIDo6YmVmb3JlIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5wIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFlbTtcclxuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XHJcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xyXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwcHg7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggaDMsIC5zbWFsbC1ib3ggcCB7XHJcbiAgei1pbmRleDogNTtcclxufVxyXG5cclxuLnNtYWxsLWJveCBwIHtcclxuICBmb250LXNpemU6IDFyZW07XHJcbn1cclxuXHJcbnAge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbnAge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xyXG4gIG1hcmdpbi1ibG9jay1lbmQ6IDFlbTtcclxuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwcHg7XHJcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcclxufVxyXG5cclxuLnNtYWxsLWJveDpob3ZlciB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4uYmctc3VjY2VzcywgLmJnLXN1Y2Nlc3MgPiBhIHtcclxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaW5uZXIge1xyXG4gIGhlaWdodDogMTIwcHggIWltcG9ydGFudDtcclxuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgcGFkZGluZy10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5jb2xvciB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZm9udC1zaXplOiAxLjRyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcblxyXG5idXR0b24uY2xvc2Uge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDAuMjVyZW07XHJcbiAgcmlnaHQ6IDEuNXJlbTtcclxuICB6LWluZGV4OiAxMDA7XHJcbn1cclxuIiwiYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIFNhbnMgUHJvXCIsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5jb2wsIC5jb2wtMSwgLmNvbC0xMCwgLmNvbC0xMSwgLmNvbC0xMiwgLmNvbC0yLCAuY29sLTMsIC5jb2wtNCwgLmNvbC01LCAuY29sLTYsIC5jb2wtNywgLmNvbC04LCAuY29sLTksIC5jb2wtYXV0bywgLmNvbC1sZywgLmNvbC1sZy0xLCAuY29sLWxnLTEwLCAuY29sLWxnLTExLCAuY29sLWxnLTEyLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy1hdXRvLCAuY29sLW1kLCAuY29sLW1kLTEsIC5jb2wtbWQtMTAsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTIsIC5jb2wtbWQtMiwgLmNvbC1tZC0zLCAuY29sLW1kLTQsIC5jb2wtbWQtNSwgLmNvbC1tZC02LCAuY29sLW1kLTcsIC5jb2wtbWQtOCwgLmNvbC1tZC05LCAuY29sLW1kLWF1dG8sIC5jb2wtc20sIC5jb2wtc20tMSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiwgLmNvbC1zbS0yLCAuY29sLXNtLTMsIC5jb2wtc20tNCwgLmNvbC1zbS01LCAuY29sLXNtLTYsIC5jb2wtc20tNywgLmNvbC1zbS04LCAuY29sLXNtLTksIC5jb2wtc20tYXV0bywgLmNvbC14bCwgLmNvbC14bC0xLCAuY29sLXhsLTEwLCAuY29sLXhsLTExLCAuY29sLXhsLTEyLCAuY29sLXhsLTIsIC5jb2wteGwtMywgLmNvbC14bC00LCAuY29sLXhsLTUsIC5jb2wteGwtNiwgLmNvbC14bC03LCAuY29sLXhsLTgsIC5jb2wteGwtOSwgLmNvbC14bC1hdXRvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogNy41cHg7XG4gIHBhZGRpbmctbGVmdDogNy41cHg7XG59XG5cbi5zbWFsbC1ib3gge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMC4xMyksIDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zbWFsbC1ib3ggPiAuc21hbGwtYm94LWZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDNweCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLmJnLWluZm8gPiBhIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnJvdyB7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLTcuNXB4O1xuICBtYXJnaW4tbGVmdDogLTcuNXB4O1xufVxuXG4uY29sLWxnLTMgLnNtYWxsLWJveCBoMywgLmNvbC1tZC0zIC5zbWFsbC1ib3ggaDMsIC5jb2wteGwtMyAuc21hbGwtYm94IGgzIHtcbiAgZm9udC1zaXplOiAyLjJyZW07XG59XG5cbi5zbWFsbC1ib3ggaDMge1xuICBmb250LXNpemU6IDIuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zbWFsbC1ib3ggaDMsIC5zbWFsbC1ib3ggcCB7XG4gIHotaW5kZXg6IDU7XG59XG5cbi5zbWFsbC1ib3ggcCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbiosIDo6YWZ0ZXIsIDo6YmVmb3JlIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxucCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFlbTtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMWVtO1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwcHg7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwcHg7XG59XG5cbi5zbWFsbC1ib3ggaDMsIC5zbWFsbC1ib3ggcCB7XG4gIHotaW5kZXg6IDU7XG59XG5cbi5zbWFsbC1ib3ggcCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbiosIDo6YWZ0ZXIsIDo6YmVmb3JlIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxucCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFlbTtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMWVtO1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwcHg7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwcHg7XG59XG5cbi5zbWFsbC1ib3g6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5iZy1zdWNjZXNzLCAuYmctc3VjY2VzcyA+IGEge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uaW5uZXIge1xuICBoZWlnaHQ6IDEyMHB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG59XG5cbi5jb2xvciB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEuNHJlbSAhaW1wb3J0YW50O1xufVxuXG5idXR0b24uY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC4yNXJlbTtcbiAgcmlnaHQ6IDEuNXJlbTtcbiAgei1pbmRleDogMTAwO1xufSJdfQ== */\"","import { Component, OnInit, ViewChild, ElementRef, TemplateRef } from '@angular/core';\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { QRCodeComponent } from 'angular2-qrcode'\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ConfigurationService } from 'src/app/services/configuration.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { fadeInOut } from 'src/app/services/animations';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { MatDialog } from '@angular/material';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Row } from 'exceljs';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { ExcelService } from '../../services/excel.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-divinedashboard',\r\n templateUrl: './divinedashboard.component.html',\r\n styleUrls: ['./divinedashboard.component.scss']\r\n})\r\nexport class DivinedashboardComponent implements OnInit {\r\n\r\n appLogo = require('../../assets/images/logos-02.png');\r\n Booking: any\r\n IncomingLoad: any\r\n connected: any\r\n delivered: any\r\n OutForDelivery: any\r\n officename: any\r\n isShow = false;\r\n isCust = false;\r\n isbtnMode = false;\r\n isEditMode = false;\r\n Name:any;\r\n isDetailsMode = false;\r\n isCustDetails = false;\r\n loadingIndicator = false;\r\n columns: any[] = [];\r\n selected = [];\r\n rows: divinedashboard[] = [];\r\n bookingdata: any[] = [];\r\n addrow: divinedashboard[] = [];\r\n rowsCache: divinedashboard[] = [];\r\n\r\n orderplacedfordispatch: divinedashboard[] = [];\r\n dispatchrows: divinedashboard[] = [];\r\n dispatchcolumns: any[] = [];\r\n\r\n detailscolumns: any[] = [];\r\n Crows: divinedashboarddetails[] = [];\r\n Cbookingdata: any[] = [];\r\n Caddrow: divinedashboarddetails[] = [];\r\n CrowsCache: divinedashboarddetails[] = [];\r\n constructor(public dialog: MatDialog, private excelService: ExcelService, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService) {\r\n }\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss');\r\n ngOnInit() {\r\n\r\n\r\n this.dispatchcolumns = [\r\n { prop: 'adate', name: 'Date', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'aMasterOrderno', name: 'Master Order No.', width: 70 },\r\n { prop: 'aCutOffTime', name: 'Cut Off Time', width: 70 },\r\n { prop: 'aPieces', name: 'Pieces', width: 70 },\r\n { prop: 'aWeight', name: 'Weight', width: 70 },\r\n { prop: 'aAmount', name: 'Amount', width: 70 },\r\n { prop: 'apayment', name: 'Payment', width: 70 },\r\n { prop: 'aRemark', name: 'Remark', width: 70 },\r\n ];\r\n\r\n\r\n this.loaddata();\r\n }\r\n loaddata() {\r\n this.fundivineblessings('a')\r\n }\r\n fundivineblessings(value: any) {\r\n var strvalue = value;\r\n\r\n if (strvalue == 'a') {\r\n this.columns = [\r\n /* { prop: 'index', name: '#', width: 30, },*/\r\n { prop: 'selected', name: '', sortable: false, canAutoResize: false, draggable: false, resizable: false, headerCheckboxable: true, checkboxable: true, width: 30 },\r\n { prop: 'adate', name: 'Date', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'aOrderNo', name: 'Order No', width: 180 },\r\n { prop: 'aOrderRecFrom', name: 'Order Rec From', width: 200 },\r\n { prop: 'aItemName', name: 'Item Name', width: 200 },\r\n { prop: 'aPieces', name: 'Pieces', width: 50 },\r\n { prop: 'aWeight', name: 'Weight', width: 50 },\r\n { prop: 'aAmount', name: 'Amount', width: 50 },\r\n { prop: 'apayment', name: 'Payment', width: 70 },\r\n { prop: 'aAwbno', name: 'Awb No', width: 100, },\r\n { prop: 'aDestination', name: 'Destination', width: 100 },\r\n { prop: 'acost', name: 'Cost', width: 50 },\r\n { prop: 'aCutOffTime', name: 'Cut Off Time', width: 100 },\r\n ];\r\n /*this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });*/\r\n this.transaction.Getdivineblessings(\"\", strvalue).subscribe(office => this.ongetdashboarddetailsssuccess(office), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n }\r\n onSelect(row: any) {\r\n this.orderplacedfordispatch = [];\r\n for (let i = 0; i < row.length; i++) {\r\n\r\n }\r\n this.orderplacedfordispatch = row.selected;\r\n this.isbtnMode = true;\r\n }\r\n\r\n Show() {\r\n this.Name = \"ORDER PLACED FOR DISPATCH\";\r\n this.isCust = true;\r\n this.isEditMode = true;\r\n this.isDetailsMode = false;\r\n this.isCustDetails = false;\r\n this.editorModal.show();\r\n \r\n } \r\n\r\n\r\n ongetdashboarddetailsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as divinedashboard[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as divinedashboard[];\r\n this.bookingdata = result;\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new divinedashboard();\r\n this.addrow[0].adate = result[index].date;\r\n this.addrow[0].aOrderNo = result[index].orderNo;\r\n this.addrow[0].aOrderRecFrom = result[index].orderRecFrom;\r\n this.addrow[0].aItemName = result[index].itemName;\r\n this.addrow[0].aPieces = result[index].pieces\r\n this.addrow[0].aWeight = result[index].weight\r\n this.addrow[0].aAmount = result[index].amount\r\n this.addrow[0].apayment = result[index].payment\r\n this.addrow[0].aAwbno = result[index].awbno\r\n this.addrow[0].aDestination = result[index].destination\r\n this.addrow[0].acost = result[index].cost\r\n this.addrow[0].aCutOffTime = result[index].cutOffTime\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new divinedashboard();\r\n tmp.adate = result[index].date;\r\n tmp.aOrderNo = result[index].orderNo;\r\n tmp.aOrderRecFrom = result[index].orderRecFrom;\r\n tmp.aItemName = result[index].itemName;\r\n tmp.aPieces = result[index].pieces\r\n tmp.aWeight = result[index].weight\r\n tmp.aAmount = result[index].amount\r\n tmp.apayment = result[index].payment\r\n tmp.aAwbno = result[index].awbno\r\n tmp.aDestination = result[index].destination\r\n tmp.acost = result[index].cost\r\n tmp.aCutOffTime = result[index].cutOffTime\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n editState(row: divinedashboard) {\r\n this.Name = \"DIVINE BLESSINGS TRACKER\";\r\n this.isCust = false;\r\n this.isEditMode = false;\r\n this.isDetailsMode = true;\r\n this.isCustDetails = true;\r\n this.detailscolumns = [\r\n\r\n { prop: 'cDate', name: 'Date', width: 70, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'cOrderNo', name: 'Order No', width: 100 },\r\n { prop: 'cAWBNo', name: 'AWB No', width: 100 },\r\n { prop: 'cOrigin', name: 'Origin', width: 100 },\r\n { prop: 'cDestination', name: 'Destination', width: 50 },\r\n { prop: 'cPcs', name: 'Pcs', width: 50 },\r\n { prop: 'cWt', name: 'Wt.', width: 50 },\r\n { prop: 'cOutscandate', name: 'Out Scan Date', width: 70 },\r\n { prop: 'cOScanto', name: 'O/Scanto', width: 70 },\r\n { prop: 'cInscanDate', name: 'Inscan Date', width: 70 },\r\n { prop: 'cOutscanor', name: 'Outscan or', width: 50 },\r\n { prop: 'cDelivery', name: 'Delivery', width: 70 },\r\n { prop: 'cPoduploaded', name: 'Poduploaded', width: 70 },\r\n { prop: 'cRemark', name: 'Remark', width: 70 },\r\n ];\r\n this.transaction.Getdivineblessings(\"\", 'c').subscribe(office => this.ongetdashboarddivineblessingstrackersssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n this.editorModal.show();\r\n }\r\n ongetdashboarddivineblessingstrackersssuccess(result: any) {\r\n\r\n if (result.length > 0) {\r\n this.Crows = [] as divinedashboarddetails[];\r\n this.CrowsCache = [...this.Crows];\r\n this.Caddrow = [] as divinedashboarddetails[];\r\n this.Cbookingdata = result;\r\n for (let index = 0; index < this.Cbookingdata.length; index++) {\r\n if (this.Crows.length == 0) {\r\n this.Caddrow[0] = new divinedashboarddetails();\r\n this.Caddrow[0].cDate = result[index].date;\r\n this.Caddrow[0].cOrderNo = result[index].orderNo;\r\n this.Caddrow[0].cAWBNo = result[index].awbNo;\r\n this.Caddrow[0].cOrigin = result[index].origin;\r\n this.Caddrow[0].cDestination = result[index].destination;\r\n this.Caddrow[0].cPcs = result[index].pcs;\r\n this.Caddrow[0].cWt = result[index].wt;\r\n this.Caddrow[0].cOutscandate = result[index].outscandate;\r\n this.Caddrow[0].cOScanto = result[index].oScanto;\r\n this.Caddrow[0].cInscanDate = result[index].inscanDate;\r\n this.Caddrow[0].cOutscanor = result[index].outscanor;\r\n this.Caddrow[0].cDelivery = result[index].delivery;\r\n this.Caddrow[0].cPoduploaded = result[index].poduploaded;\r\n this.Caddrow[0].cRemark = result[index].remark;\r\n this.Crows = this.Caddrow;\r\n }\r\n else {\r\n var tmp = new divinedashboarddetails();\r\n tmp.cDate = result[index].date;\r\n tmp.cOrderNo = result[index].orderNo;\r\n tmp.cAWBNo = result[index].aWBNo;\r\n tmp.cOrigin = result[index].origin;\r\n tmp.cDestination = result[index].destination;\r\n tmp.cPcs = result[index].pcs;\r\n tmp.cWt = result[index].wt;\r\n tmp.cOutscandate = result[index].outscandate;\r\n tmp.cOScanto = result[index].oScanto;\r\n tmp.cInscanDate = result[index].inscanDate;\r\n tmp.cOutscanor = result[index].outscanor;\r\n tmp.cDelivery = result[index].delivery;\r\n tmp.cPoduploaded = result[index].poduploaded;\r\n tmp.cRemark = result[index].remark;\r\n this.Crows.push(tmp);\r\n }\r\n this.CrowsCache = [...this.Crows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve Dashboard from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n onEditorModalHidden() {\r\n this.Name = \"\";\r\n this.isCust = false;\r\n this.isEditMode = false;\r\n this.isDetailsMode = false;\r\n this.isCustDetails = false;\r\n this.editorModal.hide();\r\n }\r\n\r\n\r\n generateExcel() {\r\n var data = []\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n data[index] = [this.bookingdata[index].date,\r\n this.bookingdata[index].orderNo,\r\n this.bookingdata[index].orderRecFrom,\r\n this.bookingdata[index].itemName,\r\n this.bookingdata[index].pieces,\r\n this.bookingdata[index].weight,\r\n this.bookingdata[index].amount,\r\n this.bookingdata[index].payment,\r\n this.bookingdata[index].awbno,\r\n this.bookingdata[index].destination,\r\n this.bookingdata[index].cost,\r\n this.bookingdata[index].cutOffTime,\r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Widths = [];\r\n this.excelService.header = [\"Date\", \"Order No\", \"Order Rec From\", \"Item Name\", \"Pieces\", \"Weight\",\"Amount\", \"Payment\", \"Awb No\", \"Destination\", \"Cost\",\"Cut Off Time\"]\r\n /*this.excelService.title = \"Divine\";*/\r\n this.excelService.Sheetname = \"Divine\";\r\n this.excelService.generateExcel();\r\n }\r\n}\r\nexport class divinedashboard {\r\n public aSNo: string\r\n public adate: string\r\n public aOrderNo: string\r\n public aOrderRecFrom: string\r\n public aItemCode: string\r\n public aItemName: string\r\n public aPieces: string\r\n public aWeight: string\r\n public aAmount: string\r\n public apayment: string\r\n public aAwbno: string\r\n public aDestination: string\r\n public acost: string\r\n public aCutOffTime: string\r\n public aMasterOrderno: string\r\n public aRemark\r\n \r\n}\r\nexport class divinedashboarddetails {\r\n \r\n public cDate: string\r\n public cOrderNo: string\r\n public cAWBNo: string\r\n public cOrigin: string\r\n public cDestination: string\r\n public cPcs: string\r\n public cWt: string\r\n public cOutscandate: string\r\n public cOScanto: string\r\n public cInscanDate: string\r\n public cOutscanor: string\r\n public cDelivery: string\r\n public cPoduploaded: string\r\n public cRemark: string\r\n}\r\n\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZHJzLXJlcG9ydC9kcnMtcmVwb3J0LmNvbXBvbmVudC5zY3NzIn0= */\"","import { TemplateRef } from '@angular/core';\r\nimport { ViewChild } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\nimport { MatDialog } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { AlertService } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\n\n@Component({\n selector: 'app-drs-report',\n templateUrl: './drs-report.component.html',\n styleUrls: ['./drs-report.component.scss']\n})\nexport class DrsReportComponent implements OnInit {\n columns: any[] = [];\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n constructor(public dialog: MatDialog, private excelService: ExcelService,\n private localstre: LocalStoreManager, private configurations: ConfigurationService,\n private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router,\n private alertService: AlertService, private transaction: TransactionService) {\n }\n ngOnInit() {\n \n this.columns = [\n { prop: 'srlno', name: '#', width: 30, canAutoResize: false },\n { prop: 'Manifestno', name: 'DRS no', width: 100 },\n { prop: 'Type', name: 'Type', width: 50 },\n { prop: 'MenifestDate', name: 'Manifest Date', width: 100 },\n { prop: 'officename', name: 'Generated At', width: 100 },\n { prop: 'ForwardedTo', name: 'Fwd To/Rec. From', width: 150 },\n { prop: 'Weight', name: 'Wight', width: 70 },\n { prop: 'Pieces', name: 'Pieces', width: 70 }\n\n ];\n this.columns.push({ name: '', width: 300, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\n }\n\n}\nexport class DRSdetail {\n public srlno: string\n public Manifestno: string\n public fromdate: string\n public todate: string\n public MenifestDate: string\n public officename: string\n public ForwardedTo: string\n public Weight: string\n public Type: string\n public Pieces: string\n public Coloader: string\n}\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZXhwZW5zZS1wYXltZW50L2V4cGVuc2UtcGF5bWVudC5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { TallyVoucher,vledger } from '../bill-print/bill-print.component';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-expense-payment',\r\n templateUrl: './expense-payment.component.html',\r\n styleUrls: ['./expense-payment.component.scss']\r\n})\r\nexport class ExpensePaymentComponent implements OnInit {\r\n controloffice: any;\r\n vouchers: TallyVoucherrep[] = [];\r\n loadingIndicator = false;\r\n columns: any[];\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n constructor(private transaction: TransactionService, private ServiceMaster: Masters,\r\n private alertService: AlertService, private configurations: ConfigurationService,\r\n private authService: AuthService, public router: ActivatedRoute, private _router: Router,\r\n private tallyservice: TallyService, private localstre: LocalStoreManager) { }\r\n expledger: any[] = [];\r\n ledgers: any[] = [];\r\n ngOnInit() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetExpLedger'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr = null; \r\n Parameter = null;\r\n Req.LstParameter = Parameter;\r\n this.expledger = [];\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n result.forEach((obj, ind, arrres) => {\r\n if (this.expledger.length == 0) {\r\n this.expledger[0] = obj.name;\r\n }\r\n else {\r\n this.expledger.push(obj.name);\r\n }\r\n });\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetLedger'\r\n Parameter = new Array(1);\r\n pr = new Prclass();\r\n pr = null;\r\n Parameter = null;\r\n this.ledgers = [];\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n result.forEach((obj, ind, arrres) => {\r\n if (this.ledgers.length == 0) {\r\n this.ledgers[0] = obj.name;\r\n }\r\n else {\r\n this.ledgers.push(obj.name);\r\n }\r\n });\r\n }, error => this.onDataLoadFailed(error))\r\n var tmpdate = new Date()\r\n $('#expdate').val(tmpdate.getDate().toString() + \"-\" + (tmpdate.getMonth() + 1).toString() + \"-\" + tmpdate.getFullYear().toString());\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 20, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'voucherno', name: 'Vno', width: 10 },\r\n { prop: 'VoucherDate', name: 'Date', width: 15 },\r\n { prop: 'ledgerName', name: 'Pay. Ledger', width: 30 },\r\n { prop: 'TotalDebit', name: 'Amount', width: 15 },\r\n { prop: 'narration', name: 'Remarks', width: 70 }\r\n\r\n ];\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n\r\n this.getVocuhers();\r\n }\r\n getVocuhers() {\r\n var Req = new CommRequest();\r\n Req.ProcessName = 'GetPaymetVoucher'\r\n var Parameter = new Array(1);\r\n var pr = new Prclass();\r\n pr = null;\r\n Parameter = null;\r\n //this.ledgers = [];\r\n this.vouchers = []; \r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n result.forEach((obj, ind, arrres) => {\r\n if (this.vouchers.length == 0) {\r\n this.vouchers[0] = new TallyVoucherrep();\r\n this.vouchers[0].ledgerName = obj.ledgerName;\r\n this.vouchers[0].officename = obj.officeName;\r\n this.vouchers[0].narration = obj.narration;\r\n this.vouchers[0].officeId = obj.officeId;\r\n this.vouchers[0].referenceno = obj.referenceno;\r\n this.vouchers[0].TotalCredit = obj.totalCredit;\r\n this.vouchers[0].TotalDebit = obj.totalDebit;\r\n this.vouchers[0].VoucherDate = obj.voucherDate;\r\n this.vouchers[0].voucherno = obj.voucherNo;\r\n this.vouchers[0].voucherId = obj.voucherId;\r\n this.vouchers[0].voucherType = obj.voucherType;\r\n this.vouchers[0].masterid = obj.masterId\r\n }\r\n else {\r\n let vh = new TallyVoucherrep()\r\n vh.ledgerName = obj.ledgerName;\r\n vh.officename = obj.officeName;\r\n vh.narration = obj.narration;\r\n vh.officeId = obj.officeId;\r\n vh.referenceno = obj.referenceno;\r\n vh.TotalCredit = obj.totalCredit;\r\n vh.TotalDebit = obj.totalDebit;\r\n vh.VoucherDate = obj.voucherDate;\r\n vh.voucherno = obj.voucherNo;\r\n vh.voucherId = obj.voucherId;\r\n vh.voucherType = obj.voucherType;\r\n vh.masterid = obj.masterId\r\n\r\n this.vouchers.push(vh);\r\n }\r\n });\r\n this.vouchers = [...this.vouchers];\r\n\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n\r\n getExpledger() {\r\n $('#exphead').autocomplete({\r\n source: this.expledger,\r\n delay: 50\r\n });\r\n \r\n }\r\n getledger() {\r\n $('#payledger').autocomplete({\r\n source: this.ledgers,\r\n delay: 50\r\n });\r\n\r\n }\r\n printvoucher(tallyrep:TallyVoucherrep) {\r\n this._router.navigate(['/vchprint'], {\r\n queryParams: {\r\n billNo: tallyrep.masterid,\r\n backurl: '/exppayment'\r\n }\r\n });\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n \r\n\r\n return true;\r\n }\r\n textonblur() {\r\n let amt = $('#expamount').val();\r\n let amtw = this.convertToword(amt);\r\n $('#amountinword').val(amtw)\r\n }\r\n PostVoucher() {\r\n\r\n let exphead = $('#exphead').val();\r\n let expamount = $('#expamount').val();\r\n let refno = $('#exprefrenceno').val()\r\n let payleger = $('#payledger').val()\r\n let expmobileno = $('#expmobileno').val();\r\n let remarks = $('#remarks').val();\r\n\r\n if (isNullOrUndefined(exphead) || exphead == '') {\r\n this.alertService.showDialog(\"Please select expense head !\")\r\n $('#exphead').focus();\r\n return;\r\n }\r\n if (isNullOrUndefined(expamount) || parseFloat(expamount) == 0 || isNaN(parseFloat(expamount))) {\r\n this.alertService.showDialog(\"Please enter expense amount !\")\r\n $('#expamount').focus();\r\n return;\r\n }\r\n if (isNullOrUndefined(refno) || refno == '') {\r\n this.alertService.showDialog(\"Please enter reference number !\")\r\n $('#exprefrenceno').focus();\r\n return;\r\n }\r\n\r\n if (isNullOrUndefined(expmobileno) || expmobileno == '') {\r\n this.alertService.showDialog(\"Please enter mobileno !\")\r\n $('#expmobileno').focus();\r\n return;\r\n }\r\n if (isNullOrUndefined(remarks) || remarks == '') {\r\n this.alertService.showDialog(\"Please enter remarks !\")\r\n ('#remarks').focus();\r\n return;\r\n }\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n this.controloffice = _Balogindata[0].controloffice;\r\n var centname: string = '';\r\n switch (this.controloffice) {\r\n case 'One-x Guwahati':\r\n centname = 'GUWAHATI OFFICE';\r\n break;\r\n case 'One-x Patna':\r\n centname = 'PATNA OFFICE';\r\n break;\r\n case 'One-x Kolkata':\r\n centname = 'KOLKATA OFFICE';\r\n break;\r\n case 'One-x Mahipalpur':\r\n centname = 'DELHI OFFICE';\r\n break;\r\n case 'One-x Siliguri':\r\n centname = 'Siliguri Area Office';\r\n break;\r\n\r\n default:\r\n centname = ''\r\n break;\r\n }\r\n\r\n var Csledger: string = '';\r\n switch (this.controloffice) {\r\n case 'One-x Guwahati':\r\n Csledger = 'Cash in Hand (Ghy)';\r\n break;\r\n case 'One-x Patna':\r\n Csledger = 'Cash in Hand (Others)';\r\n break;\r\n case 'One-x Kolkata':\r\n Csledger = 'Cash in Hand (Kol)';\r\n break;\r\n case 'One-x Mahipalpur':\r\n Csledger = 'Cash in Hand (Delhi)';\r\n break;\r\n case 'One-x Siliguri':\r\n Csledger = 'Cash in Hand (Others)';\r\n break;\r\n\r\n default:\r\n Csledger = ''\r\n break;\r\n }\r\n if (Csledger == '') {\r\n this.alertService.showMessage(\"Ledger\", \"Cash in hand ledger not found\", MessageSeverity.error);\r\n return;\r\n }\r\n if (!isNullOrUndefined(payleger) && payleger != '') {\r\n var salevoucher = new TallyVoucher(); var salevoucher = new TallyVoucher();\r\n salevoucher.voucherType = \"Payment\";\r\n //let roundval = Math.round(parseFloat(this.TotalAmount)) - parseFloat(this.TotalAmount)\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n salevoucher.OfficeName = _Balogindata[0].officename;\r\n salevoucher.OfficeId = _Balogindata[0].officeid;\r\n salevoucher.voucherNo = '';\r\n salevoucher.masterId = '';\r\n salevoucher.Action = 'Create';\r\n let vDate: string = $('#expdate').val();\r\n let dtsep = /-/g;\r\n vDate = vDate.replace(dtsep, \"/\");\r\n salevoucher.VoucherDate = vDate.split(\"/\")[2].toString() + \"-\" + vDate.split(\"/\")[1].toString() + \"-\" + vDate.split(\"/\")[0].toString();\r\n salevoucher.Narration = $('#remarks').val(); //'BEING RO SALE TO ' + this.tLedgerName + ' VIDE BILL NO. ' + this.billNo\r\n salevoucher.referenceno = $('#exprefrenceno').val();\r\n var vledgers: vledger[] = [];\r\n var veledr = new vledger();\r\n veledr.Amount = parseFloat(expamount);\r\n veledr.costcategoryname = '';\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = Csledger;\r\n veledr.refrenceno = $('#exprefrenceno').val();\r\n salevoucher.TotalCredit = parseFloat(expamount);\r\n salevoucher.TotalDebit = parseFloat(expamount);\r\n //veledr.billDetail = billdetails\r\n vledgers[0] = veledr;\r\n\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(expamount);\r\n veledr.costcategoryname = '';\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n veledr.drcr = 'DR';\r\n veledr.ledgerName = payleger;\r\n veledr.refrenceno = $('#exprefrenceno').val();\r\n //veledr.billDetail = billdetails\r\n vledgers.push(veledr);\r\n salevoucher.Ledgerdetail = vledgers;\r\n\r\n this.tallyservice.PostTallyVoucher(salevoucher).subscribe(result => {\r\n if (result) {\r\n if (result.status == 0) {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.success);\r\n $('#exphead').val('');\r\n $('#payledger').val('');\r\n $('#remarks').val('');\r\n $('#exprefrenceno').val('');\r\n $('#expamount').val('0');\r\n $('#expmobileno').val('');\r\n var wpmwssage: string = \"Payment done some of Rs.\" + expamount +\r\n \" , If you have not recvd this amount ,Please Call us on 7982918977\"\r\n\r\n this.transaction.PostWpMessage(wpmwssage, expmobileno).subscribe(wpres => { this.alertService.showMessage(\"Wp\", \"Whatsapp Send!\", MessageSeverity.success); }, error => { this.alertService.showMessage(\"Error\", JSON.stringify(error), MessageSeverity.error) });\r\n }\r\n else {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.error);\r\n }\r\n }\r\n }, error => { this.alertService.showMessage(\"Error\", JSON.stringify(error), MessageSeverity.error) });\r\n }\r\n else {\r\n var salevoucher = new TallyVoucher();\r\n salevoucher.voucherType = \"Payment\";\r\n //let roundval = Math.round(parseFloat(this.TotalAmount)) - parseFloat(this.TotalAmount)\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n salevoucher.OfficeName = _Balogindata[0].officename;\r\n salevoucher.OfficeId = _Balogindata[0].officeid;\r\n salevoucher.voucherNo = '';\r\n salevoucher.masterId = '';\r\n salevoucher.Action = 'Create';\r\n let vDate: string = $('#expdate').val();\r\n let dtsep = /-/g;\r\n vDate = vDate.replace(dtsep, \"/\");\r\n salevoucher.VoucherDate = vDate.split(\"/\")[2].toString() + \"-\" + vDate.split(\"/\")[1].toString() + \"-\" + vDate.split(\"/\")[0].toString();\r\n salevoucher.Narration = $('#remarks').val(); //'BEING RO SALE TO ' + this.tLedgerName + ' VIDE BILL NO. ' + this.billNo\r\n salevoucher.referenceno = $('#exprefrenceno').val();\r\n var vledgers: vledger[] = [];\r\n var veledr = new vledger();\r\n veledr.Amount = parseFloat(expamount);\r\n veledr.costcategoryname = '';\r\n veledr.costcenterAmount = '0';\r\n veledr.costcenterName = '';\r\n veledr.drcr = 'CR';\r\n veledr.ledgerName = Csledger;\r\n veledr.refrenceno = $('#exprefrenceno').val();\r\n salevoucher.TotalCredit = parseFloat(expamount);\r\n salevoucher.TotalDebit = parseFloat(expamount);\r\n //veledr.billDetail = billdetails\r\n vledgers[0] = veledr;\r\n\r\n veledr = new vledger();\r\n veledr.Amount = parseFloat(expamount);\r\n veledr.costcategoryname = 'Primary Cost Category';\r\n veledr.costcenterAmount = expamount;\r\n veledr.costcenterName = centname;\r\n veledr.drcr = 'DR';\r\n veledr.ledgerName = exphead;\r\n veledr.refrenceno = $('#exprefrenceno').val();\r\n //veledr.billDetail = billdetails\r\n vledgers.push(veledr);\r\n salevoucher.Ledgerdetail = vledgers;\r\n\r\n this.tallyservice.PostTallyVoucher(salevoucher).subscribe(result => {\r\n if (result) {\r\n if (result.status == 0) {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.success);\r\n this.getVocuhers();\r\n\r\n this._router.navigate(['/vchprint'], {\r\n queryParams: {\r\n billNo: result.response.split(',')[1].split('-')[1].trim(),\r\n backurl: '/exppayment'\r\n }\r\n });// define your componen\r\n \r\n\r\n\r\n return;\r\n $('#exphead').val('');\r\n $('#payledger').val('');\r\n $('#remarks').val('');\r\n $('#exprefrenceno').val('');\r\n $('#expamount').val('0');\r\n $('#expmobileno').val('');\r\n\r\n var wpmwssage: string = \"Payment done some of Rs.\" + expamount +\r\n \" , If you have not recvd this amount ,Please Call us on 7982918977\"\r\n \r\n\r\n this.transaction.PostWpMessage(wpmwssage,expmobileno).subscribe(wpres => { this.alertService.showMessage(\"Wp\", \"Whatsapp Send!\", MessageSeverity.success); }, error => { this.alertService.showMessage(\"Error\", JSON.stringify(error), MessageSeverity.error) });\r\n }\r\n else {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.error);\r\n }\r\n }\r\n }, error => { this.alertService.showMessage(\"Error\", JSON.stringify(error), MessageSeverity.error) });\r\n\r\n }\r\n\r\n\r\n }\r\n convertToword(num: any) {\r\n var a = ['', 'one ', 'two ', 'three ', 'four ', 'five ', 'six ', 'seven ', 'eight ', 'nine ', 'ten ', 'eleven ', 'twelve ', 'thirteen ', 'fourteen ', 'fifteen ', 'sixteen ', 'seventeen ', 'eighteen ', 'nineteen '];\r\n var b = ['', '', 'twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety'];\r\n\r\n\r\n if ((num = num.toString()).length > 9) return 'overflow';\r\n var n: any = ('000000000' + num).substr(-9).match(/^(\\d{2})(\\d{2})(\\d{2})(\\d{1})(\\d{2})$/);\r\n if (!n) {\r\n return;\r\n }\r\n var str = '';\r\n str += (n[1] != 0) ? (a[Number(n[1])] || b[n[1][0]] + ' ' + a[n[1][1]]) + 'crore ' : '';\r\n str += (n[2] != 0) ? (a[Number(n[2])] || b[n[2][0]] + ' ' + a[n[2][1]]) + 'lakh ' : '';\r\n str += (n[3] != 0) ? (a[Number(n[3])] || b[n[3][0]] + ' ' + a[n[3][1]]) + 'thousand ' : '';\r\n str += (n[4] != 0) ? (a[Number(n[4])] || b[n[4][0]] + ' ' + a[n[4][1]]) + 'hundred ' : '';\r\n str += (n[5] != 0) ? ((str != '') ? 'and ' : '') + (a[Number(n[5])] || b[n[5][0]] + ' ' + a[n[5][1]]) + 'only ' : '';\r\n return str;\r\n }\r\n\r\n\r\n}\r\nexport class TallyVoucherrep {\r\n voucherId: string;\r\n officeId: string;\r\n officename: string;\r\n voucherType: string;\r\n VoucherDate: string;\r\n narration: string; \r\n TotalCredit: number;\r\n TotalDebit: number;\r\n referenceno: string;\r\n voucherno: string;\r\n ledgerName: string;\r\n masterid: string;\r\n}\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvZ2VuZXJhdGVzdGlja2VyL2dlbmVyYXRlc3RpY2tlci5jb21wb25lbnQuc2NzcyJ9 */\"","import { DatePipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { from } from 'rxjs';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-generatesticker',\r\n templateUrl: './generatesticker.component.html',\r\n styleUrls: ['./generatesticker.component.scss']\r\n})\r\nexport class GeneratestickerComponent implements OnInit {\r\n editedstickerQty: stickerQty = new stickerQty();\r\n columns: any[] = [];\r\n rows: stickerQty[] = [];\r\n addrow: stickerQty[] = [];\r\n rowsCache: stickerQty[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditMode = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n\r\n \r\n constructor(private configurations: ConfigurationService, private router: Router, private localstre: LocalStoreManager, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate3', { static: true })\r\n actionsTemplate3: TemplateRef;\r\n\r\n ngOnInit() {\r\n this.editedstickerQty.fromOfficeName = this.localstre.getData(\"BaLoginData\")[0].officename\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'fromOfficeName', name: 'From Office', width: 100 },\r\n { prop: 'toOfficeName', name: 'To Office', width: 100 },\r\n { prop: 'stickerQty', name: 'Sticker Qty', width: 100 },\r\n { prop: 'fromNo', name: 'From Number', width: 100 },\r\n { prop: 'toNo', name: 'To Number', width: 100 }\r\n ];\r\n this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate3, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n this.loaddata();\r\n }\r\n\r\n getbaList($event) {\r\n this.Getba();\r\n this.arrcity2 = this.arrcity\r\n $('#toOfficeName').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n Getba() {\r\n this.ServiceMaster.getHelplist('alloffice').subscribe(result => this.onDatagetSuccessful(result,'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(ba: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"ba\") {\r\n this.arrcity = ba;\r\n }\r\n\r\n \r\n }\r\n PrintSticker(row: stickerQty) {\r\n //if (row.isPrint == false) {\r\n //this.alertService.showStickyMessage(\"Print\", \"This series is already printed,you cannot print again\", MessageSeverity.warn)\r\n //this.alertService.showStickyMessage(\"\",\"Contact control office\", MessageSeverity.info);\r\n //return;\r\n //}\r\n\r\n row.isPrint = true;\r\n this.ServiceMaster.PostSaveSticker(row).subscribe(result => {\r\n this.router.navigate(['/printsticker'], {\r\n queryParams: {\r\n fromno: row.fromNo.substr(1),\r\n tono: row.toNo.substr(1),\r\n officeid:row.toOfficeid\r\n }\r\n }); // define your component where you want to go\r\n }, error => this.saveFailedHelper(error))\r\n\r\n \r\n }\r\n GetStickerSeries() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_CreateVendoreCode'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"CodeFor\"\r\n pr.PropertyValue = 'STK';\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Qty\"\r\n pr.PropertyValue = $('#stickerQty').val().toString();\r\n Parameter[1] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n getsuccessloaddata(result: any[]) {\r\n var stkt = new stickerQty();\r\n\r\n result.forEach((cst, inedes, res) => { \r\n if (this.rows.length == 0) {\r\n stkt = new stickerQty();\r\n stkt.fromNo = cst.fromNo;\r\n stkt.toNo = cst.toNo;\r\n stkt.fromOfficeName = cst.fromOfficeName;\r\n stkt.toOfficeName = cst.toOfficeName;\r\n stkt.stickerQty = cst.stickerQty;\r\n stkt.fromOfficeid = cst.fromOfficeId;// this.localstre.getData(\"BaLoginData\")[0].officeid\r\n stkt.toOfficeid = cst.toOfficeId;\r\n stkt.isPrint = cst.isPrint;\r\n this.rows[0] = stkt;\r\n }\r\n else {\r\n stkt = new stickerQty();\r\n stkt.fromNo = cst.fromNo;\r\n stkt.toNo = cst.toNo;\r\n stkt.fromOfficeName = cst.fromOfficeName;\r\n stkt.toOfficeName = cst.toOfficeName;\r\n stkt.stickerQty = cst.stickerQty;\r\n stkt.fromOfficeid = cst.fromOfficeId;// this.localstre.getData(\"BaLoginData\")[0].officeid\r\n stkt.toOfficeid = cst.toOfficeId;\r\n stkt.isPrint = cst.isPrint;\r\n this.rows.push(stkt);\r\n\r\n }\r\n });\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n });\r\n this.rows = [...this.rows];\r\n }\r\n\r\n getSucessDataExrate(result) {\r\n var stkt = new stickerQty();\r\n\r\n if ($('#toOfficeName').val() == '') {\r\n this.alertService.showStickyMessage(\"Issue Office\", \"Please select issue office !\", MessageSeverity.error)\r\n $('#toOfficeName').focus();\r\n return;\r\n }\r\n if ($('#stickerQty').val() == '' || $('#stickerQty').val() == '0' || $('#stickerQty').val()==0 ) {\r\n this.alertService.showStickyMessage(\"Issue Qunatity\", \"Please enter issue qunatity !\", MessageSeverity.error)\r\n $('#stickerQty').focus();\r\n return;\r\n }\r\n\r\n if (this.rows.length == 0) {\r\n\r\n stkt.fromNo = result[0].prevno;\r\n stkt.toNo = result[0].code;\r\n stkt.fromOfficeName = $('#fromOfficeName').val();\r\n stkt.toOfficeName = $('#toOfficeName').val();\r\n stkt.stickerQty = $('#stickerQty').val();\r\n stkt.fromOfficeid = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n stkt.isPrint = true;\r\n this.rows[0] = stkt;\r\n }\r\n else {\r\n stkt.fromNo = result[0].prevno;\r\n stkt.toNo = result[0].code;\r\n stkt.fromOfficeName = $('#fromOfficeName').val();\r\n stkt.toOfficeName = $('#toOfficeName').val();\r\n stkt.stickerQty = $('#stickerQty').val();\r\n stkt.fromOfficeid = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n stkt.isPrint = false;\r\n this.rows.push(stkt);\r\n \r\n }\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n });\r\n this.rows = [...this.rows];\r\n this.ServiceMaster.PostSaveSticker(stkt).subscribe(result => { this.alertService.showMessage(\"Sticker\", `Sticker Generated`, MessageSeverity.success) }, error => this.saveFailedHelper(error))\r\n\r\n }\r\n loaddata() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_GetGenSticker'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"officeid\"\r\n pr.PropertyValue = this.localstre.getData(\"BaLoginData\")[0].officeid ;\r\n Parameter[0] = pr;\r\n\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getsuccessloaddata(result), error => this.onDataLoadFailed(error))\r\n // this.loadingIndicator = true;\r\n // this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n }\r\n LoadSucessdata(bagging: stickerQty[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n bagging.forEach((prod, index, items) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...bagging];\r\n this.rows = bagging;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve item receive from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n \r\n \r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n\r\n}\r\n\r\nexport class stickerQty {\r\n \r\n public fromOfficeName: string\r\n public toOfficeName: string\r\n public fromOfficeid: string\r\n public toOfficeid:string\r\n public stickerQty: string\r\n public fromNo: string\r\n public toNo: string\r\n public isPrint: boolean\r\n}\r\n","export default \"body {\\n margin: 0;\\n font-family: \\\"Source Sans Pro\\\", -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\", Arial, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\";\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n background-color: #fff;\\n}\\n\\n.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {\\n position: relative;\\n width: 100%;\\n padding-right: 7.5px;\\n padding-left: 7.5px;\\n}\\n\\n.small-box {\\n border-radius: 0.25rem;\\n box-shadow: 0 0 1px rgba(0, 0, 0, 0.13), 0 1px 3px rgba(0, 0, 0, 0.2);\\n display: block;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n\\n.small-box > .small-box-footer {\\n background-color: rgba(0, 0, 0, 0.1);\\n color: rgba(255, 255, 255, 0.8);\\n display: block;\\n padding: 3px 0;\\n position: relative;\\n text-align: center;\\n text-decoration: none;\\n z-index: 10;\\n}\\n\\n.bg-info > a {\\n color: #fff !important;\\n}\\n\\n.row {\\n display: flex;\\n flex-wrap: wrap;\\n margin-right: -7.5px;\\n margin-left: -7.5px;\\n}\\n\\n.col-lg-3 .small-box h3, .col-md-3 .small-box h3, .col-xl-3 .small-box h3 {\\n font-size: 2.2rem;\\n}\\n\\n.small-box h3 {\\n font-size: 2.2rem;\\n font-weight: 700;\\n margin: 0 0 10px;\\n padding: 0;\\n white-space: nowrap;\\n color: #fff;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box:hover {\\n text-decoration: none;\\n}\\n\\n.bg-success, .bg-success > a {\\n color: #fff !important;\\n}\\n\\n.inner {\\n height: 120px !important;\\n padding-left: 10px;\\n padding-top: 10px;\\n}\\n\\n.color {\\n color: #fff;\\n font-size: 1.4rem !important;\\n}\\n\\nbutton.close {\\n position: absolute;\\n top: 0.25rem;\\n right: 1.5rem;\\n z-index: 100;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9ob21lL0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXGhvbWVcXGhvbWUuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvaG9tZS9ob21lLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0UsU0FBQTtFQUNBLG9MQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQkFBQTtBQ0RGOztBRElBO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0Esb0JBQUE7RUFDQSxtQkFBQTtBQ0RGOztBRElBO0VBQ0Usc0JBQUE7RUFDQSxxRUFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FDREY7O0FESUE7RUFDRSxvQ0FBQTtFQUNBLCtCQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0FDREY7O0FESUE7RUFDRSxzQkFBQTtBQ0RGOztBRElBO0VBRUUsYUFBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0FDREY7O0FESUE7RUFDRSxpQkFBQTtBQ0RGOztBRElBO0VBQ0UsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtBQ0RGOztBRElBO0VBQ0UsVUFBQTtBQ0RGOztBRElBO0VBQ0UsZUFBQTtBQ0RGOztBRElBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0FDREY7O0FESUE7RUFDRSxzQkFBQTtBQ0RGOztBRElBO0VBQ0UsY0FBQTtFQUNBLDBCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtVQUFBLHFCQUFBO0VBQ0EseUJBQUE7VUFBQSx3QkFBQTtFQUNBLHVCQUFBO1VBQUEsc0JBQUE7QUNERjs7QURJQTtFQUNFLFVBQUE7QUNERjs7QURJQTtFQUNFLGVBQUE7QUNERjs7QURJQTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtBQ0RGOztBRElBO0VBQ0Usc0JBQUE7QUNERjs7QURJQTtFQUNFLGNBQUE7RUFDQSwwQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJBQUE7VUFBQSxxQkFBQTtFQUNBLHlCQUFBO1VBQUEsd0JBQUE7RUFDQSx1QkFBQTtVQUFBLHNCQUFBO0FDREY7O0FESUE7RUFDRSxxQkFBQTtBQ0RGOztBRElBO0VBQ0Usc0JBQUE7QUNERjs7QURJQTtFQUNFLHdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBQ0RGOztBRElBO0VBQ0UsV0FBQTtFQUNBLDRCQUFBO0FDREY7O0FETUE7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtBQ0hGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9ob21lL2hvbWUuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuXHJcbmJvZHkge1xyXG4gIG1hcmdpbjogMDtcclxuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwtYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxcIlNlZ29lIFVJXCIsUm9ib3RvLFwiSGVsdmV0aWNhIE5ldWVcIixBcmlhbCxzYW5zLXNlcmlmLFwiQXBwbGUgQ29sb3IgRW1vamlcIixcIlNlZ29lIFVJIEVtb2ppXCIsXCJTZWdvZSBVSSBTeW1ib2xcIjtcclxuICBmb250LXNpemU6IDFyZW07XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5jb2wsIC5jb2wtMSwgLmNvbC0xMCwgLmNvbC0xMSwgLmNvbC0xMiwgLmNvbC0yLCAuY29sLTMsIC5jb2wtNCwgLmNvbC01LCAuY29sLTYsIC5jb2wtNywgLmNvbC04LCAuY29sLTksIC5jb2wtYXV0bywgLmNvbC1sZywgLmNvbC1sZy0xLCAuY29sLWxnLTEwLCAuY29sLWxnLTExLCAuY29sLWxnLTEyLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy1hdXRvLCAuY29sLW1kLCAuY29sLW1kLTEsIC5jb2wtbWQtMTAsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTIsIC5jb2wtbWQtMiwgLmNvbC1tZC0zLCAuY29sLW1kLTQsIC5jb2wtbWQtNSwgLmNvbC1tZC02LCAuY29sLW1kLTcsIC5jb2wtbWQtOCwgLmNvbC1tZC05LCAuY29sLW1kLWF1dG8sIC5jb2wtc20sIC5jb2wtc20tMSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiwgLmNvbC1zbS0yLCAuY29sLXNtLTMsIC5jb2wtc20tNCwgLmNvbC1zbS01LCAuY29sLXNtLTYsIC5jb2wtc20tNywgLmNvbC1zbS04LCAuY29sLXNtLTksIC5jb2wtc20tYXV0bywgLmNvbC14bCwgLmNvbC14bC0xLCAuY29sLXhsLTEwLCAuY29sLXhsLTExLCAuY29sLXhsLTEyLCAuY29sLXhsLTIsIC5jb2wteGwtMywgLmNvbC14bC00LCAuY29sLXhsLTUsIC5jb2wteGwtNiwgLmNvbC14bC03LCAuY29sLXhsLTgsIC5jb2wteGwtOSwgLmNvbC14bC1hdXRvIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZy1yaWdodDogNy41cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiA3LjVweDtcclxufVxyXG5cclxuLnNtYWxsLWJveCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcclxuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYigwIDAgMCAvIDEzJSksIDAgMXB4IDNweCByZ2IoMCAwIDAgLyAyMCUpO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uc21hbGwtYm94ID4gLnNtYWxsLWJveC1mb290ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjEpO1xyXG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44KTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAzcHggMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLmJnLWluZm8gPiBhIHtcclxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucm93IHtcclxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBtYXJnaW4tcmlnaHQ6IC03LjVweDtcclxuICBtYXJnaW4tbGVmdDogLTcuNXB4O1xyXG59XHJcblxyXG4uY29sLWxnLTMgLnNtYWxsLWJveCBoMywgLmNvbC1tZC0zIC5zbWFsbC1ib3ggaDMsIC5jb2wteGwtMyAuc21hbGwtYm94IGgzIHtcclxuICBmb250LXNpemU6IDIuMnJlbTtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMyB7XHJcbiAgZm9udC1zaXplOiAyLjJyZW07XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcclxuICB6LWluZGV4OiA1O1xyXG59XHJcblxyXG4uc21hbGwtYm94IHAge1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxufVxyXG5cclxucCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxucCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XHJcbiAgbWFyZ2luLWJsb2NrLWVuZDogMWVtO1xyXG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcclxuICBtYXJnaW4taW5saW5lLWVuZDogMHB4O1xyXG59XHJcblxyXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xyXG4gIHotaW5kZXg6IDU7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggcCB7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG59XHJcblxyXG5wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbiosIDo6YWZ0ZXIsIDo6YmVmb3JlIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5wIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFlbTtcclxuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XHJcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xyXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwcHg7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3g6aG92ZXIge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLmJnLXN1Y2Nlc3MsIC5iZy1zdWNjZXNzID4gYSB7XHJcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmlubmVyIHtcclxuICBoZWlnaHQ6IDEyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gIHBhZGRpbmctdG9wOiAxMHB4O1xyXG59XHJcblxyXG4uY29sb3Ige1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG5cclxuYnV0dG9uLmNsb3NlIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwLjI1cmVtO1xyXG4gIHJpZ2h0OiAxLjVyZW07XHJcbiAgei1pbmRleDogMTAwO1xyXG59XHJcbiIsImJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uY29sLCAuY29sLTEsIC5jb2wtMTAsIC5jb2wtMTEsIC5jb2wtMTIsIC5jb2wtMiwgLmNvbC0zLCAuY29sLTQsIC5jb2wtNSwgLmNvbC02LCAuY29sLTcsIC5jb2wtOCwgLmNvbC05LCAuY29sLWF1dG8sIC5jb2wtbGcsIC5jb2wtbGctMSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiwgLmNvbC1sZy0yLCAuY29sLWxnLTMsIC5jb2wtbGctNCwgLmNvbC1sZy01LCAuY29sLWxnLTYsIC5jb2wtbGctNywgLmNvbC1sZy04LCAuY29sLWxnLTksIC5jb2wtbGctYXV0bywgLmNvbC1tZCwgLmNvbC1tZC0xLCAuY29sLW1kLTEwLCAuY29sLW1kLTExLCAuY29sLW1kLTEyLCAuY29sLW1kLTIsIC5jb2wtbWQtMywgLmNvbC1tZC00LCAuY29sLW1kLTUsIC5jb2wtbWQtNiwgLmNvbC1tZC03LCAuY29sLW1kLTgsIC5jb2wtbWQtOSwgLmNvbC1tZC1hdXRvLCAuY29sLXNtLCAuY29sLXNtLTEsIC5jb2wtc20tMTAsIC5jb2wtc20tMTEsIC5jb2wtc20tMTIsIC5jb2wtc20tMiwgLmNvbC1zbS0zLCAuY29sLXNtLTQsIC5jb2wtc20tNSwgLmNvbC1zbS02LCAuY29sLXNtLTcsIC5jb2wtc20tOCwgLmNvbC1zbS05LCAuY29sLXNtLWF1dG8sIC5jb2wteGwsIC5jb2wteGwtMSwgLmNvbC14bC0xMCwgLmNvbC14bC0xMSwgLmNvbC14bC0xMiwgLmNvbC14bC0yLCAuY29sLXhsLTMsIC5jb2wteGwtNCwgLmNvbC14bC01LCAuY29sLXhsLTYsIC5jb2wteGwtNywgLmNvbC14bC04LCAuY29sLXhsLTksIC5jb2wteGwtYXV0byB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDcuNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDcuNXB4O1xufVxuXG4uc21hbGwtYm94IHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMTMpLCAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc21hbGwtYm94ID4gLnNtYWxsLWJveC1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5iZy1pbmZvID4gYSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5yb3cge1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC03LjVweDtcbiAgbWFyZ2luLWxlZnQ6IC03LjVweDtcbn1cblxuLmNvbC1sZy0zIC5zbWFsbC1ib3ggaDMsIC5jb2wtbWQtMyAuc21hbGwtYm94IGgzLCAuY29sLXhsLTMgLnNtYWxsLWJveCBoMyB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xufVxuXG4uc21hbGwtYm94IGgzIHtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAwIDEwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xuICB6LWluZGV4OiA1O1xufVxuXG4uc21hbGwtYm94IHAge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbnAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDFlbTtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xuICBtYXJnaW4taW5saW5lLWVuZDogMHB4O1xufVxuXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xuICB6LWluZGV4OiA1O1xufVxuXG4uc21hbGwtYm94IHAge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbnAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDFlbTtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xuICBtYXJnaW4taW5saW5lLWVuZDogMHB4O1xufVxuXG4uc21hbGwtYm94OmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYmctc3VjY2VzcywgLmJnLXN1Y2Nlc3MgPiBhIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLmlubmVyIHtcbiAgaGVpZ2h0OiAxMjBweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG4uY29sb3Ige1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxLjRyZW0gIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLmNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMjVyZW07XG4gIHJpZ2h0OiAxLjVyZW07XG4gIHotaW5kZXg6IDEwMDtcbn0iXX0= */\"","import { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { QRCodeComponent } from 'angular2-qrcode'\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ConfigurationService } from 'src/app/services/configuration.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { fadeInOut } from 'src/app/services/animations';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { MatDialog } from '@angular/material';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { WalletItem } from '../../models/WallteItem.model';\r\n\r\n\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class HomeComponent implements AfterViewInit {\r\n appLogo = require('../../assets/images/logos-02.png');\r\n walletlogo = require('../../assets/images/ballet.png');\r\n Booking: any\r\n IncomingLoad: any\r\n connected: any\r\n delivered: any\r\n OutForDelivery: any\r\n officename: any\r\n loadingIndicator = false;\r\n columns: any[] = [];\r\n editedawbbookingdetals: awbbookingdetals = new awbbookingdetals();\r\n rows: awbbookingdetals[] = [];\r\n bookingdata: any[] = [];\r\n addrow: awbbookingdetals[] = [];\r\n rowsCache: awbbookingdetals[] = [];\r\n timerReference: any;\r\n\r\n constructor(public dialog: MatDialog, private tally: TallyService, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService) {\r\n }\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss');\r\n walletBalance = \"0.00\"\r\n currency = '₹'\r\n items: WalletItem[] =[];\r\n ngOnInit() {\r\n\r\n this.loaddata();\r\n }\r\n ngOnDestroy() {\r\n clearInterval(this.timerReference);\r\n }\r\n loaddata() {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n // if (!isNullOrUndefined(logindata)) { \r\n this.officename = \"\";\r\n this.getdashboardcount();\r\n this.timerReference = setInterval(() => {\r\n logindata = this.localstre.getData(\"BaLoginData\");\r\n if (!isNullOrUndefined(logindata)) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'GetWalletBalance'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"UserId\"\r\n pr.PropertyValue = logindata[0].officeid;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (!isNullOrUndefined(result) && result.length > 0) {\r\n this.walletBalance = result[0].balance\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getWalletTRanscation'\r\n Parameter = new Array(1);\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"UserId\"\r\n pr.PropertyValue = logindata[0].officeid;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(wresult => {\r\n if (!isNullOrUndefined(wresult) && wresult.length > 0) {\r\n this.items = wresult;\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n\r\n }, 10000);\r\n //}\r\n }\r\n \r\n ngAfterViewInit() {\r\n\r\n }\r\n getdashboardcount() {\r\n this.transaction.Getdashboardlist(this.officename).subscribe(office => this.ongetdashboardcountssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n ongetdashboardcountssuccess(add: any) {\r\n if (add.length > 0) {\r\n /* if (!isNullOrUndefined(add) && !isNullOrUndefined(add.consName)) {*/\r\n this.Booking = add[0].booking;\r\n this.IncomingLoad = add[0].inCommingLoad;\r\n this.connected = add[0].connected;\r\n this.delivered = add[0].delivered;\r\n this.OutForDelivery = add[0].outForDelivery;\r\n // }\r\n }\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve Dashboard from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n fundetails(value: any) {\r\n var strvalue = value;\r\n\r\n if (strvalue == 'booking') {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 30, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'awbno', name: 'Awbno', width: 50 },\r\n { prop: 'BookDate', name: 'Book Date', width: 100 },\r\n { prop: 'origin', name: 'Origin', width: 100 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'Weight', name: 'weight', width: 70 },\r\n ];\r\n this.transaction.Getdashboarddetails(this.officename, strvalue).subscribe(office => this.ongetdashboarddetailsssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n\r\n else if (strvalue == 'inCommingLoad') {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 30, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'awbno', name: 'Awbno', width: 50 },\r\n { prop: 'BookDate', name: 'Incoming Date', width: 100 },\r\n { prop: 'origin', name: 'Origin', width: 100 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'Weight', name: 'weight', width: 70 },\r\n ];\r\n this.transaction.Getdashboarddetails(this.officename, strvalue).subscribe(office => this.ongetINScandashboarddetailsssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n } else if (strvalue == 'OutForDelivery') {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 30, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'ScanOfficeid', name: 'Scan Office Name', width: 100 },\r\n { prop: 'awbno', name: 'Awbno', width: 50 },\r\n { prop: 'drsno', name: 'DRS No.', width: 50 },\r\n { prop: 'BookDate', name: 'Out For Delivery Date', width: 100 },\r\n { prop: 'origin', name: 'Origin', width: 100 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'Weight', name: 'weight', width: 70 },\r\n ];\r\n this.transaction.Getdashboarddetails(this.officename, strvalue).subscribe(office => this.ongetOutForDeliverycandashboarddetailsssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n } else if (strvalue == 'Connected') {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 30, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'awbno', name: 'Awbno', width: 50 },\r\n { prop: 'BookDate', name: 'Connected Date', width: 100 },\r\n { prop: 'origin', name: 'Origin', width: 100 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'Weight', name: 'weight', width: 70 },\r\n ];\r\n this.transaction.Getdashboarddetails(this.officename, strvalue).subscribe(office => this.ongetdashboarddetailsssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n else if (strvalue == 'Delivered') {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 30, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'awbno', name: 'Awbno', width: 50 },\r\n { prop: 'BookDate', name: 'POD Date', width: 50 },\r\n { prop: 'ScanOfficeid', name: 'POD Office', width: 100 },\r\n { prop: 'origin', name: 'BA Office', width: 100 },\r\n { prop: 'Weight', name: 'weight', width: 70 },\r\n { prop: 'podWithApp', name: 'Mobile Pod', width: 70 },\r\n ];\r\n this.transaction.Getdashboarddetails(this.officename, strvalue).subscribe(office => this.ongetDelivereddashboarddetailsssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n }\r\n ongetdashboarddetailsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as awbbookingdetals[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as awbbookingdetals[];\r\n this.bookingdata = result;\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbbookingdetals();\r\n this.addrow[0].awbno = result[index].awbno;\r\n this.addrow[0].BookDate = result[index].awbInscanDate;\r\n this.addrow[0].origin = result[index].origin;\r\n this.addrow[0].destination = result[index].destPincode + \" - \" + result[index].destcity;\r\n this.addrow[0].Weight = result[index].awbWeight\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new awbbookingdetals();\r\n tmp.awbno = result[index].awbno;\r\n tmp.BookDate = result[index].awbInscanDate;\r\n tmp.origin = result[index].origin;\r\n tmp.destination = result[index].destPincode + \" - \" + result[index].destcity;\r\n tmp.Weight = result[index].awbWeight;\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n ongetINScandashboarddetailsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as awbbookingdetals[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as awbbookingdetals[];\r\n this.bookingdata = result;\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbbookingdetals();\r\n this.addrow[0].awbno = result[index].awbno;\r\n this.addrow[0].BookDate = result[index].awbInscanDate;\r\n this.addrow[0].origin = result[index].origin;\r\n this.addrow[0].destination = result[index].destination;\r\n this.addrow[0].Weight = result[index].awbWeight\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new awbbookingdetals();\r\n tmp.awbno = result[index].awbno;\r\n tmp.BookDate = result[index].awbInscanDate;\r\n tmp.origin = result[index].origin;\r\n tmp.destination = result[index].destination;\r\n tmp.Weight = result[index].awbWeight;\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n ongetOutForDeliverycandashboarddetailsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as awbbookingdetals[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as awbbookingdetals[];\r\n this.bookingdata = result;\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbbookingdetals();\r\n this.addrow[0].awbno = result[index].awbno;\r\n this.addrow[0].drsno = result[index].drsno;\r\n this.addrow[0].ScanOfficeid = result[index].scanOfficeid;\r\n this.addrow[0].BookDate = result[index].awbInscanDate;\r\n this.addrow[0].origin = result[index].origin;\r\n this.addrow[0].destination = result[index].destination;\r\n this.addrow[0].Weight = result[index].awbWeight\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new awbbookingdetals();\r\n tmp.awbno = result[index].awbno;\r\n tmp.drsno = result[index].drsno;\r\n tmp.ScanOfficeid = result[index].scanOfficeid;\r\n tmp.BookDate = result[index].awbInscanDate;\r\n tmp.origin = result[index].origin;\r\n tmp.destination = result[index].destination;\r\n tmp.Weight = result[index].awbWeight;\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n \r\n ongetDelivereddashboarddetailsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as awbbookingdetals[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as awbbookingdetals[];\r\n this.bookingdata = result;\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new awbbookingdetals();\r\n this.addrow[0].awbno = result[index].awbno;\r\n this.addrow[0].ScanOfficeid = result[index].podOfficeName;\r\n this.addrow[0].BookDate = result[index].awbInscanDate;\r\n this.addrow[0].origin = result[index].baofficename;\r\n this.addrow[0].Weight = result[index].awbWeight;\r\n this.addrow[0].podWithApp = result[index].podWithApp;\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new awbbookingdetals();\r\n tmp.awbno = result[index].awbno;\r\n tmp.ScanOfficeid = result[index].podOfficeName;\r\n tmp.BookDate = result[index].awbInscanDate;\r\n tmp.origin = result[index].baofficename;\r\n tmp.Weight = result[index].awbWeight;\r\n tmp.podWithApp = result[index].podWithApp;\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n showDialog(msg: string): void {\r\n this.alertService.showDialog(msg, DialogType.prompt, (val) => this.configure(true, val), () => this.configure(false));\r\n }\r\n\r\n configure(response: boolean, value?: string) {\r\n\r\n if (response && !isNaN(parseFloat(value)) && parseFloat(value) > 0) {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n\r\n var data = new PaytmRequest();\r\n data.customer = new paytmCustomerMaster();\r\n data.customer.address1 = logindata[0].city;\r\n data.customer.address1 = logindata[0].state;\r\n data.customer.city = logindata[0].city;\r\n data.customer.customerId = logindata[0].officeid;\r\n data.customer.customerName = logindata[0].officename;\r\n data.customer.emailId = logindata[0].emailId;\r\n data.customer.mobileNo = logindata[0].mobileno;\r\n data.customer.pinCode = logindata[0].pincode;\r\n data.txnAmount = parseFloat(value);\r\n var cardata: CartData[] = [];\r\n data.kart = cardata;\r\n \r\n this.tally.PostPaytmToken(data).subscribe(result => {\r\n if (!isNullOrUndefined(result.body.txnToken)){\r\n this.localstre.saveSessionData(result, \"ptoken\");\r\n this.localstre.saveSessionData(data, \"rqdata\");\r\n\r\n this.route.navigate(['/paytmcheckout'], {\r\n\r\n });// \r\n }\r\n else {\r\n this.alertService.showDialog(\"Error in paytm\");\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n \r\n } else {\r\n this.alertService.showMessage('Paytm Wallet', 'Operation cancelled by user', MessageSeverity.default);\r\n }\r\n }\r\n}\r\n\r\nexport class awbbookingdetals {\r\n\r\n public awbno: string\r\n public drsno: string\r\n public ScanOfficeid: string\r\n public fromdate: string\r\n public todate: string\r\n public BookDate: string\r\n public origin: string\r\n public destination: string\r\n public Weight: string\r\n public podWithApp:string\r\n}\r\nexport class PaytmRequest {\r\n customer: paytmCustomerMaster;\r\n kart: CartData[];\r\n txnAmount: number;\r\n orderno: string;\r\n}\r\n\r\nexport class CartData {\r\n itemId: string;\r\n emailId: string;\r\n itemCategoryId: string;\r\n itemCode: string;\r\n itemName: string;\r\n itemImage: string;\r\n qunaity: number;\r\n weight: number;\r\n price: number;\r\n amount: number;\r\n pieces: number;\r\n kartId: string;\r\n customerId: string;\r\n createdOn: string;\r\n upDatedOn: string;\r\n}\r\n\r\nexport class paytmCustomerMaster {\r\n customerId: string;\r\n customerName: string;\r\n mobileNo: string;\r\n emailId: string;\r\n address1: string;\r\n address2: string;\r\n pinCode: string;\r\n createdOn: string;\r\n updatedOn: string;\r\n city: string;\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvaW5zY2FuL2luc2Nhbi5jb21wb25lbnQuc2NzcyJ9 */\"","import { DatePipe } from '@angular/common';\r\nimport { AfterViewInit, ChangeDetectorRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { map, share } from 'rxjs/operators';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Guid } from 'guid-typescript';\r\nimport { ValueConverter } from '@angular/compiler/src/render3/view/template';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { ConfirmDialogMpsModels, DialogMpsComponent, MPStransaction } from '../controls/dialog-mps.component';\r\nimport { MatDialog, MatRadioChange } from '@angular/material';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-inscan',\r\n templateUrl: './inscan.component.html',\r\n styleUrls: ['./inscan.component.scss']\r\n})\r\nexport class InscanComponent implements OnInit,AfterViewInit {\r\n\r\n editedinScan: InScan = new InScan();\r\n columns: any[] = [];\r\n arrcust: any[] = [];\r\n rows: InScan[] = [];\r\n rowsCache: InScan[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n arrhub: any[] = [];\r\n arrhub2: any[] = [];\r\n displayedFirstImage;\r\n displayedSecondImage;\r\n Badata: any[] = [];\r\n msg = ''\r\n OpAwbSaletype = '0';\r\n datepipe: any;\r\n bookingdata: InscanResponse = new InscanResponse();\r\n disablecontrol: boolean=true;\r\n\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss');\r\n /* Fields Of Radiop */\r\n opEdlOda: string = \"0\";\r\n OpSaletype: string = \"0\";\r\n opServiceType: string = \"0\";\r\n opProduct: string = \"0\";\r\n opvas: string = \"0\";\r\n opcrtr: string = \"0\";\r\n opPayMode = \"1\";\r\n dialogRef: any;\r\n AwbMode: string;\r\n\r\n\r\n constructor(public dialog: MatDialog,private ref: ChangeDetectorRef, private transaction: TransactionService, private localstre: LocalStoreManager, private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n\r\n time = new Date();\r\n rxTime = new Date();\r\n intervalId;\r\n subscription: Subscription;\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'stickerNo', name: 'Sticker No', width: 100 },\r\n { prop: 'awbNo', name: 'Awb No', width: 100 },\r\n { prop: 'clientCode', name: 'Client Code', width: 100 },\r\n { prop: 'destpinCode', name: 'dest Pin-Code', width: 100 },\r\n { prop: 'awbWeight', name: 'Awb Weight', width: 100 },\r\n { prop: 'pieces', name: 'Pieces', width: 100 },\r\n { prop: 'length', name: 'Length', width: 100 },\r\n { prop: 'pinCode', name: 'Pin-Code', width: 100 },\r\n { prop: 'width', name: 'Width', width: 50 },\r\n { prop: 'height', name: 'Height', width: 50 },\r\n { prop: 'awbValue', name: 'Awb Value', width: 50 },\r\n { prop: 'fovRisk', name: 'Fov Risk', width: 50 },\r\n { prop: 'awbMode', name: 'aAb Mode', width: 50 },\r\n ];\r\n this.Badata = this.localstre.getData(\"BaLoginData\");\r\n this.editedinScan = new InScan();\r\n this.intervalId = setInterval(() => {\r\n this.time = new Date();\r\n }, 1000);\r\n\r\n this.subscription = timer(0, 1000)\r\n .pipe(\r\n map(() => new Date()),\r\n share()\r\n )\r\n .subscribe(time => {\r\n this.rxTime = time;\r\n });\r\n }\r\n ngAfterViewInit() {\r\n if (!isNullOrUndefined(this.Badata)) {\r\n this.editedinScan.ro = this.Badata[0].controloffice;\r\n this.editedinScan.hub = this.Badata[0].officename;\r\n\r\n }\r\n else {\r\n this.editedinScan.ro = this.localstre.getData(\"User_Office\");\r\n this.editedinScan.hub = this.localstre.getData(\"User_Office\");\r\n }\r\n \r\n this.editedinScan.NatureofService = 'Schedule';\r\n (document.getElementById(\"awbNo\")).focus();\r\n}\r\n ngOnDestroy() {\r\n clearInterval(this.intervalId);\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : 'userid';\r\n }\r\n confirmDialog_MPS(mes: any, pieces: any, unit: any, mps: MPStransaction[], callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogMpsModels(\"MPS\", message, pieces, unit, true, '', mps,this.AwbMode, null);\r\n this.dialogRef = this.dialog.open(DialogMpsComponent, {\r\n disableClose: true,\r\n minWidth: \"800px\",\r\n minHeight: \"400px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n MultiPiecesRedirect() {\r\n if (parseInt(this.editedinScan.pieces)>1){\r\n var awbno = (document.getElementById('awbNo')).value\r\n this.transaction.GetMpsList(awbno).subscribe(Result => { this.OngetsuccessMPs(Result) })\r\n }\r\n }\r\n OngetsuccessMPs(result: any) {\r\n var row: MPStransaction[] = []\r\n row = result;\r\n var mes = this.editedinScan.pieces + \",2\"\r\n this.confirmDialog_MPS(mes, this.editedinScan.pieces, \"2\", row, this.OngetsuccessMPs)\r\n }\r\n OnMPSResultofmodel(dialogResult: any) {\r\n if (dialogResult[0].IsError == true) {\r\n alert(\"Error In Mps\")\r\n if (dialogResult[0].IsCancel == false) {\r\n this.confirmDialog_MPS(this.editedinScan.pieces + \",\" + \"2\", this.editedinScan.pieces, \"2\", this.editedinScan.Mps, \"\")\r\n }\r\n //this.confirmDialog_MPS(this.editedawkbooking.pieces + \",\" + this.Unit, this.OnMPSResultofmodel)\r\n //this.isSaving = true;\r\n //this.transaction.postGenawbno(this.editedawkbooking.Booktype, this.editedawkbooking.awbMode + \" \" + this.editedawkbooking.ProductName, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n //this.router.navigate(['/awbprint'], { queryParams: { awbno: this.editedawkbooking.awbNo } }); // define your component where you want to go\r\n return;\r\n }\r\n else {\r\n var tmpweight = 0\r\n for (let i = 0; i < dialogResult.length; i++) {\r\n tmpweight += parseFloat(dialogResult[i].weight)\r\n\r\n }\r\n //if (this.Unit == \"1\") {\r\n // tmpweight = parseFloat((tmpweight / 1000).toFixed(3))\r\n\r\n //}\r\n tmpweight = parseFloat(tmpweight.toFixed(3))\r\n //if ((tmpweight) < parseFloat(this.editedinScan.awbWeight)) {\r\n // this.confirmDialog_MPS(this.editedinScan.pieces + \",\" + \"2\", this.editedinScan.pieces, \"2\", this.editedinScan.Mps, \"\")\r\n // return;\r\n //}\r\n this.editedinScan.Mps = dialogResult;\r\n }\r\n }\r\n\r\n getHubList($event) {\r\n this.GetHubMaster();\r\n this.arrhub2 = this.arrhub\r\n $('#hub').autocomplete({\r\n source: this.arrhub2,\r\n delay: 500\r\n });\r\n }\r\n GetHubMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'hub'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(hubs: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"ro\") {\r\n this.arrhub = hubs;\r\n }\r\n if (listof == \"hub\") {\r\n this.arrhub = hubs;\r\n }\r\n }\r\n SetrohubAnd($event) {\r\n let hubro: string = (document.getElementById('hub')).value;\r\n if (hubro.indexOf('-') > 0) {\r\n (document.getElementById('hub')).value = hubro.substring(0, hubro.indexOf('-') - 1);\r\n (document.getElementById('ro')).value = hubro.substring(hubro.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n\r\n\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n LoadSucessdata(inscaning: InScan[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n inscaning.forEach((prod, index, inscaning) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...inscaning];\r\n this.rows = inscaning;\r\n }\r\n GetCustMaster() {\r\n this.ServiceMaster.getcustlist(this.Badata[0].officeid).subscribe(result => this.onDatagetcustSuccessful(result), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetcustSuccessful(states: string[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.arrcust = states;\r\n\r\n\r\n }\r\n SetcodeAndname($event) {\r\n let custcodename: string = (document.getElementById('clientCode')).value;\r\n if (custcodename.indexOf('-') > 0) {\r\n (document.getElementById('clientName')).value = custcodename.substring(0, custcodename.indexOf('-') - 1);\r\n (document.getElementById('clientCode')).value = custcodename.substring(custcodename.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n getcustList($event) {\r\n this.GetCustMaster();\r\n $('#clientCode').autocomplete({\r\n source: this.arrcust,\r\n delay: 50\r\n });\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n Insertinscaning() {\r\n if (this.userId != '090965c0-f37b-4acc-aeca-7bad87db769e' && this.userId != 'ea57450f-859c-4dbe-bf01-edee89a04c7d') {\r\n\r\n if (!isNullOrUndefined(this.bookingdata.billno) && this.bookingdata.billno !== undefined && this.bookingdata.billno !== '') {\r\n this.showErrorAlert(\"Bill Exist\", \"Bill no \" + this.bookingdata.billno + \" is already generated for this awbno cannot edit\");\r\n return;\r\n }\r\n }\r\n if (parseFloat(this.editedinScan.awbWeight) <= 0) {\r\n this.showErrorAlert(\"Awb Weight\", \"Invalid Awb Weight\")\r\n return;\r\n }\r\n var strvalue = this.editedinScan;\r\n var SaveValue: AwbConnection = new AwbConnection();\r\n this.calvolwt();\r\n SaveValue.Awbno = this.editedinScan.awbNo;\r\n SaveValue.AwbChargedWeight = 0;\r\n SaveValue.AwbContent = this.editedinScan.awbContent;\r\n SaveValue.AwbInscanDate = new Date();\r\n SaveValue.AwbInscanId = Guid.create().toString();\r\n SaveValue.AwbMode = this.editedinScan.awbMode;\r\n SaveValue.AwbWeight = parseFloat(this.editedinScan.awbWeight);\r\n SaveValue.BookingOfficeid = this.bookingdata.bookingOfficeid;\r\n SaveValue.ClientCode = $('#clientCode').val();//.this.editedinScan.clientCode;\r\n SaveValue.ConsignmentValue = isNaN(parseFloat(this.editedinScan.awbValue)) ? 0 : parseFloat(this.editedinScan.awbValue)\r\n SaveValue.DestPincode = this.editedinScan.destpinCode;\r\n SaveValue.EwayBillno = '';\r\n SaveValue.FovRisk = this.opcrtr == \"1\" ? \"Owner\" : this.opcrtr == \"2\" ? \"Carrier\" : \"\"\r\n SaveValue.Height = isNaN(parseInt(this.editedinScan.height)) ? 0 : parseInt(this.editedinScan.height);\r\n SaveValue.width = isNaN(parseInt(this.editedinScan.width)) ? 0 : parseInt(this.editedinScan.width);\r\n SaveValue.Lenth = isNaN(parseInt(this.editedinScan.length)) ? 0 : parseInt(this.editedinScan.length);\r\n SaveValue.InscanOfficeid = Guid.EMPTY.toString();//this.editedinScan.hub;\r\n SaveValue.IsCOD = this.opvas == \"2\" ? true : false\r\n SaveValue.IsDoD = this.opvas == \"1\" ? true : false\r\n SaveValue.IsODAPincode = this.opEdlOda == \"1\" || this.opEdlOda == \"2\" ? true : false;\r\n SaveValue.IsEDLPincode = this.opEdlOda == \"3\" ? true : false;\r\n SaveValue.IsTopay = this.opPayMode == \"3\" ? true : false;\r\n SaveValue.PaymentMode = this.opPayMode == \"1\" ? 'CASH' : this.opPayMode == \"2\" ? 'CREDIT' : 'TOPAY';\r\n SaveValue.Pieces = isNaN(parseInt(this.editedinScan.pieces)) ? 0 : parseInt(this.editedinScan.pieces);\r\n SaveValue.ProductMasterId = this.bookingdata.productMasterId;\r\n SaveValue.SaleType = this.OpSaletype == \"1\" ? \"Kart\" : \"Normal\"\r\n SaveValue.ScanType = 'Connection'\r\n SaveValue.StickerNo = '';\r\n SaveValue.volumetricWeight = isNaN(parseFloat(this.editedinScan.Volumetricweight)) ? 0 : parseFloat(this.editedinScan.Volumetricweight);\r\n SaveValue.IncanofficeName = this.editedinScan.hub;\r\n SaveValue.AwbMode = this.AwbMode == \"1\" ? \"Air\" : this.AwbMode == \"2\" ? \"Surface\" : \"Train\";\r\n SaveValue.remarks = this.editedinScan.remarks;\r\n SaveValue.productname = this.bookingdata.bookingFor;\r\n SaveValue.Mps = this.editedinScan.Mps;\r\n\r\n if (this.OpSaletype == \"2\" && this.OpAwbSaletype == \"3\") {\r\n this.alertService.showStickyMessage(\"Edit Booking\", \"Invalid saletype\", MessageSeverity.error)\r\n return;\r\n }\r\n SaveValue.SaleType = this.OpAwbSaletype == \"1\" ? 'CASH' : this.OpAwbSaletype == \"2\" ? 'DP' : this.OpAwbSaletype == \"3\" ? 'Kart' : '';\r\n if (SaveValue.SaleType = '') {\r\n this.alertService.showStickyMessage(\"Edit Booking\", \"Invalid saletype\", MessageSeverity.error)\r\n return;\r\n }\r\n SaveValue.bookingType = this.OpSaletype == \"1\" ? \"Kart\" : \"Normal\"\r\n // this.isSaving = true;\r\n //this.alertService.startLoadingMessage('Saving changes...');\r\n this.transaction.POSTawbscan(\"Connection\", SaveValue).subscribe(inscaning => this.saveSuccessHelper(inscaning), error => this.saveFailedHelper(error));\r\n //this.clear();\r\n\r\n }\r\n RbSelectionchange(mrChange: MatRadioChange) {\r\n\r\n \r\n if (mrChange.value == '2') {\r\n (document.getElementById('clientCode')).value = '';\r\n (document.getElementById('clientCode')).disabled = false;\r\n (document.getElementById('ClientName')).value = '';\r\n\r\n }\r\n else\r\n if (mrChange.value == '3') {\r\n (document.getElementById('clientCode')).value = 'Kart';\r\n (document.getElementById('clientCode')).disabled = true;\r\n (document.getElementById('ClientName')).value = 'Kart Sale';\r\n }\r\n else {\r\n (document.getElementById('clientCode')).value = 'Retail';\r\n (document.getElementById('clientCode')).disabled = true;\r\n (document.getElementById('ClientName')).value = 'N.A';\r\n this.editedinScan.clientName = 'N.A';\r\n\r\n\r\n }\r\n }\r\n private saveSuccessHelper(inscans?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `InScan \\\"${this.editedinScan.awbNo + \"-\" + this.editedinScan.awbValue}\\\" was created successfully`, MessageSeverity.success);\r\n //if (this.rows.length == 0) {\r\n // this.rows[0] = inscans[0];\r\n // this.rowsCache[0] = inscans[0];\r\n //}\r\n //else {\r\n // this.rows.push(inscans[0]);\r\n // this.rowsCache.push(inscans[0]);\r\n //}\r\n //this.rows.forEach((state, index, citys) => {\r\n // (state as any).index = index + 1;\r\n //});\r\n //this.rowsCache.forEach((state, index, citys) => {\r\n // (state as any).index = index + 1;\r\n //});\r\n //this.rowsCache = [...this.rowsCache]\r\n //this.rows = [...this.rows]\r\n this.editedinScan = new InScan()\r\n if(!isNullOrUndefined(this.Badata)) {\r\n this.editedinScan.ro = this.Badata[0].controloffice;\r\n this.editedinScan.hub = this.Badata[0].officename;\r\n\r\n }\r\n else {\r\n this.editedinScan.ro = this.localstre.getData(\"User_Office\");\r\n this.editedinScan.hub = this.localstre.getData(\"User_Office\");\r\n } \r\n this.editedinScan.NatureofService = 'Schedule';\r\n (document.getElementById(\"awbNo\")).focus();\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.awbMode, r.awbNo));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n addinscandetails(event: any) {\r\n var tmp:string = event.target.value;\r\n if (tmp.length > 0) {\r\n this.transaction.getAwbbookingDetail(event.target.value).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n onGetSucessAwbbookingData(result: any) {\r\n if (result.length > 0) {\r\n this.bookingdata = result[0];\r\n \r\n this.editedinScan.awbContent = this.bookingdata.awbContent;\r\n this.editedinScan.awbMode = this.bookingdata.awbMode;\r\n this.editedinScan.awbNo = this.bookingdata.awbno;\r\n this.editedinScan.awbValue = this.bookingdata.consignmentValue;\r\n this.editedinScan.clientCode = this.bookingdata.clientCode;\r\n this.editedinScan.clientName = this.bookingdata.clientName;\r\n this.editedinScan.CodDodAmount = this.bookingdata.codDodamount;\r\n this.editedinScan.destination = this.bookingdata.destCity;\r\n this.editedinScan.destpinCode = this.bookingdata.destPincode;\r\n this.editedinScan.fovRisk = this.bookingdata.fovRisk;\r\n this.editedinScan.height = this.bookingdata.height;\r\n this.editedinScan.length = this.bookingdata.lenth;\r\n this.editedinScan.width = this.bookingdata.width;\r\n this.editedinScan.Volumetricweight = this.bookingdata.volumetricWeight;\r\n this.opEdlOda = this.bookingdata.isEDLPincode ? \"3\" : this.bookingdata.isODAPincode ? \"1\" : \"0\"\r\n this.OpSaletype = this.bookingdata.productType == \"Normal\" ? \"2\" : \"1\";\r\n this.OpAwbSaletype = this.bookingdata.saleType.toUpperCase() == \"CASH\" ? \"1\" : this.bookingdata.saleType == \"DP\" ? \"2\" : this.bookingdata.saleType == \"Kart\" ? \"3\" :\"0\" ;\r\n this.AwbMode = this.bookingdata.awbMode == \"Air\" ? \"1\" : this.bookingdata.awbMode == \"Surface\" ? \"2\" : this.bookingdata.saleType == \"Train\" ? \"3\" : \"0\";\r\n\r\n this.opServiceType = this.bookingdata.bookingFor.includes(\"International\") ? \"3\" : this.bookingdata.bookingFor.includes(\"Priority\") ? \"1\" : \"2\";\r\n this.opProduct = this.bookingdata.bookingFor.includes(\"Document\") || this.bookingdata.bookingFor.includes(\"Dox\") ? \"1\" : \"2\";\r\n this.opvas = this.bookingdata.isDoD ? \"1\" : this.bookingdata.isCOD ? \"2\" : \"0\";\r\n this.opcrtr = this.bookingdata.fovRisk == \"Owner\" ? \"1\" : this.bookingdata.fovRisk == \"Carrier\" ? \"2\" : \"0\";\r\n this.opPayMode = this.bookingdata.saleType == 'CASH' ? \"1\" : this.bookingdata.isTopay ? \"2\" : \"3\"\r\n if (this.bookingdata.saleType == 'DP') {\r\n $('#clientCode').prop('disabled', false);\r\n }\r\n else {\r\n $('#clientCode').prop('disabled', true);\r\n }\r\n \r\n this.editedinScan.origin = this.bookingdata.orgCity;\r\n this.editedinScan.bacode = this.bookingdata.officeCode;\r\n this.editedinScan.baname = this.bookingdata.officename;\r\n this.editedinScan.pieces = this.bookingdata.pieces;\r\n this.editedinScan.awbWeight = this.bookingdata.awbWeight;\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n clear() {\r\n debugger\r\n var tmp = new InScan();\r\n tmp.awbContent = \"\";\r\n tmp.length = \"\";\r\n tmp.width = \"\";\r\n tmp.height = \"\";\r\n tmp.clientCode = \"\";\r\n tmp.destpinCode = \"\";\r\n tmp.awbWeight = \"\";\r\n tmp.pieces = \"\";\r\n tmp.awbValue = \"\";\r\n tmp.fovRisk = \"\";\r\n tmp.awbMode = \"\";\r\n tmp.type = \"\";\r\n tmp.Volumetricweight = \"\"\r\n tmp.bacode = ''\r\n tmp.baname = ''\r\n this.editedinScan = tmp;\r\n }\r\n calvolwt() {\r\n var volwt = ''\r\n if (this.editedinScan.awbMode == \"Air\") {\r\n volwt = ((parseFloat(this.editedinScan.length) * parseFloat(this.editedinScan.width) * parseFloat(this.editedinScan.height)) / 5000).toString();\r\n }\r\n if (this.editedinScan.awbMode == \"Surface\") {\r\n volwt = ((parseFloat(this.editedinScan.length) * parseFloat(this.editedinScan.width) * parseFloat(this.editedinScan.height)) / 4750).toString();\r\n }\r\n this.editedinScan.Volumetricweight = isNaN(parseFloat(volwt)) ? \"0\" : volwt;\r\n (document.getElementById('Volumetricweight')).value = this.editedinScan.Volumetricweight;\r\n }\r\n}\r\nexport class InScan {\r\n constructor(stickerNo?: string, awbNo?: string, clientCode?: string, destpinCode?: string, awbWeight?: string\r\n , pieces?: string, length?: string, width?: string, height?: string, awbValue?: string,\r\n fovRisk?: string, type?: string, awbMode?: string, awbContent?: string, hub?: string, ro?: string\r\n , date?: string, time?: string, typekart?: string, services?: string, connectionby?: string, receivedby?: string,remark?:string) {\r\n\r\n this.stickerNo = stickerNo;\r\n this.awbNo = awbNo;\r\n this.clientCode = clientCode;\r\n this.destpinCode = destpinCode;\r\n this.awbWeight = awbWeight;\r\n this.pieces = pieces;\r\n this.length = length;\r\n this.width = width;\r\n this.height = height;\r\n this.awbValue = awbValue;\r\n this.fovRisk = fovRisk;\r\n this.type = type;\r\n this.awbMode = awbMode;\r\n this.awbContent = awbContent;\r\n this.hub = hub;\r\n this.ro = ro;\r\n this.date = date;\r\n this.time = time;\r\n this.typekart = typekart;\r\n this.services = services;\r\n this.connectionby = connectionby;\r\n this.receivedby = receivedby;\r\n this.remarks = remark;\r\n }\r\n public hub: string;\r\n public ro: string;\r\n public date: string;\r\n public time: string;\r\n public typekart: string;\r\n public services: string;\r\n public connectionby: string;\r\n public receivedby: string;\r\n public origin: string;\r\n public destination: string;\r\n public stickerNo: string;\r\n public awbNo: string;\r\n public clientCode: string;\r\n public destpinCode: string;\r\n public awbWeight: string;\r\n public pieces: string;\r\n public length: string;\r\n public width: string;\r\n public height: string;\r\n public awbValue: string;\r\n public fovRisk: string;\r\n public type: string;\r\n public awbMode: string;\r\n public awbContent: string;\r\n public CodDodAmount: string;\r\n public clientName: string;\r\n public baname: string;\r\n public bacode: string;\r\n public Volumetricweight: string;\r\n public NatureofService: string;\r\n public remarks: string;\r\n public Mps: MPStransaction[];\r\n \r\n\r\n}\r\nexport class InscanResponse {\r\n public awbChargedWeight: string;\r\n public awbContent:string\r\n public awbInscanDate:string\r\n public awbInscanId:string\r\n public awbMode:string\r\n public awbno:string\r\n public awbWeight:string\r\n public bookingFor:string\r\n public bookingOfficeid:string\r\n public clientCode:string\r\n public codDodamount:string\r\n public connectionId:string\r\n public consignmentValue:string\r\n public createdBy:string\r\n public createdOn:string\r\n public destPincode:string\r\n public ewayBillno:string\r\n public fovRisk: string\r\n public height:string\r\n public isCOD:boolean\r\n public isconnected:boolean\r\n public isDoD:boolean\r\n public isEDLPincode:boolean\r\n public isODAPincode:boolean\r\n public isTopay:boolean\r\n public lenth:string\r\n public officeCode: string\r\n public officename:string\r\n public paymentMode:string\r\n public pieces:string\r\n public pmode:string\r\n public productCode:string\r\n public productMasterId:string\r\n public productType:string\r\n public saleType:string\r\n public stickerNo:string\r\n public upDatedBy:string\r\n public updatedOn:string\r\n public volumetricWeight:string\r\n public volwt:string\r\n public width: string\r\n public clientName: string\r\n public orgCity: string\r\n public destCity: string\r\n public hsWieght: string\r\n public totalAmount: string;\r\n public consMobileno: string;\r\n public topayamt: string;\r\n public prodService: string;\r\n public billno: string;\r\n}\r\nexport class AwbConnection {\r\n public AwbInscanId: any;\r\n public AwbInscanDate: Date;\r\n public BookingOfficeid: any;\r\n public InscanOfficeid: any;\r\n public Awbno: string;\r\n public StickerNo: string;\r\n public ProductMasterId: any;\r\n public SaleType: string;\r\n public Pieces: number;\r\n public Lenth: number;\r\n public width: number;\r\n public Height: number;\r\n public AwbWeight: number;\r\n public volumetricWeight: number;\r\n public AwbChargedWeight: number;\r\n public DestPincode: string;\r\n public AwbContent: string;\r\n public IsEDLPincode: boolean;\r\n public IsODAPincode: boolean;\r\n public FovRisk: string;\r\n public IsTopay: boolean;\r\n public IsCOD: boolean;\r\n public IsDoD: boolean;\r\n public AwbMode: string;\r\n public PaymentMode: string;\r\n public ConsignmentValue: number;\r\n public EwayBillno: string;\r\n public ClientCode: string;\r\n public CreatedBy: string;\r\n public UpDatedBy: string;\r\n public CreatedOn: Date;\r\n public UpdatedOn: Date;\r\n public ScanType: string;\r\n public IncanofficeName: string;\r\n public remarks: string;\r\n public bookingType: string;\r\n public productname: string;\r\n public Mps: MPStransaction[];\r\n\r\n constructor() {}\r\n }\r\n\r\n","export default \"fieldset {\\n background-color: #eeeeee;\\n}\\n\\nlegend {\\n background-color: #142c4c;\\n color: white;\\n padding: 5px 10px;\\n}\\n\\nfieldset {\\n display: block;\\n margin-left: 2px;\\n margin-right: 2px;\\n padding-top: 0.35em;\\n padding-bottom: 0.625em;\\n padding-left: 0.75em;\\n padding-right: 0.75em;\\n border: 2px groove internal value;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9pdGVtaXNzdWUvRDpcXE9uZXhXZWJcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xcaXRlbWlzc3VlXFxpdGVtaXNzdWUuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvaXRlbWlzc3VlL2l0ZW1pc3N1ZS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHlCQUFBO0FDQ0Y7O0FERUE7RUFDRSx5QkFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtBQ0NGOztBREVBO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0Esb0JBQUE7RUFDQSxxQkFBQTtFQUNBLGlDQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2l0ZW1pc3N1ZS9pdGVtaXNzdWUuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJmaWVsZHNldCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcclxufVxyXG5cclxubGVnZW5kIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYzRjO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxuICBwYWRkaW5nOiA1cHggMTBweDtcclxufVxyXG5cclxuZmllbGRzZXQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XHJcbiAgcGFkZGluZy10b3A6IDAuMzVlbTtcclxuICBwYWRkaW5nLWJvdHRvbTogMC42MjVlbTtcclxuICBwYWRkaW5nLWxlZnQ6IDAuNzVlbTtcclxuICBwYWRkaW5nLXJpZ2h0OiAwLjc1ZW07XHJcbiAgYm9yZGVyOiAycHggZ3Jvb3ZlIChpbnRlcm5hbCB2YWx1ZSk7XHJcbn1cclxuIiwiZmllbGRzZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xufVxuXG5sZWdlbmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYzRjO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xufVxuXG5maWVsZHNldCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgcGFkZGluZy10b3A6IDAuMzVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1ZW07XG4gIHBhZGRpbmctbGVmdDogMC43NWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1ZW07XG4gIGJvcmRlcjogMnB4IGdyb292ZSBpbnRlcm5hbCB2YWx1ZTtcbn0iXX0= */\"","import { DatePipe } from '@angular/common';\r\nimport { error } from '@angular/compiler/src/util';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Guid } from 'guid-typescript';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { from } from 'rxjs';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-itemissue',\r\n templateUrl: './itemissue.component.html',\r\n styleUrls: ['./itemissue.component.scss']\r\n})\r\nexport class ItemissueComponent implements OnInit {\r\n\r\n editedItemIssue: itemIssue = new itemIssue();\r\n columns: any[] = [];\r\n rows: itemIssue[] = [];\r\n \r\n rowsCache: itemIssue[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditMode = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n pipe = new DatePipe('en-US');\r\n _Balogindata: any[] = [];\r\n\r\n constructor(private configurations: ConfigurationService, private localstre: LocalStoreManager, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n actionsTemplate: TemplateRef;\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'ba', name: 'B.A', width: 100 },\r\n { prop: 'date', name: 'Date', width: 100 },\r\n { prop: 'item', name: 'Item', width: 100 },\r\n { prop: 'unit', name: 'Unit', width: 100 },\r\n { prop: 'qty', name: 'Qty', width: 100 },\r\n { prop: 'rate', name: 'Rate', width: 100 },\r\n { prop: 'amount', name: 'Amount', width: 100 },\r\n ];\r\n this._Balogindata = this.localstre.getData(\"BaLoginData\");\r\n this.loaddata();\r\n\r\n //this.loaddata();\r\n }\r\n getbaList($event) {\r\n this.Getba();\r\n this.arrcity2 = this.arrcity\r\n $('#ba').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n Getba() {\r\n this.ServiceMaster.getHelplist(\"ALLOFFICE\").subscribe(result => this.onDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(ba: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"ba\") {\r\n this.arrcity = ba;\r\n }\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_GetItemIssue'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName =\"Officename\"\r\n pr.PropertyValue = this._Balogindata[0].officename;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n //this.Getba();\r\n }\r\n LoadSucessdata(items: any[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.rows = [];\r\n \r\n let objit = new itemIssue();\r\n for (let i = 0; i < items.length; i++) {\r\n \r\n if (this.rows.length == 0) {\r\n this.rows[0] = new itemIssue();\r\n this.rows[0].from = items[i].fromOffice;\r\n this.rows[0].date = items[i].date;\r\n this.rows[0].ba = items[i].toOffice;\r\n this.rows[0].item = items[i].item;\r\n this.rows[0].qty = items[i].quantity;\r\n this.rows[0].unit = items[i].unit;\r\n this.rows[0].rate = items[i].rate;\r\n this.rows[0].amount = items[i].amount;\r\n this.rows[0].fromno = items[i].fromNo;\r\n this.rows[0].tono = items[i].toNo;\r\n\r\n }\r\n else {\r\n objit = new itemIssue();\r\n objit.date = items[i].date\r\n objit.from = items[i].fromOffice;\r\n objit.ba = items[i].toOffice;\r\n objit.item = items[i].item;\r\n objit.qty = items[i].quantity;\r\n objit.unit = items[i].unit;\r\n objit.rate = items[i].rate;\r\n objit.amount = items[i].amount;\r\n objit.fromno = items[i].fromNo;\r\n objit.tono = items[i].toNo;\r\n this.rows.push(objit);\r\n }\r\n \r\n }\r\n this.rows.forEach((pro, ind, ar)=> {\r\n (pro as any).index = ind + 1;\r\n });\r\n this.rowsCache = [...this.rows];\r\n this.rows = [...this.rows];\r\n //this.rows = items;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve ItemIssue from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertItemIssue() {\r\n debugger;\r\n if (this.editedItemIssue.ba == '' || this.editedItemIssue.date == '') {\r\n this.alertService.showMessage(\"Failure\", \"Please Select Correct Value\", MessageSeverity.error);\r\n return false;\r\n }\r\n \r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_SaveItemIssue'\r\n let Parameter = new Array(13);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\";\r\n pr.PropertyName = \"ItemIssuedid\";\r\n pr.PropertyValue = Guid.raw()\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"FromOffice\";\r\n pr.PropertyValue = this.editedItemIssue.from;\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"ToOffice\";\r\n pr.PropertyValue = this.editedItemIssue.ba;\r\n Parameter[2] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Item\";\r\n pr.PropertyValue = this.editedItemIssue.item ;\r\n Parameter[3] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Decimal\";\r\n pr.PropertyName = \"Quantity\";\r\n pr.PropertyValue = this.editedItemIssue.qty;\r\n Parameter[4] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Decimal\";\r\n pr.PropertyName = \"Rate\";\r\n pr.PropertyValue = this.editedItemIssue.rate;\r\n Parameter[5] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Decimal\";\r\n pr.PropertyName = \"Amount\";\r\n pr.PropertyValue = this.editedItemIssue.amount;\r\n Parameter[6] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"FromNo\";\r\n pr.PropertyValue = this.editedItemIssue.fromno;\r\n Parameter[7] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"ToNo\";\r\n pr.PropertyValue = this.editedItemIssue.tono;\r\n Parameter[8] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"CreatedOn\";\r\n pr.PropertyValue = this.pipe.transform(new Date(),\"MM/dd/yyyy hh:mm:ss\");\r\n Parameter[9] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"UpDatedOn\";\r\n pr.PropertyValue = this.pipe.transform(new Date(), \"MM/dd/yyyy hh:mm:ss\");\r\n Parameter[10] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\";\r\n pr.PropertyName = \"UpdatedBy\";\r\n pr.PropertyValue = this.userId;\r\n Parameter[11] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"CreatedBy\";\r\n pr.PropertyValue = this.userId;\r\n Parameter[12] = pr; \r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.saveSuccessHelper(result),error => this.saveFailedHelper(error))\r\n \r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : '';\r\n }\r\n private saveSuccessHelper(items?: any[]) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n let objit = new itemIssue();\r\n this.alertService.showMessage('Success', this.editedItemIssue.item + \" Issued Successfully\", MessageSeverity.success);\r\n for (let i = 0; i < items.length; i++) {\r\n\r\n if (this.rows.length == 0) {\r\n this.rows[0] = new itemIssue();\r\n this.rows[0].from = items[i].fromOffice;\r\n this.rows[0].date = items[i].date;\r\n this.rows[0].ba = items[i].toOffice;\r\n this.rows[0].item = items[i].item;\r\n this.rows[0].qty = items[i].quantity\r\n this.rows[0].unit = items[i].unit;\r\n\r\n this.rows[0].rate = items[i].rate;\r\n this.rows[0].amount = items[i].amount;\r\n this.rows[0].fromno = items[i].fromNo;\r\n this.rows[0].tono = items[i].toNo;\r\n\r\n }\r\n else {\r\n objit = new itemIssue();\r\n objit.from = items[i].fromOffice;\r\n objit.date = items[i].date;\r\n objit.ba = items[i].toOffice;\r\n objit.item = items[i].item;\r\n objit.qty = items[i].quantity\r\n objit.rate = items[i].rate;\r\n objit.unit = items[i].unit;\r\n objit.amount = items[i].amount;\r\n objit.fromno = items[i].fromNo;\r\n objit.tono = items[i].toNo;\r\n this.rows.push(objit);\r\n }\r\n\r\n }\r\n this.rows.forEach((pro, ind, ar) => {\r\n (pro as any).index = ind + 1;\r\n });\r\n this.rowsCache = [...this.rows];\r\n this.rows = [...this.rows];\r\n\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.ba, r.date, r.item, r.rate));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n Openpopup() {\r\n var item = $('#item').val();\r\n if (item == \"AWB\") {\r\n this.isEditMode = true;\r\n this.editorModal.show();\r\n } else {\r\n this.editedItemIssue.fromno = null;\r\n this.editedItemIssue.tono = null;\r\n $(\"#fromno\").val('');\r\n $(\"#tono\").val('');\r\n $(\"#qty\").val('');\r\n $(\"#rate\").val('');\r\n $(\"#amount\").val('');\r\n //$( \"#amount\" ).prop( \"disabled\", false );\r\n $(\"#qty\").prop(\"disabled\", false);\r\n this.isEditMode = false;\r\n this.editorModal.hide();\r\n\r\n }\r\n }\r\n onEditorModalHidden() {\r\n this.editorModal.hide();\r\n }\r\n AddQty() {\r\n debugger\r\n var item = $('#item').val();\r\n if (item == \"AWB\") {\r\n var fromno = $(\"#fromno\").val();\r\n var tono = $(\"#tono\").val();\r\n if (parseInt(tono) > parseInt(fromno)) {\r\n if (fromno != \"\" && tono != \"\") {\r\n var totalno = (parseInt(tono) - parseInt(fromno))+1;\r\n $(\"#qty\").val((totalno));\r\n $(\"#amount\").prop(\"disabled\", true);\r\n $(\"#qty\").prop(\"disabled\", true);\r\n this.isEditMode = false;\r\n this.editorModal.hide();\r\n this.editedItemIssue.ba = $('#ba').val();\r\n this.editedItemIssue.fromno = fromno;\r\n this.editedItemIssue.tono = tono;\r\n this.editedItemIssue.qty = totalno.toFixed(2);\r\n this.editedItemIssue.unit = $('#unit').val();\r\n this.editedItemIssue.item = item;\r\n this.editedItemIssue.from = this._Balogindata[0].officename;\r\n } else {\r\n $(\"#qty\").val('');\r\n alert(\"Please Enter From Number and To Number\");\r\n return;\r\n }\r\n } else {\r\n $(\"#fromno\").val(0)\r\n $(\"#tono\").val(0);\r\n alert(\"Please Enter Valid Value in From Number\");\r\n this.isEditMode = true;\r\n this.editorModal.show();\r\n }\r\n }\r\n\r\n\r\n }\r\n funcalamount() {\r\n var qty = $(\"#qty\").val();\r\n if (qty == '' || qty == '0') {\r\n alert(\"Please Enter Qty\");\r\n return;\r\n }\r\n var rate = $(\"#rate\").val();\r\n if (rate == '' ) {\r\n alert(\"Please Enter Rate\");\r\n return;\r\n }\r\n var amount = parseInt(qty) * parseInt(rate)\r\n $(\"#amount\").val(amount)\r\n this.editedItemIssue.amount = amount.toFixed(2);\r\n this.editedItemIssue.rate = rate;\r\n this.editedItemIssue.qty = qty;\r\n }\r\n\r\n}\r\nexport class itemIssue {\r\n constructor(ba?: string, date?: string, item?: string, unit?: string, qty?: string\r\n , rate?: string, amount?: string, fromno?: string, tono?: string) {\r\n this.ba = ba;\r\n this.date = date;\r\n this.item = item;\r\n this.unit = unit;\r\n this.qty = qty;\r\n this.rate = rate;\r\n this.amount = amount;\r\n this.fromno = fromno;\r\n this.tono = tono;\r\n };\r\n public from: string;\r\n public ba: string\r\n public date: string\r\n public item: string\r\n public unit: string\r\n public qty: string\r\n public rate: string\r\n public amount: string\r\n public fromno: string\r\n public tono: string\r\n}\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvaXRlbW1hc3Rlci9pdGVtbWFzdGVyLmNvbXBvbmVudC5zY3NzIn0= */\"","\nimport { ViewChild } from '@angular/core';\nimport { TemplateRef } from '@angular/core';\nimport { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { AlertService, DialogType, MessageSeverity } from 'src/app/services/alert.service';\nimport { AuthService } from 'src/app/services/auth.service';\nimport { ConfigurationService } from 'src/app/services/configuration.service';\nimport { Masters } from 'src/app/services/masters.service';\nimport { Utilities } from 'src/app/services/utilities';\n\n\n\n@Component({\n selector: 'app-itemmaster',\n templateUrl: './itemmaster.component.html',\n styleUrls: ['./itemmaster.component.scss']\n})\n\nexport class ItemmasterComponent implements OnInit {\n\n editeditemMater: ItemMaster = new ItemMaster();\n columns: any[] = [];\n rows: ItemMaster[] = [];\n rowsCache: ItemMaster[] = [];\n isSaving = false;\n isLoading = false;\n formResetToggle = true;\n loadingIndicator = false;\n\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\n }\n @ViewChild('f', { static: false })\n @ViewChild('indexTemplate', { static: true })\n indexTemplate: TemplateRef;\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n\n\n ngOnInit() {\n this.columns = [\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\n { prop: 'itemName', name: 'Item Name', width: 100 },\n { prop: 'itemUnit', name: 'Item Unit', width: 100 },\n { prop: 'sgst', name: 'Sgst', width: 100 },\n { prop: 'cgst', name: 'Cgst', width: 100 },\n { prop: 'igst', name: 'Igst', width: 100 },\n ];\n this.loaddata();\n\n }\n\n\n loaddata() {\n this.loadingIndicator = true;\n this.ServiceMaster.GetItemMaster().subscribe(results => this.LoadSucessdata(results),error=>this.onDataLoadFailed(error))\n }\n LoadSucessdata(items: ItemMaster[]) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n items.forEach((prod, index, items) => {\n (prod as any).index = index + 1;\n });\n\n this.rowsCache = [...items];\n this.rows = items;\n }\n onDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n Insertitems() {\n debugger;\n this.isSaving = true;\n this.alertService.startLoadingMessage('Saving changes...');\n this.ServiceMaster.NewItem(this.editeditemMater).subscribe(items => this.saveSuccessHelper(items), error => this.saveFailedHelper(error));\n }\n private saveSuccessHelper(items?: ItemMaster) {\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Success', `items \\\"${this.editeditemMater.itemName + \"-\" + this.editeditemMater.itemUnit}\\\" was created successfully`, MessageSeverity.success);\n if (this.rows.length == 0) {\n this.rows[0] = items[0];\n this.rowsCache[0] = items[0];\n }\n else {\n this.rows.push(items[0]);\n this.rowsCache.push(items[0]);\n }\n this.rows.forEach((state, index, citys) => {\n (state as any).index = index + 1;\n });\n this.rowsCache.forEach((state, index, citys) => {\n (state as any).index = index + 1;\n });\n this.rowsCache = [...this.rowsCache]\n this.rows = [...this.rows]\n this.editeditemMater = new ItemMaster()\n }\n onSearchChanged(value: string) {\n\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.itemName, r.itemUnit));\n }\n private saveFailedHelper(error: any) {\n\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\n }\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n dotCount: number = 0;\n checkNumberOnly: number = 0;\n checkString: string;\n numberOnly(event): boolean {\n const charCode = (event.which) ? event.which : event.keyCode;\n if (charCode == 46) {\n this.dotCount += 1;\n this.checkNumberOnly = (event.target.value);\n var numericCheck = (event.target.value).toString();\n if (numericCheck.includes('.')) {\n this.dotCount += 1;\n }\n if (this.dotCount > 1) {\n this.dotCount = 0;\n return false;\n }\n }\n if (charCode > 31 && (charCode < 45 || charCode > 57 || charCode == 47)) {\n return false;\n }\n this.checkNumberOnly = (event.target.value);\n if (this.checkNumberOnly != null) {\n var numeric = (event.target.value).toString();\n if (numeric.includes('.')) {\n var checkNumeric = numeric.split('.');\n if (checkNumeric.length > 2) {\n return false;\n }\n this.checkString = checkNumeric[1].split('');\n if (this.checkString.length > 1) {\n return false;\n }\n }\n }\n this.dotCount = 0;\n return true;\n\n }\n}\nexport class ItemMaster {\n constructor(itemName?: string, itemUnit?: string, sgst?: string, cgst?: string, igst?: string) {\n this.itemName = itemName;\n this.itemUnit = itemUnit;\n this.sgst = sgst;\n this.cgst = cgst;\n this.igst = igst;\n };\n public itemName: string\n public itemCode: string\n public hsnCode:string\n public itemUnit: string\n public sgst: string\n public cgst: string\n public igst: string\n}\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvaXRlbXJlY2lldmUvaXRlbXJlY2lldmUuY29tcG9uZW50LnNjc3MifQ== */\"","import { DatePipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\nimport { TemplateRef } from '@angular/core';\nimport { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { from } from 'rxjs';\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { AuthService } from '../../services/auth.service';\nimport { ConfigurationService } from '../../services/configuration.service';\nimport { Masters } from '../../services/masters.service';\nimport { Utilities } from '../../services/utilities';\ndeclare var $: any;\n\n@Component({\n selector: 'app-itemrecieve',\n templateUrl: './itemrecieve.component.html',\n styleUrls: ['./itemrecieve.component.scss']\n})\nexport class ItemreceiveComponent implements OnInit {\n\n editeditemreceive: itemreceive = new itemreceive();\n columns: any[] = [];\n rows: itemreceive[] = [];\n addrow: itemreceive[] = [];\n rowsCache: itemreceive[] = [];\n isSaving = false;\n isLoading = false;\n formResetToggle = true;\n loadingIndicator = false;\n lastkeydown2: number = 0;\n isEditMode = false;\n arritemlist: any[] = [];\n arritemlist2: any[] = [];\n arrunit: any[] = [];\n arrunit2: any[] = [];\n tabledate: any[] = [];\n\n pipe = new DatePipe('en-US');\n now = Date.now();\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\n\n\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\n }\n @ViewChild('f', { static: false })\n @ViewChild('indexTemplate', { static: true })\n indexTemplate: TemplateRef;\n @ViewChild('actionsTemplate', { static: true })\n @ViewChild('editorModal', { static: true })\n editorModal: ModalDirective;\n actionsTemplate: TemplateRef;\n\n ngOnInit() {\n this.columns = [\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\n { prop: 'item', name: 'Item', width: 100 },\n { prop: 'unit', name: 'Unit', width: 100 },\n { prop: 'qty', name: 'Qty', width: 100 },\n { prop: 'rate', name: 'Rate', width: 100 },\n { prop: 'taxableAmt', name: 'Taxable Amt', width: 100 },\n { prop: 'sgst', name: 'SGST', width: 100 },\n { prop: 'cgst', name: 'CGST', width: 100 },\n { prop: 'igst', name: 'IGST', width: 100 },\n { prop: 'cess', name: 'CISS', width: 100 },\n { prop: 'totalAmount', name: 'Total Amount', width: 100 },\n ];\n //this.loaddata();\n }\n getitemList($event) {\n this.Getitemlist();\n this.arritemlist2 = this.arritemlist\n $('#item').autocomplete({\n source: this.arritemlist2,\n delay: 50\n });\n }\n Getitemlist() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'itemlist'), error => this.onDataLoadFailed(error));\n }\n onDatagetSuccessful(itemlist: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"itemlist\") {\n this.arritemlist = itemlist;\n }\n }\n\n //second\n getunit($event) {\n this.GetUnitlist();\n this.arrunit2 = this.arrunit\n $('#unit').autocomplete({\n source: this.arrunit2,\n delay: 50\n });\n }\n GetUnitlist() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetUnitSuccessful(result, 'Unit'), error => this.onDataLoadFailed(error));\n }\n onDatagetUnitSuccessful(Unit: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"Unit\") {\n this.arrunit = Unit;\n }\n }\n\n\n loaddata() {\n this.loadingIndicator = true;\n // this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\n this.Getitemlist();\n this.GetUnitlist();\n }\n LoadSucessdata(bagging: itemreceive[]) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n bagging.forEach((prod, index, items) => {\n (prod as any).index = index + 1;\n });\n\n this.rowsCache = [...bagging];\n this.rows = bagging;\n }\n onDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve item receive from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n Insertitemreceive() {\n debugger;\n var amount = $('#Checkbillamount').val();\n if (parseInt(amount) != parseInt(this.editeditemreceive.billAmount)) {\n alert('not vaid Bill Amount. Please Check Bill Amount Or Total Amount')\n return false;\n }\n var values = this.editeditemreceive;\n this.isSaving = true;\n this.alertService.startLoadingMessage('Saving changes...');\n // this.ServiceMaster.NewVendore(this.editeditemreceive).subscribe(items => this.saveSuccessHelper(items), error => this.saveFailedHelper(error));\n }\n private saveSuccessHelper(items?: itemreceive) {\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Success', `Item Receive \\\"${this.editeditemreceive.vendorName + \"-\" + this.editeditemreceive.billAmount}\\\" was created successfully`, MessageSeverity.success);\n if (this.rows.length == 0) {\n this.rows[0] = items[0];\n this.rowsCache[0] = items[0];\n }\n else {\n this.rows.push(items[0]);\n this.rowsCache.push(items[0]);\n }\n this.rows.forEach((state, index, citys) => {\n (state as any).index = index + 1;\n });\n this.rowsCache.forEach((state, index, citys) => {\n (state as any).index = index + 1;\n });\n this.rowsCache = [...this.rowsCache]\n this.rows = [...this.rows]\n this.editeditemreceive = new itemreceive()\n\n }\n private saveFailedHelper(error: any) {\n\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\n }\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n onlyNumberKey(event) {\n var ASCIICode = (event.which) ? event.which : event.keyCode\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\n return false;\n return true;\n }\n onlyNumberKeywithdecimal(event) {\n var ASCIICode = (event.which) ? event.which : event.keyCode\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\n return false;\n }\n\n return true;\n }\n\n Addrow() {\n var checktotalamount: any = 0;\n if (this.rows.length == 0) {\n this.addrow[0] = new itemreceive();\n this.addrow[0].officeName = $(\"#officeName\").val();\n this.addrow[0].vendorName = $(\"#vendorName\").val();\n this.addrow[0].billNo = $(\"#billNo\").val();\n this.addrow[0].billAmount = $(\"#billAmount\").val();\n this.addrow[0].item = $(\"#item\").val();\n this.addrow[0].unit = $(\"#unit\").val();\n this.addrow[0].qty = $(\"#qty\").val();\n this.addrow[0].rate = $(\"#rate\").val();\n this.addrow[0].taxableAmt = $(\"#taxableAmt\").val();\n this.addrow[0].sgst = $(\"#sgst\").val();\n this.addrow[0].cgst = $(\"#cgst\").val();\n this.addrow[0].igst = $(\"#igst\").val();\n this.addrow[0].cess = $(\"#cess\").val();\n this.addrow[0].totalAmount = $(\"#totalAmount\").val();\n this.rows[0] = this.addrow[0];\n }\n else {\n var tmp = new itemreceive();\n tmp.officeName = $(\"#officeName\").val();\n tmp.vendorName = $(\"#vendorName\").val();\n tmp.billNo = $(\"#billNo\").val();\n tmp.billAmount = $(\"#billAmount\").val();\n tmp.item = $(\"#item\").val();\n tmp.unit = $(\"#unit\").val();\n tmp.qty = $(\"#qty\").val();\n tmp.rate = $(\"#rate\").val();\n tmp.taxableAmt = $(\"#taxableAmt\").val();\n tmp.sgst = $(\"#sgst\").val();\n tmp.cgst = $(\"#cgst\").val();\n tmp.igst = $(\"#igst\").val();\n tmp.cess = $(\"#cess\").val();\n tmp.totalAmount = $(\"#totalAmount\").val();\n this.rows.push(tmp);\n }\n this.rows.forEach((item, index, items) => {\n (item as any).index = index + 1;\n if (item.totalAmount == '' || item.totalAmount == 'NaN') {\n checktotalamount = parseInt(checktotalamount) + parseInt('0');\n } else {\n checktotalamount = parseInt(checktotalamount) + parseInt(item.totalAmount);\n }\n });\n $('#Checkbillamount').val(checktotalamount)\n this.rows = [...this.rows]\n this.editeditemreceive.item = '';\n $(\"#item\").focus();\n this.editeditemreceive.unit = '';\n this.editeditemreceive.qty = '';\n this.editeditemreceive.rate = '';\n this.editeditemreceive.taxableAmt = '';\n this.editeditemreceive.sgst = '';\n this.editeditemreceive.cgst = '';\n this.editeditemreceive.igst = '';\n this.editeditemreceive.cess = '';\n this.editeditemreceive.totalAmount = '';\n }\n\n\n}\nexport class itemreceive {\n constructor(officeName?: string, vendorName?: string, billNo?: string, billAmount?: string, item?: string\n , unit?: string, qty?: string, rate?: string, taxableAmt?: string, sgst?: string, cgst?: string\n , igst?: string, cess?: string, totalAmount?: string) {\n this.officeName = officeName;\n this.vendorName = vendorName;\n this.billNo = billNo;\n this.billAmount = billAmount;\n this.item = item;\n this.unit = unit;\n this.qty = qty;\n this.rate = rate;\n this.taxableAmt = taxableAmt;\n this.sgst = sgst;\n this.cgst = cgst;\n this.igst = igst;\n this.cess = cess;\n this.totalAmount = totalAmount;\n };\n public officeName: string\n public vendorName: string\n public billNo: string\n public billAmount: string\n public item: string\n public unit: string\n public qty: string\n public rate: string\n public taxableAmt: string\n public sgst: string\n public cgst: string\n public igst: string\n public cess: string\n public totalAmount: string\n public vendcode: string;\n public pono: string;\n public recievedby: string\n public verifiedby: string\n public date: string\n public time: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbGFibGVyZXBvcnQvbGFibGVyZXBvcnQuY29tcG9uZW50LnNjc3MifQ== */\"","/// \r\n\r\nimport { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport {NgxPrintModule} from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport {QRCodeComponent} from 'angular2-qrcode' \r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { MatDialog } from '@angular/material';\r\nimport { AwbMoneyReceipt, ConfirmDialogMoneyRcptModels, DialogmoneyrecieptComponent } from '../controls/dialogmoneyreciept.component';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { Masters } from '../../services/masters.service';\r\n\r\n@Component({\r\n selector: 'app-lablereport',\r\n templateUrl: './lablereport.component.html',\r\n styleUrls: ['./lablereport.component.scss']\r\n})\r\nexport class LablereportComponent implements OnInit,AfterViewInit {\r\n title = 'angular-qr-code-tutorial';\r\n\r\n public qrdata: any = null;\r\n public level: \"L\" | \"M\" | \"Q\" | \"H\";\r\n Data = [\r\n { Id: 101, Name: 'Nitin', Salary: 1234 },\r\n { Id: 102, Name: 'Sonu', Salary: 1234 },\r\n { Id: 103, Name: 'Mohit', Salary: 1234 },\r\n { Id: 104, Name: 'Rahul', Salary: 1234 },\r\n { Id: 105, Name: 'Kunal', Salary: 1234 }\r\n ];\r\n public awbno: string = \"\";\r\n public Origin: string = \"\";\r\n public Destination: string = \"\";\r\n public Weight: string = \"\";\r\n public Product: string = \"\";\r\n public Pieces: string = \"\";\r\n public ProductId = \"\";\r\n public officeid: string;\r\n public Mode: string = \"\";\r\n public Address: string = \"\"\r\n public Address1: string = \"\"\r\n public topayamount: string = \"\"\r\n public freightamt :string =\"\"\r\n public mobileno: string = \"\"\r\n public officename: string = \"\"\r\n public srlno:string\r\n public gobackmodule: string = \"\"\r\n public consname: string=\"\"\r\n public conrname: string = \"\"\r\n public conshsteet: string = \"\";\r\n public conehsteet: string = \"\";\r\n public GstAmount: string = \"\";\r\n public Payable: string = \"\";\r\n public TotalAmount:string=\"\"\r\n public arrlabelsrl: labelsticker[] = [];\r\n public mrdata: AwbMoneyReceipt = new AwbMoneyReceipt();\r\n labelarry: Labelreport[] = [];\r\n status: boolean = false;\r\n usbPrintDriver: UsbDriver;\r\n webPrintDriver: WebPrintDriver;\r\n ip: string = '';\r\n height = 40;\r\n width = 2;\r\n marginLeft = -20;\r\n textMargin = 1;\r\n dialogRef: any;\r\n\r\n\r\n // @ViewChild('content') content: ElementRef; \r\n\r\n @ViewChild('content', { static: true })\r\n content: ElementRef;\r\n constructor(private printService: PrintService, private dialog: MatDialog, private ServiceMaster: Masters, private alertService: AlertService, public router: ActivatedRoute, private _router: Router, private transaction: TransactionService) {\r\n //this.usbPrintDriver = new UsbDriver();\r\n //this.printService.isConnected.subscribe(result => {\r\n // this.status = result;\r\n // if (result) {\r\n // console.log('Connected to printer!!!');\r\n // } else {\r\n // console.log('Not connected to printer.');\r\n // }\r\n //});\r\n }\r\n\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.awbno = params.awbno;\r\n this.gobackmodule = params.module;\r\n //this.Origin = params.origin;\r\n //this.Destination = params.destination;\r\n //this.Weight = params.weight;\r\n //this.Product = params.product;\r\n //this.Pieces = params.pieces;\r\n //this.ProductId = params.productid;\r\n //this.officeid = params.officeid;\r\n //this.Mode = params.mode;\r\n //this.mobileno = params.mobileno\r\n //this.Address = params.address\r\n //this.Address = atob(this.Address)\r\n //this.Address = this.Address.replace(\"Mr/Mrs.\",\"Delivery Address: \"+\"
\")\r\n }\r\n );\r\n if (this.awbno != '') {\r\n this.transaction.GetAwbBookingDetail(this.awbno, null, null).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n\r\n\r\n this.level = \"Q\";\r\n this.qrdata = '{\"AWBNO\":\"' + this.awbno + '\",\"Origin\":\"' + this.Origin + '\",\"Destination\":\"' + this.Destination\r\n + '\",\"Weight\":\"' + this.Weight + '\",\"Pieces\":\"'+this.Pieces+ '\",\"Product\":\"' + this.Product + '\",\"ProductId\":\"'+this.ProductId+'\",\"Officeid\":\"'+this.officeid+'\"'+\"}\"\r\n this.width = 200;\r\n }\r\n ngAfterViewInit() {\r\n //(document.getElementById('labeladdress')).innerHTML = '' + this.Address + '';\r\n //(document.getElementById('labeladdress2')).innerHTML = '' + this.Address1 + '';//(document.getElementById('labeladdress')).innerHTML = '' + this.Address+''\r\n }\r\n confirmDialog_Mr(mes: any, callback: any, row: any): void {\r\n const message = mes;\r\n\r\n const dialogData = new ConfirmDialogMoneyRcptModels(\" \", \" \", this.awbno, this.TotalAmount)\r\n\r\n this.dialogRef = this.dialog.open(DialogmoneyrecieptComponent, {\r\n maxWidth: \"700px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMRResult(dialogResult) });\r\n\r\n }\r\n OnMRResult(mr: AwbMoneyReceipt) {\r\n\r\n this.mrdata = mr;\r\n if (!isNullOrUndefined(mr.Awbno) && !isNullOrUndefined(mr.RecieveAmount)){\r\n this._router.navigate(['/awbprintmr'], { skipLocationChange:true,\r\n queryParams: {\r\n awbno: this.awbno,\r\n module: 'Detail',\r\n GstAmount: this.mrdata.GstAmount,\r\n freightamt: this.mrdata.frieghtAmount,\r\n payable: this.mrdata.RecieveAmount,\r\n Gstno: this.mrdata.Gstno,\r\n Paymode: this.mrdata.Paymode,\r\n \r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n }\r\n\r\n \r\n\r\n\r\n onGetSucessAwbbookingData(result: any) {\r\n\r\n if (result.length > 0) {\r\n\r\n this.labelarry = new Array(result.length)\r\n for (let i = 0; i < result.length; i++) {\r\n var labelr = new Labelreport();\r\n labelr.Origin = result[i].origin;;\r\n labelr.Destination = result[i].destPincode + \" - \" + result[i].destcity;\r\n labelr.Weight = result[i].awbWeight\r\n labelr.volwt = result[i].volumetricWeight\r\n labelr.Product = result[i].bookingFor\r\n labelr.Pieces = parseInt(result[i].pieces) > 1 ? result[i].pieces.toString() + \"( MPS )\" : result[i].pieces;\r\n labelr.Mode = result[i].awbMode;\r\n labelr.mobileno = result[i].consMobileno;\r\n labelr.officename = result[i].officename;\r\n labelr.content = result[i].awbContent;\r\n labelr.srlno = result[i].srlno; \r\n labelr.awbno = this.awbno;\r\n labelr.topayAmt = result[i].topayamt;\r\n labelr.istopay = result[i].isTopay;\r\n labelr.bookingdate = result[i].awbInscanDate;\r\n labelr.saleType = 'Retail'//result[i].saleType\r\n if (result[i].isTopay) {\r\n this.topayamount = result[i].totalAmount;\r\n }\r\n else {\r\n this.topayamount = 'NA';\r\n }\r\n this.TotalAmount = (parseFloat(result[i].totalAmount)).toFixed(2);\r\n this.freightamt = ((parseFloat(result[i].totalAmount) / 118) * 100).toFixed(2);\r\n this.GstAmount = (parseFloat(result[i].totalAmount) - parseFloat(this.freightamt)).toFixed(2)\r\n this.Payable = Math.round(parseFloat(result[i].totalAmount)).toFixed(2);\r\n this.consname = result[i].consName\r\n this.conshsteet = result[i].conshouseno + \",\" +\r\n result[i].consStreet\r\n let statname = (result[i].consState == result[i].conscity ? \"\" : result[i].consState);\r\n this.Address = result[i].conscity + \"-\" + result[i].conspincode + \",\" + statname\r\n labelr.Address = this.Address;\r\n statname = (result[i].stateName == result[i].city ? \"\" : result[i].stateName);\r\n this.conrname = result[i].conrName;\r\n this.conehsteet = result[i].houseNo + \",\" +\r\n result[i].streetName\r\n this.Address1 = result[i].city + \"-\" + result[i].pincode + \",\" + statname\r\n labelr.Address1=this.Address1\r\n labelr.conrmobileno = result[i].conrMobileno\r\n if (labelr.Destination.indexOf('-') > 0) {\r\n var TmpDest = labelr.Destination.substring(labelr.Destination.indexOf('-') + 1) + \" - \" + labelr.Destination.substring(0, labelr.Destination.indexOf('-') - 1);\r\n labelr.Destination = TmpDest\r\n this.labelarry[i] = labelr;\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_UpDateAwbPrint'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Awbno\"\r\n pr.PropertyValue = this.awbno;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => { }, error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n \r\n if (parseInt(result[0].pieces) > 1) {\r\n var tmp = Math.ceil((parseInt(result[0].pieces)) / 4);\r\n this.arrlabelsrl = new Array(tmp);\r\n var sticker = null;\r\n var picecount = 0;\r\n for (let i = 1; i <= tmp; i++) {\r\n sticker = new labelsticker();\r\n for (let k = 0; k < 4; k++) {\r\n if (k == 0) {\r\n \r\n picecount++ \r\n sticker.label1 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number1 = this.awbno.toString() + (picecount).toString()\r\n\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n }\r\n if (k == 1) {\r\n picecount++\r\n\r\n sticker.label2 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number2 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n if (k == 2) {\r\n picecount++\r\n\r\n sticker.label3 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number3 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n\r\n }\r\n if (k == 3) {\r\n picecount++\r\n sticker.label4 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number4 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n }\r\n this.arrlabelsrl[i-1] = sticker\r\n }\r\n \r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n \r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve Data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n /*printer*/\r\n public SavePDF(): void {\r\n\r\n let DATA = document.getElementById('content');\r\n\r\n html2canvas(DATA).then(canvas => {\r\n debugger;\r\n\r\n var imgWidth = 225;\r\n var pageHeight = 225;\r\n var imgHeight = canvas.height * imgWidth / canvas.width;\r\n const FILEURI = canvas.toDataURL('image/png')\r\n var heightLeft = imgHeight;\r\n var doc = new jsPDF(\"p\", \"mm\", \"a4\"); // landscape\r\n var position = 0;\r\n\r\n var width = doc.internal.pageSize.getWidth();\r\n var height = doc.internal.pageSize.getHeight();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n\r\n while (heightLeft >= 0) {\r\n position = heightLeft - imgHeight;\r\n doc.addPage();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n }\r\n doc.save('qrcode.pdf');\r\n // let fileWidth = 208;\r\n // let fileHeight = canvas.height * fileWidth / canvas.width;\r\n // const FILEURI = canvas.toDataURL('image/png')\r\n // let PDF = new jsPDF('p', 'mm', 'a4');\r\n // let position = 0;\r\n // PDF.addImage(FILEURI, 'PNG', 0, position, fileWidth, fileHeight)\r\n // PDF.save('qrcode.pdf');\r\n });\r\n }\r\n gotobooking() {\r\n if (this.gobackmodule != 'Detail') {\r\n this._router.navigate(['/awbbooking/0']);\r\n }\r\n else {\r\n this._router.navigate(['/awbbookdet']);\r\n }\r\n }\r\n}\r\nexport class Labelreport {\r\n public awbno: string\r\n public Origin: string\r\n public Destination: string\r\n public Weight: string \r\n public Product: string\r\n public Pieces: string\r\n public ProductId:string\r\n public officeid: string;\r\n public Mode: string\r\n public Address: string\r\n public Address1: string\r\n public mobileno: string\r\n public officename: string\r\n public srlno: string\r\n public conrmobileno: string;\r\n public volwt: string;\r\n public saleType: string\r\n public freightamt: string;\r\n public Gstamt: string;\r\n public content: string;\r\n public topayAmt: string;\r\n public bookingdate: string;\r\n public istopay: string;\r\n}\r\nexport class labelsticker {\r\n public label1: string\r\n public number1: string\r\n public label2: string\r\n public number2: string \r\n public label3: string\r\n public number3: string\r\n public label4: string\r\n public number4: string\r\n public label5: string\r\n public number5: string\r\n public label6: string\r\n public number6: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbGFibGVyZXBvcnREcC9sYWJsZXJlcG9ydERwLmNvbXBvbmVudC5zY3NzIn0= */\"","\r\nimport { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport {NgxPrintModule} from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport {QRCodeComponent} from 'angular2-qrcode' \r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Bookmail } from '../../services/transactionendpoint.service';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { Masters } from '../../services/masters.service';\r\n\r\n@Component({\r\n selector: 'app-lablereportDp',\r\n templateUrl: './lablereportDp.component.html',\r\n styleUrls: ['./lablereportDp.component.scss']\r\n})\r\nexport class LablereportDpComponent implements OnInit,AfterViewInit {\r\n title = 'angular-qr-code-tutorial';\r\n\r\n public qrdata: any = null;\r\n public level: \"L\" | \"M\" | \"Q\" | \"H\";\r\n Data = [\r\n { Id: 101, Name: 'Nitin', Salary: 1234 },\r\n { Id: 102, Name: 'Sonu', Salary: 1234 },\r\n { Id: 103, Name: 'Mohit', Salary: 1234 },\r\n { Id: 104, Name: 'Rahul', Salary: 1234 },\r\n { Id: 105, Name: 'Kunal', Salary: 1234 }\r\n ];\r\n public awbno: string = \"\";\r\n public Origin: string = \"\";\r\n public Destination: string = \"\";\r\n public Weight: string = \"\";\r\n public Product: string = \"\";\r\n public Pieces: string = \"\";\r\n public ProductId = \"\";\r\n public officeid: string;\r\n public Mode: string = \"\";\r\n public Address: string = \"\"\r\n public Address1: string = \"\"\r\n public topayamount: string = \"\"\r\n public freightamt :string =\"\"\r\n public mobileno: string = \"\"\r\n public officename: string = \"\"\r\n public srlno:string\r\n public gobackmodule: string = \"\"\r\n public consname: string=\"\"\r\n public conrname: string = \"\"\r\n public conshsteet: string = \"\";\r\n public conehsteet: string = \"\";\r\n public GstAmount: string = \"\";\r\n public Payable: string = \"\";\r\n public clinetcode: string;\r\n public arrlabelsrl: labelsticker[]=[];\r\n labelarry: Labelreport[] = [];\r\n status: boolean = false;\r\n usbPrintDriver: UsbDriver;\r\n webPrintDriver: WebPrintDriver;\r\n ip: string = '';\r\n height = 40;\r\n width = 2;\r\n marginLeft = -20;\r\n textMargin = 1;\r\n\r\n // @ViewChild('content') content: ElementRef; \r\n\r\n @ViewChild('content', { static: true })\r\n content: ElementRef;\r\n constructor(private printService: PrintService, private ServiceMaster: Masters, private alertService: AlertService, public router: ActivatedRoute, private _router: Router, private transaction: TransactionService) {\r\n //this.usbPrintDriver = new UsbDriver();\r\n //this.printService.isConnected.subscribe(result => {\r\n // this.status = result;\r\n // if (result) {\r\n // console.log('Connected to printer!!!');\r\n // } else {\r\n // console.log('Not connected to printer.');\r\n // }\r\n //});\r\n }\r\n\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.awbno = params.awbno;\r\n this.gobackmodule = params.module;\r\n //this.Origin = params.origin;\r\n //this.Destination = params.destination;\r\n //this.Weight = params.weight;\r\n //this.Product = params.product;\r\n //this.Pieces = params.pieces;\r\n //this.ProductId = params.productid;\r\n //this.officeid = params.officeid;\r\n //this.Mode = params.mode;\r\n //this.mobileno = params.mobileno\r\n //this.Address = params.address\r\n //this.Address = atob(this.Address)\r\n //this.Address = this.Address.replace(\"Mr/Mrs.\",\"Delivery Address: \"+\"
\")\r\n }\r\n );\r\n if (this.awbno != '') {\r\n this.transaction.GetAwbBookingDetail(this.awbno, null, null).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n\r\n\r\n this.level = \"Q\";\r\n this.qrdata = '{\"AWBNO\":\"' + this.awbno + '\",\"Origin\":\"' + this.Origin + '\",\"Destination\":\"' + this.Destination\r\n + '\",\"Weight\":\"' + this.Weight + '\",\"Pieces\":\"'+this.Pieces+ '\",\"Product\":\"' + this.Product + '\",\"ProductId\":\"'+this.ProductId+'\",\"Officeid\":\"'+this.officeid+'\"'+\"}\"\r\n this.width = 200;\r\n }\r\n ngAfterViewInit() {\r\n\r\n //(document.getElementById('labeladdress')).innerHTML = '' + this.Address + '';\r\n //(document.getElementById('labeladdress2')).innerHTML = '' + this.Address1 + '';//(document.getElementById('labeladdress')).innerHTML = '' + this.Address+''\r\n }\r\n\r\n onGetSucessAwbbookingData(result: any) {\r\n\r\n if (result.length > 0) {\r\n this.labelarry = new Array(result.length)\r\n for (let i = 0; i < result.length; i++) {\r\n var labelr = new Labelreport();\r\n this.clinetcode = result[i].clientCode;\r\n labelr.Origin = result[i].origin;\r\n labelr.Destination = result[i].destPincode + \" - \" + result[i].destcity;\r\n labelr.Weight = result[i].awbWeight\r\n labelr.volwt = result[i].volumetricWeight\r\n labelr.Product = result[i].bookingFor\r\n labelr.Pieces = parseInt(result[i].pieces) > 1 ? result[i].pieces.toString() + \"( MPS )\" : result[i].pieces;\r\n labelr.Mode = result[i].awbMode;\r\n labelr.mobileno = result[i].consMobileno;\r\n labelr.officename = result[i].officename;\r\n labelr.content = result[i].awbContent;\r\n labelr.srlno = result[i].srlno; \r\n labelr.awbno = this.awbno;\r\n labelr.saleType = result[i].saleType\r\n labelr.bookDate = result[i].awbInscanDate\r\n if (result[i].isTopay) {\r\n this.topayamount = result[i].totalAmount;\r\n }\r\n else {\r\n this.topayamount = 'NA';\r\n }\r\n this.freightamt = ((parseFloat(result[i].totalAmount) / 118) * 100).toFixed(2);\r\n this.GstAmount = (parseFloat(result[i].totalAmount) - parseFloat(this.freightamt)).toFixed(2)\r\n this.Payable = Math.round(parseFloat(result[i].totalAmount)).toFixed(2);\r\n this.consname = result[i].consName\r\n this.conshsteet = result[i].conshouseno + \",\" +\r\n result[i].consStreet\r\n let statname = (result[i].consState == result[i].conscity ? \"\" : result[i].consState);\r\n this.Address = result[i].conscity + \"-\" + result[i].conspincode + \",\" + statname\r\n labelr.Address = this.Address;\r\n statname = (result[i].stateName == result[i].city ? \"\" : result[i].stateName);\r\n this.conrname = result[i].conrName;\r\n this.conehsteet = result[i].houseNo + \",\" +\r\n result[i].streetName\r\n this.Address1 = result[i].city + \"-\" + result[i].pincode + \",\" + statname\r\n labelr.Address1=this.Address1\r\n labelr.conrmobileno = result[i].conrMobileno\r\n if (labelr.Destination.indexOf('-') > 0) {\r\n var TmpDest = labelr.Destination.substring(labelr.Destination.indexOf('-') + 1) + \" - \" + labelr.Destination.substring(0, labelr.Destination.indexOf('-') - 1);\r\n labelr.Destination = TmpDest\r\n this.labelarry[i] = labelr;\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_UpDateAwbPrint'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Awbno\"\r\n pr.PropertyValue = this.awbno;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => { }, error => this.onDataLoadFailed(error));\r\n }\r\n \r\n }\r\n \r\n if (parseInt(result[0].pieces) > 1) { \r\n var tmp = Math.ceil((parseInt(result[0].pieces)) / 4);\r\n this.arrlabelsrl = new Array(tmp);\r\n var sticker = null;\r\n var picecount = 0;\r\n for (let i = 1; i <= tmp; i++) {\r\n sticker = new labelsticker();\r\n for (let k = 0; k < 4; k++) {\r\n if (k == 0) {\r\n \r\n picecount++ \r\n sticker.label1 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number1 = this.awbno.toString() + (picecount).toString()\r\n\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n }\r\n if (k == 1) {\r\n picecount++\r\n\r\n sticker.label2 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number2 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n if (k == 2) {\r\n picecount++\r\n\r\n sticker.label3 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number3 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n\r\n }\r\n if (k == 3) {\r\n picecount++\r\n sticker.label4 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number4 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n }\r\n this.arrlabelsrl[i-1] = sticker\r\n }\r\n \r\n }\r\n \r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve Awb from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n /*printer*/\r\n public SavePDF(): void {\r\n var div = document.getElementById(\"content\").innerHTML;\r\n var email: Bookmail = new Bookmail();\r\n email.customercode = this.clinetcode;\r\n email.message = div\r\n this.transaction.PostBookEmail(email).subscribe(res => {\r\n this.alertService.showMessage(\"Email\", res.toString(), MessageSeverity.info);\r\n }, error => this.onDataLoadFailed(error))\r\n return\r\n let DATA = document.getElementById('tbl_content');\r\n var div = document.getElementById(\"content\").innerHTML;\r\n\r\n html2canvas(DATA).then(canvas => {\r\n debugger;\r\n\r\n var imgWidth = 225;\r\n var pageHeight = 225;\r\n var imgHeight = canvas.height * imgWidth / canvas.width;\r\n const FILEURI = canvas.toDataURL('image/png')\r\n var heightLeft = imgHeight;\r\n var doc = new jsPDF(\"p\", \"mm\", \"a4\"); // landscape\r\n var position = 0;\r\n\r\n var width = doc.internal.pageSize.getWidth();\r\n var height = doc.internal.pageSize.getHeight();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n while (heightLeft >= 0) {\r\n position = heightLeft - imgHeight;\r\n doc.addPage();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n }\r\n var tmp = doc.output(\"arraybuffer\");\r\n // let fileWidth = 208;\r\n // let fileHeight = canvas.height * fileWidth / canvas.width;\r\n // const FILEURI = canvas.toDataURL('image/png')\r\n // let PDF = new jsPDF('p', 'mm', 'a4');\r\n // let position = 0;\r\n // PDF.addImage(FILEURI, 'PNG', 0, position, fileWidth, fileHeight)\r\n // PDF.save('qrcode.pdf');\r\n });\r\n }\r\n gotobooking() {\r\n if (this.gobackmodule != 'Detail') {\r\n this._router.navigate(['/awbbooking/0']);\r\n\r\n }\r\n else {\r\n this._router.navigate(['/awbbookdet']);\r\n }\r\n }\r\n}\r\nexport class Labelreport {\r\n public awbno: string\r\n public Origin: string\r\n public Destination: string\r\n public Weight: string \r\n public Product: string\r\n public Pieces: string\r\n public ProductId:string\r\n public officeid: string;\r\n public Mode: string\r\n public Address: string\r\n public Address1: string\r\n public mobileno: string\r\n public officename: string\r\n public srlno: string\r\n public conrmobileno: string;\r\n public volwt: string;\r\n public saleType: string\r\n public freightamt: string;\r\n public Gstamt: string;\r\n public content: string;\r\n public bookDate: string;\r\n}\r\nexport class labelsticker {\r\n public label1: string\r\n public number1: string\r\n public label2: string\r\n public number2: string \r\n public label3: string\r\n public number3: string\r\n public label4: string\r\n public number4: string\r\n public label5: string\r\n public number5: string\r\n public label6: string\r\n public number6: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbGFibGVyZXBvcnRLYXJ0L2xhYmxlcmVwb3J0S2FydC5jb21wb25lbnQuc2NzcyJ9 */\"","\r\nimport { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport {NgxPrintModule} from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport {QRCodeComponent} from 'angular2-qrcode' \r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { AwbMoneyReceipt, ConfirmDialogMoneyRcptModels, DialogmoneyrecieptComponent } from '../controls/dialogmoneyreciept.component';\r\nimport { MatDialog } from '@angular/material';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { Masters } from '../../services/masters.service';\r\n\r\n@Component({\r\n selector: 'app-lablereportKart',\r\n templateUrl: './lablereportKart.component.html',\r\n styleUrls: ['./lablereportKart.component.scss']\r\n})\r\nexport class LablereportKartComponent implements OnInit,AfterViewInit {\r\n title = 'angular-qr-code-tutorial';\r\n\r\n public qrdata: any = null;\r\n public level: \"L\" | \"M\" | \"Q\" | \"H\";\r\n Data = [\r\n { Id: 101, Name: 'Nitin', Salary: 1234 },\r\n { Id: 102, Name: 'Sonu', Salary: 1234 },\r\n { Id: 103, Name: 'Mohit', Salary: 1234 },\r\n { Id: 104, Name: 'Rahul', Salary: 1234 },\r\n { Id: 105, Name: 'Kunal', Salary: 1234 }\r\n ];\r\n public awbno: string = \"\";\r\n public Origin: string = \"\";\r\n public Destination: string = \"\";\r\n public Weight: string = \"\";\r\n public Product: string = \"\";\r\n public Pieces: string = \"\";\r\n public ProductId = \"\";\r\n public officeid: string;\r\n public Mode: string = \"\";\r\n public Address: string = \"\"\r\n public Address1: string = \"\"\r\n public topayamount: string = \"\"\r\n public freightamt :string =\"\"\r\n public mobileno: string = \"\"\r\n public officename: string = \"\"\r\n public srlno:string\r\n public gobackmodule: string = \"\"\r\n public consname: string=\"\"\r\n public conrname: string = \"\"\r\n public conshsteet: string = \"\";\r\n public conehsteet: string = \"\";\r\n public GstAmount: string = \"\";\r\n public Payable: string = \"\";\r\n public arrlabelsrl: labelsticker[]=[];\r\n labelarry: Labelreport[] = [];\r\n status: boolean = false;\r\n usbPrintDriver: UsbDriver;\r\n webPrintDriver: WebPrintDriver;\r\n ip: string = '';\r\n height = 40;\r\n width = 2;\r\n marginLeft = -20;\r\n textMargin = 1;\r\n dialogRef: any;\r\n mrdata: AwbMoneyReceipt = new AwbMoneyReceipt();\r\n // @ViewChild('content') content: ElementRef; \r\n\r\n @ViewChild('content', { static: true })\r\n content: ElementRef;\r\n constructor(private printService: PrintService, private ServiceMaster: Masters, private alertService: AlertService, public dialog:MatDialog, public router: ActivatedRoute, private _router: Router, private transaction: TransactionService) {\r\n //this.usbPrintDriver = new UsbDriver();\r\n //this.printService.isConnected.subscribe(result => {\r\n // this.status = result;\r\n // if (result) {\r\n // console.log('Connected to printer!!!');\r\n // } else {\r\n // console.log('Not connected to printer.');\r\n // }\r\n //});\r\n }\r\n\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.awbno = params.awbno;\r\n this.gobackmodule = params.module;\r\n //this.Origin = params.origin;\r\n //this.Destination = params.destination;\r\n //this.Weight = params.weight;\r\n //this.Product = params.product;\r\n //this.Pieces = params.pieces;\r\n //this.ProductId = params.productid;\r\n //this.officeid = params.officeid;\r\n //this.Mode = params.mode;\r\n //this.mobileno = params.mobileno\r\n //this.Address = params.address\r\n //this.Address = atob(this.Address)\r\n //this.Address = this.Address.replace(\"Mr/Mrs.\",\"Delivery Address: \"+\"
\")\r\n }\r\n );\r\n if (this.awbno != '') {\r\n this.transaction.GetAwbBookingDetail(this.awbno, null, null).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n\r\n\r\n this.level = \"Q\";\r\n this.qrdata = '{\"AWBNO\":\"' + this.awbno + '\",\"Origin\":\"' + this.Origin + '\",\"Destination\":\"' + this.Destination\r\n + '\",\"Weight\":\"' + this.Weight + '\",\"Pieces\":\"'+this.Pieces+ '\",\"Product\":\"' + this.Product + '\",\"ProductId\":\"'+this.ProductId+'\",\"Officeid\":\"'+this.officeid+'\"'+\"}\"\r\n this.width = 200;\r\n }\r\n ngAfterViewInit() {\r\n //(document.getElementById('labeladdress')).innerHTML = '' + this.Address + '';\r\n //(document.getElementById('labeladdress2')).innerHTML = '' + this.Address1 + '';//(document.getElementById('labeladdress')).innerHTML = '' + this.Address+''\r\n }\r\n confirmDialog_Mr(mes: any, callback: any, row: any): void {\r\n const message = mes;\r\n\r\n const dialogData = new ConfirmDialogMoneyRcptModels(\" \", \" \", this.awbno)\r\n\r\n this.dialogRef = this.dialog.open(DialogmoneyrecieptComponent, {\r\n maxWidth: \"700px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMRResult(dialogResult) });\r\n\r\n }\r\n OnMRResult(mr: AwbMoneyReceipt) {\r\n\r\n this.mrdata = mr;\r\n if (!isNullOrUndefined(mr.Awbno) && !isNullOrUndefined(mr.RecieveAmount)) {\r\n this._router.navigate(['/awbprintmr'], {\r\n skipLocationChange: true,\r\n queryParams: {\r\n awbno: this.awbno,\r\n module: 'Booking',\r\n GstAmount: this.mrdata.GstAmount,\r\n freightamt: this.mrdata.frieghtAmount,\r\n payable: this.mrdata.RecieveAmount,\r\n Gstno: this.mrdata.Gstno,\r\n Paymode: this.mrdata.Paymode\r\n //product: this.editedawkbooking.ProductName,\r\n //weight: this.editedawkbooking.awbWeight,\r\n //pieces: this.editedawkbooking.pieces,\r\n //destination: this.editedawkbooking.destpinCode,\r\n //origin: this.orgcity,\r\n //mode: this.editedawkbooking.awbMode,\r\n //officeid: vendors.bookingOfficeId,\r\n //productid: vendors.productMasterId,\r\n //address: btoa(addr),\r\n //mobileno: this.editedawkbooking.consigneeMobleno\r\n }\r\n }); // define your component where you want to go\r\n }\r\n }\r\n\r\n onGetSucessAwbbookingData(result: any) {\r\n\r\n if (result.length > 0) {\r\n this.labelarry = new Array(result.length)\r\n for (let i = 0; i < result.length; i++) {\r\n var labelr = new Labelreport();\r\n labelr.Origin = result[i].origin;;\r\n labelr.Destination = result[i].destPincode + \" - \" + result[i].destcity;\r\n labelr.Weight = result[i].awbWeight\r\n labelr.volwt = result[i].volumetricWeight\r\n labelr.Product = result[i].bookingFor\r\n labelr.Pieces = parseInt(result[i].pieces) > 1 ? result[i].pieces.toString() + \"( MPS )\" : result[i].pieces;\r\n labelr.Mode = result[i].awbMode;\r\n labelr.mobileno = result[i].consMobileno;\r\n labelr.officename = result[i].officename;\r\n labelr.content = result[i].awbContent;\r\n labelr.bookDate = result[i].awbInscanDate\r\n labelr.srlno = result[i].srlno; \r\n labelr.awbno = this.awbno;\r\n labelr.saleType = result[i].saleType\r\n if (result[i].isTopay) {\r\n this.topayamount = result[i].totalAmount;\r\n }\r\n else {\r\n this.topayamount = 'NA';\r\n }\r\n this.freightamt =''// ((parseFloat(result[i].totalAmount) / 118) * 100).toFixed(2);\r\n this.GstAmount =''// (parseFloat(result[i].totalAmount) - parseFloat(this.freightamt)).toFixed(2)\r\n this.Payable = ''//Math.round(parseFloat(result[i].totalAmount)).toFixed(2);\r\n this.consname = result[i].consName\r\n this.conshsteet = result[i].conshouseno + \",\" +\r\n result[i].consStreet\r\n let statname = (result[i].consState == result[i].conscity ? \"\" : result[i].consState);\r\n this.Address = result[i].conscity + \"-\" + result[i].conspincode + \",\" + statname\r\n labelr.Address = this.Address;\r\n statname = (result[i].stateName == result[i].city ? \"\" : result[i].stateName);\r\n this.conrname = result[i].conrName;\r\n this.conehsteet = result[i].houseNo + \",\" +\r\n result[i].streetName\r\n this.Address1 = result[i].city + \"-\" + result[i].pincode + \",\" + statname\r\n labelr.Address1=this.Address1\r\n labelr.conrmobileno = result[i].conrMobileno\r\n if (labelr.Destination.indexOf('-') > 0) {\r\n var TmpDest = labelr.Destination.substring(labelr.Destination.indexOf('-') + 1) + \" - \" + labelr.Destination.substring(0, labelr.Destination.indexOf('-') - 1);\r\n labelr.Destination = TmpDest\r\n this.labelarry[i] = labelr;\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_UpDateAwbPrint'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Awbno\"\r\n pr.PropertyValue = this.awbno;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => { }, error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n \r\n if (parseInt(result[0].pieces) > 1) {\r\n var tmp = Math.ceil((parseInt(result[0].pieces)) / 4);\r\n this.arrlabelsrl = new Array(tmp);\r\n var sticker = null;\r\n var picecount = 0;\r\n for (let i = 1; i <= tmp; i++) {\r\n sticker = new labelsticker();\r\n for (let k = 0; k < 4; k++) {\r\n if (k == 0) {\r\n \r\n picecount++ \r\n sticker.label1 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number1 = this.awbno.toString() + (picecount).toString()\r\n\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n }\r\n if (k == 1) {\r\n picecount++\r\n\r\n sticker.label2 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number2 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n if (k == 2) {\r\n picecount++\r\n\r\n sticker.label3 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number3 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n\r\n }\r\n if (k == 3) {\r\n picecount++\r\n sticker.label4 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number4 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n }\r\n this.arrlabelsrl[i-1] = sticker\r\n }\r\n \r\n }\r\n\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n /*printer*/\r\n public SavePDF(): void {\r\n\r\n let DATA = document.getElementById('content');\r\n\r\n html2canvas(DATA).then(canvas => {\r\n debugger;\r\n\r\n var imgWidth = 225;\r\n var pageHeight = 225;\r\n var imgHeight = canvas.height * imgWidth / canvas.width;\r\n const FILEURI = canvas.toDataURL('image/png')\r\n var heightLeft = imgHeight;\r\n var doc = new jsPDF(\"p\", \"mm\", \"a4\"); // landscape\r\n var position = 0;\r\n\r\n var width = doc.internal.pageSize.getWidth();\r\n var height = doc.internal.pageSize.getHeight();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n\r\n while (heightLeft >= 0) {\r\n position = heightLeft - imgHeight;\r\n doc.addPage();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n }\r\n doc.save('qrcode.pdf');\r\n // let fileWidth = 208;\r\n // let fileHeight = canvas.height * fileWidth / canvas.width;\r\n // const FILEURI = canvas.toDataURL('image/png')\r\n // let PDF = new jsPDF('p', 'mm', 'a4');\r\n // let position = 0;\r\n // PDF.addImage(FILEURI, 'PNG', 0, position, fileWidth, fileHeight)\r\n // PDF.save('qrcode.pdf');\r\n });\r\n }\r\n gotobooking() {\r\n if (this.gobackmodule != 'Detail') {\r\n this._router.navigate(['/awbbooking/0']);\r\n }\r\n else {\r\n this._router.navigate(['/awbbookdet']);\r\n }\r\n }\r\n}\r\nexport class Labelreport {\r\n public awbno: string\r\n public Origin: string\r\n public Destination: string\r\n public Weight: string \r\n public Product: string\r\n public Pieces: string\r\n public ProductId:string\r\n public officeid: string;\r\n public Mode: string\r\n public Address: string\r\n public Address1: string\r\n public mobileno: string\r\n public officename: string\r\n public srlno: string\r\n public conrmobileno: string;\r\n public volwt: string;\r\n public saleType: string\r\n public freightamt: string;\r\n public Gstamt: string;\r\n public content: string;\r\n public bookDate: string;\r\n}\r\nexport class labelsticker {\r\n public label1: string\r\n public number1: string\r\n public label2: string\r\n public number2: string \r\n public label3: string\r\n public number3: string\r\n public label4: string\r\n public number4: string\r\n public label5: string\r\n public number5: string\r\n public label6: string\r\n public number6: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbGFibGVyZXBvcnRNUi9sYWJsZXJlcG9ydE1SLmNvbXBvbmVudC5zY3NzIn0= */\"","\r\nimport { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport {NgxPrintModule} from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport {QRCodeComponent} from 'angular2-qrcode' \r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { param } from 'jquery';\r\nimport { isNullOrUndefined } from 'util';\r\n\r\n@Component({\r\n selector: 'app-lablereportMR',\r\n templateUrl: './lablereportMR.component.html',\r\n styleUrls: ['./lablereportMR.component.scss']\r\n})\r\nexport class LablereportMRComponent implements OnInit,AfterViewInit {\r\n title = 'angular-qr-code-tutorial';\r\n\r\n public qrdata: any = null;\r\n public level: \"L\" | \"M\" | \"Q\" | \"H\";\r\n Data = [\r\n { Id: 101, Name: 'Nitin', Salary: 1234 },\r\n { Id: 102, Name: 'Sonu', Salary: 1234 },\r\n { Id: 103, Name: 'Mohit', Salary: 1234 },\r\n { Id: 104, Name: 'Rahul', Salary: 1234 },\r\n { Id: 105, Name: 'Kunal', Salary: 1234 }\r\n ];\r\n public awbno: string = \"\";\r\n public Origin: string = \"\";\r\n public Destination: string = \"\";\r\n public Weight: string = \"\";\r\n public Product: string = \"\";\r\n public Pieces: string = \"\";\r\n public ProductId = \"\";\r\n public officeid: string;\r\n public Mode: string = \"\";\r\n public Address: string = \"\"\r\n public Address1: string = \"\"\r\n public topayamount: string = \"\"\r\n public freightamt :string =\"\"\r\n public mobileno: string = \"\"\r\n public officename: string = \"\"\r\n public srlno:string\r\n public gobackmodule: string = \"\"\r\n public consname: string=\"\"\r\n public conrname: string = \"\"\r\n public conshsteet: string = \"\";\r\n public conehsteet: string = \"\";\r\n\r\n public arrlabelsrl: labelsticker[]=[];\r\n labelarry: Labelreport[] = [];\r\n status: boolean = false;\r\n usbPrintDriver: UsbDriver;\r\n webPrintDriver: WebPrintDriver;\r\n ip: string = '';\r\n height = 40;\r\n width = 2;\r\n marginLeft = -20;\r\n textMargin = 1;\r\n GstAmount = \"0\";\r\n Payable = \"0\";\r\n Gstno = \"\";\r\n Paymode=\"\"\r\n\r\n // @ViewChild('content') content: ElementRef; \r\n\r\n @ViewChild('content', { static: true })\r\n content: ElementRef;\r\n constructor(private printService: PrintService, private alertService: AlertService, public router: ActivatedRoute, private _router: Router, private transaction: TransactionService) {\r\n //this.usbPrintDriver = new UsbDriver();\r\n //this.printService.isConnected.subscribe(result => {\r\n // this.status = result;\r\n // if (result) {\r\n // console.log('Connected to printer!!!');\r\n // } else {\r\n // console.log('Not connected to printer.');\r\n // }\r\n //});\r\n }\r\n\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.awbno = params.awbno;\r\n this.gobackmodule = params.module;\r\n this.GstAmount = params.GstAmount;\r\n this.freightamt = params.freightamt;\r\n this.Payable = parseFloat(params.payable).toFixed(2);\r\n this.Gstno = params.Gstno;\r\n this.Paymode = params.Paymode;\r\n //this.Origin = params.origin;\r\n //this.Destination = params.destination;\r\n //this.Weight = params.weight;\r\n //this.Product = params.product;\r\n //this.Pieces = params.pieces;\r\n //this.ProductId = params.productid;\r\n //this.officeid = params.officeid;\r\n //this.Mode = params.mode;\r\n //this.mobileno = params.mobileno\r\n //this.Address = params.address\r\n //this.Address = atob(this.Address)\r\n //this.Address = this.Address.replace(\"Mr/Mrs.\",\"Delivery Address: \"+\"
\")\r\n }\r\n );\r\n if (this.awbno != '') {\r\n this.transaction.GetAwbBookingDetail(this.awbno, null, null).subscribe(result => this.onGetSucessAwbbookingData(result), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n\r\n\r\n this.level = \"Q\";\r\n this.qrdata = '{\"AWBNO\":\"' + this.awbno + '\",\"Origin\":\"' + this.Origin + '\",\"Destination\":\"' + this.Destination\r\n + '\",\"Weight\":\"' + this.Weight + '\",\"Pieces\":\"'+this.Pieces+ '\",\"Product\":\"' + this.Product + '\",\"ProductId\":\"'+this.ProductId+'\",\"Officeid\":\"'+this.officeid+'\"'+\"}\"\r\n this.width = 200;\r\n }\r\n ngAfterViewInit() {\r\n //(document.getElementById('labeladdress')).innerHTML = '' + this.Address + '';\r\n //(document.getElementById('labeladdress2')).innerHTML = '' + this.Address1 + '';//(document.getElementById('labeladdress')).innerHTML = '' + this.Address+''\r\n }\r\n\r\n onGetSucessAwbbookingData(result: any) {\r\n\r\n if (result.length > 0) {\r\n this.labelarry = new Array(result.length)\r\n for (let i = 0; i < result.length; i++) {\r\n var labelr = new Labelreport();\r\n labelr.Origin = result[i].origin;;\r\n labelr.Destination = result[i].destPincode + \" - \" + result[i].destcity;\r\n labelr.Weight = parseFloat(result[i].awbWeight).toFixed(3) +\" Kg\";\r\n labelr.volwt = parseFloat(result[i].volumetricWeight).toFixed(3) + \" Kg\";\r\n labelr.Product = result[i].bookingFor\r\n labelr.Pieces = parseInt(result[i].pieces) > 1 ? result[i].pieces.toString() + \"( MPS )\" : result[i].pieces;\r\n labelr.Mode = result[i].awbMode;\r\n labelr.mobileno = result[i].consMobileno;\r\n labelr.officename = result[i].officename;\r\n labelr.content = result[i].awbContent;\r\n labelr.srlno = result[i].srlno; \r\n labelr.awbno = this.awbno;\r\n labelr.bookDate = result[i].awbInscanDate\r\n\r\n labelr.saleType = result[i].saleType == 'CASH' ? 'Retail' : result[i].saleType\r\n if (result[i].isTopay) {\r\n this.topayamount = result[i].totalAmount;\r\n }\r\n else {\r\n this.topayamount = 'NA';\r\n }\r\n // this.freightamt = ((parseFloat(result[i].totalAmount) / 118) * 100).toFixed(2);\r\n // this.GstAmount = (parseFloat(result[i].totalAmount) - parseFloat(this.freightamt)).toFixed(2)\r\n // this.Payable = Math.round(parseFloat(result[i].totalAmount)).toFixed(2);\r\n this.consname = result[i].consName\r\n this.conshsteet = result[i].conshouseno + \",\" +\r\n result[i].consStreet\r\n let statname = (result[i].consState == result[i].conscity ? \"\" : result[i].consState);\r\n this.Address = result[i].conscity + \"-\" + result[i].conspincode + \",\" + statname\r\n labelr.Address = this.Address;\r\n statname = (result[i].stateName == result[i].city ? \"\" : result[i].stateName);\r\n this.conrname = result[i].conrName;\r\n this.conehsteet = result[i].houseNo + \",\" +\r\n result[i].streetName\r\n this.Address1 = result[i].city + \"-\" + result[i].pincode + \",\" + statname\r\n labelr.Address1=this.Address1\r\n labelr.conrmobileno = result[i].conrMobileno\r\n if (labelr.Destination.indexOf('-') > 0) {\r\n var TmpDest = labelr.Destination.substring(labelr.Destination.indexOf('-') + 1) + \" - \" + labelr.Destination.substring(0, labelr.Destination.indexOf('-') - 1);\r\n labelr.Destination = TmpDest\r\n this.labelarry[i] = labelr;\r\n }\r\n }\r\n \r\n if (parseInt(result[0].pieces) > 1) {\r\n var tmp = Math.ceil((parseInt(result[0].pieces)) / 4);\r\n this.arrlabelsrl = new Array(tmp);\r\n var sticker = null;\r\n var picecount = 0;\r\n for (let i = 1; i <= tmp; i++) {\r\n sticker = new labelsticker();\r\n for (let k = 0; k < 4; k++) {\r\n if (k == 0) {\r\n \r\n picecount++ \r\n sticker.label1 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number1 = this.awbno.toString() + (picecount).toString()\r\n\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n }\r\n if (k == 1) {\r\n picecount++\r\n\r\n sticker.label2 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number2 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n if (k == 2) {\r\n picecount++\r\n\r\n sticker.label3 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number3 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n\r\n }\r\n if (k == 3) {\r\n picecount++\r\n sticker.label4 = this.awbno.toString() + \"X\" + (picecount).toString()\r\n sticker.number4 = this.awbno.toString() + (picecount).toString()\r\n if (picecount == parseInt(result[0].pieces)) { break; }\r\n\r\n }\r\n }\r\n this.arrlabelsrl[i-1] = sticker\r\n }\r\n \r\n }\r\n if (!isNullOrUndefined(this.Payable)){\r\n this.transaction.SaveAwbMr(this.awbno, this.freightamt, this.GstAmount, this.Payable, this.Gstno, this.Paymode).subscribe(result => this.onGetSucessAwbmrData(result), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n onGetSucessAwbmrData(result: any) {\r\n\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n /*printer*/\r\n public SavePDF(): void {\r\n\r\n let DATA = document.getElementById('content');\r\n\r\n html2canvas(DATA).then(canvas => {\r\n debugger;\r\n\r\n var imgWidth = 225;\r\n var pageHeight = 225;\r\n var imgHeight = canvas.height * imgWidth / canvas.width;\r\n const FILEURI = canvas.toDataURL('image/png')\r\n var heightLeft = imgHeight;\r\n var doc = new jsPDF(\"p\", \"mm\", \"a4\"); // landscape\r\n var position = 0;\r\n\r\n var width = doc.internal.pageSize.getWidth();\r\n var height = doc.internal.pageSize.getHeight();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n\r\n while (heightLeft >= 0) {\r\n position = heightLeft - imgHeight;\r\n doc.addPage();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n }\r\n doc.save('qrcode.pdf');\r\n // let fileWidth = 208;\r\n // let fileHeight = canvas.height * fileWidth / canvas.width;\r\n // const FILEURI = canvas.toDataURL('image/png')\r\n // let PDF = new jsPDF('p', 'mm', 'a4');\r\n // let position = 0;\r\n // PDF.addImage(FILEURI, 'PNG', 0, position, fileWidth, fileHeight)\r\n // PDF.save('qrcode.pdf');\r\n });\r\n }\r\n gotobooking() {\r\n if (this.gobackmodule != 'Detail') {\r\n this._router.navigate(['/awbbooking/0']);\r\n }\r\n else {\r\n this._router.navigate(['/awbbookdet']);\r\n }\r\n }\r\n}\r\nexport class Labelreport {\r\n public awbno: string\r\n public Origin: string\r\n public Destination: string\r\n public Weight: string \r\n public Product: string\r\n public Pieces: string\r\n public ProductId:string\r\n public officeid: string;\r\n public Mode: string\r\n public Address: string\r\n public Address1: string\r\n public mobileno: string\r\n public officename: string\r\n public srlno: string\r\n public conrmobileno: string;\r\n public volwt: string;\r\n public saleType: string\r\n public freightamt: string;\r\n public Gstamt: string;\r\n public content: string;\r\n public bookDate: string;\r\n}\r\nexport class labelsticker {\r\n public label1: string\r\n public number1: string\r\n public label2: string\r\n public number2: string \r\n public label3: string\r\n public number3: string\r\n public label4: string\r\n public number4: string\r\n public label5: string\r\n public number5: string\r\n public label6: string\r\n public number6: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbGFzdG1pbGVkZWxpdmVyeWh1YnMvbGFzdG1pbGVkZWxpdmVyeWh1YnMuY29tcG9uZW50LnNjc3MifQ== */\"","import { DatePipe } from '@angular/common';\nimport { ViewChild } from '@angular/core';\nimport { TemplateRef } from '@angular/core';\nimport { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { Subscription, timer } from 'rxjs';\nimport { map, share } from 'rxjs/operators';\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { AuthService } from '../../services/auth.service';\nimport { ConfigurationService } from '../../services/configuration.service';\nimport { Masters } from '../../services/masters.service';\nimport { Utilities } from '../../services/utilities';\ndeclare var $: any;\n\n@Component({\n selector: 'app-lastmiledeliveryhubs',\n templateUrl: './lastmiledeliveryhubs.component.html',\n styleUrls: ['./lastmiledeliveryhubs.component.scss']\n})\nexport class LastmiledeliveryhubsComponent implements OnInit {\n\n editLastmiledeliveryhubs: Lastmiledeliveryhubs = new Lastmiledeliveryhubs();\n columns: any[] = [];\n rows: Lastmiledeliveryhubs[] = [];\n rowsCache: Lastmiledeliveryhubs[] = [];\n isSaving = false;\n isLoading = false;\n formResetToggle = true;\n loadingIndicator = false;\n lastkeydown2: number = 0;\n arritemlist: any[] = [];\n arritemlist2: any[] = [];\n arrunit: any[] = [];\n arrunit2: any[] = [];\n arrcity: any[] = [];\n arrcity2: any[] = [];\n msg = ''\n\n time = new Date();\n rxTime = new Date();\n intervalId;\n subscription: Subscription;\n\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\n }\n @ViewChild('f', { static: false })\n @ViewChild('indexTemplate', { static: true })\n indexTemplate: TemplateRef;\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n\n pipe = new DatePipe('en-US');\n now = Date.now();\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\n timee = this.pipe.transform(this.now, 'hh:mm:ss s');\n\n ngOnInit() {\n\n this.columns = [\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\n { prop: 'hub', name: 'Hub', width: 100 },\n { prop: 'city', name: 'City', width: 100 },\n { prop: 'pincodes', name: 'Pin-Code', width: 100 },\n { prop: 'dekiveries', name: 'Dekiveries', width: 100 },\n { prop: 'times', name: 'Timings', width: 100 },\n { prop: 'deliversby', name: 'Delivers By', width: 100 },\n { prop: 'covers', name: 'Covers', width: 100 },\n { prop: 'deliverypincode', name: 'Delivery Pin-Code', width: 100 },\n ];\n // this.loaddata();\n\n this.intervalId = setInterval(() => {\n this.time = new Date();\n }, 1000);\n\n // Using RxJS Timer\n this.subscription = timer(0, 1000)\n .pipe(\n map(() => new Date()),\n share()\n )\n .subscribe(time => {\n this.rxTime = time;\n });\n }\n\n\n loaddata() {\n this.loadingIndicator = true;\n this.Getmaphub();\n }\n\n\n getbookingPinCode($event) {\n this.GetCityMaster();\n this.arrcity2 = this.arrcity\n $('#hub').autocomplete({\n source: this.arrcity2,\n delay: 500\n });\n }\n\n GetCityMaster() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetcity1Successful(result, 'CITY'), error => this.onDataLoadFailed(error));\n }\n onDatagetcity1Successful(states: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"STATE\") {\n this.arrcity = states;\n }\n if (listof == \"CITY\") {\n this.arrcity = states;\n }\n }\n SetCityAndState($event) {\n let citystate: string = (document.getElementById('bookingPinCode')).value;\n if (citystate.indexOf('-') > 0) {\n (document.getElementById('bookingPinCode')).value = citystate.substring(0, citystate.indexOf('-') - 1);\n (document.getElementById('bookingCity')).value = citystate.substring(citystate.indexOf('-') + 1);\n\n }\n }\n\n\n\n\n getmapeHub($event) {\n this.Getmaphub();\n this.arritemlist2 = this.arritemlist\n $('#mapeHub').autocomplete({\n source: this.arritemlist2,\n delay: 50\n });\n }\n Getmaphub() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'mapeHub'), error => this.onDataLoadFailed(error));\n }\n onDatagetSuccessful(itemlist: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"mapeHub\") {\n this.arritemlist = itemlist;\n }\n }\n onDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve item receive from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n\n Insertdestinationdelivery() {\n debugger;\n var strvalue = this.editLastmiledeliveryhubs;\n }\n private saveSuccessHelper(Lastmiledeliveryhubss?: Lastmiledeliveryhubs) {\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Success', `Last Mile Delivery Hubs \\\"${this.editLastmiledeliveryhubs.deliverypincode}\\\" was created successfully`, MessageSeverity.success);\n }\n onSearchChanged(value: string) {\n\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.deliverypincode));\n }\n private saveFailedHelper(error: any) {\n\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\n }\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n onlyNumberKey(event) {\n var ASCIICode = (event.which) ? event.which : event.keyCode\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\n return false;\n return true;\n }\n}\nexport class Lastmiledeliveryhubs {\n constructor(hub?: string, city?: string, pincodes?: string, times?: string,\n dekiveries?: string, dekinumberofruns?: string, deliversby?: string, covers?: string, coversnumbersofrun?: string\n , deliverypincode?: string, starttime?: string, endtime?: string) {\n this.hub = hub;\n this.city = city;\n this.pincodes = pincodes;\n this.dekiveries = dekiveries;\n this.dekinumberofruns = dekinumberofruns;\n this.times = times;\n this.deliversby = deliversby;\n this.covers = covers;\n this.coversnumbersofrun = coversnumbersofrun;\n this.deliverypincode = deliverypincode;\n this.starttime = starttime;\n this.endtime = endtime;\n };\n\n public hub: string\n public city: string\n public pincodes: string\n public dekiveries: string\n public dekinumberofruns: string\n public times: string\n public deliversby: string\n public covers: string\n public coversnumbersofrun: string\n public deliverypincode: string\n public starttime: string\n public endtime: string\n}\n","export default \":host ::ng-deep .row-color1 {\\n background-color: darkred;\\n color: white;\\n}\\n\\n:host ::ng-deep .row-color2 {\\n background-color: darkgreen;\\n color: white;\\n}\\n\\n.small-box {\\n border-radius: 0.25rem;\\n box-shadow: 0 0 1px rgba(0, 0, 0, 0.13), 0 1px 3px rgba(0, 0, 0, 0.2);\\n display: block;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n\\n.small-box > .small-box-footer {\\n background-color: rgba(0, 0, 0, 0.1);\\n color: rgba(255, 255, 255, 0.8);\\n display: block;\\n padding: 3px 0;\\n position: relative;\\n text-align: center;\\n text-decoration: none;\\n z-index: 10;\\n}\\n\\n.bg-info > a {\\n color: #fff !important;\\n}\\n\\n.row {\\n display: flex;\\n flex-wrap: wrap;\\n margin-right: -7.5px;\\n margin-left: -7.5px;\\n}\\n\\n.col-lg-3 .small-box h3, .col-md-3 .small-box h3, .col-xl-3 .small-box h3 {\\n font-size: 2.2rem;\\n}\\n\\n.small-box h3 {\\n font-size: 2.2rem;\\n font-weight: 700;\\n margin: 0 0 10px;\\n padding: 0;\\n white-space: nowrap;\\n color: #fff;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\na:hover {\\n cursor: default;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box:hover {\\n text-decoration: none;\\n}\\n\\n.bg-success, .bg-success > a {\\n color: #fff !important;\\n}\\n\\n.inner {\\n height: 120px !important;\\n padding-left: 10px;\\n padding-top: 10px;\\n}\\n\\n.color {\\n color: #fff;\\n font-size: 1.4rem !important;\\n}\\n\\nbutton.close {\\n position: absolute;\\n top: 0.25rem;\\n right: 1.5rem;\\n z-index: 100;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9sb2FkLWRhc2gtYm9hcmQtaW4vRDpcXE9uZXhXZWJcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xcbG9hZC1kYXNoLWJvYXJkLWluXFxsb2FkLWRhc2gtYm9hcmQtaW4uY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvbG9hZC1kYXNoLWJvYXJkLWluL2xvYWQtZGFzaC1ib2FyZC1pbi5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHlCQUFBO0VBQ0EsWUFBQTtBQ0NGOztBREVBO0VBQ0UsMkJBQUE7RUFDQSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSxzQkFBQTtFQUNBLHFFQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QUNDRjs7QURFQTtFQUNFLG9DQUFBO0VBQ0EsK0JBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7QUNDRjs7QURFQTtFQUNFLHNCQUFBO0FDQ0Y7O0FERUE7RUFFRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7QUNDRjs7QURFQTtFQUNFLGlCQUFBO0FDQ0Y7O0FERUE7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0FDQ0Y7O0FERUE7RUFDRSxVQUFBO0FDQ0Y7O0FERUE7RUFDRSxlQUFBO0FDQ0Y7O0FERUE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QUNDRjs7QURFQTtFQUNFLHNCQUFBO0FDQ0Y7O0FERUE7RUFDRSxjQUFBO0VBQ0EsMEJBQUE7VUFBQSx1QkFBQTtFQUNBLHlCQUFBO1VBQUEscUJBQUE7RUFDQSx5QkFBQTtVQUFBLHdCQUFBO0VBQ0EsdUJBQUE7VUFBQSxzQkFBQTtBQ0NGOztBREVBO0VBQ0UsVUFBQTtBQ0NGOztBREVBO0VBQ0UsZUFBQTtBQ0NGOztBREVBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0FDQ0Y7O0FERUE7RUFDRSxzQkFBQTtBQ0NGOztBREVBO0VBQ0UsZUFBQTtBQ0NGOztBREVBO0VBQ0UsY0FBQTtFQUNBLDBCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtVQUFBLHFCQUFBO0VBQ0EseUJBQUE7VUFBQSx3QkFBQTtFQUNBLHVCQUFBO1VBQUEsc0JBQUE7QUNDRjs7QURFQTtFQUNFLHFCQUFBO0FDQ0Y7O0FESUE7RUFDRSxzQkFBQTtBQ0RGOztBRElBO0VBQ0Usd0JBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0FDREY7O0FESUE7RUFDRSxXQUFBO0VBQ0EsNEJBQUE7QUNERjs7QURNQTtFQUNFLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxZQUFBO0FDSEYiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2xvYWQtZGFzaC1ib2FyZC1pbi9sb2FkLWRhc2gtYm9hcmQtaW4uY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtyZWQ7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtncmVlbjtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3gge1xyXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XHJcbiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2IoMCAwIDAgLyAxMyUpLCAwIDFweCAzcHggcmdiKDAgMCAwIC8gMjAlKTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnNtYWxsLWJveCA+IC5zbWFsbC1ib3gtZm9vdGVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC4xKTtcclxuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuOCk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogM3B4IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgei1pbmRleDogMTA7XHJcbn1cclxuXHJcbi5iZy1pbmZvID4gYSB7XHJcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJvdyB7XHJcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtNy41cHg7XHJcbiAgbWFyZ2luLWxlZnQ6IC03LjVweDtcclxufVxyXG5cclxuLmNvbC1sZy0zIC5zbWFsbC1ib3ggaDMsIC5jb2wtbWQtMyAuc21hbGwtYm94IGgzLCAuY29sLXhsLTMgLnNtYWxsLWJveCBoMyB7XHJcbiAgZm9udC1zaXplOiAyLjJyZW07XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggaDMge1xyXG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgbWFyZ2luOiAwIDAgMTBweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggaDMsIC5zbWFsbC1ib3ggcCB7XHJcbiAgei1pbmRleDogNTtcclxufVxyXG5cclxuLnNtYWxsLWJveCBwIHtcclxuICBmb250LXNpemU6IDFyZW07XHJcbn1cclxuXHJcbnAge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbnAge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xyXG4gIG1hcmdpbi1ibG9jay1lbmQ6IDFlbTtcclxuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwcHg7XHJcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcclxuICB6LWluZGV4OiA1O1xyXG59XHJcblxyXG4uc21hbGwtYm94IHAge1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxufVxyXG5cclxucCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuYTpob3ZlciB7XHJcbiAgY3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcblxyXG5wIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFlbTtcclxuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XHJcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xyXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwcHg7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3g6aG92ZXIge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuXHJcblxyXG4uYmctc3VjY2VzcywgLmJnLXN1Y2Nlc3MgPiBhIHtcclxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaW5uZXIge1xyXG4gIGhlaWdodDogMTIwcHggIWltcG9ydGFudDtcclxuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgcGFkZGluZy10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5jb2xvciB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZm9udC1zaXplOiAxLjRyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcblxyXG5idXR0b24uY2xvc2Uge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDAuMjVyZW07XHJcbiAgcmlnaHQ6IDEuNXJlbTtcclxuICB6LWluZGV4OiAxMDA7XHJcbn1cclxuIiwiOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya3JlZDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZ3JlZW47XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnNtYWxsLWJveCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEzKSwgMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNtYWxsLWJveCA+IC5zbWFsbC1ib3gtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uYmctaW5mbyA+IGEge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4ucm93IHtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtNy41cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNy41cHg7XG59XG5cbi5jb2wtbGctMyAuc21hbGwtYm94IGgzLCAuY29sLW1kLTMgLnNtYWxsLWJveCBoMywgLmNvbC14bC0zIC5zbWFsbC1ib3ggaDMge1xuICBmb250LXNpemU6IDIuMnJlbTtcbn1cblxuLnNtYWxsLWJveCBoMyB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAxMHB4O1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5hOmhvdmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJnLXN1Y2Nlc3MsIC5iZy1zdWNjZXNzID4gYSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5pbm5lciB7XG4gIGhlaWdodDogMTIwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLmNvbG9yIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICByaWdodDogMS41cmVtO1xuICB6LWluZGV4OiAxMDA7XG59Il19 */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-load-dash-board-in',\r\n templateUrl: './load-dash-board-in.component.html',\r\n styleUrls: ['./load-dash-board-in.component.scss']\r\n})\r\nexport class LoadDashBoardInComponent implements OnInit {\r\n\r\n totalLoad: number = 0;\r\n loadout: any[] = [];\r\n loadin: any[] = [];\r\n columns: any[] = [];\r\n rows: any[] = [];\r\n InLoad: number = 0;\r\n loadrecv: any[] = [];\r\n recvload: number = 0;\r\n loadingIndicator: boolean;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n constructor(private localstre: LocalStoreManager, private troute: ActivatedRoute, private datePipe: DatePipe, private excelService: ExcelService, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'recdFrom', name: 'Dispatch Hub', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time ', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'recieveBranch', name: 'Recieve Branch/Hub', width: 150 },\r\n { prop: 'etr', name: 'ETR', width: 100 },\r\n\r\n ];\r\n this.GetData();\r\n }\r\n GetData(inout?: string) {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetLdrLashboardIn'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"officename\"\r\n pr.PropertyValue = logindata[0].officename;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result, inout), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n GetReportData(inout?: string) {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetLdrLashboardIn'\r\n let Parameter = new Array(3);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"officename\"\r\n pr.PropertyValue = logindata[0].officename;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"FromDate\"\r\n pr.PropertyValue = $('#fromDate').val().toString();\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"ToDate\"\r\n pr.PropertyValue = $('#toDate').val().toString();\r\n Parameter[2] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result, inout), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getSucessDataExrate(result, inout) {\r\n this.loadin = result.table;\r\n this.InLoad = this.loadin.length;\r\n //this.loadout = result.table;\r\n this.loadrecv = result.table1;\r\n this.recvload = this.loadrecv.length;\r\n //this.totalLoad = this.loadout.length;\r\n\r\n if (isNullOrUndefined(inout)) {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'recdFrom', name: 'Dispatch Hub', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time ', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'recieveBranch', name: 'Recieve Branch/Hub', width: 150 },\r\n { prop: 'etr', name: 'ETR', width: 100 },\r\n\r\n ];\r\n this.rows = this.loadin\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n })\r\n this.rows = [...this.rows]\r\n }\r\n \r\n else {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'recdFrom', name: 'Dispatch Hub', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time ', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'recieveBranch', name: 'Recieve Branch/Hub', width: 150 },\r\n { prop: 'etr', name: 'ETR', width: 100 },\r\n { prop: 'recvDate', name: 'ETA', width: 100 },\r\n { prop: 'recvBy', name: 'Recieve By', width: 100 },\r\n\r\n ];\r\n this.rows = this.loadrecv;\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n });\r\n this.rows = [...this.rows];\r\n }\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n refreshgrid(inout?: string) {\r\n if (isNullOrUndefined(inout)) {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'recdFrom', name: 'Dispatch Hub', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time ', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'recieveBranch', name: 'Recieve Branch/Hub', width: 150 },\r\n { prop: 'etr', name: 'ETR', width: 100 },\r\n\r\n ];\r\n this.rows = this.loadin\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n })\r\n this.rows = [...this.rows]\r\n }\r\n \r\n else {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'recdFrom', name: 'Dispatch Hub', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time ', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'recieveBranch', name: 'Recieve Branch/Hub', width: 150 },\r\n { prop: 'etr', name: 'ETR', width: 100 },\r\n { prop: 'recvDate', name: 'ETA', width: 100 },\r\n { prop: 'recvBy', name: 'Recieve By', width: 100 },\r\n\r\n ];\r\n this.rows = this.loadrecv;\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n });\r\n this.rows = [...this.rows];\r\n }\r\n\r\n }\r\n\r\n getRowClass = (row) => {\r\n if (row.reciveAt !== undefined) {\r\n return {\r\n 'row-color1': isNullOrUndefined(row.reciveAt),\r\n 'row-color2': !isNullOrUndefined(row.reciveAt),\r\n };\r\n }\r\n else {\r\n return {\r\n 'row-color1': false,\r\n 'row-color2': false,\r\n };\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.loadingIndicator = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n\r\n }\r\n \r\n gatepassprint(row: any) {\r\n this.router.navigate(['/printgp'], {\r\n queryParams: {\r\n GatePassno: row.gatePassno,\r\n backurl: '/ldrdash'\r\n }\r\n });\r\n }\r\n\r\n\r\n \r\n\r\n GenerateExcelIn() {\r\n var data = []\r\n var Badata = this.localstre.getData(\"BaLoginData\");\r\n\r\n for (let index = 0; index < this.loadin.length; index++) {\r\n\r\n data[index] = [this.loadin[index].recdFrom,\r\n this.loadin[index].gatePassno,\r\n this.loadin[index].loadDate,\r\n this.loadin[index].time,\r\n this.loadin[index].mode,\r\n this.loadin[index].vendoreName,\r\n this.loadin[index].totalBag,\r\n this.loadin[index].totalWeight,\r\n this.loadin[index].destination,\r\n this.loadin[index].recieveBranch,\r\n this.loadin[index].etr,\r\n this.loadin[index].atr, \"\"\r\n\r\n ]\r\n }\r\n\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Pre-alert Report\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Dispatch Hub\", \"Gatepass\", \"Date\", \"Time\", \"Mode\", \"Vendore Name\", \"Total Bag\", \"Total Weight\", \"Destination\", \"Recieving Hub/Branch\", \"ETR\", \"ATR\", \"Remark\"]\r\n this.excelService.title = Office + \" \" + \"Inbound Prealert\";\r\n this.excelService.Widths = [30, 20, 15, 10, 15, 40, 15, 15, 30, 30, 15, 15, 30]\r\n this.excelService.generateExcel();\r\n }\r\n GenerateExcelRecv() {\r\n var data = []\r\n var Badata = this.localstre.getData(\"BaLoginData\");\r\n\r\n for (let index = 0; index < this.loadrecv.length; index++) {\r\n\r\n data[index] = [this.loadrecv[index].recdFrom,\r\n this.loadrecv[index].gatePassno,\r\n this.loadrecv[index].loadDate,\r\n this.loadrecv[index].time,\r\n this.loadrecv[index].mode,\r\n this.loadrecv[index].vendoreName,\r\n this.loadrecv[index].totalBag,\r\n this.loadrecv[index].totalWeight,\r\n this.loadrecv[index].destination,\r\n this.loadrecv[index].recieveBranch,\r\n this.loadrecv[index].etr,\r\n this.loadrecv[index].recvDate, this.loadrecv[index].recvTime,\r\n this.loadrecv[index].recvBy, \"\"\r\n ]\r\n }\r\n\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Received Report\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Dispatch Hub\", \"Gatepass\", \"Date\", \"Time\", \"Mode\", \"Vendore Name\", \"Total Bag\", \"Total Weight\", \"Destination\", \"Recieving Hub/Branch\", \"ETR\", \"ATR\", \"Recieved By\", \"Remark\"]\r\n this.excelService.title = Office + \" \" + \"Inbound Recieve\";\r\n this.excelService.Widths = [30, 20, 15, 10, 15, 40, 15, 15, 30, 30, 15, 15, 30, 30]\r\n this.excelService.generateExcel();\r\n }\r\n}\r\n","export default \":host ::ng-deep .row-color1 {\\n background-color: darkred;\\n color: white;\\n}\\n\\n:host ::ng-deep .row-color2 {\\n background-color: darkgreen;\\n color: white;\\n}\\n\\n.small-box {\\n border-radius: 0.25rem;\\n box-shadow: 0 0 1px rgba(0, 0, 0, 0.13), 0 1px 3px rgba(0, 0, 0, 0.2);\\n display: block;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n\\n.small-box > .small-box-footer {\\n background-color: rgba(0, 0, 0, 0.1);\\n color: rgba(255, 255, 255, 0.8);\\n display: block;\\n padding: 3px 0;\\n position: relative;\\n text-align: center;\\n text-decoration: none;\\n z-index: 10;\\n}\\n\\n.bg-info > a {\\n color: #fff !important;\\n}\\n\\n.row {\\n display: flex;\\n flex-wrap: wrap;\\n margin-right: -7.5px;\\n margin-left: -7.5px;\\n}\\n\\n.col-lg-3 .small-box h3, .col-md-3 .small-box h3, .col-xl-3 .small-box h3 {\\n font-size: 2.2rem;\\n}\\n\\n.small-box h3 {\\n font-size: 2.2rem;\\n font-weight: 700;\\n margin: 0 0 10px;\\n padding: 0;\\n white-space: nowrap;\\n color: #fff;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\na:hover {\\n cursor: default;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box:hover {\\n text-decoration: none;\\n}\\n\\n.bg-success, .bg-success > a {\\n color: #fff !important;\\n}\\n\\n.inner {\\n height: 120px !important;\\n padding-left: 10px;\\n padding-top: 10px;\\n}\\n\\n.color {\\n color: #fff;\\n font-size: 1.4rem !important;\\n}\\n\\nbutton.close {\\n position: absolute;\\n top: 0.25rem;\\n right: 1.5rem;\\n z-index: 100;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9sb2FkLWRhc2gtYm9hcmQvRDpcXE9uZXhXZWJcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xcbG9hZC1kYXNoLWJvYXJkXFxsb2FkLWRhc2gtYm9hcmQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvbG9hZC1kYXNoLWJvYXJkL2xvYWQtZGFzaC1ib2FyZC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHlCQUFBO0VBQ0EsWUFBQTtBQ0NGOztBREVBO0VBQ0UsMkJBQUE7RUFDQSxZQUFBO0FDQ0Y7O0FEQ0E7RUFDRSxzQkFBQTtFQUNBLHFFQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QUNFRjs7QURDQTtFQUNFLG9DQUFBO0VBQ0EsK0JBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7QUNFRjs7QURDQTtFQUNFLHNCQUFBO0FDRUY7O0FEQ0E7RUFFRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7QUNFRjs7QURDQTtFQUNFLGlCQUFBO0FDRUY7O0FEQ0E7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0FDRUY7O0FEQ0E7RUFDRSxVQUFBO0FDRUY7O0FEQ0E7RUFDRSxlQUFBO0FDRUY7O0FEQ0E7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QUNFRjs7QURDQTtFQUNFLHNCQUFBO0FDRUY7O0FEQ0E7RUFDRSxjQUFBO0VBQ0EsMEJBQUE7VUFBQSx1QkFBQTtFQUNBLHlCQUFBO1VBQUEscUJBQUE7RUFDQSx5QkFBQTtVQUFBLHdCQUFBO0VBQ0EsdUJBQUE7VUFBQSxzQkFBQTtBQ0VGOztBRENBO0VBQ0UsVUFBQTtBQ0VGOztBRENBO0VBQ0UsZUFBQTtBQ0VGOztBRENBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0FDRUY7O0FEQ0E7RUFDRSxzQkFBQTtBQ0VGOztBREFBO0VBQ0EsZUFBQTtBQ0dBOztBREFBO0VBQ0UsY0FBQTtFQUNBLDBCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtVQUFBLHFCQUFBO0VBQ0EseUJBQUE7VUFBQSx3QkFBQTtFQUNBLHVCQUFBO1VBQUEsc0JBQUE7QUNHRjs7QURBQTtFQUNFLHFCQUFBO0FDR0Y7O0FERUE7RUFDRSxzQkFBQTtBQ0NGOztBREVBO0VBQ0Usd0JBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0FDQ0Y7O0FERUE7RUFDRSxXQUFBO0VBQ0EsNEJBQUE7QUNDRjs7QURJQTtFQUNFLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxZQUFBO0FDREYiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2xvYWQtZGFzaC1ib2FyZC9sb2FkLWRhc2gtYm9hcmQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtyZWQ7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtncmVlbjtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuLnNtYWxsLWJveCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcclxuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYigwIDAgMCAvIDEzJSksIDAgMXB4IDNweCByZ2IoMCAwIDAgLyAyMCUpO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uc21hbGwtYm94ID4gLnNtYWxsLWJveC1mb290ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjEpO1xyXG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44KTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAzcHggMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLmJnLWluZm8gPiBhIHtcclxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucm93IHtcclxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBtYXJnaW4tcmlnaHQ6IC03LjVweDtcclxuICBtYXJnaW4tbGVmdDogLTcuNXB4O1xyXG59XHJcblxyXG4uY29sLWxnLTMgLnNtYWxsLWJveCBoMywgLmNvbC1tZC0zIC5zbWFsbC1ib3ggaDMsIC5jb2wteGwtMyAuc21hbGwtYm94IGgzIHtcclxuICBmb250LXNpemU6IDIuMnJlbTtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMyB7XHJcbiAgZm9udC1zaXplOiAyLjJyZW07XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcclxuICB6LWluZGV4OiA1O1xyXG59XHJcblxyXG4uc21hbGwtYm94IHAge1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxufVxyXG5cclxucCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxucCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XHJcbiAgbWFyZ2luLWJsb2NrLWVuZDogMWVtO1xyXG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcclxuICBtYXJnaW4taW5saW5lLWVuZDogMHB4O1xyXG59XHJcblxyXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xyXG4gIHotaW5kZXg6IDU7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggcCB7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG59XHJcblxyXG5wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbiosIDo6YWZ0ZXIsIDo6YmVmb3JlIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcbmE6aG92ZXJ7XHJcbmN1cnNvcjpkZWZhdWx0O1xyXG59XHJcblxyXG5wIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFlbTtcclxuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XHJcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xyXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwcHg7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3g6aG92ZXIge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuXHJcblxyXG4uYmctc3VjY2VzcywgLmJnLXN1Y2Nlc3MgPiBhIHtcclxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaW5uZXIge1xyXG4gIGhlaWdodDogMTIwcHggIWltcG9ydGFudDtcclxuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgcGFkZGluZy10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5jb2xvciB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZm9udC1zaXplOiAxLjRyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcblxyXG5idXR0b24uY2xvc2Uge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDAuMjVyZW07XHJcbiAgcmlnaHQ6IDEuNXJlbTtcclxuICB6LWluZGV4OiAxMDA7XHJcbn1cclxuIiwiOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya3JlZDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZ3JlZW47XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnNtYWxsLWJveCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEzKSwgMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNtYWxsLWJveCA+IC5zbWFsbC1ib3gtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uYmctaW5mbyA+IGEge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4ucm93IHtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtNy41cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNy41cHg7XG59XG5cbi5jb2wtbGctMyAuc21hbGwtYm94IGgzLCAuY29sLW1kLTMgLnNtYWxsLWJveCBoMywgLmNvbC14bC0zIC5zbWFsbC1ib3ggaDMge1xuICBmb250LXNpemU6IDIuMnJlbTtcbn1cblxuLnNtYWxsLWJveCBoMyB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAxMHB4O1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5hOmhvdmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJnLXN1Y2Nlc3MsIC5iZy1zdWNjZXNzID4gYSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5pbm5lciB7XG4gIGhlaWdodDogMTIwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLmNvbG9yIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICByaWdodDogMS41cmVtO1xuICB6LWluZGV4OiAxMDA7XG59Il19 */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-load-dash-board',\r\n templateUrl: './load-dash-board.component.html',\r\n styleUrls: ['./load-dash-board.component.scss']\r\n})\r\nexport class LoadDashBoardComponent implements OnInit {\r\n totalLoad: number = 0;\r\n loadout: any[] = [];\r\n loadin: any[] = [];\r\n columns: any[] = [];\r\n rows: any[] = [];\r\n InLoad: number = 0;\r\n loadrecv: any[] = [];\r\n recvload: number = 0;\r\n loadingIndicator: boolean;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n constructor(private localstre: LocalStoreManager, private troute: ActivatedRoute, private datePipe: DatePipe, private excelService: ExcelService, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'origin', name: 'Origin', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'reciveAt', name: 'ReciveAt', width: 150 },\r\n { prop: 'reciveCity', name: 'City', width: 100 },\r\n { prop: 'recvDate', name: 'RecvDate', width: 100 },\r\n { prop: 'recvTime', name: 'RecvTime', width: 60 }\r\n\r\n //{ prop: 'transitDetail', name: 'Transit Detail', width: 300 }\r\n ];\r\n this.GetData();\r\n }\r\n GetData(inout?: string) {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Ups_LdrDashBoard'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"officename\"\r\n pr.PropertyValue = logindata[0].officename;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result, inout), error => this.onDataLoadFailed(error))\r\n \r\n }\r\n GetReportData(inout?: string) {\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Ups_LdrDashBoard'\r\n let Parameter = new Array(3);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"officename\"\r\n pr.PropertyValue = logindata[0].officename;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"FromDate\"\r\n pr.PropertyValue = $('#fromDate').val().toString();\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"ToDate\"\r\n pr.PropertyValue = $('#toDate').val().toString();\r\n Parameter[2] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result, inout), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getSucessDataExrate(result, inout) {\r\n this.loadin = result.table1;\r\n this.InLoad = this.loadin.length;\r\n this.loadout = result.table;\r\n this.loadrecv = result.table2;\r\n this.recvload = this.loadrecv.length;\r\n this.totalLoad = this.loadout.length;\r\n\r\n if (isNullOrUndefined(inout)) {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'origin', name: 'Origin', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'reciveAt', name: 'Dest. Associate', width: 150 },\r\n { prop: 'reciveCity', name: 'City', width: 100 },\r\n { prop: 'etd', name: 'ETD', width: 100 },\r\n { prop: 'atd', name: 'ATD', width: 100 },\r\n { prop: 'eta', name: 'ETA', width: 100 },\r\n { prop: 'recvDate', name: 'RecvDate', width: 100 },\r\n { prop: 'recvTime', name: 'RecvTime', width: 60 }\r\n\r\n //{ prop: 'transitDetail', name: 'Transit Detail', width: 300 }\r\n ];\r\n this.rows = this.loadout\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n })\r\n this.rows = [...this.rows]\r\n }\r\n else if (inout == 'Pre') {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'recdFrom', name: 'Dispatch Hub', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time ', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'recieveBranch', name: 'Recieve Branch/Hub', width: 150 },\r\n { prop: 'etr', name: 'ETR', width: 100 },\r\n\r\n ];\r\n this.rows = this.loadin;\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n });\r\n this.rows = [...this.rows];\r\n\r\n //{ prop: 'transitDetail', name: 'Transit Detail', width: 300 }\r\n\r\n }\r\n else {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'recdFrom', name: 'Dispatch Hub', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time ', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'recieveBranch', name: 'Recieve Branch/Hub', width: 150 },\r\n { prop: 'etr', name: 'ETR', width: 100 },\r\n { prop: 'recvDate', name: 'ETA', width: 100 },\r\n { prop: 'recvBy', name: 'Recieve By', width: 100 },\r\n\r\n ];\r\n this.rows = this.loadrecv;\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n });\r\n this.rows = [...this.rows];\r\n }\r\n this.alertService.stopLoadingMessage();\r\n\r\n }\r\n refreshgrid(inout?:string) {\r\n if (isNullOrUndefined(inout)) {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'origin', name: 'Origin', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'reciveAt', name: 'Dest. Associate', width: 150 },\r\n { prop: 'reciveCity', name: 'City', width: 100 },\r\n { prop: 'etd', name: 'ETD', width: 100 },\r\n { prop: 'atd', name: 'ATD', width: 100 },\r\n { prop: 'eta', name: 'ETA', width: 100 },\r\n { prop: 'recvDate', name: 'RecvDate', width: 100 },\r\n { prop: 'recvTime', name: 'RecvTime', width: 60 }\r\n\r\n //{ prop: 'transitDetail', name: 'Transit Detail', width: 300 }\r\n ];\r\n this.rows = this.loadout\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n })\r\n this.rows = [...this.rows]\r\n }\r\n else if (inout == 'Pre') {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'origin', name: 'Origin', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'reciveAt', name: 'Dest. Associate', width: 150 },\r\n { prop: 'reciveCity', name: 'City', width: 100 },\r\n { prop: 'etd', name: 'ETD', width: 100 },\r\n { prop: 'atd', name: 'ATD', width: 100 },\r\n { prop: 'eta', name: 'ETA', width: 100 },\r\n { prop: 'recvDate', name: 'RecvDate', width: 100 },\r\n { prop: 'recvTime', name: 'RecvTime', width: 60 }\r\n\r\n //{ prop: 'transitDetail', name: 'Transit Detail', width: 300 }\r\n ];\r\n this.rows = this.loadin;\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n });\r\n this.rows = [...this.rows];\r\n\r\n //{ prop: 'transitDetail', name: 'Transit Detail', width: 300 }\r\n\r\n }\r\n else {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'origin', name: 'Origin', width: 150 },\r\n { prop: 'gatePassno', name: 'GatePassno', cellTemplate: this.actionsTemplate, width: 125 },\r\n { prop: 'loadDate', name: 'LoadDate', width: 100 },\r\n { prop: 'time', name: 'Time', width: 60 },\r\n { prop: 'mode', name: 'Mode', width: 80 },\r\n { prop: 'vendoreName', name: 'VendoreName', width: 175 },\r\n { prop: 'totalBag', name: 'Bags', width: 50 },\r\n { prop: 'totalWeight', name: 'TotalWt.', width: 75 },\r\n { prop: 'destination', name: 'Destination', width: 100 },\r\n { prop: 'reciveAt', name: 'Dest. Associate', width: 150 },\r\n { prop: 'reciveCity', name: 'City', width: 100 },\r\n { prop: 'etd', name: 'ETD', width: 100 },\r\n { prop: 'atd', name: 'ATD', width: 100 },\r\n { prop: 'eta', name: 'ETA', width: 100 },\r\n { prop: 'recvDate', name: 'RecvDate', width: 100 },\r\n { prop: 'recvTime', name: 'RecvTime', width: 60 }\r\n\r\n //{ prop: 'transitDetail', name: 'Transit Detail', width: 300 }\r\n ];\r\n this.rows = this.loadrecv;\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n });\r\n this.rows = [...this.rows];\r\n }\r\n\r\n }\r\n \r\n getRowClass = (row) => {\r\n if (row.reciveAt !== undefined) {\r\n return {\r\n 'row-color1': isNullOrUndefined(row.reciveAt),\r\n 'row-color2': !isNullOrUndefined(row.reciveAt),\r\n };\r\n }\r\n else {\r\n return {\r\n 'row-color1': false,\r\n 'row-color2': false,\r\n };\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.loadingIndicator = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n\r\n }\r\n GenerateExcelOut() {\r\n var data = []\r\n var Badata = this.localstre.getData(\"BaLoginData\");\r\n for (let index = 0; index < this.loadout.length; index++) {\r\n data[index] = [this.loadout[index].origin,\r\n this.loadout[index].gatePassno,\r\n this.loadout[index].loadDate,\r\n this.loadout[index].time,\r\n this.loadout[index].mode,\r\n this.loadout[index].vendoreName,\r\n this.loadout[index].totalBag,\r\n this.loadout[index].totalWeight,\r\n this.loadout[index].destination,\r\n this.loadout[index].reciveAt,\r\n this.loadout[index].etd,\r\n this.loadout[index].atd,\r\n this.loadout[index].eta,\r\n (isNullOrUndefined(this.loadout[index].recvDate) ? \" \" : this.loadout[index].recvDate),\r\n (isNullOrUndefined(this.loadout[index].recvTime) ? \" \" : this.loadout[index].recvTime),\r\n this.loadout[index].recvBy,\"\"\r\n\r\n ]\r\n }\r\n\r\nthis.excelService.data = data;\r\nthis.excelService.Sheetname = \"Lod Out Report\";\r\nlet Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\nthis.excelService.header = [\"Origin\", \"Gatepass\", \"Date\", \"Time\", \"Mode\", \"Vendore\", \"Total Bag\", \"Weight\",\"Destination\", \"Dest. Associate\", \"ETD\",\"ATD\",\"ETA\",\"ATA\",\"\", \"Receive By\", \"Remark\"]\r\n this.excelService.title = Office + \" Load Dispatch Report\"\r\nthis.excelService.Widths = [30, 20, 15, 10, 15, 40, 15, 15,30,30,20,20,20,12,8,20,30]\r\n this.excelService.generateExcel();\r\n }\r\n gatepassprint(row: any) {\r\n this.router.navigate(['/printgp'], {\r\n queryParams: {\r\n GatePassno: row.gatePassno,\r\n backurl: '/ldrdash'\r\n }\r\n });\r\n }\r\n\r\n\r\n GenerateExcelBalance() {\r\n var data = []\r\n var Badata = this.localstre.getData(\"BaLoginData\");\r\n\r\n for (let index = 0; index < this.loadin.length; index++) {\r\n\r\n data[index] = [this.loadin[index].origin,\r\n this.loadin[index].gatePassno,\r\n this.loadin[index].loadDate,\r\n this.loadin[index].time,\r\n this.loadin[index].mode,\r\n this.loadin[index].vendoreName,\r\n this.loadin[index].totalBag,\r\n this.loadin[index].totalWeight,\r\n this.loadin[index].destination,\r\n this.loadin[index].reciveAt,\r\n this.loadin[index].etd,\r\n this.loadin[index].atd,\r\n this.loadin[index].eta,\r\n (isNullOrUndefined(this.loadin[index].recvDate) ? \" \" : this.loadin[index].recvDate),\r\n (isNullOrUndefined(this.loadin[index].recvTime) ? \" \" : this.loadin[index].recvTime),\r\n this.loadin[index].recvBy, \"\"\r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Pre-alert Report\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Origin\", \"Gatepass\", \"Date\", \"Time\", \"Mode\", \"Vendore\", \"Total Bag\", \"Weight\", \"Destination\", \"Dest. Associate\", \"ETD\", \"ATD\", \"ETA\", \"ATA\", \"\", \"Receive By\", \"Remark\"]\r\n this.excelService.title = Office + \" Load Dispatch Report\"\r\n this.excelService.Widths = [30, 20, 15, 10, 15, 40, 15, 15, 30, 30, 20, 20, 20, 12, 8, 20, 30]\r\n this.excelService.generateExcel();;\r\n }\r\n\r\n GenerateExcelIn() {\r\n var data = []\r\n var Badata = this.localstre.getData(\"BaLoginData\");\r\n\r\n for (let index = 0; index < this.loadin.length; index++) {\r\n\r\n data[index] = [this.loadin[index].recdFrom,\r\n this.loadin[index].gatePassno,\r\n this.loadin[index].loadDate,\r\n this.loadin[index].time,\r\n this.loadin[index].mode,\r\n this.loadin[index].vendoreName,\r\n this.loadin[index].totalBag,\r\n this.loadin[index].totalWeight,\r\n this.loadin[index].destination,\r\n this.loadin[index].recieveBranch,\r\n this.loadin[index].etr,\r\n this.loadin[index].atr,\"\"\r\n\r\n ]\r\n }\r\n\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Pre-alert Report\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Origin\", \"Gatepass\", \"Date\", \"Time\", \"Mode\", \"Vendore\", \"Total Bag\", \"Weight\", \"Destination\", \"Dest. Associate\", \"ETD\", \"ATD\", \"ETA\", \"ATA\", \"\", \"Receive By\", \"Remark\"]\r\n this.excelService.title = Office + \" Load Dispatch Report\"\r\n this.excelService.Widths = [30, 20, 15, 10, 15, 40, 15, 15, 30, 30, 20, 20, 20, 12, 8, 20, 30]\r\n this.excelService.generateExcel();;\r\n }\r\n GenerateExcelRecv() {\r\n var data = []\r\n var Badata = this.localstre.getData(\"BaLoginData\");\r\n\r\n for (let index = 0; index < this.loadrecv.length; index++) {\r\n\r\n data[index] = [this.loadrecv[index].origin,\r\n this.loadrecv[index].gatePassno,\r\n this.loadrecv[index].loadDate,\r\n this.loadrecv[index].time,\r\n this.loadrecv[index].mode,\r\n this.loadrecv[index].vendoreName,\r\n this.loadrecv[index].totalBag,\r\n this.loadrecv[index].totalWeight,\r\n this.loadrecv[index].destination,\r\n this.loadrecv[index].reciveAt,\r\n this.loadrecv[index].etd,\r\n this.loadrecv[index].atd,\r\n this.loadrecv[index].eta,\r\n (isNullOrUndefined(this.loadrecv[index].recvDate) ? \" \" : this.loadrecv[index].recvDate),\r\n (isNullOrUndefined(this.loadin[index].recvTime) ? \" \" : this.loadrecv[index].recvTime),\r\n this.loadrecv[index].recvBy, \"\"\r\n\r\n\r\n ]\r\n }\r\n //data[index] = [this.loadrecv[index].recdFrom,\r\n // this.loadrecv[index].gatePassno,\r\n // this.loadrecv[index].loadDate,\r\n // this.loadrecv[index].time,\r\n // this.loadrecv[index].mode,\r\n // this.loadrecv[index].vendoreName,\r\n // this.loadrecv[index].totalBag,\r\n // this.loadrecv[index].totalWeight,\r\n // this.loadrecv[index].destination,\r\n // this.loadrecv[index].recieveBranch,\r\n // this.loadrecv[index].etr,\r\n // this.loadrecv[index].recvDate, this.loadrecv[index].recvTime,\r\n // this.loadrecv[index].recvBy, \"\"\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Recieved Report\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Origin\", \"Gatepass\", \"Date\", \"Time\", \"Mode\", \"Vendore\", \"Total Bag\", \"Weight\", \"Destination\", \"Dest. Associate\", \"ETD\", \"ATD\", \"ETA\", \"ATA\", \"\", \"Receive By\", \"Remark\"]\r\n this.excelService.title = Office + \" Load Dispatch Report\"\r\n this.excelService.Widths = [30, 20, 15, 10, 15, 40, 15, 15, 30, 30, 20, 20, 20, 12, 8, 20, 30]\r\n this.excelService.generateExcel();\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbG9hZG1vdmVtZW50L2xvYWRtb3ZlbWVudC5jb21wb25lbnQuc2NzcyJ9 */\"","import { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-loadmovement',\r\n templateUrl: './loadmovement.component.html',\r\n styleUrls: ['./loadmovement.component.scss']\r\n})\r\nexport class LoadmovementComponent implements OnInit {\r\n\r\n editedloadMovement: loadMovement = new loadMovement();\r\n columns: any[] = [];\r\n bagcolumns: any[] = [];\r\n addrow: loadMovement[] = [];\r\n rows: loadMovement[] = [];\r\n rowsCache: loadMovement[] = [];\r\n bagrows: loadMovement[] = [];\r\n bagrowsCache: loadMovement[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n displayedFirstImage;\r\n displayedSecondImage;\r\n msg = '';\r\n isInOut = false;\r\n Islable: any;\r\n\r\n\r\n\r\n constructor(private configurations: ConfigurationService, private localstre: LocalStoreManager, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'bageNo', name: 'Bage No', width: 100 },\r\n { prop: 'bagWeight', name: 'Bag Weight', width: 100 },\r\n { prop: 'gatePassno', name: 'GatePass No', width: 100 },\r\n { prop: 'loadreciveFrom', name: 'Load ReciveFrom', width: 100 },\r\n { prop: 'loadoutTo', name: 'Load OutTo', width: 100 },\r\n { prop: 'loadtype', name: 'Load Type', width: 100 },\r\n { prop: 'LoadtypeTime', name: 'Load Time', width: 100 },\r\n { prop: 'Loadremark', name: 'Load Remark', width: 100 },\r\n ];\r\n\r\n this.bagcolumns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'bageNo', name: 'Bage No', width: 100 },\r\n { prop: 'Piece', name: 'Piece', width: 100 },\r\n { prop: 'bagWeight', name: 'Bag Weight', width: 100 },\r\n ];\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n $('#OfficeName').val(this.localstre.getData(\"BaLoginData\")[0].officename);\r\n $('#OfficeName').prop(\"disabled\", true);\r\n // this.loaddata();\r\n }\r\n\r\n\r\n loaddata() {\r\n // this.loadingIndicator = true;\r\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n LoadSucessdata(loadMovementing: loadMovement[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n loadMovementing.forEach((prod, index, loadMovementing) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...loadMovementing];\r\n this.rows = loadMovementing;\r\n }\r\n SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('city')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n (document.getElementById('city')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n (document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n Insertloadmovement() {\r\n debugger;\r\n var strvalue = this.editedloadMovement;\r\n // this.isSaving = true;\r\n //this.alertService.startLoadingMessage('Saving changes...');\r\n\r\n // this.ServiceMaster.NewVendore(this.editedloadMovement).subscribe(inscaning => this.saveSuccessHelper(inscaning), error => this.saveFailedHelper(error));\r\n }\r\n private saveSuccessHelper(loadMovements?: loadMovement) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `loadMovement \\\"${this.editedloadMovement.bageNo}\\\" was created successfully`, MessageSeverity.success);\r\n if (this.rows.length == 0) {\r\n this.rows[0] = loadMovements[0];\r\n this.rowsCache[0] = loadMovements[0];\r\n }\r\n else {\r\n this.rows.push(loadMovements[0]);\r\n this.rowsCache.push(loadMovements[0]);\r\n }\r\n this.rows.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache = [...this.rowsCache]\r\n this.rows = [...this.rows]\r\n this.editedloadMovement = new loadMovement()\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.bageNo));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n countbag() {\r\n\r\n if (this.bagrows.length == 0) {\r\n this.addrow[0] = new loadMovement();\r\n this.addrow[0].bageNo = \"1000\"\r\n this.addrow[0].bagWeight = \"10.0\";\r\n this.addrow[0].Piece = \"5\";\r\n this.bagrows[0] = this.addrow[0];\r\n }\r\n else {\r\n var tmp = new loadMovement();\r\n tmp.bageNo = \"1000\"\r\n tmp.bagWeight = \"10.0\";\r\n tmp.Piece = \"5\";\r\n this.bagrows.push(tmp);\r\n }\r\n this.bagrows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n\r\n });\r\n this.bagrows = [...this.bagrows]\r\n $('#bageNo').val('');\r\n $('#bageNo').focus();\r\n }\r\n\r\n\r\n\r\n funInOut() {\r\n var valuet = $('#loadtype').val();\r\n if (valuet == \"1\") {\r\n this.isInOut = true;\r\n this.Islable = \"Loadrecive From:\";\r\n }\r\n else if (valuet == \"2\") {\r\n this.isInOut = true;\r\n this.Islable = \"Loadout To:\";\r\n } else {\r\n this.isInOut = false;\r\n }\r\n\r\n }\r\n}\r\nexport class loadMovement {\r\n constructor(bageNo?: string, bagWeight?: string, gatePassno?: string,\r\n loadouttofrom?: string, loadtype?: string, Loadremark?: string, OfficeName?: string, LoadtypeTime?: string,\r\n VehicleMode?: string, VehicleNo?: string, LoadAcnType?: string, LoadAcnNo?: string, LoadAcnWeight?: string,\r\n loadVolmetricWeight?: string, Piece?: string) {\r\n this.OfficeName = OfficeName;\r\n this.bageNo = bageNo;\r\n this.bagWeight = bagWeight;\r\n this.gatePassno = gatePassno;\r\n this.loadouttofrom = loadouttofrom;\r\n this.loadtype = loadtype;\r\n this.LoadtypeTime = LoadtypeTime;\r\n this.Loadremark = Loadremark;\r\n\r\n this.VehicleMode = VehicleMode;\r\n this.VehicleNo = VehicleNo;\r\n this.LoadAcnType = LoadAcnType\r\n this.LoadAcnNo = LoadAcnNo\r\n this.LoadAcnWeight = LoadAcnWeight\r\n this.loadVolmetricWeight = loadVolmetricWeight\r\n this.Piece = Piece;\r\n };\r\n public OfficeName: string\r\n public bageNo: string\r\n public bagWeight: string\r\n public gatePassno: string\r\n public loadouttofrom: string\r\n public loadtype: string\r\n public LoadtypeTime: string\r\n public Loadremark: string\r\n\r\n public VehicleMode: string\r\n public VehicleNo: string\r\n public LoadAcnType: string\r\n public LoadAcnNo: string\r\n public LoadAcnWeight: string\r\n public loadVolmetricWeight: string\r\n public Piece: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbG9hZG1vdmVtZW50bmV3L2xvYWRtb3ZlbWVudG5ldy5jb21wb25lbnQuc2NzcyJ9 */\"","import { DatePipe } from '@angular/common';\r\nimport { AfterViewInit, ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Guid } from 'guid-typescript';\r\nimport { FLOAT } from 'html2canvas/dist/types/css/property-descriptors/float';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { map, share } from 'rxjs/operators';\r\nimport { isNull, isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-loadmovementnew',\r\n templateUrl: './loadmovementnew.component.html',\r\n styleUrls: ['./loadmovementnew.component.scss']\r\n})\r\nexport class LoadmovementnewComponent implements OnInit, AfterViewInit {\r\n\r\n editedloadMovement: loadMovement = new loadMovement();\r\n columns: any[] = [];\r\n bagcolumns: any[] = [];\r\n addrow: loadMovement[] = [];\r\n rows: loadMovement[] = [];\r\n rowsCache: loadMovement[] = [];\r\n bagrows: loadMovement[] = [];\r\n bagrowsCache: loadMovement[] = [];\r\n isSaving = false;\r\n vendorRate: FormGroup = null;\r\n LoadMode = \"1\";\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n displayedFirstImage;\r\n displayedSecondImage;\r\n _Balogindata: any[] = [];\r\n msg = '';\r\n isInOut = false;\r\n Islable: any;\r\n datepipe: any;\r\n edittype: any;\r\n vendorelist: any[] = [];\r\n Venddortypesel = \"1\"\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss s');\r\n constructor(private configurations: ConfigurationService, private troute: ActivatedRoute,private transaction: TransactionService, private localstre: LocalStoreManager, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n\r\n this.editedloadMovement.Date = this.datee;\r\n this.troute.params.subscribe(params => {\r\n this.edittype = params.edittype;\r\n });\r\n }\r\n time = new Date();\r\n rxTime = new Date();\r\n intervalId;\r\n subscription: Subscription;\r\n\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n this.vendorRate = new FormGroup({\r\n vsmbag: new FormControl('0'),\r\n smlbag: new FormControl('0'),\r\n mdmbag: new FormControl('0'),\r\n bigbag: new FormControl('0'),\r\n oddbag: new FormControl('0'),\r\n });\r\n\r\n \r\n\r\n\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'bageNo', name: 'Bage No', width: 100 },\r\n { prop: 'bagWeight', name: 'Bag Weight', width: 100 },\r\n { prop: 'gatePassno', name: 'GatePass No', width: 100 },\r\n { prop: 'loadreciveFrom', name: 'Load ReciveFrom', width: 100 },\r\n { prop: 'loadoutTo', name: 'Load OutTo', width: 100 },\r\n { prop: 'loadtype', name: 'Load Type', width: 100 },\r\n { prop: 'LoadtypeTime', name: 'Load Time', width: 100 },\r\n { prop: 'Loadremark', name: 'Load Remark', width: 100 },\r\n ];\r\n\r\n this.bagcolumns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'bageNo', name: 'Bage No', width: 100 },\r\n { prop: 'bagWeight', name: 'Bag Weight', width: 100 },\r\n { prop: 'Piece', name: 'Piece', width: 100 },\r\n ];\r\n this.bagcolumns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n this._Balogindata = this.localstre.getData(\"BaLoginData\");\r\n\r\n this.editedloadMovement.Origin = this._Balogindata[0].officename;\r\n $('#OfficeName').val(this._Balogindata[0].officename);\r\n $('#OfficeName').attr(\"disabled\", true);\r\n // this.loaddata();\r\n this.getVendor();\r\n // Using Basic Interval\r\n this.intervalId = setInterval(() => {\r\n this.time = new Date();\r\n }, 1000);\r\n\r\n // Using RxJS Timer\r\n this.subscription = timer(0, 1000)\r\n .pipe(\r\n map(() => new Date()),\r\n share()\r\n )\r\n .subscribe(time => {\r\n this.rxTime = time;\r\n });\r\n this.getOrigin();\r\n }\r\n ngAfterViewInit() {\r\n\r\n (document.getElementById('LoadthroughType')).disabled = false;\r\n (document.getElementById('vendorname')).disabled = true;\r\n (document.getElementById('vehicleno')).disabled = false;\r\n (document.getElementById('vehiclegp')).disabled = true;\r\n (document.getElementById('Loadthroughtime')).disabled = true;\r\n (document.getElementById('Loadthroughweight')).disabled = false;\r\n (document.getElementById('vehiclesealno')).disabled = false;\r\n (document.getElementById('drivername')).disabled = false;\r\n (document.getElementById('vendorType')).disabled = false;\r\n (document.getElementById('Name')).disabled = true;\r\n (document.getElementById('Acnno')).disabled = false;\r\n (document.getElementById('vendorweight')).disabled = false;\r\n (document.getElementById('vendorGatePassNo')).disabled = true;\r\n if (this.edittype == 1) {\r\n //$('#bagGatePassNo').prop(\"disabled\", true);\r\n (document.getElementById('bagGatePassNo')).disabled = false;\r\n\r\n\r\n }\r\n else {\r\n //$('#bagGatePassNo').prop(\"disabled\", false);\r\n (document.getElementById('bagGatePassNo')).disabled = true;\r\n\r\n }\r\n }\r\n removeROw(row: any) {\r\n this.bagrows.splice(row.index - 1, 1)\r\n this.bagrows = [...this.bagrows];\r\n }\r\n getOriginList($event) {\r\n this.getOrigin();\r\n this.arrcity2 = this.arrcity\r\n $('#Origin').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n\r\n getdetailofgatepass() {\r\n this.bagrows = [];\r\n var prmgatepassno = $('#bagGatePassNo').val();\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getloadmovementdetailedit'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"gatePassno\"\r\n pr.PropertyValue = prmgatepassno;\r\n Parameter[0] = pr; \r\n\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.onloadreceivingData(result)\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n onloadreceivingData(result: any) {\r\n result.forEach((bag, idx, arr) => {\r\n var lmdata = new loadMovement();\r\n lmdata.Acnno = bag.Acnno;\r\n lmdata.bagGatePassNo = bag.gatePassno;\r\n lmdata.bagTime = $('#Time').val();\r\n lmdata.Date = bag.loadDate;\r\n lmdata.bageNo = bag.bagno;\r\n lmdata.bagWeight = bag.bagWeight;\r\n lmdata.bigbag = bag.bigbag;\r\n lmdata.drivername = bag.driveName;\r\n lmdata.Loadthroughtime = \"\";\r\n lmdata.LoadthroughType = bag.vehicleVendoreCode;\r\n lmdata.Loadthroughweight = \"\";\r\n lmdata.mdmbag = bag.mdmbag;\r\n lmdata.Mode = bag.mode;\r\n lmdata.Name = bag.vendoreName;\r\n lmdata.oddbag = bag.oddbag;\r\n lmdata.Origin = bag.origin;\r\n lmdata.To = bag.toOffice;\r\n lmdata.Piece = bag.pieces;\r\n lmdata.Product = \"\";\r\n lmdata.smlbag = bag.smlbag;\r\n lmdata.Time = bag.time;\r\n lmdata.TotalNo = \"\";\r\n lmdata.vehiclegp = bag.gatePassno;\r\n lmdata.vehicleno = bag.vehicleno;\r\n lmdata.vehiclesealno = bag.gatePassno;\r\n lmdata.vendorGatePassNo = bag.gatePassno;\r\n lmdata.vendorname = bag.vehicleVenorName;\r\n lmdata.vendorType = bag.vendoreCode;\r\n lmdata.vendorweight = bag.totalWeight;\r\n lmdata.vsmbag = bag.vsmbag;\r\n lmdata.loadmovementid = bag.loadMovementId;\r\n lmdata.loadMovementDetailid = bag.loadMovementDetailid\r\n if (this.bagrows.length == 0) {\r\n this.bagrows[0] = lmdata;\r\n }\r\n else {\r\n this.bagrows.push(lmdata);\r\n }\r\n this.editedloadMovement = lmdata;\r\n this.vendorRate.controls['vsmbag'].setValue(lmdata.vsmbag);\r\n this.vendorRate.controls['smlbag'].setValue(lmdata.smlbag);\r\n this.vendorRate.controls['mdmbag'].setValue(lmdata.mdmbag);\r\n this.vendorRate.controls['bigbag'].setValue(lmdata.bigbag);\r\n this.vendorRate.controls['oddbag'].setValue(lmdata.oddbag);\r\n this.LoadMode = lmdata.Mode == \"Air\" ? \"1\" : lmdata.Mode == \"Surface\" ? '2' : '3';\r\n \r\n });\r\n this.bagrows = [...this.bagrows];\r\n }\r\n\r\n getToList($event) {\r\n this.getOrigin();\r\n this.arrcity2 = this.arrcity\r\n $('#To').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n getvendlist($event) {\r\n this.getVendor();\r\n this.arrcity2 = this.vendorelist\r\n $('#vendorType').autocomplete({\r\n source: this.arrcity2,\r\n delay: 50\r\n\r\n });\r\n }\r\n getvendlista($event) {\r\n this.getVendor();\r\n this.arrcity2 = this.vendorelist\r\n $('#LoadthroughType').autocomplete({\r\n source: this.arrcity2,\r\n delay: 50\r\n\r\n });\r\n }\r\n getOrigin() {\r\n this.ServiceMaster.getHelplist(\"BADACITY\").subscribe(result => this.onDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n getVendor() {\r\n this.ServiceMaster.getHelplist(\"VENDOR\").subscribe(result => this.onDatagetSuccessful(result, 'vend'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(ba: any[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"ba\") {\r\n this.arrcity = ba;\r\n }\r\n else {\r\n this.vendorelist = ba;\r\n }\r\n }\r\n SetcodeAndname($event) {\r\n let custcodename: string = (document.getElementById('vendorType')).value;\r\n if (custcodename.indexOf('-') > 0) {\r\n (document.getElementById('vendorType')).value = custcodename.substring(0, custcodename.indexOf('-') - 1);\r\n (document.getElementById('Name')).value = custcodename.substring(custcodename.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n get toofficename(): string {\r\n let custcodename: string = $('#To').val();\r\n if (custcodename.indexOf('~') > 0) {\r\n return custcodename.substring(0, custcodename.indexOf('~') - 1);\r\n\r\n }\r\n else {\r\n return custcodename;\r\n }\r\n }\r\n SetcodeAndnamea($event) {\r\n let custcodename: string = (document.getElementById('LoadthroughType')).value;\r\n if (custcodename.indexOf('-') > 0) {\r\n (document.getElementById('LoadthroughType')).value = custcodename.substring(0, custcodename.indexOf('-') - 1);\r\n (document.getElementById('vendorname')).value = custcodename.substring(custcodename.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n LoadSucessdata(loadMovementing: loadMovement[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n loadMovementing.forEach((prod, index, loadMovementing) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...loadMovementing];\r\n this.rows = loadMovementing;\r\n }\r\n SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('city')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n (document.getElementById('city')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n (document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n\r\n }\r\n Insertloadmovement() {\r\n debugger;\r\n if (this.bagrows.length <= 0) {\r\n this.showErrorAlert(\"Save\", \"No Record To Save !\")\r\n return;\r\n }\r\n\r\n if ($('#vendorname').val() == '' && $('#Name').val() == '') {\r\n this.showErrorAlert(\"Save\", \"Check vendore Name !\")\r\n return;\r\n }\r\n if ($('#vendorType').val() == '' && $('#LoadthroughType').val() == '') {\r\n this.showErrorAlert(\"Save\", \"This vendore is not register !\")\r\n return;\r\n }\r\n // var strvalue = this.editedloadMovement;\r\n this.bagrows.forEach((bag, idx, arr) => {\r\n bag.Acnno = $('#Acnno').val();\r\n //bag.bagGatePassNo = \"\";\r\n bag.bagGatePassNo = $('#bagGatePassNo').val();\r\n bag.bagTime = $('#Time').val();\r\n bag.Date = new DatePipe('en-US').transform(new Date(), \"MM/dd/yyyy\");\r\n bag.drivername = $('#drivername').val();\r\n bag.Loadthroughtime = $('#Loadthroughtime').val();\r\n bag.LoadthroughType = $('#LoadthroughType').val();\r\n bag.Loadthroughweight = $('#Loadthroughweight').val();\r\n bag.Mode = this.LoadMode == \"1\" ? \"Air\" : this.LoadMode == \"2\" ? \"Surface\" : \"Train\";\r\n bag.Name = $('#Name').val();\r\n bag.Origin = $('#Origin').val();\r\n bag.Product = \"\";\r\n bag.Time = $('#Time').val();\r\n bag.To = this.toofficename;\r\n bag.vehiclegp = $('#vehiclegp').val();\r\n bag.vehicleno = $('#vehicleno').val();\r\n bag.vehiclesealno = $('#vehiclesealno').val();\r\n bag.vendorGatePassNo = $('#vendorGatePassNo').val();\r\n bag.vendorname = $('#vendorname').val();\r\n bag.vendorType = $('#vendorType').val();\r\n bag.vendorweight = $('#vendorweight').val();\r\n bag.TotalNo = this.editedloadMovement.TotalNo;\r\n bag.vsmbag = this.vendorRate.controls['vsmbag'].value;\r\n bag.smlbag = this.vendorRate.controls['smlbag'].value;\r\n bag.mdmbag = this.vendorRate.controls['mdmbag'].value;\r\n bag.bigbag = this.vendorRate.controls['bigbag'].value;\r\n bag.oddbag = this.vendorRate.controls['oddbag'].value;\r\n });\r\n\r\n\r\n if ((parseInt(this.bagrows[0].vsmbag) + parseInt(this.bagrows[0].smlbag) + parseInt(this.bagrows[0].mdmbag) + parseInt(this.bagrows[0].oddbag) + parseInt(this.bagrows[0].bigbag)) > this.bagrows.length) {\r\n this.alertService.showMessage('Bages Type', 'Please check number of bags', MessageSeverity.error);\r\n return;\r\n }\r\n if (this.toofficename == '' || isNullOrUndefined(this.toofficename)) {\r\n this.showErrorAlert(\"Save\", \"Invalid forwarded office\")\r\n return;\r\n }\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_checkOfficename'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"officename\"\r\n pr.PropertyValue = this.toofficename;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n var tocity = '';\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n if (result[0].officename.trim() == this.toofficename.trim()) {\r\n tocity = result[0].city + ' - ' + result[0].state\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetVendorData'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"VendorCode\"\r\n pr.PropertyValue = $('#vendorType').val();\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result1 => {\r\n if (result1.length > 0) {\r\n if (result1[0].mode == (this.LoadMode == \"1\" ? \"Air\" : this.LoadMode == \"2\" ? \"Surface\" : \"Train\")) {\r\n var vdata = result1.find(x => x.destCity == tocity)\r\n if (!isNullOrUndefined(vdata) && vdata.destCity == tocity) {\r\n this.transaction.PostLoadMovement(this.bagrows).subscribe(inscaning => this.saveSuccessHelper(inscaning), error => this.saveFailedHelper(error));\r\n } else {\r\n //this.showErrorAlert(\"Save\", \"Invalid vendore or rate not defined of selected vendor\")\r\n this.transaction.PostLoadMovement(this.bagrows).subscribe(inscaning => this.saveSuccessHelper(inscaning), error => this.saveFailedHelper(error));\r\n }\r\n }\r\n else {\r\n this.showErrorAlert(\"Save\", \"Invalid mode of selected vendor\")\r\n }\r\n }\r\n else {\r\n this.showErrorAlert(\"Save\", \"Invalid vendor\")\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n }\r\n else {\r\n this.showErrorAlert(\"Save\", \"Invalid forwarded office\")\r\n }\r\n }\r\n else {\r\n this.showErrorAlert(\"Save\", \"Invalid forwarded office\")\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n private saveSuccessHelper(loadMovements?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `loadMovement \\\"${this.editedloadMovement.bageNo}\\\" was created successfully`, MessageSeverity.success);\r\n\r\n this.editedloadMovement.bagGatePassNo = loadMovements[0].bagGatePassNo;\r\n this.editedloadMovement.vendorGatePassNo = loadMovements[0].vendorGatePassNo;\r\n this.editedloadMovement.vehiclegp = loadMovements[0].vendorGatePassNo;\r\n $('#bagGatePassNo').val(loadMovements[0].bagGatePassNo)\r\n this.bagrows = [];\r\n this.bagrows = [...this.bagrows];\r\n this.vendorRate.controls['vsmbag'].setValue('0');\r\n this.vendorRate.controls['smlbag'].setValue('0');\r\n this.vendorRate.controls['mdmbag'].setValue('0');\r\n this.vendorRate.controls['bigbag'].setValue('0');\r\n this.vendorRate.controls['oddbag'].setValue('0');\r\n this.route.navigate(['/printgp'], {\r\n queryParams: {\r\n GatePassno: loadMovements[0].bagGatePassNo\r\n }\r\n });// define your componen\r\n $('#bagGatePassNo').val('');\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.bageNo));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n countbag() {\r\n this.editedloadMovement.To = $('#To').val();\r\n this.editedloadMovement.Time = $('#Time').val();\r\n this.editedloadMovement.Date = $('#Date').val();\r\n this.editedloadMovement.Mode = this.LoadMode == \"1\" ? \"Air\" : this.LoadMode == \"2\" ? \"Surface\" : \"Train\"\r\n var tmpbangno = $('#bageNo').val();\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'usp_checkalreadyout'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"bagno\"\r\n pr.PropertyValue = tmpbangno;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"officename\";\r\n pr.PropertyValue = this._Balogindata[0].officename;\r\n Parameter[1] = pr;\r\n Req.LstParameter = Parameter;\r\n this._Balogindata[0].officename\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result1 => {\r\n if (result1[0].loadout == false) {\r\n var exist = false;\r\n this.bagrows.forEach((bag, ind, arr) => {\r\n if (bag.bageNo == tmpbangno) {\r\n this.alertService.showMessage(\"Bag\", \"Bag already exist !\", MessageSeverity.error);\r\n exist = true;\r\n\r\n }\r\n })\r\n if (exist) {\r\n return;\r\n }\r\n if (tmpbangno.length > 0) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetBagdetail'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"bagno\";\r\n pr.PropertyValue = $('#bageNo').val();\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n if (result[0].bagSize == 'Very Small Bag') {\r\n if (this.vendorRate.controls['vsmbag'].value == '') {\r\n this.vendorRate.controls['vsmbag'].setValue('1')\r\n }\r\n else {\r\n this.vendorRate.controls['vsmbag'].setValue((parseInt(this.vendorRate.controls['vsmbag'].value) + 1).toFixed(0))\r\n }\r\n }\r\n if (result[0].bagSize == 'Small Bag') {\r\n if (this.vendorRate.controls['smlbag'].value == '') {\r\n this.vendorRate.controls['smlbag'].setValue('1')\r\n }\r\n else {\r\n this.vendorRate.controls['smlbag'].setValue((parseInt(this.vendorRate.controls['smlbag'].value) + 1).toFixed(0))\r\n }\r\n }\r\n if (result[0].bagSize == 'Midum Bag') {\r\n if (this.vendorRate.controls['mdmbag'].value == '') {\r\n this.vendorRate.controls['mdmbag'].setValue('1')\r\n }\r\n else {\r\n this.vendorRate.controls['mdmbag'].setValue((parseInt(this.vendorRate.controls['mdmbag'].value) + 1).toFixed(0))\r\n }\r\n }\r\n\r\n if (result[0].bagSize == 'Big Bag') {\r\n if (this.vendorRate.controls['bigbag'].value == '') {\r\n this.vendorRate.controls['bigbag'].setValue('1')\r\n }\r\n else {\r\n this.vendorRate.controls['bigbag'].setValue((parseInt(this.vendorRate.controls['bigbag'].value) + 1).toFixed(0))\r\n }\r\n }\r\n if (result[0].bagSize == 'Extra Big Bag') {\r\n if (this.vendorRate.controls['oddbag'].value == '') {\r\n this.vendorRate.controls['oddbag'].setValue('1')\r\n }\r\n else {\r\n this.vendorRate.controls['oddbag'].setValue((parseInt(this.vendorRate.controls['oddbag'].value) + 1).toFixed(0))\r\n }\r\n }\r\n\r\n\r\n if (this.bagrows.length == 0) {\r\n this.addrow[0] = new loadMovement(this.editedloadMovement)\r\n\r\n\r\n this.addrow[0].bageNo = tmpbangno;\r\n this.addrow[0].bagWeight = result[0].totalWeight;\r\n this.addrow[0].Piece = result[0].totalPieces;\r\n this.bagrows[0] = this.addrow[0];\r\n\r\n }\r\n else {\r\n var tmp = new loadMovement(this.editedloadMovement);\r\n tmp.bageNo = tmpbangno;\r\n tmp.bagWeight = result[0].totalWeight;\r\n tmp.Piece = result[0].totalPieces;\r\n this.bagrows.push(tmp);\r\n }\r\n }\r\n let tmpweight = 0;\r\n this.bagrows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n tmpweight = tmpweight + parseFloat(awb.bagWeight)\r\n });\r\n this.editedloadMovement.TotalNo = this.bagrows.length.toString()\r\n this.editedloadMovement.Loadthroughweight = tmpweight.toFixed(2)\r\n this.editedloadMovement.vendorweight = tmpweight.toFixed(2)\r\n this.bagrows = [...this.bagrows]\r\n $('#bageNo').val('');\r\n $('#bageNo').focus();\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n else {\r\n this.showErrorAlert(\"Load\", \"This bag is already out with gatepass no \" + result1[0].gatePassno)\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n \r\n RbSelectionchange($event) {\r\n if (this.Venddortypesel == \"1\") {\r\n\r\n (document.getElementById('LoadthroughType')).disabled = true;\r\n (document.getElementById('vendorname')).disabled = true;\r\n (document.getElementById('vehicleno')).disabled = true;\r\n (document.getElementById('vehiclegp')).disabled = true;\r\n (document.getElementById('Loadthroughtime')).disabled = true;\r\n (document.getElementById('Loadthroughweight')).disabled = true;\r\n (document.getElementById('vehiclesealno')).disabled = true;\r\n (document.getElementById('drivername')).disabled = true;\r\n (document.getElementById('vendorType')).disabled = false;\r\n (document.getElementById('Name')).disabled = true;\r\n (document.getElementById('Acnno')).disabled = false;\r\n (document.getElementById('vendorweight')).disabled = false;\r\n (document.getElementById('vendorGatePassNo')).disabled = false;\r\n\r\n }\r\n else {\r\n (document.getElementById('LoadthroughType')).disabled = false;\r\n (document.getElementById('vendorname')).disabled = true;\r\n (document.getElementById('vehicleno')).disabled = false;\r\n (document.getElementById('vehiclegp')).disabled = false;\r\n (document.getElementById('Loadthroughtime')).disabled = true;\r\n (document.getElementById('Loadthroughweight')).disabled = false;\r\n (document.getElementById('vehiclesealno')).disabled = false;\r\n (document.getElementById('drivername')).disabled = false;\r\n (document.getElementById('vendorType')).disabled = true;\r\n (document.getElementById('Name')).disabled = true;\r\n (document.getElementById('Acnno')).disabled = true;\r\n (document.getElementById('vendorweight')).disabled = true;\r\n (document.getElementById('vendorGatePassNo')).disabled = true;\r\n }\r\n }\r\n\r\n\r\n funInOut() {\r\n var valuet = $('#loadtype').val();\r\n if (valuet == \"1\") {\r\n this.isInOut = true;\r\n this.Islable = \"Loadrecive From:\";\r\n }\r\n else if (valuet == \"2\") {\r\n this.isInOut = true;\r\n this.Islable = \"Loadout To:\";\r\n } else {\r\n this.isInOut = false;\r\n }\r\n\r\n\r\n }\r\n}\r\nexport class loadMovement {\r\n constructor(loadobject?:loadMovement) {\r\n if (isNullOrUndefined(loadobject)){\r\n return;\r\n }\r\n this.Origin = loadobject.Origin;\r\n this.To = loadobject.To;\r\n this.Date = loadobject.Date;\r\n this.Time = loadobject.Time;\r\n this.Mode = loadobject.Mode;\r\n this.Product = loadobject.Product;\r\n this.bageNo = loadobject.bageNo;\r\n this.bagWeight = loadobject.bagWeight;\r\n this.Piece = loadobject.Piece;\r\n this.bagGatePassNo = loadobject.bagGatePassNo;\r\n this.TotalNo = loadobject.TotalNo;\r\n this.bagTime = loadobject.bagTime;\r\n this.vendorType = loadobject.vendorType;\r\n this.Name = loadobject.Name;\r\n this.Acnno = loadobject.Acnno;\r\n this.vendorweight = loadobject.vendorweight;\r\n this.vendorGatePassNo = loadobject.vendorGatePassNo;\r\n\r\n this.LoadthroughType = loadobject.LoadthroughType;\r\n this.vendorname = loadobject.vendorname;\r\n this.vehicleno = loadobject.vehicleno;\r\n this.vehiclegp = loadobject.vehiclegp;\r\n this.Loadthroughtime = loadobject.Loadthroughtime;\r\n this.Loadthroughweight = loadobject.Loadthroughweight;\r\n this.vehiclesealno = loadobject.vehiclesealno;\r\n this.drivername = loadobject.drivername;\r\n };\r\n public Origin: string\r\n public To: string\r\n public Date: string\r\n public Time: string\r\n public Mode: string\r\n public Product: string\r\n\r\n public bageNo: string\r\n public bagWeight: string\r\n public Piece: string\r\n public bagGatePassNo: string\r\n public TotalNo: string\r\n public bagTime: string\r\n\r\n public vendorType: string\r\n public Name: string\r\n public Acnno: string\r\n public vendorweight: string\r\n public vendorGatePassNo: string\r\n\r\n public LoadthroughType: string\r\n public vendorname: string\r\n public vehicleno: string\r\n public vehiclegp: string\r\n public Loadthroughtime: string\r\n public Loadthroughweight: string\r\n public vehiclesealno: string\r\n public drivername: string\r\n public loadmovementid: string\r\n public loadMovementDetailid:string\r\n public vsmbag: string;\r\n public smlbag: string;\r\n public mdmbag: string;\r\n public bigbag: string;\r\n public oddbag: string;\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbG9hZHJlY2VpdmluZ3Byb2Nlc3MvbG9hZHJlY2VpdmluZ3Byb2Nlc3MuY29tcG9uZW50LnNjc3MifQ== */\"","import { UniqueSelectionDispatcher } from '@angular/cdk/collections';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Guid } from 'guid-typescript';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { map, share } from 'rxjs/operators';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-loadreceivingprocess',\r\n templateUrl: './loadreceivingprocess.component.html',\r\n styleUrls: ['./loadreceivingprocess.component.scss']\r\n})\r\nexport class LoadreceivingprocessComponent implements OnInit {\r\n\r\n editedloadreceiving: loadreceiving = new loadreceiving();\r\n columns: any[] = [];\r\n bagcolumns: any[] = [];\r\n addrow: loadreceiving[] = [];\r\n rows: loadreceiving[] = [];\r\n rowsCache: loadreceiving[] = [];\r\n bagrows: loadreceiving[] = [];\r\n bagrowsCache: loadreceiving[] = [];\r\n bagcountrows: loadreceiving[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n displayedFirstImage;\r\n displayedSecondImage;\r\n msg = '';\r\n isInOut = false;\r\n Islable: any;\r\n datepipe: any;\r\n\r\n checkedair: boolean = false;\r\n checkedsurface: boolean = false;\r\n checkedtrain: boolean = false;\r\n bagcount = 0;\r\n Isflage = false;\r\n\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss s');\r\n\r\n\r\n\r\n constructor(private configurations: ConfigurationService, private localstre: LocalStoreManager, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n\r\n this.editedloadreceiving.date = this.datee;\r\n }\r\n time = new Date();\r\n rxTime = new Date();\r\n intervalId;\r\n subscription: Subscription;\r\n\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.editedloadreceiving.hub = logindata[0].officename;\r\n\r\n this.bagcolumns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'bagno', name: 'Bage No', width: 100 },\r\n { prop: 'weight', name: 'Bag Weight', width: 100 },\r\n { prop: 'pcs', name: 'Piece', width: 100 },\r\n { prop: 'IsScan', name: 'IsScan', width: 100 },\r\n ];\r\n // Using Basic Interval\r\n this.intervalId = setInterval(() => {\r\n this.time = new Date();\r\n }, 1000);\r\n\r\n // Using RxJS Timer\r\n this.subscription = timer(0, 1000)\r\n .pipe(\r\n map(() => new Date()),\r\n share()\r\n )\r\n .subscribe(time => {\r\n this.rxTime = time;\r\n });\r\n }\r\n\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n\r\n }\r\n\r\n\r\n SetParameter(Tweight: string, Bagno: string, BagWeight: string, Pieces: string, Isscan: string,Reason:string): CommRequest {\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_SaveLoadRecive'\r\n let Parameter = new Array(22);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"LoadReciveId\"\r\n pr.PropertyValue = Guid.raw()\r\n Parameter[0] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Guid\";\r\n pr.PropertyName = \"OfficeId\";\r\n pr.PropertyValue = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Officename\";\r\n pr.PropertyValue = this.localstre.getData(\"BaLoginData\")[0].officename\r\n Parameter[2] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"ReceiveDate\";\r\n pr.PropertyValue = new Date().toLocaleDateString();\r\n Parameter[3] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Guid\";\r\n pr.PropertyName = \"ReievingFromId\";\r\n pr.PropertyValue = Guid.EMPTY;\r\n Parameter[4] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"RecieveFrom\";\r\n pr.PropertyValue = $('#receivingfrom').val();\r\n Parameter[5] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"OriginDispatchDate\";\r\n pr.PropertyValue = new Date().toLocaleDateString();\r\n Parameter[6] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Coloader\";\r\n pr.PropertyValue = $('#coloader').val();\r\n Parameter[7] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Guid\";\r\n pr.PropertyName = \"ColoderId\";\r\n pr.PropertyValue = null;\r\n Parameter[8] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"GatePassno\";\r\n pr.PropertyValue = $('#gatepassno').val();\r\n Parameter[9] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Accno\";\r\n pr.PropertyValue = $('#acnno').val();\r\n Parameter[10] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"LoadArivalTime\";\r\n pr.PropertyValue = new Date().toLocaleTimeString();\r\n Parameter[11] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Int\";\r\n pr.PropertyName = \"NoOfBags\";\r\n pr.PropertyValue = $('#noofbags').val();\r\n Parameter[12] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Decimal\";\r\n pr.PropertyName = \"Weight\";\r\n pr.PropertyValue = Tweight;\r\n Parameter[13] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"ScheduleOrPriority\";\r\n pr.PropertyValue = \"Schedule\";\r\n Parameter[14] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Bagno\";\r\n pr.PropertyValue = Bagno;\r\n Parameter[15] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Int\";\r\n pr.PropertyName = \"Pieces\";\r\n pr.PropertyValue = Pieces;\r\n Parameter[16] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Decimal\";\r\n pr.PropertyName = \"BagWeight\";\r\n pr.PropertyValue = BagWeight;\r\n Parameter[17] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Iscan\";\r\n pr.PropertyValue = Isscan;\r\n Parameter[18] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Reason\";\r\n pr.PropertyValue = Reason;\r\n Parameter[19] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"CreatedBy\";\r\n pr.PropertyValue = this.userId;\r\n Parameter[20] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"CreatedOn\";\r\n\r\n pr.PropertyValue = new DatePipe('en-US').transform(new Date(),\"MM/dd/yyyy hh:mm:ss\");\r\n Parameter[21] = pr;\r\n Req.LstParameter = Parameter;\r\n return Req;\r\n }\r\n\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : '';\r\n }\r\n\r\n Insertloadreciveing() {\r\n var noofbags = parseInt($('#noofbags').val());\r\n var prmresion = $('#reason').val();\r\n if (prmresion == \"\" || prmresion == null || prmresion == undefined) {\r\n if (this.bagcount != noofbags) {\r\n $('#reason').focus();\r\n this.alertService.showMessage(\"Short Recive\", \"Please enter reason for short recive\",MessageSeverity.error)\r\n return false;\r\n }\r\n\r\n }\r\n var isSaved = true;\r\n this.bagrows.forEach((obj, ind, arr) => {\r\n let Req:CommRequest = this.SetParameter(obj.wt, obj.bagno, obj.weight, obj.pcs, obj.IsScan, prmresion)\r\n \r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length == 0) {\r\n this.alertService.showMessage(\"Error\", \"Error In Saving\", MessageSeverity.error)\r\n isSaved = false;\r\n }\r\n else {\r\n\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n })\r\n if (isSaved) {\r\n this.alertService.showMessage(\"Svae\", \"Save Successfully\", MessageSeverity.success)\r\n this.bagrows = [];\r\n this.editedloadreceiving = new loadreceiving();\r\n $('#gatepassno').val('');\r\n $('#acnno').val('');\r\n\r\n }\r\n\r\n \r\n }\r\n\r\n\r\n\r\n BindLoadmovementdetails() {\r\n this.bagrows = [];\r\n var prmgatepassno = $('#gatepassno').val();\r\n var prmacnno = $('#acnno').val();\r\n if (prmgatepassno == \"\" || prmgatepassno == undefined || prmgatepassno == null) {\r\n prmgatepassno = \"\";\r\n }\r\n if (prmacnno == \"\" || prmacnno == undefined || prmacnno == null) {\r\n prmacnno = \"\";\r\n }\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'sp_Get_LoadMovenetDetail'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"gatePassno\"\r\n pr.PropertyValue = prmgatepassno;\r\n Parameter[0] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Acnno\"\r\n pr.PropertyValue = prmacnno;\r\n Parameter[1] = pr;\r\n\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.onloadreceivingData(result)\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n\r\n onloadreceivingData(result: any) {\r\n if (result.length > 0) {\r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n for (let i = 0; i < result.length; i++) {\r\n var tmp = new loadreceiving();\r\n tmp.hub = $(\"#hub\").val();\r\n tmp.bagno = result[i].bagno;\r\n tmp.weight = result[i].bagWeight;\r\n tmp.pcs = result[i].pieces;\r\n tmp.wt = result[i].totalWeight;\r\n tmp.IsScan = 'No';\r\n this.editedloadreceiving.acnno = result[i].acnno;\r\n this.editedloadreceiving.gatepassno = result[i].gatePassno;\r\n this.editedloadreceiving.receivingfrom = result[i].fromOffice;\r\n this.editedloadreceiving.coloader = result[i].vendoreName;\r\n if (result[i].mode == \"Air\") {\r\n this.checkedair = true;\r\n } else if (result[i].mode == \"Surface\") {\r\n this.checkedsurface = true\r\n } else {\r\n this.checkedtrain = true;\r\n }\r\n if (this.bagrows.length == 0) {\r\n this.bagrows[0] = tmp;\r\n }\r\n else {\r\n this.bagrows.push(tmp);\r\n }\r\n }\r\n this.bagrows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n });\r\n this.editedloadreceiving.noofbags = result.length\r\n this.bagrows = [...this.bagrows]\r\n }\r\n else {\r\n $('#gatepassno').val('');\r\n $('#acnno').val('');\r\n alert(\"No Record Found\")\r\n }\r\n\r\n }\r\n\r\n\r\n scanbagno() {\r\n var prmgatepassno = $('#gatepassno').val();\r\n var prmacnno = $('#acnno').val();\r\n var prmbagno = $('#bagno').val();\r\n if (prmgatepassno == \"\" || prmgatepassno == undefined || prmgatepassno == null) {\r\n prmgatepassno = \"\";\r\n }\r\n if (prmacnno == \"\" || prmacnno == undefined || prmacnno == null) {\r\n prmacnno = \"\";\r\n }\r\n if (prmbagno == \"\" || prmbagno == undefined || prmbagno == null) {\r\n prmbagno = \"\";\r\n }\r\n\r\n \r\n let Req = new CommRequest();\r\n Req.ProcessName = 'sp_Get_Scanreceivingbagno'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"gatePassno\"\r\n pr.PropertyValue = prmgatepassno;\r\n Parameter[0] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Acnno\"\r\n pr.PropertyValue = prmacnno;\r\n Parameter[1] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Bagno\"\r\n pr.PropertyValue = prmbagno;\r\n Parameter[2] = pr;\r\n Req.LstParameter = Parameter;\r\n\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.receivedcount(result)\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n receivedcount(result: any) {\r\n if (result.length > 0) {\r\n for (let i = 0; i < result.length; i++) {\r\n var tmp = new loadreceiving();\r\n tmp.bagno = result[i].bagno;\r\n this.bagrows.forEach((bagno, ind, arr) => {\r\n if (bagno.bagno == tmp.bagno) {\r\n bagno.IsScan = 'Yes';\r\n this.bagcount += 1;\r\n \r\n }\r\n })\r\n }\r\n this.bagrows = [...this.bagrows];\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n \r\n\r\n\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n}\r\nexport class loadreceiving {\r\n \r\n public hub: string\r\n public date: string\r\n public receivingfrom: string\r\n public mode: string\r\n public origindispatchdate: string\r\n public coloader: string\r\n public gatepassno: string\r\n public acnno: string\r\n public loadarrialtime: string\r\n public noofbags: string\r\n public weight: string\r\n public scheduleorpriority: string\r\n public bagno: string\r\n public pcs: string\r\n public wt: string\r\n public total: string\r\n public reason: string\r\n public IsScan: string\r\n}\r\n\r\n","export default \".boxshadow {\\n position: relative;\\n box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.5);\\n padding: 10px;\\n background: white;\\n}\\n\\n.boxshadow::after {\\n content: \\\"\\\";\\n position: absolute;\\n z-index: -1;\\n /* hide shadow behind image */\\n box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3);\\n width: 70%;\\n left: 15%;\\n /* one half of the remaining 30% */\\n height: 100px;\\n bottom: 0;\\n}\\n\\n.cardshadow {\\n box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);\\n}\\n\\n.last-control-group {\\n margin-bottom: -0.75rem;\\n}\\n\\n.h-90 {\\n height: 90%;\\n}\\n\\n@media (min-width: 768px) {\\n .login-container {\\n width: 700px;\\n }\\n}\\n\\n@media (min-width: 1200px) {\\n .login-container {\\n width: 730px;\\n }\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9sb2dpbi9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxsb2dpblxcbG9naW4uY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxrQkFBQTtFQUNBLDBDQUFBO0VBQ0EsYUFBQTtFQUNBLGlCQUFBO0FDQ0Y7O0FER0E7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQWEsNkJBQUE7RUFDYiwwQ0FBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0VBQVcsa0NBQUE7RUFDWCxhQUFBO0VBQ0EsU0FBQTtBQ0VGOztBREVBO0VBQ0UsNEVBQUE7QUNDRjs7QURHQTtFQUNFLHVCQUFBO0FDQUY7O0FESUE7RUFDRSxXQUFBO0FDREY7O0FES0E7RUFDRTtJQUNFLFlBQUE7RUNGRjtBQUNGOztBRE1BO0VBQ0U7SUFDRSxZQUFBO0VDSkY7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuYm94c2hhZG93IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYm94LXNoYWRvdzogMXB4IDJweCA0cHggcmdiYSgwLCAwLCAwLCAuNSk7XHJcbiAgcGFkZGluZzogMTBweDtcclxuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxufVxyXG5cclxuXHJcbi5ib3hzaGFkb3c6OmFmdGVyIHtcclxuICBjb250ZW50OiAnJztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgei1pbmRleDogLTE7IC8qIGhpZGUgc2hhZG93IGJlaGluZCBpbWFnZSAqL1xyXG4gIGJveC1zaGFkb3c6IDAgMTVweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuICB3aWR0aDogNzAlO1xyXG4gIGxlZnQ6IDE1JTsgLyogb25lIGhhbGYgb2YgdGhlIHJlbWFpbmluZyAzMCUgKi9cclxuICBoZWlnaHQ6IDEwMHB4O1xyXG4gIGJvdHRvbTogMDtcclxufVxyXG5cclxuXHJcbi5jYXJkc2hhZG93IHtcclxuICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTkpO1xyXG59XHJcblxyXG5cclxuLmxhc3QtY29udHJvbC1ncm91cCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogLTAuNzVyZW07XHJcbn1cclxuXHJcblxyXG4uaC05MCB7XHJcbiAgaGVpZ2h0OiA5MCU7XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAubG9naW4tY29udGFpbmVyIHtcclxuICAgIHdpZHRoOiA3MDBweDtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcbiAgLmxvZ2luLWNvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogNzMwcHg7XHJcbiAgfVxyXG59XHJcbiIsIi5ib3hzaGFkb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaGFkb3c6IDFweCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgcGFkZGluZzogMTBweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbi5ib3hzaGFkb3c6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgLyogaGlkZSBzaGFkb3cgYmVoaW5kIGltYWdlICovXG4gIGJveC1zaGFkb3c6IDAgMTVweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgd2lkdGg6IDcwJTtcbiAgbGVmdDogMTUlO1xuICAvKiBvbmUgaGFsZiBvZiB0aGUgcmVtYWluaW5nIDMwJSAqL1xuICBoZWlnaHQ6IDEwMHB4O1xuICBib3R0b206IDA7XG59XG5cbi5jYXJkc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbn1cblxuLmxhc3QtY29udHJvbC1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IC0wLjc1cmVtO1xufVxuXG4uaC05MCB7XG4gIGhlaWdodDogOTAlO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmxvZ2luLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDcwMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5sb2dpbi1jb250YWluZXIge1xuICAgIHdpZHRoOiA3MzBweDtcbiAgfVxufSJdfQ== */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, OnInit, OnDestroy, Input } from '@angular/core';\r\n\r\nimport { AlertService, MessageSeverity, DialogType } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { UserLogin } from '../../models/user-login.model';\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss']\r\n})\r\n\r\nexport class LoginComponent implements OnInit, OnDestroy {\r\n\r\n userLogin = new UserLogin();\r\n isLoading = false;\r\n formResetToggle = true;\r\n modalClosedCallback: () => void;\r\n loginStatusSubscription: any;\r\n\r\n @Input()\r\n isModal = false;\r\n\r\n\r\n constructor(private alertService: AlertService, private authService: AuthService, private configurations: ConfigurationService) {\r\n\r\n }\r\n\r\n\r\n ngOnInit() {\r\n\r\n this.userLogin.rememberMe = this.authService.rememberMe;\r\n\r\n if (this.getShouldRedirect()) {\r\n this.authService.redirectLoginUser();\r\n } else {\r\n this.loginStatusSubscription = this.authService.getLoginStatusEvent().subscribe(isLoggedIn => {\r\n if (this.getShouldRedirect()) {\r\n this.authService.redirectLoginUser();\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n ngOnDestroy() {\r\n if (this.loginStatusSubscription) {\r\n this.loginStatusSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n getShouldRedirect() {\r\n return !this.isModal && this.authService.isLoggedIn && !this.authService.isSessionExpired;\r\n }\r\n\r\n\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n closeModal() {\r\n if (this.modalClosedCallback) {\r\n this.modalClosedCallback();\r\n }\r\n }\r\n\r\n\r\n login() {\r\n this.isLoading = true;\r\n this.alertService.startLoadingMessage('', 'Attempting login...');\r\n\r\n this.authService.login(this.userLogin.userName, this.userLogin.password, this.userLogin.rememberMe)\r\n .subscribe(\r\n user => {\r\n setTimeout(() => {\r\n this.alertService.stopLoadingMessage();\r\n this.isLoading = false;\r\n this.reset();\r\n\r\n if (!this.isModal) {\r\n this.alertService.showMessage('Login', `Welcome ${user.userName}!`, MessageSeverity.success);\r\n } else {\r\n this.alertService.showMessage('Login', `Session for ${user.userName} restored!`, MessageSeverity.success);\r\n setTimeout(() => {\r\n this.alertService.showStickyMessage('Session Restored', 'Please try your last operation again', MessageSeverity.default);\r\n }, 500);\r\n\r\n this.closeModal();\r\n }\r\n }, 500);\r\n },\r\n error => {\r\n\r\n this.alertService.stopLoadingMessage();\r\n\r\n if (Utilities.checkNoNetwork(error)) {\r\n this.alertService.showStickyMessage(Utilities.noNetworkMessageCaption, Utilities.noNetworkMessageDetail, MessageSeverity.error, error);\r\n this.offerAlternateHost();\r\n } else {\r\n const errorMessage = Utilities.getHttpResponseMessage(error);\r\n\r\n if (errorMessage) {\r\n this.alertService.showStickyMessage('Unable to login', this.mapLoginErrorMessage(errorMessage), MessageSeverity.error, error);\r\n } else {\r\n this.alertService.showStickyMessage('Unable to login', 'An error occured whilst logging in, please try again later.\\nError: ' + Utilities.getResponseBody(error), MessageSeverity.error, error);\r\n }\r\n }\r\n\r\n setTimeout(() => {\r\n this.isLoading = false;\r\n }, 500);\r\n });\r\n }\r\n\r\n\r\n offerAlternateHost() {\r\n\r\n if (Utilities.checkIsLocalHost(location.origin) && Utilities.checkIsLocalHost(this.configurations.baseUrl)) {\r\n this.alertService.showDialog('Dear Developer!\\nIt appears your backend Web API service is not running...\\n' +\r\n 'Would you want to temporarily switch to the online Demo API below?(Or specify another)',\r\n DialogType.prompt,\r\n (value: string) => {\r\n this.configurations.baseUrl = value;\r\n this.configurations.tokenUrl = value;\r\n this.alertService.showStickyMessage('API Changed!', 'The target Web API has been changed to: ' + value, MessageSeverity.warn);\r\n },\r\n null,\r\n null,\r\n null,\r\n this.configurations.fallbackBaseUrl);\r\n }\r\n }\r\n\r\n\r\n mapLoginErrorMessage(error: string) {\r\n\r\n if (error == 'invalid_username_or_password') {\r\n return 'Invalid username or password';\r\n }\r\n\r\n if (error == 'invalid_grant') {\r\n return 'This account has been disabled';\r\n }\r\n\r\n return error;\r\n }\r\n\r\n\r\n reset() {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbWFudWFsLWF3Yi1tYW5pZmVzdC9tYW51YWwtYXdiLW1hbmlmZXN0LmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { AlertService } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\n\r\n@Component({\r\n selector: 'app-manual-awb-manifest',\r\n templateUrl: './manual-awb-manifest.component.html',\r\n styleUrls: ['./manual-awb-manifest.component.scss']\r\n})\r\nexport class ManualAwbManifestComponent implements OnInit {\r\n EditedManuaManifest: ManuaManifest = new ManuaManifest();\r\n Row\r\n constructor(private transaction: TransactionService,\r\n private configurations: ConfigurationService,\r\n private localstre: LocalStoreManager, private router: Router,\r\n private authService: AuthService, private route: Router, private alertService: AlertService,\r\n private ServiceMaster: Masters) {\r\n }\r\n ngOnInit() {\r\n }\r\n\r\n}\r\nexport class ManuaManifest {\r\n private _AwbManifestno: string;\r\n public get AwbManifestno(): string {\r\n return this._AwbManifestno;\r\n }\r\n public set AwbManifestno(val: string) {\r\n this._AwbManifestno = val;\r\n }\r\n\r\n private _AwbManifestId: string;\r\n public get AwbManifestId(): string {\r\n return this._AwbManifestId;\r\n }\r\n public set AwbManifestId(val: string) {\r\n this._AwbManifestId = val;\r\n }\r\n\r\n private _TempAwbno: string;\r\n public get TempAwbno(): string {\r\n return this._TempAwbno;\r\n }\r\n public set TempAwbno(val: string) {\r\n this._TempAwbno = val;\r\n }\r\n private _BookingOffice: any;\r\n public get BookingOffice(): any {\r\n return this._BookingOffice\r\n }\r\n public set BookingOffice(val: any) {\r\n this._BookingOffice = val\r\n }\r\n private _BookingOfficeId: any;\r\n public get BookingOfficeId(): any {\r\n return this._BookingOfficeId;\r\n }\r\n public set BookingOfficeId(val: any) {\r\n this._BookingOfficeId = val;\r\n }\r\n\r\n private _DestPincode: string;\r\n public get DestPincode(): string {\r\n return this._DestPincode;\r\n }\r\n public set DestPincode(val: string) {\r\n this._DestPincode = val;\r\n }\r\n\r\n private _AwbWeight: number;\r\n public get AwbWeight(): number {\r\n return this._AwbWeight;\r\n }\r\n public set AwbWeight(val: number) {\r\n this._AwbWeight = val;\r\n }\r\n\r\n private _ProductMasterId: any;\r\n public get ProductMasterId(): any {\r\n return this._ProductMasterId;\r\n }\r\n public set ProductMasterId(val: any) {\r\n this._ProductMasterId = val;\r\n }\r\n\r\n private _AwbMode: string;\r\n public get AwbMode(): string {\r\n return this._AwbMode;\r\n }\r\n public set AwbMode(val: string) {\r\n this._AwbMode = val;\r\n }\r\n\r\n private _Pieces: number;\r\n public get Pieces(): number {\r\n return this._Pieces;\r\n }\r\n public set Pieces(val: number) {\r\n this._Pieces = val;\r\n }\r\n\r\n private _ForwaredeTo: string;\r\n public get ForwaredeTo(): string {\r\n return this._ForwaredeTo;\r\n }\r\n public set ForwaredeTo(val: string) {\r\n this._ForwaredeTo = val;\r\n }\r\n\r\n private _ForwaredeToId: any;\r\n public get ForwaredeToId(): any {\r\n return this._ForwaredeToId;\r\n }\r\n public set ForwaredeToId(val: any) {\r\n this._ForwaredeToId = val;\r\n }\r\n\r\n private _TotalWeight: number;\r\n public get TotalWeight(): number {\r\n return this._TotalWeight;\r\n }\r\n public set TotalWeight(val: number) {\r\n this._TotalWeight = val;\r\n }\r\n\r\n private _TotalPcs: number;\r\n public get TotalPcs(): number {\r\n return this._TotalPcs;\r\n }\r\n public set TotalPcs(val: number) {\r\n this._TotalPcs = val;\r\n }\r\n\r\n private _Awbno: string;\r\n public get Awbno(): string {\r\n return this._Awbno;\r\n }\r\n public set Awbno(val: string) {\r\n this._Awbno = val;\r\n }\r\n\r\n private _AwbBookingId: any;\r\n public get AwbBookingId(): any {\r\n return this._AwbBookingId;\r\n }\r\n public set AwbBookingId(val: any) {\r\n this._AwbBookingId = val;\r\n }\r\n\r\n private _Createdby: string;\r\n public get Createdby(): string {\r\n return this._Createdby;\r\n }\r\n public set Createdby(val: string) {\r\n this._Createdby = val;\r\n }\r\n\r\n private _CreatedOn: Date;\r\n public get CreatedOn(): Date {\r\n return this._CreatedOn;\r\n }\r\n public set CreatedOn(val: Date) {\r\n this._CreatedOn = val;\r\n }\r\n\r\n private _UpdatedBy: string;\r\n public get UpdatedBy(): string {\r\n return this._UpdatedBy;\r\n }\r\n public set UpdatedBy(val: string) {\r\n this._UpdatedBy = val;\r\n }\r\n\r\n private _UpdatedOn: Date;\r\n public get UpdatedOn(): Date {\r\n return this._UpdatedOn;\r\n }\r\n public set UpdatedOn(val: Date) {\r\n this._UpdatedOn = val;\r\n }\r\n\r\n private _Isbooked: boolean;\r\n public get Isbooked(): boolean {\r\n return this._Isbooked;\r\n }\r\n public set Isbooked(val: boolean) {\r\n this._Isbooked = val;\r\n }\r\n\r\n\r\n \r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbWVuaWZlc3RyZXBvcnQvbWVuaWZlc3RyZXBvcnQuY29tcG9uZW50LnNjc3MifQ== */\"","\r\nimport { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { MatDialog } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { ExcelService } from '../../services/excel.service'\r\nimport { ACNDetail, AcnUpdateComponent, ConfirmDialogACNModels } from '../controls/acn-update.component';\r\nimport { Guid } from 'guid-typescript';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'appmenifestreport',\r\n templateUrl: './menifestreport.component.html',\r\n styleUrls: ['./menifestreport.component.scss']\r\n})\r\nexport class MenifestreportComponent implements OnInit {\r\n\r\n editedMenifestdetails: Menifestdetails = new Menifestdetails();\r\n printeditedMenifestdetailsObj: Menifestdetails[] = [];\r\n columns: any[] = [];\r\n rows: Menifestdetails[] = [];\r\n arrcity: any;\r\n bookingdata: any[] = [];\r\n addrow: Menifestdetails[] = [];\r\n rowsCache: Menifestdetails[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditMode = false;\r\n bookingTypeDetail = \"0\"\r\n typee: string = \"0\";\r\n isawbno: boolean;\r\n isDatewise: boolean;\r\n text=\"\";\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n isbutton= false;\r\n Manifest: any;\r\n dialogRef: any;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n constructor(public dialog: MatDialog, private excelService: ExcelService, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService)\r\n { \r\n \r\n }\r\n @ViewChild('f', { static: false })\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'srlno', name: '#', width: 30, canAutoResize: false },\r\n { prop: 'Manifestno', name: 'Manifest No', width: 100 },\r\n { prop: 'Type', name: 'Type', width: 50 },\r\n { prop: 'MenifestDate', name: 'Manifest Date', width: 100 },\r\n { prop: 'officename', name: 'Generated At', width: 100 },\r\n { prop: 'ForwardedTo', name: 'Fwd To/Rec. From', width: 150 },\r\n { prop: 'Weight', name: 'Wight', width: 70 },\r\n { prop: 'Pieces', name: 'Pieces', width: 70 },\r\n\r\n ];\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate1, sortable: false, draggable: false })\r\n\r\n this.Insertawkbooking();\r\n }\r\n Insertawkbooking() {\r\n this.rows = [];\r\n this.rowsCache = [];\r\n if (this.typee == \"0\")\r\n {\r\n this.transaction.GetManiFestList(\"\").subscribe(result => this.onGetSucessManifestData(result), error => this.onDataLoadFailed(error));\r\n }\r\n if (this.typee == \"1\") {\r\n this.Manifest = (document.getElementById('Manifestno')).value;\r\n this.transaction.GetManiFestList(this.Manifest).subscribe(result => this.onGetSucessManifestData(result), error => this.onDataLoadFailed(error));\r\n \r\n }\r\n if (this.typee == \"2\") {\r\n\r\n var fromdt = (document.getElementById('fromdate')).value;\r\n var todt = (document.getElementById('todate')).value;\r\n\r\n var fromdate = fromdt.substr(6, 4) + \"-\" + fromdt.substr(3, 2) + \"-\" + fromdt.substr(0, 2);// new Date(parseInt(fromdt.substr(6, 4)), parseInt(fromdt.substr(3, 2)), parseInt(fromdt.substr(0, 2))).toString();\r\n var toDate = todt.substr(6, 4) + \"-\" + todt.substr(3, 2) + \"-\" + todt.substr(0, 2);//new Date(parseInt(todt.substr(6, 4)), parseInt(todt.substr(3, 2)), parseInt(todt.substr(0, 2))).toString();\r\n\r\n this.transaction.GetManiFestList(\"\", fromdate, toDate).subscribe(result => this.onGetSucessManifestData(result), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n // this.transaction.Getmanifestprint(this.Manifest).subscribe(result => this.onGetSucessManifestData(result), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n confirmDialog_ACN(mes: any, pieces: any, unit: any, mps: ACNDetail, callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogACNModels(\"ACNUpdate\", mps);\r\n this.dialogRef = this.dialog.open(AcnUpdateComponent, {\r\n disableClose: true,\r\n minWidth: \"900px\",\r\n minHeight: \"400px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n OnMPSResultofmodel(result: any) {\r\n if (result.IsError == true) {\r\n alert(\"Error In UpdateAcn\")\r\n\r\n //this.confirmDialog_MPS(this.editedawkbooking.pieces + \",\" + this.Unit, this.OnMPSResultofmodel)\r\n //this.isSaving = true;\r\n //this.transaction.postGenawbno(this.editedawkbooking.Booktype, this.editedawkbooking.awbMode + \" \" + this.editedawkbooking.ProductName, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n //this.router.navigate(['/awbprint'], { queryParams: { awbno: this.editedawkbooking.awbNo } }); // define your component where you want to go\r\n return;\r\n }\r\n this.transaction.PostACNUpdate(result).subscribe(awbno => { this.alertService.showMessage(\"Save\", \"Update acn Successfully\", MessageSeverity.success); }, error => this.saveFailedHelper(error));\r\n\r\n\r\n\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n updateAcn(row: any) {\r\n let acndata = new ACNDetail();\r\n acndata.gatePassNo = row.Manifestno;\r\n acndata.vendoreCode = '';\r\n acndata.gpWeight = row.Weight;\r\n acndata.vendoreName = row.Coloader;\r\n acndata.loadMovementId = Guid.raw();\r\n acndata.aCNNO = ''\r\n this.confirmDialog_ACN(\"\", \"\", \"\", acndata, null);\r\n }\r\n\r\n\r\n GetManifestList(val:any) {\r\n //this.transaction.GetManiFestList().pipe(take(1)).toPromise()\r\n \r\n }\r\n onGetSucessManifestData(result: any) { \r\n if (result.length > 0) {\r\n this.rows = [] as Menifestdetails[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as Menifestdetails[];\r\n this.bookingdata = result;\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new Menifestdetails();\r\n this.addrow[0].srlno = (index + 1).toString();\r\n this.addrow[0].ForwardedTo = result[index].forwardTo\r\n this.addrow[0].MenifestDate = result[index].maniFestdate;\r\n this.addrow[0].Manifestno = result[index].manifestno;\r\n this.addrow[0].officename = result[index].office;\r\n this.addrow[0].Weight = result[index].totalWeight;\r\n this.addrow[0].Type = result[index].type == \"OUT\" ? \"Outbound\" : result[index].type == \"DEL\" ? \"OFD\": \"Inbound\";\r\n this.addrow[0].Pieces = result[index].totalPieces;\r\n this.addrow[0].Coloader = result[0].coloader;\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new Menifestdetails();\r\n tmp.ForwardedTo = result[index].forwardTo;\r\n tmp.MenifestDate = result[index].maniFestdate;\r\n tmp.Manifestno = result[index].manifestno;\r\n tmp.officename = result[index].office;\r\n tmp.Weight = result[index].totalWeight;\r\n tmp.Type = result[index].type == \"OUT\" ? \"Outbound\" : result[index].type == \"DEL\" ? \"OFD\" : \"Inbound\";\r\n tmp.Pieces = result[index].totalPieces\r\n tmp.srlno = (index + 1).toString();\r\n tmp.Coloader = result[0].coloader;\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n \r\n generateExcel() {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n data[index] = [this.rows[index].Manifestno, this.rows[index].MenifestDate,\r\n this.rows[index].Type,\r\n this.rows[index].officename,\r\n this.rows[index].ForwardedTo,\r\n this.rows[index].Pieces,\r\n this.rows[index].Weight,\r\n this.rows[index].Coloader\r\n \r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.header = [\"Manifestno\", \"Date\", \"Type\", \"Generated At\",\"FWd To/Rec.From\", \"Pieces\",\r\n \"Weight\",\"Co-loader\" ]\r\n this.excelService.title = \"Menifest Details\";\r\n this.excelService.generateExcel();\r\n }\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.Manifestno));\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n consignee(row: any) {\r\n this.isEditModeconsignee = true;\r\n this.consigneeeditorModal.show();\r\n }\r\n consignor(row: any) {\r\n this.isEditModeconsigner = true;\r\n this.consignereditorModal.show();\r\n }\r\n awbprint(row: Menifestdetails) {\r\n if (row.Type.trimRight() != 'OFD') {\r\n this.router.navigate(['/printmanifest'], {\r\n queryParams: {\r\n Manifest: row.Manifestno\r\n\r\n }\r\n }); // define your component where\r\n }\r\n else {\r\n this.route.navigate(['/awbdrs'], {\r\n queryParams: {\r\n drsno: row.Manifestno\r\n\r\n }\r\n });\r\n }\r\n }\r\n \r\n funHide()\r\n {\r\n var typeee=this.typee ==\"1\" ?\"1\":\"2\";\r\n if(typeee ==\"1\")\r\n {\r\n this.isawbno=true;\r\n this.text=\"Manifest No\";\r\n this.isDatewise= false;\r\n this.isbutton=true;\r\n }else{\r\n this.text=\"Date Range\";\r\n this.isawbno=false;\r\n this.isDatewise= true;\r\n this.isbutton=true;\r\n }\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n}\r\nexport class Menifestdetails{\r\n public srlno:string\r\n public Manifestno: string\r\n public fromdate:string\r\n public todate: string\r\n public MenifestDate: string\r\n public officename :string\r\n public ForwardedTo: string \r\n public Weight: string\r\n public Type: string\r\n public Pieces: string\r\n public Coloader:string\r\n}\r\n\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbXVsdGlwbGV0cmFja2luZy9tdWx0aXBsZXRyYWNraW5nLmNvbXBvbmVudC5zY3NzIn0= */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-multipletracking',\r\n templateUrl: './multipletracking.component.html',\r\n styleUrls: ['./multipletracking.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class MultipletrackingComponent implements OnInit {\r\n reportdata: any;\r\n loadingIndicator = false;\r\n rows: any[] = [];\r\n columns: any[] = [];\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('repTable', { static: false }) table: any;\r\n constructor(private localstre: LocalStoreManager, private troute: ActivatedRoute, private datePipe: DatePipe, private excelService: ExcelService, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n\r\n ngOnInit() {\r\n this.loadingIndicator = true;\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'awbno', name: 'Awbno', width: 150 },\r\n { prop: 'awbInscanDate', name: 'Booking Date', width: 150 },\r\n { prop: 'origin', name: 'Origin', width: 150 },\r\n { prop: 'destcity', name: 'Destination', width: 150 },\r\n { prop: 'pieces', name: 'Pcs', width: 50 },\r\n { prop: 'awbWeight', name: 'Wt.', width: 75 },\r\n { prop: 'mode', name: 'Mode', width: 50 },\r\n { prop: 'status', name: 'Status', width: 100 },\r\n { prop: 'statusdate', name: 'Status Date', width: 100 },\r\n { prop: 'reachedAt', name: 'Reached At', width: 150 },\r\n { prop: 'reachedOn', name: 'Reached On', width: 135 },\r\n { prop: 'ofdBy', name: 'OFD By', width: 150 },\r\n { prop: 'ofdOn', name: 'OFD On', width: 135 },\r\n { prop: 'delvDay', name: 'Del.Day', width: 140 },\r\n\r\n\r\n //{ prop: 'transitDetail', name: 'Transit Detail', width: 300 }\r\n ];\r\n this.columns.unshift({ name: '', width: 25, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'GetMultipleTracking'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"OfficeId\"\r\n pr.PropertyValue = logindata[0].officeid;\r\n Parameter[0] = null;\r\n Req.LstParameter = null;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n\r\n\r\n\r\n }\r\n GetData() {\r\n if ($('#toDate').val().toString() == '') {\r\n this.alertService.showMessage(\"Error\", \"Please enter date !\", MessageSeverity.error)\r\n $('#toDate').focus();\r\n return;\r\n }\r\n if ($('#fromdate').val().toString() == '') {\r\n this.alertService.showMessage(\"Error\", \"Please enter date !\", MessageSeverity.error)\r\n $('#fromdate').focus();\r\n return;\r\n }\r\n this.alertService.startLoadingMessage('', 'Loading data,Please wait.......');\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'GetMultipleTracking'\r\n let Parameter = new Array(3);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"office\"\r\n pr.PropertyValue = logindata[0].officeCode;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"FromDate\"\r\n pr.PropertyValue = $('#fromdate').val().toString();\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"toDate\"\r\n pr.PropertyValue = $('#toDate').val().toString();\r\n Parameter[2] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n if (value == '') {\r\n this.rows = this.reportdata.table\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n\r\n });\r\n this.rows = [...this.rows];\r\n return;\r\n }\r\n this.rows = this.rows.filter(r => Utilities.searchArray(value, false, r.awbno, r.origin, r.destCity));\r\n }\r\n GenerateExcel() {\r\n\r\n var data = []\r\n\r\n for (let index = 0; index < this.reportdata.table.length; index++) {\r\n data[index] = [\r\n index+1,\r\n this.reportdata.table[index].awbno,\r\n this.reportdata.table[index].origin,\r\n this.reportdata.table[index].destcity,\r\n this.reportdata.table[index].product,\r\n this.reportdata.table[index].pieces,\r\n this.reportdata.table[index].awbWeight,\r\n this.reportdata.table[index].awbContent,\r\n this.reportdata.table[index].mode,\r\n this.reportdata.table[index].booKDate.split(\" \")[0],\r\n this.reportdata.table[index].booKDate.split(\" \")[1],\r\n this.reportdata.table[index].GatePassno != '' ? this.reportdata.table[index].loadDate : this.reportdata.table[index].awbinoutDate,\r\n this.reportdata.table[index].GatePassno != '' ? this.reportdata.table[index].loadtime : this.reportdata.table[index].loadManifesttime,\r\n this.reportdata.table[index].GatePassno != '' ? this.reportdata.table[index].toOffice : this.reportdata.table[index].tocity,\r\n isNullOrUndefined(this.reportdata.table[index].reachedOn) ? \"\" : this.reportdata.table[index].reachedOn.split(\" \")[0],\r\n isNullOrUndefined(this.reportdata.table[index].reachedOn) ? \"\" : this.reportdata.table[index].reachedOn.split(\" \")[1],\r\n isNullOrUndefined(this.reportdata.table[index].ofdOn) ? \"\" : this.reportdata.table[index].ofdOn.split(\" \")[0],\r\n isNullOrUndefined(this.reportdata.table[index].ofdOn) ? \"\" : this.reportdata.table[index].ofdOn.split(\" \")[1],\r\n this.reportdata.table[index].delvdate,\r\n this.reportdata.table[index].delvDay\r\n ]\r\n }\r\n\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"QUALITY ANALYSIS\";\r\n let Office = \"Pan India\";\r\n \r\n this.excelService.header = [\"Sno\", \"Awbno\", \"Origin\", \"Destination\", \"Dox/Pax\", \"Pcs\", \"Weight\", \"Item\", \"Mode\", \"Book Date\", \"Book Time\", \"Disp. Date\", \"Time\", \"Disp. To\", \"Reached On\", \"Time\", \"OFD Date\", \"Time\", \"Date Of Delivery\", \"Delv. In Day\"];\r\n this.excelService.title = \"QUALITY ANALYSIS\";\r\n this.excelService.Widths = [5,15,30, 30,15,5,10,20,15,15,8,30,15,8,15,8,15,8,15,15]\r\n this.excelService.generateExcel();\r\n\r\n }\r\n getSucessDataExrate(result: any) {\r\n this.reportdata = result;\r\n this.rows = this.reportdata.table\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n\r\n });\r\n this.rows = [...this.rows];\r\n //this.settablevariable();\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.stopLoadingMessage();\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n\r\n\r\n toggleExpandRow(row) {\r\n console.log('Toggled Expand Row!', row);\r\n //(document.getElementById(\"dvdetail\")).innerHTML = row.transitDetail\r\n this.table.rowDetail.toggleExpandRow(row);\r\n\r\n }\r\n onDetailToggle(event) {\r\n console.log('Detail Toggled', event);\r\n }\r\n settablevariable() {\r\n var tablevar = '
\" + \"Awbno\" + \"\" + \"Book Date\" + \"\" + \"Reference No.\" + \"\" + \"Awb Content\" + \"\" + \"Origin\" + \"\" + \"Destination\" + \"\" + \"Pieces\" + \"\" + \"Weight\" + \"\" + \"Consignee\" + \"\" + \"Mobilenumber\" + \"
\" + \"\" + custb.awbno + \"\" + \"\" + this.datepipe.transform((new Date), 'dd/MM/yyyy') + \"\" + custb.referenceno + \"\" + custb.awbContent + \"\" + custb.origin + \"\" + custb.destination + \"\" + custb.pieces + \"\" + custb.awbWeight + \"\" + custb.consName + \"\" + custb.consMobileno + \"
' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '';\r\n this.reportdata.table.forEach((list, ind, arr) => {\r\n tablevar += '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n '' +\r\n ''\r\n });\r\n tablevar += '
AwbnoBooking DateOriginDestinationPcsWeightModeStatusStatus DateReached AtReached OnOFD ByOFD OnTransit Detail
' + list.awbno + '' + list.awbInscanDate + '' + list.origin + '' + list.destcity + '' + list.pieces + '' + list.awbWeight + '' + list.mode + '' + list.status + '' + list.statusdate + '' + list.reachedAt + '' + list.reachedOn + '' + list.ofdBy + '' + list.ofdOn + '' + list.transitDetail + '
';\r\n\r\n (document.getElementById('divtable')).innerHTML = tablevar;\r\n }\r\n\r\n}\r\n","export default \".icon-container {\\n font-size: 5rem;\\n}\\n\\n.error-description {\\n font-size: 1.5rem;\\n padding-bottom: 10px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9ub3QtZm91bmQvRDpcXE9uZXhXZWJcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xcbm90LWZvdW5kXFxub3QtZm91bmQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvbm90LWZvdW5kL25vdC1mb3VuZC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQTtFQUNJLGVBQUE7QUNBSjs7QURHQTtFQUNJLGlCQUFBO0VBQ0Esb0JBQUE7QUNBSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbm90LWZvdW5kL25vdC1mb3VuZC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4uaWNvbi1jb250YWluZXIge1xyXG4gICAgZm9udC1zaXplOiA1cmVtO1xyXG59XHJcblxyXG4uZXJyb3ItZGVzY3JpcHRpb24ge1xyXG4gICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxufVxyXG4iLCIuaWNvbi1jb250YWluZXIge1xuICBmb250LXNpemU6IDVyZW07XG59XG5cbi5lcnJvci1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn0iXX0= */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'not-found',\r\n templateUrl: './not-found.component.html',\r\n styleUrls: ['./not-found.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class NotFoundComponent {\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbnMtbG9jYXRpb24vbnMtbG9jYXRpb24uY29tcG9uZW50LnNjc3MifQ== */\"","import { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Row } from 'exceljs';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-ns-location',\r\n templateUrl: './ns-location.component.html',\r\n styleUrls: ['./ns-location.component.scss']\r\n})\r\nexport class NsLocationComponent implements OnInit {\r\n\r\n editednslocation: NSLocation= new NSLocation()\r\n columns: any[] = [];\r\n addrow: NSLocation[] = [];\r\n rows: NSLocation[] = [];\r\n rowsCache: NSLocation[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n msg = '';\r\n\r\n\r\n\r\n constructor(private configurations: ConfigurationService, private authService: AuthService, private transaction: TransactionService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'locationName', name: 'Location Name', width: 100 },\r\n { prop: 'cityName', name: 'City Name', width: 100 },\r\n { prop: 'state', name: 'State Name', width: 100 },\r\n { prop: 'pincode', name: 'Pin-Code', width: 100 },\r\n { prop: 'servicable', name: 'Servicable', width: 100 },\r\n { prop: 'topay', name: 'Topay', width: 100 },\r\n { prop: 'dOD', name: 'DOD', width: 100 },\r\n { prop: 'connectingHub', name: 'Connecting Hub ', width: 100 },\r\n\r\n ];\r\n // this.loaddata();\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n }\r\n getCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2 = this.arrcity\r\n $('#cityname').autocomplete({\r\n source: this.arrcity2,\r\n delay: 50\r\n });\r\n }\r\n\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('cityname')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n (document.getElementById('cityname')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n (document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n Insertnslocation() {\r\n var strvalue = this.editednslocation;\r\n if (this.rows.length <= 0) {\r\n this.showErrorAlert(\"City\", \"No Record To Save\")\r\n return;\r\n }\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n //this.transaction.SaveNsLocation(this.rows).subscribe(Result => this.saveSuccessHelper(Result), error => this.saveFailedHelper(error))\r\n this.isLoading = true;\r\n }\r\n private saveSuccessHelper(Result: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n //this.alertService.showMessage('Success', `nslocation \\\"${this.editednslocation.locationname}\\\" was created successfully`, MessageSeverity.success);\r\n \r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n \r\n AddPinCode() {\r\n var prmcityname = $('#cityname').val();\r\n if (prmcityname == \"\" || prmcityname == undefined) {\r\n alert('Please select City Name');\r\n $('#cityname').focus();\r\n return false;\r\n }\r\n\r\n var prmstate = $('#state').val();\r\n if (prmstate == \"\" || prmstate == undefined) {\r\n alert('Please select State Name');\r\n $('#state').focus();\r\n return false;\r\n }\r\n\r\n var prmlocationname = $('#locationname').val();\r\n if (prmlocationname == \"\" || prmlocationname == undefined) {\r\n alert('Please select Location name');\r\n $('#locationname').focus();\r\n return false;\r\n }\r\n\r\n var prmpincode = $('#pincode').val();\r\n if (prmpincode == \"\" || prmpincode == undefined) {\r\n alert('Please select Pin-Code');\r\n $('#pincode').focus();\r\n return false;\r\n }\r\n\r\n\r\n if (this.rows.length == 0) {\r\n \r\n }\r\n else {\r\n \r\n }\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n\r\n });\r\n this.rows = [...this.rows]\r\n $('#pincode').val('');\r\n $('#pincode').focus();\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n \r\n \r\n }\r\n \r\n}\r\nexport class NSLocation {\r\n private _nSLocationId: any;\r\n public get nSLocationId(): any {\r\n return this._nSLocationId;\r\n }\r\n public set nSLocationId(val: any) {\r\n this._nSLocationId = val;\r\n }\r\n\r\n private _locationName: string;\r\n public get locationName(): string {\r\n return this._locationName;\r\n }\r\n public set locationName(val: string) {\r\n this._locationName = val;\r\n }\r\n\r\n private _pincodeMasterid: any;\r\n public get pincodeMasterid(): any {\r\n return this._pincodeMasterid;\r\n }\r\n public set pincodeMasterid(val: any) {\r\n this._pincodeMasterid = val;\r\n }\r\n\r\n private _pincode: string;\r\n public get pincode(): string {\r\n return this._pincode;\r\n }\r\n public set pincode(val: string) {\r\n this._pincode = val;\r\n }\r\n\r\n private _cityName: string;\r\n public get cityName(): string {\r\n return this._cityName;\r\n }\r\n public set cityName(val: string) {\r\n this._cityName = val;\r\n }\r\n\r\n private _stateName: string;\r\n public get stateName(): string {\r\n return this._stateName;\r\n }\r\n public set stateName(val: string) {\r\n this._stateName = val;\r\n }\r\n\r\n private _servicable: string;\r\n public get servicable(): string {\r\n return this._servicable;\r\n }\r\n public set servicable(val: string) {\r\n this._servicable = val;\r\n }\r\n\r\n private _product: string;\r\n public get product(): string {\r\n return this._product;\r\n }\r\n public set product(val: string) {\r\n this._product = val;\r\n }\r\n\r\n private _topay: string;\r\n public get topay(): string {\r\n return this._topay;\r\n }\r\n public set topay(val: string) {\r\n this._topay = val;\r\n }\r\n\r\n private _dOD: string;\r\n public get dOD(): string {\r\n return this._dOD;\r\n }\r\n public set dOD(val: string) {\r\n this._dOD = val;\r\n }\r\n\r\n private _connectingHub: string;\r\n public get connectingHub(): string {\r\n return this._connectingHub;\r\n }\r\n public set connectingHub(val: string) {\r\n this._connectingHub = val;\r\n }\r\n\r\n private _connectingHubID: any;\r\n public get connectingHubID(): any {\r\n return this._connectingHubID;\r\n }\r\n public set connectingHubID(val: any) {\r\n this._connectingHubID = val;\r\n }\r\n\r\n private _vendor: string;\r\n public get vendor(): string {\r\n return this._vendor;\r\n }\r\n public set vendor(val: string) {\r\n this._vendor = val;\r\n }\r\n\r\n private _vendorId: any;\r\n public get vendorId(): any {\r\n return this._vendorId;\r\n }\r\n public set vendorId(val: any) {\r\n this._vendorId = val;\r\n }\r\n\r\n private _mode: string;\r\n public get mode(): string {\r\n return this._mode;\r\n }\r\n public set mode(val: string) {\r\n this._mode = val;\r\n }\r\n\r\n private _departure: string;\r\n public get departure(): string {\r\n return this._departure;\r\n }\r\n public set departure(val: string) {\r\n this._departure = val;\r\n }\r\n\r\n private _arrival: string;\r\n public get arrival(): string {\r\n return this._arrival;\r\n }\r\n public set arrival(val: string) {\r\n this._arrival = val;\r\n }\r\n\r\n private _delivery: string;\r\n public get delivery(): string {\r\n return this._delivery;\r\n }\r\n public set delivery(val: string) {\r\n this._delivery = val;\r\n }\r\n\r\n private _contactPerson: string;\r\n public get contactPerson(): string {\r\n return this._contactPerson;\r\n }\r\n public set contactPerson(val: string) {\r\n this._contactPerson = val;\r\n }\r\n\r\n private _mobileno: string;\r\n public get mobileno(): string {\r\n return this._mobileno;\r\n }\r\n public set mobileno(val: string) {\r\n this._mobileno = val;\r\n }\r\n\r\n private _remark: string;\r\n public get remark(): string {\r\n return this._remark;\r\n }\r\n public set remark(val: string) {\r\n this._remark = val;\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbnMtcGFydG5lci9ucy1wYXJ0bmVyLmNvbXBvbmVudC5zY3NzIn0= */\"","import { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Row } from 'exceljs';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-ns-partner',\r\n templateUrl: './ns-partner.component.html',\r\n styleUrls: ['./ns-partner.component.scss']\r\n})\r\nexport class NsPartnerComponent implements OnInit {\r\n\r\n editednsPartner: nsPartner = new nsPartner();\r\n columns: any[] = [];\r\n bagcolumns: any[] = [];\r\n addrow: nsPartner[] = [];\r\n rows: nsPartner[] = [];\r\n rowsCache: nsPartner[] = [];\r\n bagrows: nsPartner[] = [];\r\n bagrowsCache: nsPartner[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditModeconsignee = false;\r\n isEditModeconsigner = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n msg = '';\r\n\r\n\r\n\r\n constructor(private configurations: ConfigurationService, private authService: AuthService, private transaction: TransactionService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n consigneeeditorModal: ModalDirective;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n public nspartnerarry: Array = [\r\n { name: \"Sandeep Kumar\", mobileno: \"9718493824\", email: \"sandeep@gmail.com\", maplocation: \"New Ashok nagar\", outscan: \"Y\", ofd: \"N\" },\r\n ];\r\n public mapname: Array = [\r\n { mapname: \"Ns-\" + \"Meerut-\" + \"Supar Market\" },\r\n { mapname: \"Ns-\" + \"Meerut-\" + \"Supar Market one\" },\r\n { mapname: \"Ns-\" + \"Meerut-\" + \"Supar Market two\" },\r\n { mapname: \"Ns-\" + \"Meerut-\" + \"Supar Market three\" },\r\n { mapname: \"Ns-\" + \"Meerut-\" + \"Supar Market four\" },\r\n ];\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'name', name: 'Vendor Code', width: 100 },\r\n { prop: 'name', name: 'Vendor Name', width: 100 },\r\n { prop: 'name', name: 'Contact Person', width: 100 },\r\n { prop: 'mobileno', name: 'Mobile No', width: 100 },\r\n { prop: 'email', name: 'Email-Id', width: 100 },\r\n { prop: 'maplocation', name: 'Map Location', width: 100 },\r\n { prop: 'maplocation', name: 'Departure', width: 100 },\r\n { prop: 'maplocation', name: 'Arrival', width: 100 },\r\n { prop: 'maplocation', name: 'Delivery', width: 100 },\r\n\r\n ];\r\n // this.loaddata();\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n }\r\n\r\n\r\n InsertnsPartner() {\r\n var strvalue = this.editednsPartner;\r\n \r\n this.editednsPartner.outscan = (document.getElementById(\"outscan\")).checked ? \"Y\" : \"N\";\r\n this.editednsPartner.ofd = (document.getElementById(\"ofd\")).checked ? \"Y\" : \"N\";\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n //this.transaction.SaveNspartner(this.editednsPartner).subscribe(Result => this.saveSuccessHelper(Result), error => this.saveFailedHelper(error))\r\n this.isLoading = true;\r\n this.bindgrid();\r\n \r\n }\r\n public bindgrid() {\r\n\r\n if (this.nspartnerarry.length > 0) {\r\n var totalpiece: any = 0;\r\n var totalWeight: any = 0;\r\n var totalNoofAwb: any = 0;\r\n for (let i = 0; i < this.nspartnerarry.length; i++) {\r\n this.editednsPartner = this.nspartnerarry[i];\r\n if (this.nspartnerarry[i].isconnected != false) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new nsPartner();\r\n this.addrow[0].name = this.editednsPartner.name;\r\n this.addrow[0].mobileno = this.editednsPartner.mobileno;\r\n this.addrow[0].email = this.editednsPartner.email;\r\n this.addrow[0].maplocation = this.editednsPartner.maplocation;\r\n this.addrow[0].outscan = this.editednsPartner.outscan;\r\n this.addrow[0].ofd = this.editednsPartner.ofd;\r\n this.rows[0] = this.addrow[0];\r\n }\r\n else {\r\n var tmp = new nsPartner();\r\n tmp.name = this.editednsPartner.name;\r\n tmp.mobileno = this.editednsPartner.mobileno;\r\n tmp.email = this.editednsPartner.email;\r\n tmp.maplocation = this.editednsPartner.maplocation;\r\n tmp.outscan = this.editednsPartner.outscan;\r\n tmp.ofd = this.editednsPartner.ofd;\r\n this.rows.push(tmp);\r\n }\r\n }\r\n else {\r\n \r\n }\r\n }\r\n this.rows.forEach((awb, index, awbs) => {\r\n (awb as any).index = index + 1;\r\n });\r\n this.rows = [...this.rows]\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n private saveSuccessHelper(nslocation:any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `nslocation \\\"${this.editednsPartner.name}\\\" was created successfully`, MessageSeverity.success);\r\n \r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n}\r\nexport class nsPartner {\r\n constructor(name?: string, mobileno?: string, email?: string, maplocation?: string, inscan?: string, outscan?: string, ofd?: string) {\r\n this.name = name;\r\n this.mobileno = mobileno;\r\n this.email = email;\r\n this.maplocation = maplocation;\r\n this.inscan = inscan;\r\n this.outscan = outscan;\r\n this.ofd = ofd;\r\n };\r\n \r\n public name: string\r\n public mobileno: string\r\n public email: string\r\n public maplocation: string\r\n public inscan: string\r\n public outscan: string\r\n public ofd: string\r\n\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvb2ZmaWNlbWFzdGVyL29mZmljZW1hc3Rlci5jb21wb25lbnQuc2NzcyJ9 */\"","//import { Component, OnInit } from '@angular/core';\r\n\r\n//@Component({\r\n// selector: 'app-officemaster',\r\n// templateUrl: './officemaster.component.html',\r\n// styleUrls: ['./officemaster.component.scss']\r\n//})\r\n//export class OfficemasterComponent implements OnInit {\r\n\r\n// constructor() { }\r\n\r\n// ngOnInit() {\r\n// }\r\n\r\n//}\r\nimport { state } from '@angular/animations';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { ViewChild } from '@angular/core';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Observable, ReplaySubject } from 'rxjs';\r\nimport { Citymaster } from 'src/app/models/citymaster.model';\r\nimport { Officemaster } from '../../models/officemaster.model';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-officemaster',\r\n templateUrl: './officemaster.component.html',\r\n styleUrls: ['./officemaster.component.scss']\r\n})\r\nexport class officemasterComponent implements OnInit {\r\n emailPattern = \"^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$\";\r\n mobNumberPattern = \"^((\\\\+91-?)|0)?[0-9]{10}$\";\r\n officehubbranchdata = new Officemaster();\r\n columns: any[] = [];\r\n rows: Officemaster[] = [];\r\n rowsCache: Officemaster[] = [];\r\n editedOffice: Officemaster;\r\n sourceOffice: Officemaster;\r\n editingOffice: { name: string };\r\n loadingIndicator: boolean;\r\n isEditMode = false;\r\n OfficeEdit: Officemaster = new Officemaster();\r\n isLoading = false;\r\n Ownrented = true\r\n formResetToggle = true;\r\n modalClosedCallback: () => void;\r\n loginStatusSubscription: any;\r\n @Input()\r\n isModal = false;\r\n //Start Bind City\r\n state: string[] = [];\r\n city: string[] = [];\r\n typearr: string[] = [];\r\n //End Bind City\r\n type = [\r\n \"Corporate(Corp)\" ,\r\n \"Regional(R.O.)\" ,\r\n \"Area(A.O.)\" ,\r\n \"Branch(Br.)\" ,\r\n \"Hub(HB.)\" \r\n ]\r\n ownrent = [\r\n \"Owned\",\r\n \"Rented\" \r\n ]\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n isSaving: boolean;\r\n base64Outputelec: string;\r\n base64Outputrent: string;\r\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.officeCode, r.officeName, ));\r\n }\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'officeType', name:'Office Type', width: 100 },\r\n { prop: 'officeCode', name:'Office Code', width: 50 },\r\n { prop: 'officeName' , name:'Office Name', width: 200 },\r\n { prop: 'mobileno', name:'Mobile No',width: 50 },\r\n { prop: 'landLineNo', name: 'Land LineNo', width: 50 },\r\n { prop: 'email', name:'Email',width: 50 }, \r\n { prop: 'Remarks', width: 100 }\r\n // { name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.loadData();\r\n }\r\n //Start Bind State Master\r\n GetCombodata(data) {\r\n if (state.length > 0 && data > 0) { this.OfficeEdit.State = this.state[data].toString(); } else { this.OfficeEdit.State = \"\" }\r\n }\r\n GetstateMaster() {\r\n this.ServiceMaster.getstateslist().subscribe(result => this.onDatagetSuccessful(result,'STATE'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[],listof:any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.state = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.city = states;\r\n }\r\n this.typearr = null;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n //Ens Bind City Master\r\n\r\n //Start Bind State Master\r\n GetCityCombodata(data) {\r\n if (this.city.length > 0 && data > 0) { this.OfficeEdit.CityName= this.city[data].toString(); } else { this.OfficeEdit.CityName = \"\" }\r\n }\r\n GetownCombodata() {\r\n var value = (document.getElementById(\"OwnedRented\")).value\r\n if (value == 'Owned') { this.Ownrented = false } else { this.Ownrented = true }\r\n\r\n }\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result,'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n //Ens Bind City Master\r\n\r\n\r\n //Start Bind State Master\r\n GetTypeCombodata(data) {\r\n if (this.type.length > 0 && data >= 0) { this.OfficeEdit.OfficeType = this.type[data].toString(); } else { this.OfficeEdit.OfficeType = \"\" }\r\n }\r\n\r\n\r\n //Ens Bind City Master\r\n\r\n loadData() {\r\n this.GetstateMaster();\r\n this.GetCityMaster();\r\n this.alertService.startLoadingMessage();\r\n this.loadingIndicator = true;\r\n\r\n this.ServiceMaster.getoffices()\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n const offices = results;\r\n\r\n offices.forEach((office, index, offices) => {\r\n (office as any).index = index + 1;\r\n });\r\n this.rowsCache = [...offices];\r\n this.rows = offices;\r\n\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve offices from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n\r\n\r\n }\r\n\r\n InsertOfficeDeatils() {\r\n debugger;\r\n //const selectedFileList = (document.getElementById('ElectricityDetails')).files[0] \r\n this.isSaving = true; \r\n this.editedOffice.ElectricityFile = this.base64Outputelec;\r\n this.editedOffice.AgreementFile = this.base64Outputrent;\r\n this.editedOffice.Owned_Rented = (document.getElementById('OwnedRented')).value;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.ServiceMaster.newoffice(this.editedOffice).subscribe(office => this.saveSuccessHelper(office), error => this.saveFailedHelper(error));\r\n }\r\n\r\n onFileSelected(evt:any,ftype:string) {\r\n var files = evt.target.files;\r\n var file = files[0];\r\n\r\n if (files && file) {\r\n var reader = new FileReader();\r\n if (ftype == 'Electric') {\r\n reader.onload = this._handleReaderLoaded.bind(this);\r\n reader.readAsBinaryString(file);\r\n }\r\n else {\r\n reader.onload = this._handleReaderLoadedrent.bind(this);\r\n reader.readAsBinaryString(file);\r\n }\r\n\r\n }\r\n }\r\n\r\n _handleReaderLoaded(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64Outputelec = btoa(binaryString);\r\n }\r\n _handleReaderLoadedrent(readerEvt) {\r\n var binaryString = readerEvt.target.result;\r\n this.base64Outputrent = btoa(binaryString);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n\r\n closeModal() {\r\n if (this.modalClosedCallback) {\r\n this.modalClosedCallback();\r\n }\r\n }\r\n\r\n onEditorModalHidden() {\r\n this.editingOffice = null;\r\n this.sourceOffice = null;\r\n this.editorModal.hide();\r\n }\r\n newOffice() {\r\n this.editingOffice = null;\r\n this.sourceOffice = null;\r\n this.isEditMode = true;\r\n this.OfficeEdit = this.editedOffice = new Officemaster();\r\n this.editorModal.show();\r\n }\r\n private saveSuccessHelper(office?: Officemaster) {\r\n if (office) {\r\n Object.assign(this.OfficeEdit, office);\r\n }\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `office \\\"${this.OfficeEdit.OfficeType}\\\" was created successfully`, MessageSeverity.success);\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n\r\n\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57)) {\r\n return false;\r\n }\r\n else {\r\n return true;\r\n }\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvb25saW5lb3JkZXJkZXRhaWxzL29ubGluZW9yZGVyZGV0YWlscy5jb21wb25lbnQuc2NzcyJ9 */\"","import { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, Input, OnInit,AfterViewInit } from '@angular/core';\r\nimport { StateKey } from '@angular/platform-browser';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { RoleEditorComponent } from '../../components/controls/role-editor.component';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { StateMaster} from '../../models/statemaster.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { MPStransaction } from '../controls/dialog-mps.component';\r\nimport { Address } from '../controls/addressmaster.component';\r\nimport { Officemaster } from '../../models/officemaster.model';\r\n\r\n@Component({\r\n selector: 'app-onlineorderdetails',\r\n templateUrl: './onlineorderdetails.component.html',\r\n styleUrls: ['./onlineorderdetails.component.scss']\r\n})\r\nexport class OnlineorderdetailsComponent implements OnInit {\r\n columns: any[] = [];\r\n \r\n rows: OnlineOrder[] = [];\r\n rowsCache: OnlineOrder[] = [];\r\n addrow: OnlineOrder[] = [];\r\n bookData: Booking = new Booking();\r\n Customercolumns: any[] = [];\r\n Custrows: OnlineOrder[] = [];\r\n CustrowsCache: OnlineOrder[] = [];\r\n Custaddrow: OnlineOrder[] = [];\r\n officedetail: any;\r\n\r\n \r\n Itemcolumns: any[] = [];\r\n Itemrows: OnlineOrder[] = [];\r\n ItemrowsCache: OnlineOrder[] = [];\r\n Itemaddrow: OnlineOrder[] = [];\r\n\r\n allPermissions: OnlineOrder[] = [];\r\n OnlineOrder: any[] = [];\r\n editedOnlineOrder: OnlineOrder = new OnlineOrder();\r\n \r\n \r\n isEditMode = false;\r\n isCust = false;\r\n isItem = false;\r\n Name:any;\r\n public isNewState: boolean = false;\r\n editedState: OnlineOrder;\r\n sourceState: OnlineOrder;\r\n editingStateName: { name: string };\r\n showValidationErrors = false\r\n loadingIndicator: boolean;\r\n stateEdit: OnlineOrder = new OnlineOrder();\r\n isLoading = false;\r\n formResetToggle = true;\r\n modalClosedCallback: () => void;\r\n changesCancelledCallback: () => void;\r\n loginStatusSubscription: any;\r\n @Input()\r\n isModal = false;\r\n public isSaving = false;\r\n @ViewChild('f', { static: false })\r\n public form;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n @ViewChild('stateCode', { static: false })\r\n public stateCode;\r\n @ViewChild('stateName', { static: false })\r\n public stateName;\r\n @ViewChild('stateEditor', { static: true })\r\n stateEditor: ModalDirective;\r\n\r\n constructor(private configurations: ConfigurationService, private authService: AuthService, private router: Router,\r\n private alertService: AlertService, private stateService: Masters, private transaction: TransactionService) {\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.OrderNo, r.date, r.Amount));\r\n }\r\n ngOnInit() {\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'OrderNo', name: 'Order No.', width: 100 },\r\n { prop: 'Amount', name: 'Amount', width: 25 },\r\n { prop: 'date', name: 'Date', width: 25 }\r\n\r\n\r\n ];\r\n this.columns.push({ name: '', width: 400, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n this.Customercolumns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'CustomerName', name: 'Customer Name', width: 100 },\r\n { prop: 'date', name: 'Date', width: 100 },\r\n { prop: 'MobileNo', name: 'Mobile No.', width: 100 },\r\n { prop: 'EmailId', name: 'Email-Id', width: 100 },\r\n { prop: 'Address1', name: 'Address1', width: 100 },\r\n { prop: 'Address2', name: 'Address2', width: 100 },\r\n { prop: 'City', name: 'City', width: 100 },\r\n { prop: 'PinCode', name: 'PinCode', width: 100 }\r\n ];\r\n this.Itemcolumns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'ItemCode', name: 'Item Code', width: 25 },\r\n { prop: 'ItemName', name: 'Item Name', width: 100 },\r\n { prop: 'date', name: 'Date', width: 25 },\r\n { prop: 'Qunaity', name: 'Qunaity', width: 25 },\r\n { prop: 'Weight', name: 'Weight', width: 25 },\r\n { prop: 'Price', name: 'Price', width: 25 },\r\n { prop: 'Amount', name: 'Amount', width: 25 }\r\n ];\r\n \r\n this.loadData()\r\n }\r\n\r\n loadData() {\r\n this.transaction.GetOnlinepaytmdetails(\"\").subscribe(office => this.ongetdashboarddetailsssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n ongetdashboarddetailsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as OnlineOrder[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as OnlineOrder[];\r\n this.OnlineOrder = result;\r\n for (let index = 0; index < this.OnlineOrder.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new OnlineOrder();\r\n this.addrow[0].OrderNo = result[index].orderNo;\r\n this.addrow[0].date = result[index].date;\r\n this.addrow[0].Amount = result[index].amount;\r\n this.addrow[0].Qunaity = result[index].qty;\r\n this.addrow[0].Weight = result[index].weight;\r\n this.addrow[0].MobileNo = result[index].mobileNo;\r\n this.addrow[0].CustomerName = result[index].customerName;\r\n this.addrow[0].Address1 = result[index].address1;\r\n this.addrow[0].Address2 = result[index].address2;\r\n this.addrow[0].City = result[index].city;\r\n this.addrow[0].PinCode = result[index].pinCode;\r\n this.addrow[0].officename = result[index].officeName;\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new OnlineOrder();\r\n tmp.OrderNo = result[index].orderNo;\r\n tmp.date = result[index].date;\r\n tmp.Amount = result[index].amount;\r\n tmp.Qunaity = result[index].qty;\r\n tmp.Weight = result[index].weight;\r\n tmp.MobileNo = result[index].mobileNo;\r\n tmp.CustomerName = result[index].customerName;\r\n tmp.Address1 = result[index].address1;\r\n tmp.Address2 = result[index].address2;\r\n tmp.City = result[index].city;\r\n tmp.PinCode = result[index].pinCode;\r\n tmp.officename = result[index].officeName;\r\n this.rows.push(tmp);\r\n }\r\n this.rows.forEach((state, index, states) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve OnlineOrderDetails from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertBooking(row: OnlineOrder) {\r\n //var findrow:OnlineOrder= this.rows.find(e => e.OrderNo == row.OrderNo);\r\n this.bookData = new Booking();\r\n this.bookData.awbContent = 'Sweets Prashad';\r\n this.bookData.awbMode = \"Air\"\r\n this.bookData.awbValue = \"0\";\r\n this.bookData.awbWeight = row.Weight;\r\n this.bookData.pieces = row.Qunaity;\r\n this.bookData.BookingCity = 'Delhi';\r\n this.bookData.bookoffice = row.officename;\r\n this.bookData.Booktype = \"Normal\";\r\n this.bookData.saleType = \"CASH\";\r\n this.bookData.calvolwt = \"0\";\r\n this.bookData.chargedWeight = \"0\";\r\n this.bookData.clientCode = \"Retail\";\r\n this.bookData.ClientName = \"Retail\";\r\n this.bookData.clOffice = \"\";\r\n this.bookData.CodDodAmount = \"0\";\r\n this.bookData.amount = row.Amount;\r\n this.bookData.consigneeMobleno = row.MobileNo;\r\n this.bookData.consigneename = row.CustomerName;\r\n this.bookData.consignername = row.officename;\r\n this.bookData.destpinCode = row.PinCode;\r\n this.bookData.EwayBillno = \"\";\r\n this.bookData.fovRisk = \"\";\r\n this.bookData.Fsurcharges = \"0\";\r\n this.bookData.height = \"0\";\r\n this.bookData.length = \"0\"\r\n //this.bookData.Mps = \"0\"\r\n this.bookData.OdaEdl = \"NA\"\r\n this.bookData.Paymentmode = \"Paytm\"\r\n this.bookData.pieces = row.Qunaity;\r\n this.bookData.ProductName = \"Divine\";\r\n this.bookData.RiskCharges = \"0\";\r\n this.bookData.ServiceType = \"Domestic\";\r\n this.bookData.stickerNo = row.OrderNo;\r\n this.bookData.Taxamount = \"0\";\r\n this.bookData.TotalAmount = row.Amount;\r\n this.bookData.width = \"0\";\r\n this.bookData.ValueaddedService = row.OrderNo;\r\n var tnpaddress: Address = new Address;\r\n tnpaddress.city = row.City;\r\n tnpaddress.pincode = row.PinCode;\r\n tnpaddress.houseNo = row.Address1;\r\n tnpaddress.streetName = row.Address2;\r\n tnpaddress.stateName = \"\";\r\n tnpaddress.landMark = \"\";\r\n this.bookData.Consadress = tnpaddress;\r\n\r\n this.transaction.postGenawbno(this.bookData.Booktype, this.bookData.ProductName, this.bookData.bookoffice, this.bookData.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n }\r\n onawbgetSuccessful(awbno: any) {\r\n this.bookData.awbNo = awbno;\r\n if (parseInt(this.bookData.awbNo) > 0) {\r\n this.transaction.postTransaction('booking', this.bookData).subscribe(awkbooking => this.saveSuccessHelper(awkbooking), error => this.saveFailedHelper(error));\r\n\r\n }\r\n else {\r\n this.showErrorAlert(\"Awbno\", \"Awbno Not Generated,Please Check with administrator\")\r\n }\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n private saveSuccessHelper(vendors?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `awbbooking \\\"${this.bookData.awbNo}\\\" was created successfully`, MessageSeverity.success);\r\n this.loadData();\r\n this.router.navigate(['/awbdivineprint'], {\r\n queryParams: {\r\n awbno: this.bookData.awbNo,\r\n orderNo: this.bookData.stickerNo,\r\n module: 'Booking'\r\n }\r\n });\r\n }\r\n \r\n CustomerDetails(row: OnlineOrder) {\r\n this.isNewState = false;\r\n this.isEditMode = true;\r\n this.isCust = true;\r\n this.isItem = false;\r\n this.Name = \"Coustomer Details\";\r\n var OrderNo = row.OrderNo;\r\n\r\n \r\n this.transaction.GetOnlinepaytmCustomerdetails(OrderNo).subscribe(OrderNo => this.ongetOnlinepaytmCustomerdetailsssuccess(OrderNo), error => this.onDataLoadFailed(error));\r\n this.editorModal.show();\r\n }\r\n ongetOnlinepaytmCustomerdetailsssuccess(result: any) {\r\n this.Custrows = [];\r\n this.CustrowsCache = [];\r\n if (result.length > 0) {\r\n this.Custrows = [] as OnlineOrder[];\r\n this.CustrowsCache = [...this.Custrows];\r\n this.Custaddrow = [] as OnlineOrder[];\r\n this.OnlineOrder = result;\r\n for (let index = 0; index < this.OnlineOrder.length; index++) {\r\n if (this.Custrows.length == 0) {\r\n this.Custaddrow[0] = new OnlineOrder();\r\n this.Custaddrow[0].OrderNo = result[index].orderNo;\r\n this.Custaddrow[0].date = result[index].date;\r\n this.Custaddrow[0].CustomerName = result[index].customerName;\r\n this.Custaddrow[0].MobileNo = result[index].mobileNo;\r\n this.Custaddrow[0].EmailId = result[index].emailId;\r\n this.Custaddrow[0].Address1 = result[index].address1;\r\n this.Custaddrow[0].Address2 = result[index].address2;\r\n this.Custaddrow[0].City = result[index].city;\r\n this.Custaddrow[0].PinCode = result[index].pinCode;\r\n this.Custrows = this.Custaddrow;\r\n }\r\n else {\r\n var tmp = new OnlineOrder();\r\n tmp.OrderNo = result[index].orderNo;\r\n tmp.date = result[index].date;\r\n tmp.CustomerName = result[index].customerName;\r\n tmp.MobileNo = result[index].mobileNo;\r\n tmp.EmailId = result[index].emailId;\r\n tmp.Address1 = result[index].address1;\r\n tmp.Address2 = result[index].address2;\r\n tmp.City = result[index].city;\r\n tmp.PinCode = result[index].pinCode;\r\n this.Custrows.push(tmp);\r\n }\r\n this.Custrows.forEach((state, index, states) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.CustrowsCache = [...this.Custrows];\r\n }\r\n }\r\n else {\r\n this.isCust = false;\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n ItemDetails(row: OnlineOrder) {\r\n \r\n this.isNewState = false;\r\n this.isEditMode = true;\r\n this.isCust = false;\r\n this.isItem = true;\r\n this.Name = \"Item Details\";\r\n var OrderNo = row.OrderNo;\r\n this.transaction.GetOnlineItemdetails(OrderNo).subscribe(OrderNo => this.ongetOnlineItemdetailsssuccess(OrderNo), error => this.onDataLoadFailed(error));\r\n this.editorModal.show();\r\n }\r\n ongetOnlineItemdetailsssuccess(result: any) {\r\n this.Itemaddrow = null;\r\n this.ItemrowsCache = null;\r\n if (result.length > 0) {\r\n this.Itemrows = [] as OnlineOrder[];\r\n this.ItemrowsCache = [...this.Itemrows];\r\n this.Itemaddrow = [] as OnlineOrder[];\r\n this.OnlineOrder = result;\r\n for (let index = 0; index < this.OnlineOrder.length; index++) {\r\n if (this.Itemrows.length == 0) {\r\n this.Itemaddrow[0] = new OnlineOrder();\r\n this.Itemaddrow[0].OrderNo = result[index].orderNo;\r\n this.Itemaddrow[0].date = result[index].date;\r\n this.Itemaddrow[0].ItemCode = result[index].itemCode;\r\n this.Itemaddrow[0].ItemName = result[index].itemName;\r\n this.Itemaddrow[0].Qunaity = result[index].qunaity;\r\n this.Itemaddrow[0].Weight = result[index].weight;\r\n this.Itemaddrow[0].Price = result[index].price;\r\n this.Itemaddrow[0].Amount = result[index].amount;\r\n this.Itemrows = this.Itemaddrow;\r\n }\r\n else {\r\n var tmp = new OnlineOrder();\r\n tmp.OrderNo = result[index].orderNo;\r\n tmp.date = result[index].date;\r\n tmp.ItemCode = result[index].itemCode;\r\n tmp.ItemName = result[index].itemName;\r\n tmp.Qunaity = result[index].qunaity;\r\n tmp.Weight = result[index].weight;\r\n tmp.Price = result[index].price;\r\n tmp.Amount = result[index].amount;\r\n this.Itemrows.push(tmp);\r\n }\r\n this.Itemrows.forEach((state, index, states) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.ItemrowsCache = [...this.Itemrows];\r\n }\r\n }\r\n else {\r\n \r\n this.isItem = false;\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n closeModal() {\r\n this.modalClosedCallback();\r\n }\r\n resetForm(replace = false) {\r\n\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n onEditorModalHidden() {\r\n this.Custrows = [];\r\n this.CustrowsCache = [];\r\n this.Custaddrow = [];\r\n this.isCust = false;\r\n this.isItem = false;\r\n this.showValidationErrors = false;\r\n this.editingStateName = null;\r\n this.sourceState = null;\r\n this.editorModal.hide();\r\n }\r\n}\r\n\r\n\r\nexport class OnlineOrder {\r\n public OrderNo: string\r\n public Amount: string\r\n public CustomerId: string\r\n public date: string\r\n public CustomerName: string\r\n public MobileNo: string\r\n public EmailId: string\r\n public Address1: string\r\n public Address2: string\r\n public City: string\r\n public PinCode: string\r\n public officename:string\r\n public ItemCode: string\r\n public ItemName: string\r\n public Qunaity: string\r\n public Weight: string\r\n public Price: string\r\n\r\n \r\n}\r\n\r\nexport class Booking {\r\n public stickerNo: string\r\n public saleType: string\r\n public awbNo: string\r\n public BookingCity: string\r\n public clientCode: string\r\n public destpinCode: string\r\n public awbWeight: string\r\n public pieces: string\r\n public length: string\r\n public width: string\r\n public height: string\r\n public awbValue: string\r\n public fovRisk: string\r\n public Booktype: string\r\n public awbMode: string\r\n public consigneename?: string\r\n public consigneeMobleno?: string\r\n public consignername?: string\r\n public consignerMobileno?: string\r\n public awbContent: string\r\n public CodDodAmount: string\r\n public calvolwt: string\r\n public ClientName: string\r\n public EwayBillno: string\r\n public ValueaddedService: string;\r\n public bookoffice: string;\r\n public ServiceType: string;\r\n public ProductName: string;\r\n public OdaEdl: string;\r\n public Consadress: Address\r\n public Conradress: Address\r\n public clOffice: string\r\n public Paymentmode: string;\r\n public chargedWeight: string;\r\n public amount: string;\r\n public RiskCharges: string;\r\n public Fsurcharges: string;\r\n public Taxamount: string;\r\n public TotalAmount: string;\r\n public Mps: MPStransaction[];\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvb3JkZXJzL29yZGVycy5jb21wb25lbnQuc2NzcyJ9 */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'orders',\r\n templateUrl: './orders.component.html',\r\n styleUrls: ['./orders.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class OrdersComponent {\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvb3V0c2Nhbi9vdXRzY2FuLmNvbXBvbmVudC5zY3NzIn0= */\"","import { ViewChild } from '@angular/core';\nimport { TemplateRef } from '@angular/core';\nimport { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { AuthService } from '../../services/auth.service';\nimport { ConfigurationService } from '../../services/configuration.service';\nimport { Masters } from '../../services/masters.service';\nimport { Utilities } from '../../services/utilities';\ndeclare var $: any;\n\n@Component({\n selector: 'app-outscan',\n templateUrl: './outscan.component.html',\n styleUrls: ['./outscan.component.scss']\n})\nexport class OutscanComponent implements OnInit {\n\n editedoutscan: outscan = new outscan();\n columns: any[] = [];\n rows: outscan[] = [];\n rowsCache: outscan[] = [];\n isSaving = false;\n isLoading = false;\n formResetToggle = true;\n loadingIndicator = false;\n lastkeydown2: number = 0;\n isEditModeconsignee = false;\n isEditModeconsigner = false;\n arrcity: any[] = [];\n arrcity2: any[] = [];\n displayedFirstImage;\n displayedSecondImage;\n msg = ''\n\n\n\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\n }\n @ViewChild('f', { static: false })\n @ViewChild('indexTemplate', { static: true })\n indexTemplate: TemplateRef;\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n @ViewChild('consigneeeditorModal', { static: true })\n consigneeeditorModal: ModalDirective;\n @ViewChild('consignereditorModal', { static: true })\n consignereditorModal: ModalDirective;\n\n ngOnInit() {\n this.columns = [\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\n { prop: 'Awbno', name: 'Awb No', width: 100 },\n { prop: 'stickerno', name: 'Sticker No', width: 100 },\n { prop: 'outscanto', name: 'Out Scan To', width: 100 },\n { prop: 'consigneename', name: 'Consigneename', width: 100 },\n { prop: 'consigneePhoneno', name: 'Phone no', width: 100 },\n { prop: 'ConsigneeAddress', name: 'ConsigneeAddress', width: 100 },\n { prop: 'DestPincode', name: 'Dest-Pin-Code', width: 100 },\n { prop: 'outscanDate', name: 'OutScan Date', width: 100 },\n ];\n // this.loaddata();\n }\n\n\n loaddata() {\n this.loadingIndicator = true;\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\n\n }\n\n onDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n InsertOutscaning() {\n debugger;\n var strvalue = this.editedoutscan;\n // this.isSaving = true;\n //this.alertService.startLoadingMessage('Saving changes...');\n this.clear();\n // this.ServiceMaster.NewVendore(this.editedoutscan).subscribe(inscaning => this.saveSuccessHelper(inscaning), error => this.saveFailedHelper(error));\n }\n private saveSuccessHelper(inscans?: outscan) {\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Success', `InScan \\\"${this.editedoutscan.Awbno + \"-\" + this.editedoutscan.consigneename}\\\" was created successfully`, MessageSeverity.success);\n if (this.rows.length == 0) {\n this.rows[0] = inscans[0];\n this.rowsCache[0] = inscans[0];\n }\n else {\n this.rows.push(inscans[0]);\n this.rowsCache.push(inscans[0]);\n }\n this.rows.forEach((state, index, citys) => {\n (state as any).index = index + 1;\n });\n this.rowsCache.forEach((state, index, citys) => {\n (state as any).index = index + 1;\n });\n this.rowsCache = [...this.rowsCache]\n this.rows = [...this.rows]\n this.editedoutscan = new outscan()\n\n }\n onSearchChanged(value: string) {\n\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.Awbno, r.consigneename));\n }\n private saveFailedHelper(error: any) {\n\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\n }\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n onlyNumberKey(event) {\n var ASCIICode = (event.which) ? event.which : event.keyCode\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\n return false;\n return true;\n }\n\n addOutscandetails() {\n }\n clear() {\n }\n}\nexport class outscan {\n constructor(OutsanId?: string, Officeid?: string, Awbno?: string, stickerno?: string, outscanto?: string\n , consigneePhoneno?: string, consigneename?: string, ConsigneeAddress?: string,\n DestPincode?: string, outscanDate?: string) {\n\n this.OutsanId = OutsanId;\n this.Officeid = Officeid;\n this.Awbno = Awbno;\n this.stickerno = stickerno;\n this.outscanto = outscanto;\n this.consigneePhoneno = consigneePhoneno;\n this.consigneename = consigneename;\n this.ConsigneeAddress = ConsigneeAddress;\n this.DestPincode = DestPincode;\n this.outscanDate = outscanDate;\n\n };\n public OutsanId: string\n public Officeid: string\n public Awbno: string\n public stickerno: string\n public outscanto: string\n public consigneePhoneno: string\n public consigneename: string\n public ConsigneeAddress: string\n public DestPincode: string\n public outscanDate: string\n}\n\n","export var CONFIG = {\r\n flow: \"DEFAULT\",\r\n merchant: {\r\n mid: \"iToGFv48745620762455\",\r\n name: \"Onex Deliviries LLP\",\r\n logo: require('../../assets/images/logos-02.png'),\r\n redirect: true\r\n },\r\n style: {},\r\n jsFile: \"\",\r\n data: {\r\n orderId: \"\",\r\n amount: \"0\",\r\n token: \"\",\r\n tokenType: \"TXN_TOKEN\",\r\n userDetail: {\r\n mobileNumber: \"\",\r\n name: \"\"\r\n }\r\n },\r\n mapClientMessage: {},\r\n labels: {},\r\n payMode: {\r\n labels: {},\r\n filter: {\r\n exclude: []\r\n },\r\n order: [\r\n \"NB\",\r\n \"CARD\",\r\n \"LOGIN\"\r\n ]\r\n }\r\n};\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGF5dG0tY2hlY2tvdXQvcGF5dG0tY2hlY2tvdXQuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { CONFIG } from './merchant-config';\r\nimport { CheckoutService } from '../../services/checkout.services';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\n@Component({\r\n selector: 'app-paytm-checkout',\r\n templateUrl: './paytm-checkout.component.html',\r\n styleUrls: ['./paytm-checkout.component.scss']\r\n})\r\nexport class PaytmCheckoutComponent implements OnInit {\r\n\r\n private config = CONFIG;\r\n isCheckoutVisible = true;\r\n openInPopup = false;\r\n private tokendata: any;\r\n private rqdata: any;\r\n\r\n constructor(private readonly checkoutService: CheckoutService, private localstre: LocalStoreManager) {\r\n this.initializeCheckout();\r\n }\r\n ngOnInit() {\r\n this.tokendata = this.localstre.getData(\"ptoken\");\r\n this.rqdata = this.localstre.getData(\"rqdata\");\r\n this.config.data.orderId = this.tokendata.orderno;\r\n this.config.data.token = this.tokendata.body.txnToken\r\n this.config.data.amount = this.rqdata.txnAmount\r\n //this.initializeCheckout();\r\n }\r\n appendHandler(config: any): any {\r\n const newConfig = { ...config };\r\n\r\n newConfig.handler = {\r\n notifyMerchant: this.notifyMerchantHandler\r\n }\r\n\r\n return newConfig;\r\n }\r\n\r\n notifyMerchantHandler = (eventType: any, data: any): void => {\r\n console.log('MERCHANT NOTIFY LOG', eventType, data);\r\n }\r\n\r\n updateConfig(config: any): void {\r\n try {\r\n this.config = JSON.parse(config);\r\n } catch (ex) {\r\n this.config = JSON.parse('');\r\n }\r\n }\r\n\r\n toggleCheckout(): void {\r\n this.isCheckoutVisible = !this.isCheckoutVisible;\r\n }\r\n\r\n initializeCheckout(): void {\r\n const config = this.appendHandler(this.config);\r\n this.checkoutService.init(config, { env: 'PROD', openInPopup: this.openInPopup });\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGF5dG10cmFuc2FjdGlvbi1yZXBvcnQvcGF5dG10cmFuc2FjdGlvbi1yZXBvcnQuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\nimport { MatDialog } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\n@Component({\n selector: 'app-paytmtransaction-report',\n templateUrl: './paytmtransaction-report.component.html',\n styleUrls: ['./paytmtransaction-report.component.scss']\n})\nexport class PaytmtransactionReportComponent implements OnInit {\n\n constructor(public dialog: MatDialog, private excelService: ExcelService, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService) {\r\n\r\n\r\n\r\n }\n\n ngOnInit() {\n }\n\n GetpaytmTransaction() {\n\n let fromdate = $('#fromdate').val();\r\n let todate = $('#todate').val();\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getPaytmTran'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"fromDate\"\r\n pr.PropertyValue = fromdate;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"toDate\";\r\n pr.PropertyValue = todate;\r\n Req.LstParameter = Parameter;\r\n Parameter[1] = pr;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(_result => {\r\n if (_result.length > 0) {\r\n var data = []\r\n for (let index = 0; index < _result.length; index++) {\r\n data[index] = [\r\n _result[index].officename,\r\n _result[index].officeCode,\r\n _result[index].orderno,\r\n _result[index].orderDate,\r\n _result[index].orderAmount,\r\n _result[index].bANKNAME,\r\n _result[index].pAYMENTMODE,\r\n _result[index].cURRENCY,\r\n _result[index].tXNID,\r\n _result[index].mID,\r\n _result[index].gATEWAYNAME,\r\n _result[index].sTATUS,\r\n _result[index].respmsg,\r\n _result[index].respcode,\r\n _result[index].bANKTXNID, \r\n\r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Widths = [];\r\n this.excelService.header = [\"Office Name\", \"Office Code\", \"Order No\", \"Order Date\", \"Order Amount\", \"Bank Name\",\r\n \"Payment Mode\", \"Currency\", \"txnid\", \"Merchant Id\", \"Gateway Name\",\r\n \"Status\", \"respmsg\", \"respcode\",\r\n \"Bank Tranid\" ]\r\n this.excelService.title = \"Awb Sale\";\r\n this.excelService.Sheetname = \"Awb Sale\";\r\n this.excelService.generateExcel();\r\n\r\n \r\n }\r\n else {\r\n this.alertService.showMessage(\"Paytm Transaction\", \"No recored found!\",MessageSeverity.info);\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n \r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n \n\n\n\n}\n","export default \"body {\\n margin: 0;\\n font-family: \\\"Source Sans Pro\\\", -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\", Arial, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\";\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n background-color: #fff;\\n}\\n\\n.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {\\n position: relative;\\n width: 100%;\\n padding-right: 7.5px;\\n padding-left: 7.5px;\\n}\\n\\n.small-box {\\n border-radius: 0.25rem;\\n box-shadow: 0 0 1px rgba(0, 0, 0, 0.13), 0 1px 3px rgba(0, 0, 0, 0.2);\\n display: block;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n\\n.small-box > .small-box-footer {\\n background-color: rgba(0, 0, 0, 0.1);\\n color: rgba(255, 255, 255, 0.8);\\n display: block;\\n padding: 3px 0;\\n position: relative;\\n text-align: center;\\n text-decoration: none;\\n z-index: 10;\\n}\\n\\n.bg-info > a {\\n color: #fff !important;\\n}\\n\\n.row {\\n display: flex;\\n flex-wrap: wrap;\\n margin-right: -7.5px;\\n margin-left: -7.5px;\\n}\\n\\n.col-lg-3 .small-box h3, .col-md-3 .small-box h3, .col-xl-3 .small-box h3 {\\n font-size: 2.2rem;\\n}\\n\\n.small-box h3 {\\n font-size: 2.2rem;\\n font-weight: 700;\\n margin: 0 0 10px;\\n padding: 0;\\n white-space: nowrap;\\n color: #fff;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box:hover {\\n text-decoration: none;\\n}\\n\\n:host ::ng-deep .row-color1 {\\n background-color: darkred;\\n color: white;\\n}\\n\\n:host ::ng-deep .row-color2 {\\n background-color: darkgreen;\\n color: white;\\n}\\n\\n.bg-success, .bg-success > a {\\n color: #fff !important;\\n}\\n\\n.inner {\\n height: 120px !important;\\n padding-left: 10px;\\n padding-top: 10px;\\n}\\n\\n.color {\\n color: #fff;\\n font-size: 1.4rem !important;\\n}\\n\\nbutton.close {\\n position: absolute;\\n top: 0.25rem;\\n right: 1.5rem;\\n z-index: 100;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9waWNrdXAtZGFzaGJvYXJkL0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXHBpY2t1cC1kYXNoYm9hcmRcXHBpY2t1cC1kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcGlja3VwLWRhc2hib2FyZC9waWNrdXAtZGFzaGJvYXJkLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsU0FBQTtFQUNBLG9MQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQkFBQTtBQ0NGOztBREVBO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0Esb0JBQUE7RUFDQSxtQkFBQTtBQ0NGOztBREVBO0VBQ0Usc0JBQUE7RUFDQSxxRUFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FDQ0Y7O0FERUE7RUFDRSxvQ0FBQTtFQUNBLCtCQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0FDQ0Y7O0FERUE7RUFDRSxzQkFBQTtBQ0NGOztBREVBO0VBRUUsYUFBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0FDQ0Y7O0FERUE7RUFDRSxpQkFBQTtBQ0NGOztBREVBO0VBQ0UsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtBQ0NGOztBREVBO0VBQ0UsVUFBQTtBQ0NGOztBREVBO0VBQ0UsZUFBQTtBQ0NGOztBREVBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0FDQ0Y7O0FERUE7RUFDRSxzQkFBQTtBQ0NGOztBREVBO0VBQ0UsY0FBQTtFQUNBLDBCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtVQUFBLHFCQUFBO0VBQ0EseUJBQUE7VUFBQSx3QkFBQTtFQUNBLHVCQUFBO1VBQUEsc0JBQUE7QUNDRjs7QURFQTtFQUNFLFVBQUE7QUNDRjs7QURFQTtFQUNFLGVBQUE7QUNDRjs7QURFQTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtBQ0NGOztBREVBO0VBQ0Usc0JBQUE7QUNDRjs7QURFQTtFQUNFLGNBQUE7RUFDQSwwQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJBQUE7VUFBQSxxQkFBQTtFQUNBLHlCQUFBO1VBQUEsd0JBQUE7RUFDQSx1QkFBQTtVQUFBLHNCQUFBO0FDQ0Y7O0FERUE7RUFDRSxxQkFBQTtBQ0NGOztBREVBO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSwyQkFBQTtFQUNBLFlBQUE7QUNDRjs7QURFQTtFQUNFLHNCQUFBO0FDQ0Y7O0FERUE7RUFDRSx3QkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7QUNDRjs7QURFQTtFQUNFLFdBQUE7RUFDQSw0QkFBQTtBQ0NGOztBRElBO0VBQ0Usa0JBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7QUNERiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGlja3VwLWRhc2hib2FyZC9waWNrdXAtZGFzaGJvYXJkLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiYm9keSB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFwiU2Vnb2UgVUlcIixSb2JvdG8sXCJIZWx2ZXRpY2EgTmV1ZVwiLEFyaWFsLHNhbnMtc2VyaWYsXCJBcHBsZSBDb2xvciBFbW9qaVwiLFwiU2Vnb2UgVUkgRW1vamlcIixcIlNlZ29lIFVJIFN5bWJvbFwiO1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmNvbCwgLmNvbC0xLCAuY29sLTEwLCAuY29sLTExLCAuY29sLTEyLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC1hdXRvLCAuY29sLWxnLCAuY29sLWxnLTEsIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIsIC5jb2wtbGctMiwgLmNvbC1sZy0zLCAuY29sLWxnLTQsIC5jb2wtbGctNSwgLmNvbC1sZy02LCAuY29sLWxnLTcsIC5jb2wtbGctOCwgLmNvbC1sZy05LCAuY29sLWxnLWF1dG8sIC5jb2wtbWQsIC5jb2wtbWQtMSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZC0yLCAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLmNvbC1tZC01LCAuY29sLW1kLTYsIC5jb2wtbWQtNywgLmNvbC1tZC04LCAuY29sLW1kLTksIC5jb2wtbWQtYXV0bywgLmNvbC1zbSwgLmNvbC1zbS0xLCAuY29sLXNtLTEwLCAuY29sLXNtLTExLCAuY29sLXNtLTEyLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS1hdXRvLCAuY29sLXhsLCAuY29sLXhsLTEsIC5jb2wteGwtMTAsIC5jb2wteGwtMTEsIC5jb2wteGwtMTIsIC5jb2wteGwtMiwgLmNvbC14bC0zLCAuY29sLXhsLTQsIC5jb2wteGwtNSwgLmNvbC14bC02LCAuY29sLXhsLTcsIC5jb2wteGwtOCwgLmNvbC14bC05LCAuY29sLXhsLWF1dG8ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nLXJpZ2h0OiA3LjVweDtcclxuICBwYWRkaW5nLWxlZnQ6IDcuNXB4O1xyXG59XHJcblxyXG4uc21hbGwtYm94IHtcclxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xyXG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiKDAgMCAwIC8gMTMlKSwgMCAxcHggM3B4IHJnYigwIDAgMCAvIDIwJSk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggPiAuc21hbGwtYm94LWZvb3RlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMSk7XHJcbiAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjgpO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDNweCAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4uYmctaW5mbyA+IGEge1xyXG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5yb3cge1xyXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIG1hcmdpbi1yaWdodDogLTcuNXB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAtNy41cHg7XHJcbn1cclxuXHJcbi5jb2wtbGctMyAuc21hbGwtYm94IGgzLCAuY29sLW1kLTMgLnNtYWxsLWJveCBoMywgLmNvbC14bC0zIC5zbWFsbC1ib3ggaDMge1xyXG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xyXG59XHJcblxyXG4uc21hbGwtYm94IGgzIHtcclxuICBmb250LXNpemU6IDIuMnJlbTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIG1hcmdpbjogMCAwIDEwcHg7XHJcbiAgcGFkZGluZzogMDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xyXG4gIHotaW5kZXg6IDU7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggcCB7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG59XHJcblxyXG5wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbiosIDo6YWZ0ZXIsIDo6YmVmb3JlIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5wIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFlbTtcclxuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XHJcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xyXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwcHg7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggaDMsIC5zbWFsbC1ib3ggcCB7XHJcbiAgei1pbmRleDogNTtcclxufVxyXG5cclxuLnNtYWxsLWJveCBwIHtcclxuICBmb250LXNpemU6IDFyZW07XHJcbn1cclxuXHJcbnAge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbnAge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xyXG4gIG1hcmdpbi1ibG9jay1lbmQ6IDFlbTtcclxuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwcHg7XHJcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcclxufVxyXG5cclxuLnNtYWxsLWJveDpob3ZlciB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtyZWQ7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtncmVlbjtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5iZy1zdWNjZXNzLCAuYmctc3VjY2VzcyA+IGEge1xyXG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pbm5lciB7XHJcbiAgaGVpZ2h0OiAxMjBweCAhaW1wb3J0YW50O1xyXG4gIHBhZGRpbmctbGVmdDogMTBweDtcclxuICBwYWRkaW5nLXRvcDogMTBweDtcclxufVxyXG5cclxuLmNvbG9yIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LXNpemU6IDEuNHJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuXHJcbmJ1dHRvbi5jbG9zZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMC4yNXJlbTtcclxuICByaWdodDogMS41cmVtO1xyXG4gIHotaW5kZXg6IDEwMDtcclxufVxyXG4iLCJib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmNvbCwgLmNvbC0xLCAuY29sLTEwLCAuY29sLTExLCAuY29sLTEyLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC1hdXRvLCAuY29sLWxnLCAuY29sLWxnLTEsIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIsIC5jb2wtbGctMiwgLmNvbC1sZy0zLCAuY29sLWxnLTQsIC5jb2wtbGctNSwgLmNvbC1sZy02LCAuY29sLWxnLTcsIC5jb2wtbGctOCwgLmNvbC1sZy05LCAuY29sLWxnLWF1dG8sIC5jb2wtbWQsIC5jb2wtbWQtMSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZC0yLCAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLmNvbC1tZC01LCAuY29sLW1kLTYsIC5jb2wtbWQtNywgLmNvbC1tZC04LCAuY29sLW1kLTksIC5jb2wtbWQtYXV0bywgLmNvbC1zbSwgLmNvbC1zbS0xLCAuY29sLXNtLTEwLCAuY29sLXNtLTExLCAuY29sLXNtLTEyLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS1hdXRvLCAuY29sLXhsLCAuY29sLXhsLTEsIC5jb2wteGwtMTAsIC5jb2wteGwtMTEsIC5jb2wteGwtMTIsIC5jb2wteGwtMiwgLmNvbC14bC0zLCAuY29sLXhsLTQsIC5jb2wteGwtNSwgLmNvbC14bC02LCAuY29sLXhsLTcsIC5jb2wteGwtOCwgLmNvbC14bC05LCAuY29sLXhsLWF1dG8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiA3LjVweDtcbiAgcGFkZGluZy1sZWZ0OiA3LjVweDtcbn1cblxuLnNtYWxsLWJveCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEzKSwgMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNtYWxsLWJveCA+IC5zbWFsbC1ib3gtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uYmctaW5mbyA+IGEge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4ucm93IHtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtNy41cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNy41cHg7XG59XG5cbi5jb2wtbGctMyAuc21hbGwtYm94IGgzLCAuY29sLW1kLTMgLnNtYWxsLWJveCBoMywgLmNvbC14bC0zIC5zbWFsbC1ib3ggaDMge1xuICBmb250LXNpemU6IDIuMnJlbTtcbn1cblxuLnNtYWxsLWJveCBoMyB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAxMHB4O1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya3JlZDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZ3JlZW47XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmJnLXN1Y2Nlc3MsIC5iZy1zdWNjZXNzID4gYSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5pbm5lciB7XG4gIGhlaWdodDogMTIwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLmNvbG9yIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICByaWdodDogMS41cmVtO1xuICB6LWluZGV4OiAxMDA7XG59Il19 */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, OnDestroy, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { parseDocumentSize } from 'html2canvas/dist/types/css/layout/bounds';\r\nimport { parseDate } from 'ngx-bootstrap/chronos';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { interval, Subscription } from 'rxjs';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { isNull } from 'util';\r\n\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-pickup-dashboard',\r\n templateUrl: './pickup-dashboard.component.html',\r\n styleUrls: ['./pickup-dashboard.component.scss']\r\n})\r\nexport class PickupDashboardComponent implements OnInit, OnDestroy {\r\n subscription: Subscription;\r\n intervalId: any;\r\n columns: any[] = [];\r\n rows: rowdata[] = [];\r\n cashrows: rowdata[] = [];\r\n loadingIndicator = false;\r\n helpdelvboy: any[] = [];\r\n totalpickup: number = 0;\r\n pickuped: number = 0;\r\n Schedule: number = 0;\r\n Booking: number = 0;\r\n @ViewChild('pickupboymodel', { static: true })\r\n public pickupboymodel: ModalDirective;\r\n public editeddata: rowdata = new rowdata();\r\n constructor(private localstre: LocalStoreManager, private troute: ActivatedRoute, private datePipe: DatePipe, private excelService: ExcelService,\r\n private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService,\r\n private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n ngOnInit() {\r\n\r\n const source = interval(10000);\r\n this.subscription = source.subscribe(val => this.Getdata);\r\n\r\n this.columns =\r\n [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'pickupDate', name: 'Date', width: 50, canAutoResize: true },\r\n { prop: 'customerName', name: 'Customer Name', width: 150, canAutoResize: true },\r\n { prop: 'customercode', name: 'Customer Code', width: 50, canAutoResize: true },\r\n { prop: 'scheduleTime', name: 'Schedule Time', width: 50, canAutoResize: true },\r\n { prop: 'delvBoyName', name: 'Pickup Boy', width: 50, canAutoResize: true },\r\n { prop: 'totalPacket', name: 'Packets', width: 50, canAutoResize: true }\r\n\r\n //{ prop: 'isPickuped', name: 'IsPickuped', width: 20, canAutoResize: true },\r\n //{ prop: 'pikcupTime', name: 'Pickup Time', width: 70, canAutoResize: true },\r\n //{ prop: 'totalPacket', name: 'Total Packet', width: 50, canAutoResize: true },\r\n\r\n ];\r\n this.columns.push({ name: '', width: 150, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.intervalId = setInterval(() => { this.Getdata(); }, 100000);\r\n this.Getdata();\r\n }\r\n ngOnDestroy() {\r\n // For method 1\r\n this.subscription && this.subscription.unsubscribe();\r\n\r\n // For method 2\r\n clearInterval(this.intervalId);\r\n }\r\n\r\n Getdata() {\r\n this.columns =\r\n [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'pickupDate', name: 'Date', width: 50, canAutoResize: true },\r\n { prop: 'customerName', name: 'Customer Name', width: 150, canAutoResize: true },\r\n { prop: 'customercode', name: 'Customer Code', width: 50, canAutoResize: true },\r\n { prop: 'scheduleTime', name: 'Schedule Time', width: 50, canAutoResize: true },\r\n { prop: 'delvBoyName', name: 'Pickup Boy', width: 50, canAutoResize: true },\r\n { prop: 'totalPacket', name: 'Packets', width: 50, canAutoResize: true }\r\n\r\n //{ prop: 'isPickuped', name: 'IsPickuped', width: 20, canAutoResize: true },\r\n //{ prop: 'pikcupTime', name: 'Pickup Time', width: 70, canAutoResize: true },\r\n //{ prop: 'totalPacket', name: 'Total Packet', width: 50, canAutoResize: true },\r\n\r\n ];\r\n this.columns.push({ name: '', width: 150, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'GetPickupDetail'\r\n if (Req.ProcessName == '') {\r\n this.alertService.showMessage(\"Inavlid PraMeter\");\r\n return;\r\n }\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"OfficeCode\"\r\n pr.PropertyValue = logindata[0].officeCode;\r\n Parameter[0] = null;\r\n Req.LstParameter = null;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n\r\n\r\n\r\n getSucessDataExrate(result: rowdata[]) {\r\n this.rows = result;\r\n this.totalpickup = 0;\r\n this.pickuped = 0;\r\n this.Schedule = 0;\r\n this.rows.forEach((itm, index) => {\r\n (itm as any).index = index + 1;\r\n itm.pickupDate = parseDate(itm.pickupDate).toDateString();\r\n if (itm.isPickuped) {\r\n this.pickuped = this.pickuped + 1;\r\n }\r\n if (itm.delvBoyName != '' && !isNull(itm.delvBoyName)) {\r\n this.Schedule++;\r\n }\r\n this.totalpickup = this.totalpickup + 1;\r\n this.Booking = this.pickuped;\r\n\r\n });\r\n this.rows = [...this.rows]\r\n this.cashrows = this.rows;\r\n }\r\n Addpickupboy(row: rowdata) {\r\n this.editeddata = row;\r\n $('#pickupboyname').val(row.delvBoyName)\r\n $('#pickupboyid').val(row.delvboyid)\r\n this.pickupboymodel.show();\r\n\r\n }\r\n ConsignerHidden() {\r\n this.SavePickupdata();\r\n }\r\n getDelvboylis() {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetDelvBoyList'\r\n if (Req.ProcessName == '') {\r\n this.alertService.showMessage(\"Inavlid PraMeter\");\r\n return\r\n }\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"officeid\"\r\n pr.PropertyValue = logindata[0].officeid;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.helpdelvboy = [];\r\n result.forEach((obj, ind, arr) => {\r\n this.helpdelvboy.push(obj.delvboy)\r\n })\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n\r\n getDelvBoyList($event) {\r\n this.getDelvboylis();\r\n $('#pickupboyname').autocomplete({\r\n source: this.helpdelvboy,\r\n delay: 50,\r\n //select: function (event, ui) { }\r\n });\r\n }\r\n onSelect(event: any) {\r\n var selectedval = event.target.value;\r\n if ('~'.search(selectedval)) {\r\n var valname = selectedval.split(\"~\")[0]\r\n $('#pickupboyname').val(valname);\r\n $('#pickupboyid').val(selectedval.split(\"~\")[1])\r\n this.editeddata.delvboyid = selectedval.split(\"~\")[1]\r\n this.editeddata.delvBoyName = selectedval.split(\"~\")[0]\r\n this.rows.forEach((itm, index) => {\r\n (itm as any).index = index + 1;\r\n if (itm.customercode == this.editeddata.customercode) {\r\n itm.delvBoyName = this.editeddata.delvBoyName;\r\n itm.delvboyid = this.editeddata.delvboyid;\r\n }\r\n itm.pickupDate = parseDate(itm.pickupDate).toDateString();\r\n\r\n });\r\n this.rows = [...this.rows]\r\n this.cashrows = this.rows;\r\n }\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.cashrows.filter(r => Utilities.searchArray(value, false, r.customercode, r.customerName));\r\n this.rows = [...this.rows];\r\n\r\n }\r\n getPickuped() {\r\n\r\n this.rows = this.cashrows.filter(r => r.isPickuped == true);\r\n this.rows = [...this.rows];\r\n\r\n }\r\n getScheduled() {\r\n\r\n this.rows = this.cashrows.filter(r => r.delvBoyName != '' && !isNull(r.delvBoyName));\r\n this.rows = [...this.rows];\r\n\r\n }\r\n SavePickupdata() {\r\n\r\n var pkpDetail: PickupDetail = new PickupDetail();\r\n var _date = new Date();\r\n this.editeddata.totalPacket = '0';\r\n this.editeddata.pickupDate = this.datePipe.transform(_date, \"yyyy-MM-dd\");\r\n Object.assign(pkpDetail, this.editeddata);\r\n if (pkpDetail.delvboyid == '') {\r\n return;\r\n }\r\n if (pkpDetail.customercode == '') {\r\n return;\r\n\r\n }\r\n\r\n\r\n this.transaction.PostSavePickupDetail(pkpDetail).subscribe(result => { this.alertService.showMessage(\"Pickup\", \"Saved Successfully !\", MessageSeverity.success) }, error => this.onDataLoadFailed(error))\r\n\r\n\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n getRowClass = (row) => {\r\n return {\r\n 'row-color1': row.isPickuped == false,\r\n 'row-color2': row.isPickuped == true,\r\n };\r\n }\r\n\r\n GetBookdata() {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_Get_pickup_Customer'\r\n if (Req.ProcessName == '') {\r\n this.alertService.showMessage(\"Inavlid PraMeter\");\r\n return;\r\n }\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"OfficeCode\"\r\n pr.PropertyValue = logindata[0].officeCode;\r\n Parameter[0] = null;\r\n Req.LstParameter = null;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDatacExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n\r\n getSucessDatacExrate(result: rowdata[]) {\r\n\r\n this.columns =\r\n [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'customerName', name: 'Customer Name', width: 150, canAutoResize: true },\r\n { prop: 'customercode', name: 'Customer Code', width: 50, canAutoResize: true },\r\n { prop: 'totalPacket', name: 'Packets', width: 50, canAutoResize: true },\r\n { prop: 'awbno', name: 'Awbno', width: 50, canAutoResize: true },\r\n { prop: 'awbWeight', name: 'Weight', width: 50, canAutoResize: true },\r\n { prop: 'destination', name: 'Dest', width: 50, canAutoResize: true },\r\n { prop: 'product', name: 'Prod.', width: 50, canAutoResize: true }\r\n //{ prop: 'isPickuped', name: 'IsPickuped', width: 20, canAutoResize: true },\r\n //{ prop: 'pikcupTime', name: 'Pickup Time', width: 70, canAutoResize: true },\r\n //{ prop: 'totalPacket', name: 'Total Packet', width: 50, canAutoResize: true },\r\n\r\n ];\r\n\r\n this.rows = result;\r\n this.Booking = 0;\r\n\r\n\r\n this.rows.forEach((itm, index) => {\r\n (itm as any).index = index + 1;\r\n itm.pickupDate = parseDate(itm.pickupDate).toDateString();\r\n if (itm.isPickuped) {\r\n this.Booking = this.Booking + 1;\r\n }\r\n \r\n\r\n });\r\n this.rows = [...this.rows]\r\n this.cashrows = this.rows;\r\n }\r\n}\r\nexport class rowdata {\r\n public pickupDate: string;\r\n public customerName: string;\r\n public customercode: string\r\n public customerId: string;\r\n public delvBoyName: string;\r\n public delvboyid: string;\r\n public scheduleTime: string;\r\n public isPickuped: boolean;\r\n public pikcupTime: string;\r\n public totalPacket: string;\r\n public awbno: string;\r\n public destination: string;\r\n public AwbWeight: string;\r\n public product: string;\r\n}\r\nexport class PickupDetail {\r\n public pickupId: any;\r\n public pIckupDate: string;\r\n public customerName: string;\r\n public customercode: string;\r\n public customerId: string;\r\n public delvBoyName: string;\r\n public delvboyid: string;\r\n public scheduleTime: string;\r\n public pikcupTime: string;\r\n public isPickuped: boolean;\r\n public totalPacket: number;\r\n public createdOn: Date;\r\n public updatedOn: Date;\r\n}\r\n","export default \":host ::ng-deep .row-color1 {\\n background-color: darkred;\\n color: white;\\n}\\n\\n:host ::ng-deep .row-color2 {\\n background-color: darkgreen;\\n color: white;\\n}\\n\\n:host ::ng-deep .row-color3 {\\n background-color: darkviolet;\\n color: white;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9waWN1cHJlcXVlc3QtYWNrL0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXHBpY3VwcmVxdWVzdC1hY2tcXHBpY3VwcmVxdWVzdC1hY2suY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcGljdXByZXF1ZXN0LWFjay9waWN1cHJlcXVlc3QtYWNrLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSwyQkFBQTtFQUNBLFlBQUE7QUNDRjs7QURDQTtFQUNFLDRCQUFBO0VBQ0EsWUFBQTtBQ0VGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9waWN1cHJlcXVlc3QtYWNrL3BpY3VwcmVxdWVzdC1hY2suY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtyZWQ7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtncmVlbjtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IzIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOmRhcmt2aW9sZXQ7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcbiIsIjpob3N0IDo6bmctZGVlcCAucm93LWNvbG9yMSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtyZWQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2dyZWVuO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbjpob3N0IDo6bmctZGVlcCAucm93LWNvbG9yMyB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmt2aW9sZXQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn0iXX0= */\"","import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $ : any;\r\n@Component({\r\n selector: 'app-picuprequest-ack',\r\n templateUrl: './picuprequest-ack.component.html',\r\n styleUrls: ['./picuprequest-ack.component.scss']\r\n})\r\nexport class PicuprequestAckComponent implements OnInit {\r\n\r\n PickupRequest: any[] = [];\r\n tmpOfficeid: any = \"\"\r\n rows: any[] = [];\r\n columns: any[] = [];\r\n selectobject: any = {};\r\n\r\n constructor(private transaction: TransactionService, private ServiceMaster: Masters,\r\n private alertService: AlertService, private configurations: ConfigurationService, private localstre: LocalStoreManager,\r\n private authService: AuthService, public router: ActivatedRoute, private _router: Router) { }\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consignereditorModal', { static: true })\r\n consignereditorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n this.tmpOfficeid = _Balogindata[0].officeid;\r\n\r\n this.loadData();\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 20, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'requestBy', name: 'Request By', width: 30 },\r\n { prop: 'requestNo', name: 'Request No', width: 30 },\r\n { prop: 'requestTo', name: 'Request To', width: 30 },\r\n { prop: 'customename', name: 'Customer', width: 70 },\r\n { prop: 'pickupFrom', name: 'Pickup From', width: 20 },\r\n { prop: 'destination', name: 'Destination', width: 30 },\r\n { prop: 'weight', name: 'Weight', width: 20 },\r\n\r\n ];\r\n this.columns.push({ name: '', width:130, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 20, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n }\r\n loadData() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'GetReversePickup'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"Officeid\"\r\n pr.PropertyValue = this.tmpOfficeid;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.OngetsuccessGatePass(result), error => this.onDataLoadFailed(error))\r\n }\r\n OngetsuccessGatePass(result: any) {\r\n\r\n this.PickupRequest = result.table;\r\n\r\n this.rows = this.PickupRequest;\r\n this.rows.forEach((req, ind, arr) => {\r\n (req as any).index = ind + 1;\r\n });\r\n this.rows = [...this.rows];\r\n }\r\n onDataLoadFailed(error: any) {\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n ConsignerHidden() {\r\n\r\n }\r\n ShowModel(row: any) {\r\n let _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n if (row.requestTo != _Balogindata[0].officename) {\r\n this.alertService.showMessage(\"Save\", \"You can not done this process\", MessageSeverity.info);\r\n return;\r\n }\r\n this.consignereditorModal.show();\r\n this.selectobject = row;\r\n }\r\n ConrInit() {\r\n $('#requestno').val(this.selectobject.requestNo);\r\n $('#customername').val(this.selectobject.customename);\r\n $('#address').val(this.selectobject.address);\r\n $('#Mobileno').val(this.selectobject.mobileno);\r\n $('#cpesrson').val(this.selectobject.contactPerson);\r\n $('#charges').val(this.selectobject.pickupCharge);\r\n $('#Remarks').val(this.selectobject.remark)\r\n if (this.selectobject.ackByPickup ==true) {\r\n $('#btnaccept').prop(\"disabled\", true)\r\n $('#btnreject').prop(\"disabled\", true)\r\n\r\n }\r\n else {\r\n $('#btnaccept').removeProp(\"disabled\")\r\n $('#btnreject').removeProp(\"disabled\")\r\n }\r\n }\r\n\r\n getRowClass = (row) => {\r\n if (row.acceptPickup !== undefined) {\r\n return {\r\n 'row-color1': row.ackByPickup && !row.acceptPickup,\r\n 'row-color2': row.ackByPickup && row.acceptPickup,\r\n 'row-color3': !row.ackByPickup && !row.acceptPickup, \r\n };\r\n }\r\n else {\r\n return {\r\n 'row-color1': false,\r\n 'row-color2': false,\r\n 'row-color3': false,\r\n };\r\n }\r\n }\r\n updatarevrse(action: string) { \r\n\r\n let request:string = $('#requestno').val().toString();\r\n let remarks:string = $('#Remarks').val().toString();\r\n let charges: string = $('#charges').val().toString();\r\n if (request === '') {\r\n this.alertService.showMessage(\"Save\", \"Invalid Requestno\", MessageSeverity.error);\r\n return;\r\n }\r\n if (remarks === '') {\r\n this.alertService.showMessage(\"Save\", \"Invalid Remark\", MessageSeverity.error);\r\n $('#Remarks').focus()\r\n return;\r\n }\r\n if (charges === '') {\r\n this.alertService.showMessage(\"Save\", \"Invalid Pickup charges\", MessageSeverity.error);\r\n $('#charges').focus();\r\n return;\r\n }\r\n this.transaction.Post_ReverseBooking(action, charges, remarks, request).subscribe(result => { this.alertService.showMessage(\"Save\", \"Update Sucessfully\", MessageSeverity.success); } , error => this.onDataLoadFailed(error))\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcGluY29kZW1hc3Rlci9waW5jb2RlbWFzdGVyLmNvbXBvbmVudC5zY3NzIn0= */\"","//import { Component, OnInit } from '@angular/core';\r\n\r\n//@Component({\r\n// selector: 'app-pincodemaster',\r\n// templateUrl: './pincodemaster.component.html',\r\n// styleUrls: ['./pincodemaster.component.scss']\r\n//})\r\n//export class PincodemasterComponent implements OnInit {\r\n\r\n// constructor() { }\r\n\r\n// ngOnInit() {\r\n// }\r\n\r\n//}\r\nimport { TemplateRef } from '@angular/core';\r\nimport { ViewChild } from '@angular/core';\r\nimport { ElementRef } from '@angular/core';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgModel } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Citymaster } from '../../models/citymaster.model';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { Pincodemaster} from '../../models/pincodemaster.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-pincodemaster',\r\n templateUrl: './pincodemaster.component.html',\r\n styleUrls: ['./pincodemaster.component.scss']\r\n})\r\nexport class PincodemasterComponent implements OnInit {\r\n //PINCodeMaster = new Pincodemaster();\r\n columns: any[] = [];\r\n rows: any[] = [];\r\n rowsCache: any[] = [];\r\n loadingIndicator = false; \r\n \r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef; \r\n \r\n constructor(private configurations: ConfigurationService, private excelService: ExcelService,private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n } \r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.pinCode));\r\n }\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'pinCode', name: 'Pin-Code', width: 100 },\r\n { prop: 'cityName', name: 'City', width: 100 },\r\n { prop: 'isDoxService', name: 'Dox', width: 50 },\r\n { prop: 'isParcelService', name: 'Parcel', width: 50 },\r\n { prop: 'isPriorityService', name: 'Priority', width: 50 },\r\n { prop: 'isTopayService', name: 'Topay', width: 50 },\r\n { prop: 'isCODservice', name: 'COD', width: 50 },\r\n { prop: 'isDODService', name: 'DOD', width: 50 },\r\n { prop: 'isNonServiceable', name: 'No Service', width: 100 },\r\n { prop: 'isPartialService', name: 'Partial Service', width: 100 },\r\n { prop: 'isODAlocation', name: 'ODA Service', width: 100 },\r\n { prop: 'isEDLlocation', name: 'EDl Service', width: 100 }\r\n ]; \r\n this.BindPincodeData();\r\n }\r\n \r\n BindPincodeData() {\r\n this.alertService.startLoadingMessage();\r\n this.loadingIndicator = true;\r\n this.ServiceMaster.getpincodes().subscribe(results => this.onpincodeDataLoadSuccessful(results), error => this.onDataLoadFailed(error));\r\n //this.GetstateMaster();\r\n }\r\n onpincodeDataLoadSuccessful(pincode: any[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n \r\n pincode.forEach((state, index, states) => {\r\n (state as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...pincode];\r\n this.rows = pincode;\r\n\r\n }\r\n\r\n GenerateExcel() {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n data[index] = [this.rows[index].pinCode, this.rows[index].cityName,\r\n this.rows[index].stateName,\r\n this.rows[index].isDoxService,\r\n this.rows[index].isParcelService,\r\n this.rows[index].IsPartialService, \r\n this.rows[index].isPriorityService,\r\n this.rows[index].isTopayService,\r\n this.rows[index].isCODservice,\r\n this.rows[index].isDODService,\r\n this.rows[index].isEDLlocation,\r\n this.rows[index].isODAlocation,\r\n this.rows[index].isNonServiceable,\r\n this.rows[index].isTeaService\r\n\r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.header = [\"PinCode\", \"City Name\", \"State Name\", \"DOX\", \"Parcel\", \"Partial\",\r\n \"Priority\", \"Topay\", \"COD\", \"DOD\", \"EDL\",\r\n \"ODA\", \"No Service\",\"Tea Service\"]\r\n this.excelService.title = \"Pin Code Master\";\r\n this.excelService.generateExcel();\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve pincodes from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n \r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcHJpbnQtZ2F0ZXBhc3MvcHJpbnQtZ2F0ZXBhc3MuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-print-gatepass',\r\n templateUrl: './print-gatepass.component.html',\r\n styleUrls: ['./print-gatepass.component.scss']\r\n})\r\nexport class PrintGatepassComponent implements OnInit {\r\n appLogo = require('../../assets/images/logos-02.png');\r\n\r\n GatePassno: string = \"\";\r\n GatepassResult: any[] = [];\r\n FrieghtResult: any[] = [];\r\n Bagdetail: any[] = [];\r\n GatePassDate: string = \"\";\r\n GatePassTime: string = \"\";\r\n From: string = \"\";\r\n To: string = \"\";\r\n Mode: string = \"\";\r\n Coloader: string;\r\n acnno: string;\r\n AcnWt: string;\r\n Vehicleno: string;\r\n Driver: string;\r\n sealno: string;\r\n backurl: string;\r\n vendoreCode: string;\r\n NoofBags: string;\r\n ACNNO: string;\r\n AcnAmount: string;\r\n cnWeight: string;\r\n columns: any[] = [];\r\n rows: any[] = [];\r\n constructor(private transaction: TransactionService, private ServiceMaster: Masters,\r\n private alertService: AlertService, private configurations: ConfigurationService,\r\n private authService: AuthService, public router: ActivatedRoute, private _router: Router) { }\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('awbbagmodal', { static: true })\r\n awbbagmodal: ModalDirective;\r\n ngOnInit() {\r\n\r\n this.columns = [\r\n { prop: 'sno', name: '#', width: 50, canAutoResize: false },\r\n { prop: 'bagno', name: 'Bagno ', width: 100 },\r\n { prop: 'awbno', name: 'Awbno ', width: 100 },\r\n { prop: 'awbWeight', name: 'Weight', width: 100 },\r\n { prop: 'mpsno', name: 'Mpsno', width: 100 },\r\n { prop: 'pieces', name: 'Pieces', width: 50 },\r\n { prop: 'cityName', name: 'Destination', width: 150 },\r\n { prop: 'Address', name: 'Dest Address', width: 200 }\r\n\r\n ];\r\n\r\n\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.GatePassno = params.GatePassno;\r\n this.backurl = params.backurl;\r\n });\r\n this.loadData()\r\n }\r\n ConrInit() {\r\n this.columns = [\r\n { prop: 'sno', name: '#', width: 50, canAutoResize: false },\r\n { prop: 'bagno', name: 'Bagno ', width: 100, canAutoResize: false },\r\n { prop: 'awbno', name: 'Awbno ', width: 100, canAutoResize: false },\r\n { prop: 'awbWeight', name: 'Weight', width: 100, canAutoResize: false },\r\n { prop: 'mpsno', name: 'Mpsno', width: 100, canAutoResize: false },\r\n { prop: 'pieces', name: 'Pieces', width: 50, canAutoResize: false },\r\n { prop: 'cityName', name: 'Destination', width: 150, canAutoResize: false },\r\n { prop: 'address', name: 'Dest Address', width: 200 }\r\n\r\n ];\r\n this.rows = [...this.rows]\r\n //this.rows = [];\r\n }\r\n ConsignerHidden() {\r\n this.rows = [];\r\n\r\n }\r\n Bagdetailridirect(event:any){\r\n var bagno = event.target.innerText;\r\n this.rows = [];\r\n this.Bagdetail.forEach((obj, ind, arr) => {\r\n if (obj.bagno == bagno) { \r\n if (this.rows.length == 0) {\r\n this.rows[0] = obj\r\n }\r\n else {\r\n this.rows.push(obj)\r\n }\r\n }\r\n });\r\n this.rows = [...this.rows]\r\n this.awbbagmodal.show();\r\n }\r\n\r\n loadData() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_printGatePass'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"GatePassno\"\r\n pr.PropertyValue = this.GatePassno;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.OngetsuccessGatePass(result), error => this.onDataLoadFailed(error))\r\n }\r\n OngetsuccessGatePass(result: any) {\r\n this.GatepassResult = result.table;\r\n this.acnno = result.table[0].acnno;\r\n this.AcnWt = result.table[0].acnWeight;\r\n this.Coloader = result.table[0].coloader;\r\n this.Driver = result.table[0].driveName;\r\n this.vendoreCode = result.table[0].vendoreCode;\r\n this.NoofBags = result.table[0].noofBags;\r\n this.From = result.table[0].from;\r\n this.GatePassDate = result.table[0].date;\r\n this.GatePassTime = result.table[0].time;\r\n this.ACNNO = result.table[0].aCNNO;\r\n this.AcnAmount = result.table[0].acnAmount;\r\n this.cnWeight = result.table[0].cnWeight;\r\n this.Mode = result.table[0].mode;\r\n this.sealno = result.table[0].vehicleSealno;\r\n this.To = result.table[0].to\r\n this.Vehicleno = result.table[0].vehicleno;\r\n this.Bagdetail = result.table1;\r\n //this.NoofBags = result.table1.length.toString()\r\n this.Bagdetail = [...this.Bagdetail]\r\n this.FrieghtResult = result.table2;\r\n this.FrieghtResult = [...this.FrieghtResult];\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n GobackUrl() {\r\n\r\n this._router.navigate([this.backurl]);\r\n\r\n }\r\n}\r\n","export default \".adropdown {\\n background-color: #fff;\\n margin: 0;\\n padding: 0;\\n display: block;\\n top: 0px;\\n left: 0px;\\n text-align: left;\\n position: absolute;\\n border: 0px solid red;\\n}\\n\\n.adropdown table {\\n font-family: \\\"Arial\\\";\\n margin: 35px 1px 0px 1px;\\n border-collapse: collapse;\\n border-bottom: 2px solid #00cccc;\\n border-spacing: 0px;\\n display: none;\\n color: #999;\\n cursor: default;\\n width: 100%;\\n border-left: 0px;\\n border-right: 0px;\\n border-top: 0px;\\n}\\n\\n.adropdown tr:hover {\\n background: #f4f4f4;\\n color: #555;\\n}\\n\\n.adropdown th {\\n background: #00cccc;\\n color: #fff;\\n text-transform: uppercase;\\n font-size: 12px;\\n padding: 5px 10px;\\n text-align: center;\\n}\\n\\n.adropdown tr td {\\n font-family: \\\"Open Sans\\\", \\\"Helvetica Neue\\\", Helvetica, sans-serif;\\n margin: 0;\\n font-variant: normal;\\n font-size: 12px;\\n padding: 5px;\\n min-height: 15px;\\n border-bottom: 1px solid #eee;\\n border-left: 0px;\\n border-right: 0px;\\n border-top: 0px;\\n text-align: left;\\n}\\n\\n.adropdown .selected {\\n background: #17D5D5;\\n padding-bottom: 8px;\\n color: #fff;\\n}\\n\\n.adropdown div {\\n position: absolute;\\n}\\n\\n.adropdown table caption {\\n caption-side: bottom;\\n padding: 10px;\\n display: none;\\n}\\n\\n.highlight {\\n box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1), 0px 10px 20px rgba(0, 0, 0, 0.05), 0px 20px 20px rgba(0, 0, 0, 0.05), 0px 30px 20px rgba(0, 0, 0, 0.05);\\n z-index: 999;\\n}\\n\\n.adropdown-input {\\n padding: 2px 25px 2px 5px;\\n outline: 0;\\n border-left: 1px solid #A9A9A9;\\n border-top: 1px solid #A9A9A9;\\n border-bottom: 1px solid #A9A9A9;\\n border-right: 10px solid #A9A9A9;\\n margin: 0px;\\n font-size: 12px;\\n}\\n\\n.adropdown-input::-ms-clear {\\n width: 0;\\n height: 0;\\n}\\n\\n.inputfocus {\\n outline: 0;\\n border-left: 1px solid #A9A9A9;\\n border-top: 1px solid #A9A9A9;\\n border-bottom: 1px solid #A9A9A9;\\n border-right: 10px solid #A9A9A9;\\n font-size: 14px;\\n min-width: 140px;\\n padding: 0px;\\n background: none;\\n margin: 5px 0px 5px 5px !important;\\n position: relative;\\n z-index: 1000;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9wcmludC1tYW5pZmVzdC9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxwcmludC1tYW5pZmVzdFxccHJpbnQtbWFuaWZlc3QuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcHJpbnQtbWFuaWZlc3QvcHJpbnQtbWFuaWZlc3QuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxzQkFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsY0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLHFCQUFBO0FDQ0Y7O0FERUE7RUFDRSxvQkFBQTtFQUNBLHdCQUFBO0VBQ0EseUJBQUE7RUFDQSxnQ0FBQTtFQUNBLG1CQUFBO0VBQ0EsYUFBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxlQUFBO0FDQ0Y7O0FERUE7RUFDRSxtQkFBQTtFQUNBLFdBQUE7QUNDRjs7QURFQTtFQUNFLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7QUNDRjs7QURFQTtFQUNFLGlFQUFBO0VBQ0EsU0FBQTtFQUNBLG9CQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLDZCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtBQ0NGOztBREVBO0VBQ0UsbUJBQUE7RUFDQSxtQkFBQTtFQUNBLFdBQUE7QUNDRjs7QURFQTtFQUNFLGtCQUFBO0FDQ0Y7O0FERUE7RUFDRSxvQkFBQTtFQUNBLGFBQUE7RUFDQSxhQUFBO0FDQ0Y7O0FERUE7RUFDRSxvSkFBQTtFQUNBLFlBQUE7QUNDRjs7QURFQTtFQUNFLHlCQUFBO0VBQ0EsVUFBQTtFQUNBLDhCQUFBO0VBQ0EsNkJBQUE7RUFDQSxnQ0FBQTtFQUNBLGdDQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7QUNDRjs7QURFQTtFQUNFLFFBQUE7RUFDQSxTQUFBO0FDQ0Y7O0FERUE7RUFDRSxVQUFBO0VBQ0EsOEJBQUE7RUFDQSw2QkFBQTtFQUNBLGdDQUFBO0VBQ0EsZ0NBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQ0FBQTtFQUNBLGtCQUFBO0VBQ0EsYUFBQTtBQ0NGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9wcmludC1tYW5pZmVzdC9wcmludC1tYW5pZmVzdC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5hZHJvcGRvd24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgdG9wOiAwcHg7XHJcbiAgbGVmdDogMHB4O1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvcmRlcjogMHB4IHNvbGlkIHJlZDtcclxufVxyXG5cclxuLmFkcm9wZG93biB0YWJsZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdBcmlhbCc7XHJcbiAgbWFyZ2luOiAzNXB4IDFweCAwcHggMXB4O1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwMGNjY2M7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDBweDtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGNvbG9yOiAjOTk5O1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxuICB3aWR0aDogMTAwJTtcclxuICBib3JkZXItbGVmdDogMHB4O1xyXG4gIGJvcmRlci1yaWdodDogMHB4O1xyXG4gIGJvcmRlci10b3A6IDBweDtcclxufVxyXG5cclxuLmFkcm9wZG93biB0cjpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcclxuICBjb2xvcjogIzU1NTtcclxufVxyXG5cclxuLmFkcm9wZG93biB0aCB7XHJcbiAgYmFja2dyb3VuZDogIzAwY2NjYztcclxuICBjb2xvcjogI2ZmZjtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBwYWRkaW5nOiA1cHggMTBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5hZHJvcGRvd24gdHIgdGQge1xyXG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuICBtYXJnaW46IDA7XHJcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIHBhZGRpbmc6IDVweDtcclxuICBtaW4taGVpZ2h0OiAxNXB4O1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xyXG4gIGJvcmRlci1sZWZ0OiAwcHg7XHJcbiAgYm9yZGVyLXJpZ2h0OiAwcHg7XHJcbiAgYm9yZGVyLXRvcDogMHB4O1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5hZHJvcGRvd24gLnNlbGVjdGVkIHtcclxuICBiYWNrZ3JvdW5kOiAjMTdENUQ1O1xyXG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5hZHJvcGRvd24gZGl2IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbn1cclxuXHJcbi5hZHJvcGRvd24gdGFibGUgY2FwdGlvbiB7XHJcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XHJcbiAgcGFkZGluZzogMTBweDtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uaGlnaGxpZ2h0IHtcclxuICBib3gtc2hhZG93OiAwcHggMHB4IDIwcHggcmdiYSgwLDAsMCwwLjEwKSwgMHB4IDEwcHggMjBweCByZ2JhKDAsMCwwLDAuMDUpLCAwcHggMjBweCAyMHB4IHJnYmEoMCwwLDAsMC4wNSksIDBweCAzMHB4IDIwcHggcmdiYSgwLDAsMCwwLjA1KTtcclxuICB6LWluZGV4OiA5OTk7XHJcbn1cclxuXHJcbi5hZHJvcGRvd24taW5wdXQge1xyXG4gIHBhZGRpbmc6IDJweCAyNXB4IDJweCA1cHg7XHJcbiAgb3V0bGluZTogMDtcclxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNBOUE5QTk7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNBOUE5QTk7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNBOUE5QTk7XHJcbiAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICNBOUE5QTk7XHJcbiAgbWFyZ2luOiAwcHg7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG59XHJcblxyXG4uYWRyb3Bkb3duLWlucHV0OjotbXMtY2xlYXIge1xyXG4gIHdpZHRoOiAwO1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLmlucHV0Zm9jdXMge1xyXG4gIG91dGxpbmU6IDA7XHJcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQTlBOUE5O1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQTlBOUE5O1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQTlBOUE5O1xyXG4gIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCAjQTlBOUE5O1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBtaW4td2lkdGg6IDE0MHB4O1xyXG4gIHBhZGRpbmc6IDBweDtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIG1hcmdpbjogNXB4IDBweCA1cHggNXB4ICFpbXBvcnRhbnQ7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDEwMDA7XHJcbn1cclxuXHJcbiIsIi5hZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogMHB4IHNvbGlkIHJlZDtcbn1cblxuLmFkcm9wZG93biB0YWJsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCI7XG4gIG1hcmdpbjogMzVweCAxcHggMHB4IDFweDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwMGNjY2M7XG4gIGJvcmRlci1zcGFjaW5nOiAwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItbGVmdDogMHB4O1xuICBib3JkZXItcmlnaHQ6IDBweDtcbiAgYm9yZGVyLXRvcDogMHB4O1xufVxuXG4uYWRyb3Bkb3duIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgY29sb3I6ICM1NTU7XG59XG5cbi5hZHJvcGRvd24gdGgge1xuICBiYWNrZ3JvdW5kOiAjMDBjY2NjO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYWRyb3Bkb3duIHRyIHRkIHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICBmb250LXNpemU6IDEycHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWluLWhlaWdodDogMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG4gIGJvcmRlci1sZWZ0OiAwcHg7XG4gIGJvcmRlci1yaWdodDogMHB4O1xuICBib3JkZXItdG9wOiAwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5hZHJvcGRvd24gLnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZDogIzE3RDVENTtcbiAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5hZHJvcGRvd24gZGl2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uYWRyb3Bkb3duIHRhYmxlIGNhcHRpb24ge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgcGFkZGluZzogMTBweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhpZ2hsaWdodCB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMSksIDBweCAxMHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA1KSwgMHB4IDIwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDUpLCAwcHggMzBweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIHotaW5kZXg6IDk5OTtcbn1cblxuLmFkcm9wZG93bi1pbnB1dCB7XG4gIHBhZGRpbmc6IDJweCAyNXB4IDJweCA1cHg7XG4gIG91dGxpbmU6IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0E5QTlBOTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNBOUE5QTk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQTlBOUE5O1xuICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgI0E5QTlBOTtcbiAgbWFyZ2luOiAwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmFkcm9wZG93bi1pbnB1dDo6LW1zLWNsZWFyIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbn1cblxuLmlucHV0Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNBOUE5QTk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQTlBOUE5O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0E5QTlBOTtcbiAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICNBOUE5QTk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWluLXdpZHRoOiAxNDBweDtcbiAgcGFkZGluZzogMHB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDVweCAwcHggNXB4IDVweCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDA7XG59Il19 */\"","import { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ConfigurationService } from 'src/app/services/configuration.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { ConfirmDialogMpsModels, DialogMpsComponent, MPStransaction } from '../controls/dialog-mps.component';\r\nimport { MatDialog } from '@angular/material';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { Masters } from '../../services/masters.service';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-printmanifest',\r\n templateUrl: './print-manifest.component.html',\r\n styleUrls: ['./print-manifest.component.scss']\r\n})\r\nexport class PrintManifestComponent implements OnInit, AfterViewInit {\r\n\r\n appLogo = require('../../assets/images/logos-02.png');\r\n printManifestObj: printManifest[] = [];\r\n type: any;\r\n Hub: string\r\n ReceivingFrom: string\r\n Date: string\r\n Mode: string\r\n Coloader: string\r\n Manifest: string\r\n totalNoofAwb: string\r\n totalTotalWeight: string\r\n TotalPieces: string\r\n isflag: boolean = false;\r\n isManifest: boolean = false;\r\n ForwardedTo: string = \"\";\r\n typename: any;\r\n arrmanifest: any[] = [];\r\n thenBlock: boolean = true;\r\n elseBlock: boolean = false;\r\n dialogRef: any;\r\n\r\n\r\n constructor(public dialog: MatDialog, private transaction: TransactionService, private ServiceMaster: Masters, private alertService: AlertService, private configurations: ConfigurationService, private authService: AuthService, public router: ActivatedRoute, private _router: Router) {\r\n\r\n\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss');\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.Manifest = params.Manifest;\r\n\r\n }\r\n );\r\n\r\n this.loaddata();\r\n }\r\n ngAfterViewInit() {\r\n\r\n }\r\n loaddata() {\r\n if (!isNullOrUndefined(this.Manifest)) {\r\n if (this.Manifest.length > 0) {\r\n\r\n this.transaction.Getmanifestprint(this.Manifest).subscribe(result => this.onGetSucessManifestData(result), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n }\r\n getManifestlist(event: any) {\r\n var val = event.target.value;\r\n this.GetManifestList(val);\r\n //this.listofdata(this.arrmanifest);\r\n }\r\n listofdata(arr: any[]) {\r\n\r\n var text2 = $(\"#Manifestnot2\").tautocomplete({\r\n width: \"500px\",\r\n columns: ['ManifestNo', 'Date', 'Office'],\r\n data: function () {\r\n try {\r\n\r\n var data = arr;\r\n\r\n }\r\n catch (e) {\r\n alert(e)\r\n }\r\n var filterData: any[] = [];\r\n\r\n var searchData = eval(\"/\" + text2.searchdata() + \"/gi\");\r\n\r\n $.each(data, function (i, v) {\r\n if (v.manifestno.search(new RegExp(searchData)) != -1) {\r\n filterData.push(v);\r\n }\r\n });\r\n return filterData;\r\n },\r\n callback: function () {\r\n $(\"#ta-txt\").html(text2.text());\r\n $(\"#ta-id\").html(text2.id());\r\n }\r\n });\r\n }\r\n confirmDialog_MPS(mes: any, pieces: any, unit: any, mps: MPStransaction[], callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogMpsModels(\"MPS\", message, pieces, unit, false ,'', mps, null);\r\n this.dialogRef = this.dialog.open(DialogMpsComponent, {\r\n disableClose: true,\r\n minWidth: \"800px\",\r\n minHeight: \"400px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n MultiPiecesRedirect(event:any) {\r\n var awbno = event.target.innerText;\r\n var awbinoutid = \"\";\r\n this.printManifestObj.forEach((mani, ind, arr) => {\r\n if (mani.AWBNo == awbno) {\r\n awbinoutid = mani.awbinoutId\r\n }\r\n });\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetMPSInout'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"awbno\"\r\n pr.PropertyValue = awbno;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"InOutId\"\r\n pr.PropertyValue = awbinoutid;\r\n Req.LstParameter = Parameter;\r\n Parameter[1] = pr;\r\n\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.OngetsuccessMPs(result), error => this.onDataLoadFailed(error))\r\n\r\n //this.transaction.GetMpsList(awbno).subscribe(Result => { this.OngetsuccessMPs(Result)})\r\n\r\n\r\n }\r\n OngetsuccessMPs(result:any) {\r\n var row: MPStransaction[] = []\r\n row = result;\r\n this.confirmDialog_MPS(\"\", \"\", \"\", row, this.OngetsuccessMPs)\r\n }\r\n OnMPSResultofmodel(dialogResult: any) {\r\n }\r\n\r\n\r\n\r\n\r\n\r\n GetManifestList(val:any) {\r\n //this.transaction.GetManiFestList().pipe(take(1)).toPromise()\r\n this.transaction.GetManiFestList(\"\").subscribe(result => this.onGetSucessManifestList(result,val), error => this.onDataLoadFailed(error));\r\n }\r\n \r\n onGetSucessManifestList(result: any,val:any) {\r\n this.arrmanifest = result;\r\n\r\n var tmpdata = JSON.stringify(this.arrmanifest);\r\n var text2= $(\"#Manifestno\").tautocomplete({\r\n width: \"500px\",\r\n columns: ['ManifestNo', 'Date', 'Office'],\r\n data: function () {\r\n try {\r\n\r\n var data = JSON.parse(tmpdata);\r\n\r\n }\r\n catch (e) {\r\n alert(e)\r\n }\r\n var filterData = [];\r\n\r\n var searchData = eval(\"/\" + text2.searchdata() + \"/gi\");\r\n\r\n $.each(data, function (i, v) {\r\n if (v.manifestno.search(new RegExp(searchData)) != -1) {\r\n filterData.push(v);\r\n }\r\n });\r\n return filterData;\r\n },\r\n callback: function () {\r\n \r\n $(\"#Manifestno\").val(text2.text());\r\n }\r\n });\r\n\r\n\r\n }\r\n\r\n\r\n \r\n onGetSucessManifestData(result: any) {\r\n var tmp = result\r\n this.printManifestObj = [];\r\n var rn: printManifest = new printManifest()\r\n this.isflag = true;\r\n for (let i = 0; i < result.length; i++) {\r\n this.Hub = result[i].scanOfficeid;\r\n this.type = result[i].inout == \"IN\" ?\"Inbound\" :\"Outbound\";\r\n this.ReceivingFrom = result[i].recvFrom;\r\n this.ForwardedTo = result[i].forwardedto;\r\n this.Date = result[0].awbinoutDatee;//\r\n this.Mode = result[i].mode;\r\n this.Coloader = result[i].coloader;\r\n this.totalNoofAwb = result[0].noofawb;\r\n this.totalTotalWeight = result[0].totalWeight;\r\n this.TotalPieces = result[0].totalPieces;\r\n rn = new printManifest();\r\n rn.AWBNo = result[i].awbno;\r\n rn.Origin = result[i].origin;\r\n rn.Destination = result[i].destination;\r\n rn.Weight = result[i].awbWeight;\r\n rn.srlno = (i + 1).toString();\r\n rn.Product = result[i].product\r\n rn.Pieces = result[i].pieces.toString()\r\n rn.awbinoutId = result[i].awbinoutId\r\n if( parseInt(rn.Pieces) > 1)\r\n {\r\n rn.flag =true;\r\n }\r\n else{\r\n rn.flag =false;\r\n }\r\n if (this.printManifestObj.length == 0) {\r\n this.printManifestObj[0] = rn;\r\n }\r\n else {\r\n this.printManifestObj.push(rn);\r\n }\r\n\r\n }\r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n funGetDatebymenifest()\r\n {\r\n this.Manifest=$(\"#Manifestno\").val();\r\n if (this.Manifest !=\"\")\r\n {\r\n this.loaddata();\r\n this.isflag=true;\r\n }else\r\n {\r\n this.isflag=false;\r\n alert('Please Enter Manifest No.')\r\n return false;\r\n }\r\n }\r\n}\r\nexport class printManifest {\r\n public srlno: string\r\n public AWBNo: string\r\n public Origin: string\r\n public Destination: string\r\n public Weight: string\r\n public Product: string\r\n public Pieces: string\r\n public flag: boolean\r\n public awbinoutId: string\r\n}\r\n\r\n\r\n","export default \".tablee td {\\n border: 1px solid black;\\n border-collapse: collapse;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9wcmludHN0aWNrZXIvRDpcXE9uZXhXZWJcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xccHJpbnRzdGlja2VyXFxwcmludHN0aWNrZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcHJpbnRzdGlja2VyL3ByaW50c3RpY2tlci5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHVCQUFBO0VBQ0EseUJBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcHJpbnRzdGlja2VyL3ByaW50c3RpY2tlci5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi50YWJsZWUgIHRkIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG59XHJcbiIsIi50YWJsZWUgdGQge1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn0iXX0= */\"","import { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { QRCodeComponent } from 'angular2-qrcode'\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { MatDialog } from '@angular/material';\r\nimport { AwbMoneyReceipt, ConfirmDialogMoneyRcptModels, DialogmoneyrecieptComponent } from '../controls/dialogmoneyreciept.component';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { Masters } from '../../services/masters.service';\r\n\r\n@Component({\r\n selector: 'app-printsticker',\r\n templateUrl: './printsticker.component.html',\r\n styleUrls: ['./printsticker.component.scss']\r\n})\r\nexport class PrintstickerComponent implements OnInit {\r\n\r\n title = 'angular-qr-code-tutorial';\r\n appLogo = require('../../assets/images/logos-02.png');\r\n\r\n public qrdata: any = null;\r\n public level: \"L\" | \"M\" | \"Q\" | \"H\"; \r\n\r\n status: boolean = false;\r\n usbPrintDriver: UsbDriver;\r\n webPrintDriver: WebPrintDriver;\r\n ip: string = '';\r\n height = 40;\r\n width = 2;\r\n marginLeft = -20;\r\n textMargin = 1;\r\n dialogRef: any;\r\n stickerrunsheet: runsheet[] = [];\r\n content: ElementRef;\r\n fromno: any;\r\n tono: any;\r\n officeid: any;\r\n bacode: \"\";\r\n prefix: string = \"\";\r\n constructor(private printService: PrintService, private ServiceMaster: Masters, private dialog: MatDialog, private alertService: AlertService, public router: ActivatedRoute, private _router: Router, private transaction: TransactionService) {\r\n }\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.fromno = params.fromno;\r\n this.tono = params.tono;\r\n this.officeid = params.officeid;\r\n this.prefix = params.prefix;\r\n }\r\n );\r\n \r\n if (this.fromno != \"\" && this.tono !=\"\") {\r\n\r\n this.onGetSucessdrsData(this.fromno, this.tono)\r\n }\r\n }\r\n onGetSucessdrsData(from, to) {\r\n\r\n //let Req = new CommRequest();\r\n //Req.ProcessName = 'usp_getbacodefromid'\r\n //let Parameter = new Array(1);\r\n //let pr = new Prclass();\r\n //pr.ParameterDirection = \"Input\"\r\n //pr.PropertType = \"Guid\"\r\n //pr.PropertyName = \"officeid\"\r\n //pr.PropertyValue = this.officeid;\r\n //Parameter[0] = pr;\r\n \r\n //Req.LstParameter = Parameter;\r\n //this.ServiceMaster.Postcommondata(Req).subscribe(result => \r\n //{\r\n this.bacode = this.officeid;\r\n var number: any;\r\n var fromno = parseInt(from);\r\n var tono = parseInt(to);\r\n var rn: runsheet = new runsheet()\r\n for (let i = fromno; i <= tono; i++) {\r\n rn = new runsheet();\r\n number = i.toString().padStart(8, '0')\r\n rn.stickerNo = this.prefix + number\r\n\r\n if (this.stickerrunsheet.length == 0) {\r\n this.stickerrunsheet[0] = rn;\r\n }\r\n else {\r\n this.stickerrunsheet.push(rn);\r\n }\r\n\r\n }\r\n /* }, error => this.onDataLoadFailed(error))*/\r\n }\r\n onDataLoadFailed(error: any) {\r\n\r\n\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n /*printer*/\r\n public SavePDF(): void {\r\n\r\n let DATA = document.getElementById('content');\r\n\r\n html2canvas(DATA).then(canvas => {\r\n\r\n var imgWidth = 225;\r\n var pageHeight = 225;\r\n var imgHeight = canvas.height * imgWidth / canvas.width;\r\n const FILEURI = canvas.toDataURL('image/png')\r\n var heightLeft = imgHeight;\r\n var doc = new jsPDF(\"p\", \"mm\", \"a4\"); // landscape\r\n var position = 0;\r\n\r\n var width = doc.internal.pageSize.getWidth();\r\n var height = doc.internal.pageSize.getHeight();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n\r\n while (heightLeft >= 0) {\r\n position = heightLeft - imgHeight;\r\n doc.addPage();\r\n doc.addImage(FILEURI, 'JPEG', 0, position, imgWidth, imgHeight);\r\n heightLeft -= pageHeight;\r\n }\r\n doc.save('qrcode.pdf');\r\n });\r\n }\r\n\r\n}\r\nexport class runsheet {\r\n public srlno: string\r\n public stickerNo: string\r\n \r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcHJvZHVjdG1hc3Rlci9wcm9kdWN0bWFzdGVyLmNvbXBvbmVudC5zY3NzIn0= */\"","import { error } from '@angular/compiler/src/util';\r\nimport { Input } from '@angular/core';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxDatatableModule } from '@swimlane/ngx-datatable';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Permission } from 'src/app/models/permission.model';\r\nimport { ProductMaster } from 'src/app/models/productmaster.model';\r\nimport { AlertService, DialogType, MessageSeverity } from 'src/app/services/alert.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { ConfigurationService } from 'src/app/services/configuration.service';\r\nimport { Masters } from 'src/app/services/masters.service';\r\nimport { Utilities } from 'src/app/services/utilities';\r\nimport { ColumnMode, SelectionType } from '@swimlane/ngx-datatable';\r\n\r\n@Component({\r\n selector: 'app-productmaster',\r\n templateUrl: './productmaster.component.html',\r\n styleUrls: ['./productmaster.component.scss']\r\n})\r\nexport class ProductmasterComponent implements OnInit {\r\n editedProduct: ProductMaster = new ProductMaster();\r\n columns: any[] = [];\r\n rows: ProductMaster[] = [];\r\n rowsCache: ProductMaster[] = [];\r\n isSaving= false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n products: any[] = [];\r\n\r\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n\r\n\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'productCode', name: 'Product Code', width: 75 },\r\n { prop: 'productType', name: 'Sale Type', width: 100 },\r\n { prop: 'service', name: 'Service', width: 100 },\r\n { prop: 'bookingFor', name: 'Product', width: 100 },\r\n { prop: 'mode', name: 'Mode', width: 100 },\r\n \r\n ];\r\n this.loaddata();\r\n \r\n }\r\n onDatagetSuccessful(product: any[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.products = product;\r\n\r\n }\r\n GetProductList(Type:string) {\r\n this.ServiceMaster.ProductList(Type).subscribe(result => this.onDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n this.ServiceMaster.getproduct().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n this.GetProductList(\"Kart\");\r\n }\r\n LoadSucessdata(product: ProductMaster[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n product.forEach((prod, index, products) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...product];\r\n this.rows = product;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertProduct() {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.ServiceMaster.NewProduct(this.editedProduct).subscribe(product => this.saveSuccessHelper(product), error => this.saveFailedHelper(error));\r\n }\r\n private saveSuccessHelper(product?: ProductMaster) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `Product \\\"${this.editedProduct.productType + \"-\" + this.editedProduct.bookingFor}\\\" was created successfully`, MessageSeverity.success);\r\n if (this.rows.length == 0) {\r\n this.rows[0] = product[0];\r\n this.rowsCache[0] = product[0];\r\n }\r\n else {\r\n this.rows.push(product[0]);\r\n this.rowsCache.push(product[0]);\r\n }\r\n this.rows.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache = [...this.rowsCache]\r\n this.rows = [...this.rows]\r\n this.editedProduct = new ProductMaster()\r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.productCode));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcHJvZHVjdHMvcHJvZHVjdHMuY29tcG9uZW50LnNjc3MifQ== */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component } from '@angular/core';\r\nimport { fadeInOut } from '../../services/animations';\r\n\r\n@Component({\r\n selector: 'products',\r\n templateUrl: './products.component.html',\r\n styleUrls: ['./products.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class ProductsComponent {\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcHJvZHVjdHN0aWNrZXIvcHJvZHVjdHN0aWNrZXIuY29tcG9uZW50LnNjc3MifQ== */\"","import { DatePipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Guid } from 'guid-typescript';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { from } from 'rxjs';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-productsticker',\r\n templateUrl: './productsticker.component.html',\r\n styleUrls: ['./productsticker.component.scss']\r\n})\r\nexport class ProductstickerComponent implements OnInit {\r\n\r\n editedabproductqty: BaProductSticker = new BaProductSticker();\r\n columns: any[] = [];\r\n rows: BaProductSticker[] = [];\r\n addrow: BaProductSticker[] = [];\r\n rowsCache: BaProductSticker[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n isEditMode = false;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n poductdata: any[] = [];\r\n\r\n constructor(private configurations: ConfigurationService, private localstre: LocalStoreManager, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n\r\n ngOnInit() {\r\n this.editedabproductqty.officeName = this.localstre.getData(\"User_Office\");\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'officeName', name: 'From Name', width: 150 },\r\n { prop: 'productName', name: 'Product', width: 150 },\r\n { prop: 'mode', name: 'mode', width: 50 },\r\n { prop: 'stickerQty', name: 'Sticker Qty', width: 50 },\r\n { prop: 'fromNo', name: 'From Number', width: 50 },\r\n { prop: 'toNo', name: 'To Number', width: 50 },\r\n { prop: 'printed', name: 'Printed', width: 50 },\r\n\r\n ];\r\n this.columns.push({ name: 'Action', width: 125, cellTemplate: this.actionsTemplate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.loaddata();\r\n }\r\n PrintSticker(row:BaProductSticker) {\r\n if (row.isprint == true) {\r\n this.alertService.showStickyMessage(\"Print\", \"This series is already printed,you cannot print again\", MessageSeverity.warn)\r\n this.alertService.showStickyMessage(\"\",\"Contact control office\", MessageSeverity.info);\r\n return;\r\n }\r\n\r\n row.isprint = true;\r\n\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_SaveBaProductSticker'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"BaStickerid\"\r\n pr.PropertyValue = row.baStickerid;\r\n Parameter[0] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"OfficeId\"\r\n pr.PropertyValue = row.officeId;\r\n Parameter[1] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"OfficeName\"\r\n pr.PropertyValue = row.officeName;\r\n Parameter[2] = pr;\r\n\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"ProductMasterId\";\r\n pr.PropertyValue = row.productMasterId;\r\n Parameter[3] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"ProductCode\"\r\n pr.PropertyValue = row.productCode;\r\n Parameter[4] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Mode\"\r\n pr.PropertyValue = row.mode;\r\n Parameter[5] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"StickerQty\"\r\n pr.PropertyValue = row.stickerQty;\r\n Parameter[6] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"FromNo\"\r\n pr.PropertyValue = row.fromNo;\r\n Parameter[7] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"ToNo\";\r\n pr.PropertyValue = row.toNo;\r\n Parameter[8] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Isprint\";\r\n pr.PropertyValue = \"1\";\r\n Parameter[9] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"CreatedBy\";\r\n pr.PropertyValue = this.userId;\r\n Parameter[10] = pr;\r\n\r\n\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.rows = result;\r\n this.rows.forEach((prod, index, items) => {\r\n (prod as any).index = index + 1;\r\n });\r\n this.rows = [...this.rows]\r\n this.route.navigate(['/printsticker'], {\r\n queryParams: {\r\n fromno: row.fromNo.substr(2),\r\n tono: row.toNo.substr(2),\r\n officeid: row.productName,\r\n prefix:row.fromNo.substr(0,2)\r\n }\r\n }); // define your component where you want to go\r\n //this.alertService.showMessage(\"Sticker\", \"Sticker Generated\", MessageSeverity.success);\r\n }, error => this.onDataLoadFailed(error)) \r\n\r\n }\r\n loaddata() {\r\n this.loadingIndicator = false;\r\n let Req = new CommRequest();\r\n let ptype: string =\"\";\r\n let Badata: any = this.localstre.getData(\"BaLoginData\");\r\n if (Badata[0].batype == 'BA') {\r\n ptype = \"Kart\"\r\n }\r\n else {\r\n ptype = \"Normal\"\r\n }\r\n Req.ProcessName = \"Usp_getProductMaster\"\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"ptype\";\r\n pr.PropertyValue = ptype;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.poductdata = result;\r\n }, error => this.onDataLoadFailed(error));\r\n\r\n Req.ProcessName = \"p_GetBaProductSticker\"\r\n Parameter = new Array(1);\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"OfficeId\";\r\n pr.PropertyValue = Badata[0].officeid\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.rows = result;\r\n this.rows.forEach((prod, index, items) => {\r\n (prod as any).index = index + 1;\r\n });\r\n this.rows = [...this.rows];\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertbapstickerQty()\r\n {\r\n if ($('#product option:selected').text() == '--Select Product--') {\r\n $('#product').focus();\r\n this.alertService.showMessage(\"Sticker\", \"Please select a product\", MessageSeverity.error);\r\n return;\r\n }\r\n if ($('#mode option:selected').text() == '--Select Mode--') {\r\n $('#mode').focus();\r\n this.alertService.showMessage(\"Sticker\", \"Please select mode\", MessageSeverity.error);\r\n return;\r\n }\r\n if (parseInt($('#stickerQty').val().toString()) == 0 || isNaN(parseInt($('#stickerQty').val().toString()))) {\r\n $('#stickerQty').focus();\r\n this.alertService.showMessage(\"Sticker\", \"Please enter quantity\", MessageSeverity.error);\r\n return;\r\n }\r\n let Badata: any = this.localstre.getData(\"BaLoginData\");\r\n let prodcode: any =\"\";\r\n let productmasterid: any =\"\";\r\n this.poductdata.forEach((pdata) => {\r\n if (pdata.bookingFor == $('#product option:selected').text() && pdata.mode == $('#mode option:selected').text()) {\r\n prodcode = pdata.productCode;\r\n productmasterid = pdata.productMasterId;\r\n }\r\n });\r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_SaveBaProductSticker'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"BaStickerid\"\r\n pr.PropertyValue = Guid.create().toString();\r\n Parameter[0] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"OfficeId\"\r\n pr.PropertyValue = Badata[0].officeid;\r\n Parameter[1] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"OfficeName\"\r\n pr.PropertyValue = Badata[0].officename;\r\n Parameter[2] = pr;\r\n \r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"ProductMasterId\";\r\n pr.PropertyValue = productmasterid;\r\n Parameter[3] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"ProductCode\"\r\n pr.PropertyValue = prodcode;\r\n Parameter[4] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"Mode\"\r\n pr.PropertyValue = $('#mode option:selected').text();\r\n Parameter[5] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"StickerQty\"\r\n pr.PropertyValue = $('#stickerQty').val().toString();\r\n Parameter[6] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"FromNo\"\r\n pr.PropertyValue = \"0\";\r\n Parameter[7] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"ToNo\";\r\n pr.PropertyValue = \"0\";\r\n Parameter[8] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"Isprint\";\r\n pr.PropertyValue = \"0\";\r\n Parameter[9] = pr;\r\n\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"CreatedBy\";\r\n pr.PropertyValue = this.userId;\r\n Parameter[10] = pr;\r\n\r\n\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.rows = result;\r\n this.rows.forEach((prod, index, items) => {\r\n (prod as any).index = index + 1;\r\n });\r\n this.rows=[...this.rows]\r\n this.alertService.showMessage(\"Sticker\", \"Sticker Generated\", MessageSeverity.success);\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : 'userid';\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n\r\n}\r\n\r\nexport class BaProductSticker {\r\n public baStickerid: string;\r\n public officeId: string;\r\n public officeName: string;\r\n public productMasterId: string;\r\n public productCode: string;\r\n public productName: string;\r\n public mode: string;\r\n public stickerQty: string;\r\n public fromNo: string;\r\n public toNo: string;\r\n public isprint: boolean;\r\n}\r\n","export default \"table, th, td {\\n border: 1px solid black;\\n border-collapse: collapse;\\n padding-left: 10px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9xdW90ZS1jdXN0b21lcnByaW50L0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXHF1b3RlLWN1c3RvbWVycHJpbnRcXHF1b3RlLWN1c3RvbWVycHJpbnQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvcXVvdGUtY3VzdG9tZXJwcmludC9xdW90ZS1jdXN0b21lcnByaW50LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsdUJBQUE7RUFDQSx5QkFBQTtFQUNBLGtCQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3F1b3RlLWN1c3RvbWVycHJpbnQvcXVvdGUtY3VzdG9tZXJwcmludC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbInRhYmxlLCB0aCwgdGQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG59XHJcbiIsInRhYmxlLCB0aCwgdGQge1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufSJdfQ== */\"","import { flatten } from '@angular/compiler';\r\nimport { AfterViewInit, ViewChild, ViewChildren } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { letterSpacing } from 'html2canvas/dist/types/css/property-descriptors/letter-spacing';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { LocalStoreManager } from 'src/app/services/local-store-manager.service';\r\n//import { document } from 'ngx-bootstrap';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Address, AddressmasterComponent } from '../controls/addressmaster.component';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { ConfirmDialogRateModels, DailogRateMasterComponent } from '../controls/dailog-rate-master.component';\r\nimport { MatDialog } from '@angular/material';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { ConfirmDialogocModels, DialogOtherChargeComponent, OtherChargesRateMaster } from '../controls/dialog-other-charge.component';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\n\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-quote-customerprint',\r\n templateUrl: './quote-customerprint.component.html',\r\n styleUrls: ['./quote-customerprint.component.scss']\r\n})\r\nexport class QuoteCustomerprintComponent implements OnInit {\r\n appLogo = require('../../assets/images/logos-02.png');\r\n loadingIndicator = false;\r\n printcustmerObj: printCustomerRateMaster[] = [];\r\n printCustomerMapping: printCustomerMapping[] = [];\r\n public customercode: string;\r\n public CustomerName: string;\r\n public ContactPerson: string;\r\n public ContactMobileNo: string;\r\n public ContactEmail: string;\r\n public ContactValidForm: string;\r\n public ContactValidTill: string;\r\n public HouseNo: string;\r\n public StreetName: string;\r\n public StateName: string;\r\n public City: string;\r\n public Pincode: string;\r\n public gstnumber: string;\r\n public panno: string;\r\n public dateOfEstablishment: string;\r\n public natureOfService: string;\r\n public bPersonName: string;\r\n public bemail: string;\r\n public bmobileno: string;\r\n public blandLineno: string;\r\n public Designation: string;\r\n public MapedCityNamelocal2: string;\r\n public Branch: string;\r\n public Signedby: string;\r\n public ContactDate: string;\r\n public ExecutiveName: string;\r\n public CreatedDate: string;\r\n public Domsticdocment: string;\r\n public DomsticParcel: string;\r\n public Interdocment: string;\r\n public InterParcel: string;\r\n public strcustomerId: string;\r\n public otherChargeRate: any[];\r\n groupproductname: any[] = [];\r\n constructor(public dialog: MatDialog, private configurations: ConfigurationService, public router: ActivatedRoute, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters, private localstre: LocalStoreManager) {\r\n }\r\n\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.strcustomerId = params.customerId;\r\n\r\n });\r\n var CustomerId = this.strcustomerId;\r\n \r\n this.getregions(CustomerId);\r\n this.getproductdetails(CustomerId);\r\n this.getGetCustomerMapped(CustomerId);\r\n this.groupproductname = [\r\n { item_id: 'P0001', ProductName: 'Document Air' },\r\n { item_id: 'P0030', ProductName: 'Document Surface' },\r\n { item_id: 'P0002', ProductName: 'Parcel Air' },\r\n { item_id: 'P0003', ProductName: 'Surface' },\r\n { item_id: 'P0016', ProductName: 'Parcel Train' },\r\n { item_id: 'P0005', ProductName: 'Priority Document Air' },\r\n { item_id: 'P0006', ProductName: 'Priority Parcel\tAir' },\r\n ];\r\n }\r\n getregions(CustomerId) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_QuoteGetCoustomerdetails'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"CustomerId\"\r\n pr.PropertyValue = CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getCoustomerdetails(result), error => this.onDataLoadFailed(error))\r\n }\r\n\r\n getCoustomerdetails(result) {\r\n this.customercode = result[0].customercode;\r\n this.CustomerName = result[0].customerName;\r\n this.ContactPerson = result[0].contactPerson;\r\n this.ContactMobileNo = result[0].contactMobileNo;\r\n this.ContactEmail = result[0].contactEmail;\r\n this.ContactValidForm = result[0].contactValidForm;\r\n this.ContactValidTill = result[0].contactValidTill;\r\n this.HouseNo = result[0].houseNo;\r\n this.StreetName = result[0].streetName;\r\n this.StateName = result[0].stateName;\r\n this.City = result[0].city;\r\n this.Pincode = result[0].pincode;\r\n this.gstnumber = result[0].gstnumber;\r\n this.panno = result[0].panno;\r\n this.dateOfEstablishment = result[0].dateOfEstablishment;\r\n this.natureOfService = result[0].natureOfService;\r\n this.bPersonName = result[0].bPersonName;\r\n this.bemail = result[0].bemail;\r\n this.bmobileno = result[0].bmobileno;\r\n this.blandLineno = result[0].blandLineno;\r\n this.Designation = result[0].designation;\r\n this.MapedCityNamelocal2 = result[0].mapedCityNamelocal2;\r\n this.Branch = result[0].branch;\r\n this.Signedby = result[0].signedby;\r\n this.ContactDate = result[0].contactDate;\r\n this.ExecutiveName = result[0].executiveName;\r\n this.Domsticdocment = result[0].domsticdocment;\r\n this.DomsticParcel = result[0].domsticParcel;\r\n this.Interdocment = result[0].interdocment;\r\n this.InterParcel = result[0].interParcel;\r\n this.CreatedDate = result[0].createdDate;\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n\r\n getproductdetails(CustomerId) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_QuoteGetCoustomerratedetails'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"CustomerId\"\r\n pr.PropertyValue = CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getGetCoustomerratedetails(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getGetCoustomerratedetails(result) {\r\n var tmp = result\r\n var productname = \"\";\r\n var chrgweight = \"\";\r\n var j = 1;\r\n this.otherChargeRate = [];\r\n this.printcustmerObj = [];\r\n if (!isNullOrUndefined(result.table1)) {\r\n this.otherChargeRate = result.table1;\r\n\r\n }\r\n var rn: printCustomerRateMaster = new printCustomerRateMaster()\r\n for (let i = 0; i < result.table.length; i++) {\r\n rn = new printCustomerRateMaster();\r\n rn.Serialno = j;\r\n\r\n if (productname != result.table[i].productName) {\r\n productname = result.table[i].productName\r\n rn.ProductName = result.table[i].productName\r\n chrgweight = result.table[i].chgWeight\r\n } else if (productname == result.table[i].productName && chrgweight != result.table[i].chgWeight) {\r\n productname = result.table[i].productName\r\n rn.ProductName = result.table[i].productName\r\n chrgweight = result.table[i].chgWeight\r\n \r\n }\r\n else {\r\n rn.ProductName = '';\r\n }\r\n\r\n rn.Destination = result.table[i].destgroupName;\r\n rn.chgWeight = result.table[i].chgWeight; \r\n rn.FromWeight = result.table[i].fromWt; \r\n rn.FromWeight = result.table[i].toWt; \r\n rn.Slab1 = result.table[i].slab1; \r\n rn.Rate1 = result.table[i].rate1; \r\n rn.Slab2 = result.table[i].slab2; \r\n rn.Rate2 = result.table[i].rate2; \r\n rn.Slab3 = result.table[i].slab3; \r\n rn.Rate3 = result.table[i].rate3; \r\n rn.Pslab = result.table[i].pslab; \r\n rn.Prate = result.table[i].prate;\r\n \r\n if (this.printcustmerObj.length == 0) {\r\n this.printcustmerObj[0] = rn;\r\n j++;\r\n }\r\n else {\r\n this.printcustmerObj.push(rn);\r\n j++;\r\n }\r\n\r\n }\r\n }\r\n getGetCustomerMapped(CustomerId) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_QuoteGetCustomermapping'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"CustomerId\"\r\n pr.PropertyValue = CustomerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getGetCustomerMapping(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n\r\n getGetCustomerMapping(result) {\r\n var tmp = result\r\n var j = 1;\r\n this.printCustomerMapping = [];\r\n var rn: printCustomerMapping = new printCustomerMapping()\r\n for (let i = 0; i < result.length; i++) {\r\n rn = new printCustomerMapping();\r\n rn.Serialno = j;\r\n rn.RegionName = result[i].regionName;\r\n rn.mappedname = result[i].mappedname;\r\n\r\n if (this.printCustomerMapping.length == 0) {\r\n this.printCustomerMapping[0] = rn;\r\n j++;\r\n }\r\n else {\r\n this.printCustomerMapping.push(rn);\r\n j++;\r\n }\r\n\r\n }\r\n }\r\n}\r\nexport class printCustomerRateMaster {\r\n public Serialno: any\r\n public ProductName: string\r\n public Destination: string\r\n public FromWeight: string\r\n public ToWeight: string\r\n public Slab1: string\r\n public Rate1: string\r\n public Slab2: string\r\n public Rate2: string\r\n public Slab3: string\r\n public Rate3: string\r\n public Pslab: string\r\n public Prate: string\r\n public chgWeight: string\r\n}\r\nexport class printCustomerMapping {\r\n public Serialno: any\r\n public RegionName: string\r\n public mappedname: string\r\n\r\n}\r\n\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcXVvdGVjdXN0b21lcm1hc3Rlci9xdW90ZWN1c3RvbWVybWFzdGVyLmNvbXBvbmVudC5zY3NzIn0= */\"","import { flatten } from '@angular/compiler';\r\nimport { AfterViewInit, ViewChild, ViewChildren } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { letterSpacing } from 'html2canvas/dist/types/css/property-descriptors/letter-spacing';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { LocalStoreManager } from 'src/app/services/local-store-manager.service';\r\n//import { document } from 'ngx-bootstrap';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Address, AddressmasterComponent } from '../controls/addressmaster.component';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { MatDialog } from '@angular/material';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { ConfirmDialogocModels, DialogQuoteOtherChargeComponent, OtherChargesRateMaster } from '../controls/dialog-Quoteother-charge.component';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { ConfirmDialogRateModels,DailogQuoteRateMasterComponent } from '../controls/dailog-Quoterate-master.component';\r\nimport { ExcelService } from '../../services/excel.service';\r\n\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-quotecustomermaster',\r\n templateUrl: './quotecustomermaster.component.html',\r\n styleUrls: ['./quotecustomermaster.component.scss']\r\n})\r\nexport class QuotecustomermasterComponent implements OnInit {\r\n\r\n editedCustomers: CustomerName = new CustomerName();\r\n columns: any[] = [];\r\n columnsrate: any[] = [];\r\n rows: CustomerName[] = [];\r\n rowsCache: any[] = [];\r\n vaddress = new Address();\r\n rowsrate: CustRate[] = [];\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n\r\n arrcityba: any[] = [];\r\n arrcity2ba: any[] = [];\r\n arrcityrate: any[] = [];\r\n arrcity2rate: any[] = [];\r\n public officearr: any[] = [];\r\n otherchg: OtherChargesRateMaster[] = []\r\n localstate2: any = \"\";\r\n localcity2: any = \"\";\r\n isSate2: any = false;\r\n isCity2: any = false;\r\n isEditModePin: any = false;\r\n typee: string = \"0\";\r\n isCity: any = false;\r\n isRegion: any = false;\r\n istable: any = false;\r\n dialogRef: any;\r\n\r\n GCustomerId: any;\r\n \r\n Metro: boolean = true;\r\n SpecialStation: boolean = true; \r\n DiplomaticStation: boolean = true;\r\n Local1city: any = \"\";\r\n Local1city1: any = \"\";\r\n Local2city1: any = \"\";\r\n Local2city: any = \"\";\r\n DiplomaticStation1city1: any = \"\";\r\n DiplomaticStation1city: any = \"\";\r\n\r\n ArMetro: any[] = [];\r\n ArSpecialStation: any[] = [];\r\n ArDiplomaticStation: any[] = [];\r\n \r\n custregion: any[] = [] \r\n\r\n isShowEditModePin: any;\r\n\r\n \r\n columnsMetro: any[] = [];\r\n columnsSpecialStation: any[] = [];\r\n columnsDiplomaticStation: any[] = [];\r\n\r\n\r\n RowsMetro: any[] = [];\r\n RowsSpecialStation: any[] = [];\r\n RowsDiplomaticStation: any[] = [];\r\n\r\n \r\n\r\n rowsregion: RegionMaster[] = [];\r\n exRateAndDestGroup: any[] = [];\r\n\r\n\r\n\r\n constructor(public dialog: MatDialog, private configurations: ConfigurationService, private excelService: ExcelService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters, private localstre: LocalStoreManager) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n @ViewChild('actionsTemplate2', { static: true })\r\n actionsTemplate2: TemplateRef;\r\n @ViewChild('actionsTemplate3', { static: true })\r\n actionsTemplate3: TemplateRef;\r\n @ViewChild('actionsTemplate4', { static: true })\r\n actionsTemplate4: TemplateRef;\r\n @ViewChild('actionsTemplate5', { static: true })\r\n actionsTemplate5: TemplateRef; \r\n @ViewChildren('addressEditor') addressEditor: AddressmasterComponent;\r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective;\r\n @ViewChild('editorRegionModal', { static: true })\r\n editorRegionModal: ModalDirective;\r\n\r\n @ViewChild('indexTemplate1', { static: true })\r\n indexTemplate1: TemplateRef;\r\n @ViewChild('actionfromwt', { static: true })\r\n actionfromwt: TemplateRef;\r\n @ViewChild('actionstowt', { static: true })\r\n actionstowt: TemplateRef;\r\n @ViewChild('actionslab1', { static: true })\r\n actionslab1: TemplateRef;\r\n @ViewChild('actionrate1', { static: true })\r\n actionrate1: TemplateRef;\r\n @ViewChild('actionslab2', { static: true })\r\n actionslab2: TemplateRef;\r\n @ViewChild('actionrate2', { static: true })\r\n actionrate2: TemplateRef;\r\n @ViewChild('actionslab3', { static: true })\r\n actionslab3: TemplateRef;\r\n @ViewChild('actionrate3', { static: true })\r\n actionrate3: TemplateRef;\r\n @ViewChild('actionpslab', { static: true })\r\n actionpslab: TemplateRef;\r\n @ViewChild('actionprate', { static: true })\r\n actionprate: TemplateRef;\r\n\r\n\r\n\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'customerName', name: 'Customer Name', width: 200 },\r\n { prop: 'customercode', name: 'Code', width: 100 },\r\n { prop: 'contactMobileNo', name: 'Mobile No', width: 100 },\r\n ];\r\n //this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate3, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate1, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 125, cellTemplate: this.actionsTemplate2, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate4, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate5, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n this.columnsMetro = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsSpecialStation = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n this.columnsDiplomaticStation = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'mapedcityName', name: 'Maped City Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedStateName', name: 'Maped State Name', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n { prop: 'mapedPinCode', name: 'Maped Pin-Code', width: 200, innerHeight: 51, resizeable: false, canAutoResize: false, sortable: false, draggable: false },\r\n ];\r\n \r\n this.loaddata();\r\n this.getregions();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.vaddress = this.addressEditor.editedAddress;\r\n this.editedCustomers.ro = this.localstre.getData(\"User_Office\");\r\n }\r\n confirmDialog_Rate(mes: any, Rate: CustRate[], callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogRateModels(\"QuoteRateMaster\", message, true, Rate, null, mes, callback);\r\n this.dialogRef = this.dialog.open(DailogQuoteRateMasterComponent, {\r\n disableClose: true,\r\n maxWidth: '100vw',\r\n maxHeight: '100vh',\r\n width: '100%',\r\n height: '100%',\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n confirmDialog_Oc(mes: any, Rate: OtherChargesRateMaster[], callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogocModels(\"QuoteOtherChargeMaster\", message, true, Rate, null, mes, callback);\r\n this.dialogRef = this.dialog.open(DialogQuoteOtherChargeComponent, {\r\n disableClose: true,\r\n maxWidth: '100vw',\r\n maxHeight: '100vh',\r\n width: '100%',\r\n height: '100%',\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnOcResultofmodel(dialogResult) });\r\n }\r\n\r\n OnOcResultofmodel(dialogResult) {\r\n this.otherchg = dialogResult\r\n if (!isNullOrUndefined(this.otherchg)) {\r\n this.ServiceMaster.PostQuoteCustotherrate(this.otherchg).subscribe(result => { this.alertService.showMessage(\"Customer Other Charge\", \"Customer other charge Has Been Saved\", MessageSeverity.success) }, error => { this.alertService.showMessage(\"Customer Other Charges\", \"Error In Customer Other Charge\", MessageSeverity.error) });\r\n\r\n }\r\n }\r\n OnMPSResultofmodel(dialogResult) {\r\n this.rowsrate = dialogResult;\r\n if (!isNullOrUndefined(this.rowsrate)) {\r\n this.ServiceMaster.PostQuoteCustrate(this.rowsrate).subscribe(result => { this.alertService.showMessage(\"Customer Rate\", \"Customer Rate Has Been Saved\", MessageSeverity.success) }, error => { this.alertService.showMessage(\"Customer Rate\", \"Error In Customer Rate\", MessageSeverity.error) });\r\n }\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n this.ServiceMaster.getQuoteCustomer().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n this.GetCityMaster();\r\n this.GetRateCityMaster();\r\n this.Getba();\r\n }\r\n getbaList($event) {\r\n this.Getba();\r\n this.arrcity2ba = this.arrcityba\r\n $('#ba').autocomplete({\r\n source: this.arrcity2ba,\r\n delay: 500\r\n });\r\n }\r\n GenerateExcel() {\r\n var data = []\r\n this.ServiceMaster.getQuoteCustomer().subscribe(results => {\r\n for (let index = 0; index < results.length; index++) {\r\n data[index] = [results[index].ro,\r\n results[index].branch,\r\n results[index].customercode,\r\n results[index].customerName,\r\n results[index].contactPerson,\r\n results[index].contactEmail,\r\n results[index].contactMobileNo,\r\n results[index].rateDefine,\r\n results[index].houseNo + \",\" + results[index].streetName + \",\" + results[index].city + \"-\" + results[index].pincode\r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Customer Master\";\r\n let Office = \"Pan India\";\r\n this.excelService.header = [\"R.O\", \"Branch\", \"Code\", \"Cust. Name\", \"ContactPerson\", \"ContactEmail\", \"Mobileno\", \"RateDefine\",\"Address\"]\r\n this.excelService.title = \"Customer Master\"\r\n this.excelService.Widths = [30, 30, 10, 50, 30, 50, 20, 10,100]\r\n this.excelService.generateExcel();\r\n }, error => this.onDataLoadFailed(error)); \r\n }\r\n\r\n Getba() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.baonDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n }\r\n baonDatagetSuccessful(ba: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"ba\") {\r\n this.arrcityba = ba;\r\n }\r\n }\r\n getCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2ba = this.arrcityba\r\n $('#MapedCityNamelocal12').autocomplete({\r\n source: this.arrcity2ba,\r\n delay: 500\r\n });\r\n }\r\n\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n\r\n LoadSucessdata(Customers: any[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n Customers.forEach((prod, index, Customers) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...Customers];\r\n this.rows = Customers;\r\n }\r\n SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('MapedCityNamelocal12')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n // (document.getElementById('city')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n this.localcity2 += citystate + \",\";\r\n $('#MapedCityNamelocal2').val(this.localcity2);\r\n $('#MapedCityNamelocal12').val('');\r\n $('#MapedCityNamelocal12').focus();\r\n\r\n // (document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1); \r\n\r\n }\r\n }\r\n gethelplist($event, name: string) {\r\n if (name == 'alloffice') {\r\n this.ServiceMaster.getHelplist(name).subscribe(result => this.onhelpDatagetSuccessful(result), error => this.onDataLoadFailed(error));\r\n $('#Branch').autocomplete({\r\n source: this.officearr,\r\n delay: 100\r\n });\r\n }\r\n }\r\n onhelpDatagetSuccessful(states: string[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.officearr = states;\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n InsertCustomer() {\r\n if (this.editedCustomers.CustomerName == '' ) {\r\n this.alertService.showMessage(\"Failure\", \"Please Select Correct Value\", MessageSeverity.error);\r\n return false;\r\n }\r\n if (this.editedCustomers.gstnumber != '' && !isNullOrUndefined(this.editedCustomers.gstnumber)) {\r\n var removefirst2digitgstno = this.editedCustomers.gstnumber.slice(2, -3);\r\n if (this.editedCustomers.gstnumber != '' || this.editedCustomers.panno != '') {\r\n if (removefirst2digitgstno == this.editedCustomers.panno) {\r\n }\r\n else {\r\n this.alertService.showMessage(\"Failure\", \"Please Check GST Number or Pan Number\", MessageSeverity.error);\r\n return false;\r\n }\r\n }\r\n }\r\n this.isSaving = true;\r\n this.editedCustomers.stateName = (document.getElementById('state')).value\r\n this.editedCustomers.cityName = (document.getElementById('city')).value\r\n this.editedCustomers.pinCode = (document.getElementById('pincode')).value\r\n this.editedCustomers.address[0].city = this.editedCustomers.cityName\r\n this.editedCustomers.address[0].stateName = this.editedCustomers.stateName;\r\n this.editedCustomers.address[0].houseNo = (document.getElementById('houseNo')).value\r\n this.editedCustomers.address[0].streetName = (document.getElementById('streetName')).value\r\n this.editedCustomers.address[0].pincode = (document.getElementById('pincode')).value\r\n this.editedCustomers.address[0].landMark = (document.getElementById(\"landMark\")).value;\r\n this.editedCustomers.Branch = (document.getElementById('Branch')).value\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.ServiceMaster.postsaveQuoteCustomer(this.editedCustomers).subscribe(vendors => this.saveSuccessHelper(vendors), error => this.saveFailedHelper(error));\r\n }\r\n private saveSuccessHelper(Customers?: any) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `Customers \\\"${this.editedCustomers.CustomerName + \"-\" + this.editedCustomers.CustomerName}\\\" was created successfully`, MessageSeverity.success);\r\n this.loaddata();\r\n\r\n \r\n\r\n }\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.customerName, r.contactMobileNo,r.customercode));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n funchnge(dom: any) {\r\n var tmp: any = dom.target;\r\n if (tmp.checked == true) {\r\n $(\"#Domsticdocment\").prop(\"disabled\", false);\r\n $(\"#DomsticParcel\").prop(\"disabled\", false);\r\n }\r\n else {\r\n $(\"#Domsticdocment\").prop(\"disabled\", true);\r\n $(\"#DomsticParcel\").prop(\"disabled\", true);\r\n $(\"#Domsticdocment\").val('');\r\n $(\"#DomsticParcel\").val('');\r\n }\r\n\r\n }\r\n funinter(Inter: any) {\r\n var tmp: any = Inter.target;\r\n if (tmp.checked == true) {\r\n $(\"#Interdocment\").prop(\"disabled\", false);\r\n $(\"#InterParcel\").prop(\"disabled\", false);\r\n }\r\n else {\r\n $(\"#Interdocment\").prop(\"disabled\", true);\r\n $(\"#InterParcel\").prop(\"disabled\", true);\r\n $(\"#Interdocment\").val('');\r\n $(\"#InterParcel\").val('');\r\n }\r\n\r\n }\r\n local2city() {\r\n this.isCity2 = true;\r\n } \r\n\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n //Start Pin-Code Enter part\r\n Addrate(ratedata?: any) {\r\n\r\n this.confirmDialog_Rate(ratedata.customerId, this.rowsrate, ratedata.customercode);\r\n }\r\n AddOtherChrg(ratedata?: any) {\r\n this.confirmDialog_Oc(ratedata.customerId, this.otherchg, ratedata.customercode);\r\n\r\n }\r\n onEditorModalHidden() {\r\n this.isEditModePin = false;\r\n this.isRegion = false;\r\n this.isCity = false;\r\n this.istable = false;\r\n this.editorModal.hide();\r\n }\r\n \r\n\r\n Print(ratedata?: any) {\r\n this.route.navigate(['/quotecustprint'], {\r\n queryParams: {\r\n customerId: ratedata.customerId\r\n }\r\n }); // define your component where\r\n }\r\n\r\n\r\n \r\n getRateCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2rate = this.arrcityrate\r\n $('#rateCity').autocomplete({\r\n source: this.arrcity2rate,\r\n delay: 500\r\n });\r\n }\r\n\r\n GetRateCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.RateonDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n RateonDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"CITY\") {\r\n this.arrcityrate = states;\r\n }\r\n }\r\n\r\n\r\n ApprovalbyCorporate(data?: any) {\r\n\r\n }\r\n ApprovalbyRO(data?: any) {\r\n\r\n }\r\n InsertRateDeatils() {\r\n alert('hi..');\r\n }\r\n get userName(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.userName : '';\r\n }\r\n get userId(): string {\r\n return this.authService.currentUser ? this.authService.currentUser.id : 'userid';\r\n }\r\n\r\n DeleteCustomer(row: CustomerName) {\r\n if (this.userId == '090965c0-f37b-4acc-aeca-7bad87db769e' || this.userId == 'ea57450f-859c-4dbe-bf01-edee89a04c7d' || this.userId == 'aa5b8d5b-7039-4147-89ab-4f2a4f501143') {\r\n var Req = new CommRequest();\r\n Req.ProcessName = \"InactiveCustomer\"\r\n var Parameter = new Array(1);\r\n var pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"CustomerId\"\r\n pr.PropertyValue = row.customerId;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(\r\n result => {\r\n\r\n this.alertService.showMessage(\"Customer\", \"Customer Deactivated\", MessageSeverity.success)\r\n });\r\n\r\n }\r\n else {\r\n this.alertService.showMessage(\"Customer\", \"You are not authorised\", MessageSeverity.success)\r\n }\r\n }\r\n\r\n\r\n onConfirm() {\r\n this.rowsregion = [];\r\n let tmprate = new RegionMaster();\r\n this.RowsMetro.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n this.RowsDiplomaticStation.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n this.RowsSpecialStation.forEach((itemr, index, awbs) => {\r\n tmprate = new RegionMaster();\r\n tmprate = itemr;\r\n tmprate.regionId = this.GetRegionId(tmprate.regionName);\r\n\r\n if (this.rowsregion.length == 0) {\r\n this.rowsregion[0] = tmprate;\r\n }\r\n else {\r\n this.rowsregion.push(tmprate);\r\n }\r\n });\r\n \r\n //this.rowsregion.length;\r\n this.ServiceMaster.PostQuotecustRegion(this.rowsregion).subscribe(vendors => this.saveSSuccessHelper(vendors), error => this.saveFailedHelper(error));\r\n }\r\n private saveSSuccessHelper(Customers?: RegionMaster[]) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', 'Region Saved Successfully', MessageSeverity.success);\r\n \r\n\r\n }\r\n AddCustomerRegionMaster(pcode: string, pname: string) {\r\n\r\n if (pcode == \"1\") {\r\n let metrocity = $('#MetroMappedCity').val();\r\n let metroState = $('#MetroMappedState').val();\r\n let metropincode = $('#MetroMapedPin').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = metrocity;\r\n Custr.mapedStateName = metroState;\r\n Custr.mapedPinCode = metropincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.RowsMetro.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n })\r\n //var tmprows = this.rowsLocal1.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.RowsMetro.length == 0) {\r\n this.RowsMetro[0] = custrate\r\n }\r\n else {\r\n this.RowsMetro.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.RowsMetro.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.RowsMetro = [...this.RowsMetro];\r\n $('#MetroMappedCity').val('');\r\n $('#MetroMappedState').val('');\r\n $('#MetroMapedPin').val('');\r\n }\r\n if (pcode == \"2\") {\r\n let splmapedcity = $('#SplStationmapedcity').val();\r\n let splmapedState = $('#SplStationmapedState').val();\r\n let splmapedpincode = $('#SplStationmapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = splmapedcity;\r\n Custr.mapedStateName = splmapedState;\r\n Custr.mapedPinCode = splmapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.RowsSpecialStation.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsLocal2.find(e => e.mapedcityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.RowsSpecialStation.length == 0) {\r\n this.RowsSpecialStation[0] = custrate\r\n }\r\n else {\r\n this.RowsSpecialStation.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.RowsSpecialStation.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.RowsSpecialStation = [...this.RowsSpecialStation];\r\n $('#SplStationmapedcity').val('');\r\n $('#SplStationmapedState').val('');\r\n $('#SplStationmapedpincode').val('');\r\n }\r\n \r\n if (pcode == \"3\") {\r\n\r\n let DiplomaticStation1mapedcity = $('#DiplomaticStation1mapedcity').val();\r\n let DiplomaticStation1mapedState = $('#DiplomaticStation1mapedState').val();\r\n let DiplomaticStation1mapedpincode = $('#DiplomaticStation1mapedpincode').val();\r\n let tmprowsrate: RegionMaster[] = [];\r\n tmprowsrate = new Array(this.exRateAndDestGroup.length)\r\n let Custr: RegionMaster = null;\r\n Custr = new RegionMaster();\r\n Custr.customerId = this.GCustomerId;\r\n Custr.regionId = pcode;\r\n Custr.regionName = pname;\r\n Custr.mapedcityName = DiplomaticStation1mapedcity;\r\n Custr.mapedStateName = DiplomaticStation1mapedState;\r\n Custr.mapedPinCode = DiplomaticStation1mapedpincode;\r\n Custr.officeId = this.localstre.getData(\"BaLoginData\")[0].officeid\r\n tmprowsrate[0] = Custr;\r\n tmprowsrate.forEach((custrate) => {\r\n var tmprows = null;\r\n this.RowsDiplomaticStation.forEach((item, index, aarr) => {\r\n if (item.mapedcityName == custrate.mapedcityName && item.mapedStateName == custrate.mapedStateName) {\r\n tmprows = item;\r\n }\r\n });\r\n //var tmprows = this.rowsDiplomaticStation1.find(e => e.mapedCityName == custrate.mapedcityName && e.mapedStateName == custrate.mapedStateName)\r\n if (isNullOrUndefined(tmprows)) {\r\n if (this.RowsDiplomaticStation.length == 0) {\r\n this.RowsDiplomaticStation[0] = custrate\r\n }\r\n else {\r\n this.RowsDiplomaticStation.push(custrate)\r\n }\r\n }\r\n }, this);\r\n this.RowsDiplomaticStation.forEach((itemr, index, awbs) => {\r\n (itemr as any).index = index + 1;\r\n\r\n }, this);\r\n this.RowsDiplomaticStation = [...this.RowsDiplomaticStation];\r\n $('#DiplomaticStation1mapedcity').val('');\r\n $('#DiplomaticStation1mapedState').val('');\r\n $('#DiplomaticStation1mapedpincode').val('');\r\n }\r\n \r\n }\r\n AddRegion(event: any, pcode: string, pname: string) {\r\n let tmprowsrate: RegionMaster[] = [];\r\n let mcustomerId = '';\r\n let mcityname = '';\r\n let mstatename = '';\r\n\r\n if (pcode == '1') {\r\n this.Metro = event\r\n this.SpecialStation = false;\r\n this.DiplomaticStation = false;\r\n \r\n this.RowsMetro = [...this.RowsMetro];\r\n }\r\n if (pcode == '2') {\r\n this.Metro = false\r\n this.SpecialStation = event;\r\n this.DiplomaticStation = false;\r\n //this.custregion.forEach((item, index, tmprr) => {\r\n // (item as any).index = index + 1;\r\n // if (item.regionName == 'Local 2') {\r\n // if (this.rowsLocal2.length == 0) {\r\n // this.rowsLocal2[0] = item\r\n // }\r\n // else {\r\n // this.rowsLocal2.push(item)\r\n // }\r\n // }\r\n //});\r\n this.RowsSpecialStation = [...this.RowsSpecialStation]\r\n\r\n }\r\n if (pcode == '3') {\r\n this.Metro = false\r\n this.SpecialStation = false;\r\n this.DiplomaticStation = event;\r\n this.RowsDiplomaticStation = [...this.RowsDiplomaticStation]\r\n }\r\n\r\n \r\n }\r\n AddCustomerRegion(customerdata?: any) {\r\n this.GCustomerId = customerdata.customerId;\r\n this.getcustregion(this.GCustomerId);\r\n this.isShowEditModePin = true;\r\n this.editorRegionModal.show();\r\n }\r\n onEditorModalHiddenregion() {\r\n this.isShowEditModePin = false;\r\n this.GCustomerId = \"\";\r\n \r\n this.RowsMetro = [] = [];\r\n this.RowsSpecialStation = [] = [];\r\n this.RowsDiplomaticStation=[]=[]\r\n\r\n\r\n this.rowsregion = [] = [];\r\n this.exRateAndDestGroup = [] = [];\r\n this.editorRegionModal.hide();\r\n }\r\n\r\n\r\n\r\n //1\r\n Local1getCityList($event) {\r\n this.Local1GetCityMaster();\r\n this.Local1city1 = this.Local1city\r\n $('#MetroMappedCity').autocomplete({\r\n source: this.Local1city1,\r\n delay: 50\r\n });\r\n }\r\n Local1GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetLocal1Successful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetLocal1Successful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.Local1city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.Local1city = states;\r\n }\r\n }\r\n Local1SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('MetroMappedCity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('Local1mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('Local1mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n\r\n\r\n //2\r\n Local2getCityList($event) {\r\n this.Local2GetCityMaster();\r\n this.Local2city1 = this.Local2city\r\n $('#SplStationmapedcity').autocomplete({\r\n source: this.Local2city1,\r\n delay: 50\r\n });\r\n }\r\n Local2GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.Local2onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n Local2onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.Local2city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.Local2city = states;\r\n }\r\n }\r\n Local2SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('SplStationmapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('Local2mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('Local2mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n\r\n }\r\n }\r\n\r\n \r\n DiplomaticStation1getCityList($event) {\r\n this.DiplomaticStation1GetCityMaster();\r\n this.DiplomaticStation1city1 = this.DiplomaticStation1city\r\n $('#DiplomaticStation1mapedcity').autocomplete({\r\n source: this.DiplomaticStation1city1,\r\n delay: 50\r\n });\r\n }\r\n DiplomaticStation1GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.DiplomaticStation1onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n DiplomaticStation1onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.DiplomaticStation1city = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.DiplomaticStation1city = states;\r\n }\r\n }\r\n DiplomaticStation1SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('DiplomaticStation1mapedcity')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n //(document.getElementById('DiplomaticStation1mapedcity')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n //(document.getElementById('DiplomaticStation1mapedState')).value = citystate.substring(citystate.indexOf('-') + 1);\r\n }\r\n }\r\n\r\n //13\r\n \r\n \r\n getregions() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetDestgroupNew'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"statename\"\r\n pr.PropertyValue = this.localstre.getData(\"BaLoginData\")[0].state;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n\r\n getcustregion(customerid: string) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetCustRegion_Quote'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Guid\"\r\n pr.PropertyName = \"customerId\"\r\n pr.PropertyValue = customerid;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getsuccessregion(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getsuccessregion(result) {\r\n this.custregion = result;\r\n this.RowsMetro = []\r\n this.RowsSpecialStation = []\r\n this.RowsDiplomaticStation = []\r\n \r\n this.custregion.forEach((item, index, tmprr) => {\r\n (item as any).index = index + 1;\r\n if (item.regionName == 'Metro City') {\r\n if (this.RowsMetro.length == 0) {\r\n this.RowsMetro[0] = item\r\n }\r\n else {\r\n this.RowsMetro.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Special Station') {\r\n if (this.RowsSpecialStation.length == 0) {\r\n this.RowsSpecialStation[0] = item\r\n }\r\n else {\r\n this.RowsSpecialStation.push(item)\r\n }\r\n }\r\n if (item.regionName == 'Diplomatic Station') {\r\n if (this.RowsDiplomaticStation.length == 0) {\r\n this.RowsDiplomaticStation[0] = item\r\n }\r\n else {\r\n this.RowsDiplomaticStation.push(item)\r\n }\r\n }\r\n \r\n });\r\n this.RowsMetro = [...this.RowsMetro]\r\n this.RowsSpecialStation = [...this.RowsSpecialStation]\r\n this.RowsDiplomaticStation = [...this.RowsDiplomaticStation]\r\n \r\n\r\n }\r\n\r\n getSucessDataExrate(result) {\r\n this.exRateAndDestGroup = result\r\n }\r\n GetRegionId(regname: string) {\r\n let tmpid = \"\";\r\n this.exRateAndDestGroup.forEach((item, index, tmpar) => {\r\n if (item.regionName.toUpperCase() == regname.toUpperCase()) {\r\n tmpid = item.regionId;\r\n }\r\n });\r\n return tmpid\r\n }\r\n\r\n\r\n\r\n ShowState($event, id: string) {\r\n this.ServiceMaster.getstateslist().subscribe(result => this.Autocompstate(result, id), error => this.onDataLoadFailed(error));\r\n }\r\n Autocompstate(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n $(listof).autocomplete({\r\n source: states,\r\n delay: 50\r\n });\r\n }\r\n Activecust() {\r\n if ($('#txtCustomeCode').val() == '') {\r\n $('#txtCustomeCode').focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_ActiveCustomer'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"customercode\"\r\n pr.PropertyValue = $('#txtCustomeCode').val();\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => { this.alertService.showMessage(\"Active\", \"Activated Succesfully !\",MessageSeverity.success) }, error => this.onDataLoadFailed(error))\r\n }\r\n}\r\nexport class CustomerName {\r\n constructor(CustomerName?: string, address?: string, pinCode?: string, city?: string\r\n , state?: string, gstn?: string, panno?: string, mobileno?: string, landLineno?: string,\r\n email?: string, dateOfEstablishment?: string, natureOfService?: string, surface?: string, local?: string,\r\n air?: string, vehicle?: string, haveWeUsedTheirServiceInanyform?: string, bankName?: string, accountno?: string,\r\n ifsccode?: string, bankaddress?: string, accountholdername?: string) {\r\n\r\n this.CustomerName = CustomerName;\r\n this.vendAddress = address;\r\n this.pinCode = pinCode;\r\n this.cityName = city;\r\n this.stateName = state;\r\n this.gstnumber = gstn;\r\n this.panno = panno;\r\n this.dateOfEstablishment = dateOfEstablishment;\r\n this.natureOfService = natureOfService;\r\n this.address = [new Address()];\r\n }\r\n\r\n public CustomerName: string\r\n public vendAddress: string\r\n public pinCode: string\r\n public cityName: string\r\n public stateName: string\r\n public gstnumber: string\r\n public panno: string\r\n public PersonName: string;\r\n public dateOfEstablishment: string\r\n public natureOfService: string\r\n public address: Address[];\r\n\r\n public bPersonName: string\r\n public bemail: string\r\n public blandLineno: string\r\n public bmobileno: string\r\n public Product: string\r\n public ba: string\r\n\r\n public ContactPerson: string\r\n public ContactMobileNo: string\r\n public ContactEmail: string\r\n public ContactValidForm: string\r\n public ContactValidTill: string\r\n\r\n public Domsticdocment: string\r\n public Interdocment: string\r\n public MapedCityNamelocal2: string\r\n public CustomerCode: string\r\n\r\n public ro: string\r\n public Branch: string\r\n public ContactDate: string\r\n public Signedby: string\r\n public ExecutiveName: string\r\n public Approvalby: string\r\n public CorporateApproval: string\r\n public ROApprovalBy: string\r\n public customerId: string\r\n public rateDefine: string\r\n\r\n}\r\nexport class CustRate {\r\n public CustRateId: string\r\n public customerId: string\r\n public OfficeId: string\r\n public CustomerCode: string\r\n public productCode: string\r\n public productName: string\r\n public destcityName: string\r\n public destStateName:string\r\n public destCityPincode: string\r\n public destgroupName: string\r\n public destId: string\r\n public fromWt: string\r\n public toWt: string\r\n public slab1: string\r\n public rate1: string\r\n public slab2: string\r\n public rate2: string\r\n public slab3: string\r\n public rate3: string\r\n public pslab: string\r\n public prate: string\r\n public fsurcharge: string\r\n\r\n}\r\nexport class RegionMaster {\r\n public officeId: string\r\n public regionId: string\r\n public regionName: string\r\n public customerId: string\r\n public mapedCityId: string\r\n public mapedcityName: string\r\n public mapedStateId: string\r\n public mapedStateName: string\r\n public mapedPinCode: string\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcmVnaW9ubWFzdGVyL3JlZ2lvbm1hc3Rlci5jb21wb25lbnQuc2NzcyJ9 */\"","import { ViewChild } from '@angular/core';\nimport { TemplateRef } from '@angular/core';\nimport { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ModalDirective } from 'ngx-bootstrap/modal';\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\nimport { AuthService } from '../../services/auth.service';\nimport { ConfigurationService } from '../../services/configuration.service';\nimport { Masters } from '../../services/masters.service';\nimport { Utilities } from '../../services/utilities';\nimport { MatCheckboxChange,MatCheckbox } from '@angular/material/checkbox';\n\ndeclare var $: any;\n\n@Component({\n selector: 'app-regionmaster',\n templateUrl: './regionmaster.component.html',\n styleUrls: ['./regionmaster.component.scss']\n})\nexport class RegionMasterComponent implements OnInit {\n\n editedRegionMaster: RegionMaster = new RegionMaster();\n columns: any[] = [];\n rows: RegionMaster[] = [];\n rowsCache: RegionMaster[] = [];\n isSaving = false;\n isLoading = false;\n formResetToggle = true;\n loadingIndicator = false;\n Islable: any;\n arrcity: any[] = [];\n arrcity2: any[] = [];\n\n localstate1: any = \"\";\n localcity1: any = \"\";\n isSate1: any = false;\n isCity1: any = false;\n\n localstate2: any = \"\";\n localcity2: any = \"\";\n isSate2: any = false;\n isCity2: any = false;\n\n localstate3: any = \"\";\n localcity3: any = \"\";\n isSate3: any = false;\n isCity3: any = false;\n\n localstate4: any = \"\";\n localcity4: any = \"\";\n isSate4: any = false;\n isCity4: any = false;\n\n localstate5: any = \"\";\n localcity5: any = \"\";\n isSate5: any = false;\n isCity5: any = false;\n\n localstate6: any = \"\";\n localcity6: any = \"\";\n isSate6: any = false;\n isCity6: any = false;\n\n localstate7: any = \"\";\n localcity7: any = \"\";\n isSate7: any = false;\n isCity7: any = false;\n\n localstate8: any = \"\";\n localcity8: any = \"\";\n isSate8: any = false;\n isCity8: any = false;\n\n localstate9: any = \"\";\n localcity9: any = \"\";\n isSate9: any = false;\n isCity9: any = false;\n\n localstate10: any = \"\";\n localcity10: any = \"\";\n isSate10: any = false;\n isCity10: any = false;\n\n localstate11: any = \"\";\n localcity11: any = \"\";\n isSate11: any = false;\n isCity11: any = false;\n\n localstate12: any = \"\";\n localcity12: any = \"\";\n isSate12: any = false;\n isCity12: any = false;\n\n localstate13: any = \"\";\n isState13: any = false;\n\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\n }\n @ViewChild('f', { static: false })\n @ViewChild('indexTemplate', { static: true })\n indexTemplate: TemplateRef;\n @ViewChild('actionsTemplate', { static: true })\n actionsTemplate: TemplateRef;\n\n ngOnInit() {\n this.columns = [\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\n { prop: 'RegionType', name: 'Region Type', width: 100 },\n { prop: 'RegionName', name: 'Region Name', width: 100 },\n { prop: 'MapedStateName', name: 'Maped State Name', width: 100 },\n { prop: 'MapedCityName', name: 'Maped City Name', width: 100 },\n ];\n }\n\n\n loaddata() {\n this.loadingIndicator = true;\n //this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\n\n }\n LoadSucessdata(RegionMastering: RegionMaster[]) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n RegionMastering.forEach((prod, index, RegionMastering) => {\n (prod as any).index = index + 1;\n });\n\n this.rowsCache = [...RegionMastering];\n this.rows = RegionMastering;\n }\n\n onDataLoadFailed(error: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\n MessageSeverity.error, error);\n }\n Insertregionmaster() {\n debugger;\n var strvalue = this.editedRegionMaster;\n // this.isSaving = true;\n //this.alertService.startLoadingMessage('Saving changes...');\n // this.ServiceMaster.NewVendore(this.editedRegionMaster).subscribe(inscaning => this.saveSuccessHelper(inscaning), error => this.saveFailedHelper(error));\n }\n private saveSuccessHelper(RegionMasters?: RegionMaster) {\n this.isSaving = false;\n this.alertService.stopLoadingMessage();\n this.alertService.showMessage('Success', `loadMovement \\\"${this.editedRegionMaster.diplomaticstation1}\\\" was created successfully`, MessageSeverity.success);\n\n }\n onSearchChanged(value: string) {\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.RegionName));\n }\n private saveFailedHelper(error: any) {\n this.alertService.stopLoadingMessage();\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\n }\n showErrorAlert(caption: string, message: string) {\n this.alertService.showMessage(caption, message, MessageSeverity.error);\n }\n getregionname($event) {\n this.Getregion();\n this.arrcity2 = this.arrcity\n $('#RegionName').autocomplete({\n source: this.arrcity2,\n delay: 500\n });\n }\n Getregion() {\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'RegionName'), error => this.onDataLoadFailed(error));\n }\n onDatagetSuccessful(RegionName: string[], listof: any) {\n this.alertService.stopLoadingMessage();\n this.loadingIndicator = false;\n if (listof == \"RegionName\") {\n this.arrcity = RegionName;\n }\n }\n local1State() {\n this.isSate1 = true;\n var local1State = $('#MapedStateNamelocal11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate1 += local1State + \",\";\n $('#MapedStateNamelocal1').val(this.localstate1);\n $('#MapedStateNamelocal11').val('');\n $('#MapedStateNamelocal11').focus();\n }\n }\n local1city() {\n this.isCity1 = true;\n var local1State = $('#MapedCityNamelocal11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity1 += local1State + \",\";\n $('#MapedStateNamelocal111').text(this.localcity1);\n $('#MapedCityNamelocal1').val(this.localcity1);\n $('#MapedCityNamelocal11').val('');\n $('#MapedCityNamelocal11').focus();\n }\n }\n local2State() {\n this.isSate2 = true;\n var local1State = $('#MapedStateNamelocal12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate2 += local1State + \",\";\n $('#MapedStateNamelocal2').val(this.localstate2);\n $('#MapedStateNamelocal12').val('');\n $('#MapedStateNamelocal12').focus();\n }\n }\n local2city() {\n this.isCity2 = true;\n var local1State = $('#MapedCityNamelocal12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity2 += local1State + \",\";\n $('#MapedCityNamelocal2').val(this.localcity2);\n $('#MapedCityNamelocal12').val('');\n $('#MapedCityNamelocal12').focus();\n }\n }\n\n region1State() {\n this.isSate3 = true;\n var local1State = $('#MapedStateNameregion11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate3 += local1State + \",\";\n $('#MapedStateNameregion1').val(this.localstate3);\n $('#MapedStateNameregion11').val('');\n $('#MapedStateNameregion11').focus();\n\n }\n }\n StatewsState() {\n this.isState13 = true;\n var local1State = $('#MapedStatews1').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate13 += local1State + \",\";\n $('#MapedStatews2').val(this.localstate13);\n $('#MapedStatews1').val('');\n $('#MapedStatews1').focus();\n\n }\n }\n region1city() {\n this.isCity3 = true;\n var local1State = $('#MapedCityNameregion11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity3 += local1State + \",\";\n $('#MapedCityNameregion1').val(this.localcity3);\n $('#MapedCityNameregion11').val('');\n $('#MapedCityNameregion11').focus();\n\n }\n }\n\n region2State() {\n this.isSate4 = true;\n var local1State = $('#MapedStateNameregion12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate4 += local1State + \",\";\n $('#MapedStateNameregion2').val(this.localstate4);\n $('#MapedStateNameregion12').val('');\n $('#MapedStateNameregion12').focus();\n\n }\n }\n region2city() {\n this.isCity4 = true;\n var local1State = $('#MapedCityNameregion12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity4 += local1State + \",\";\n $('#MapedCityNameregion2').val(this.localcity4);\n $('#MapedCityNameregion12').val('');\n $('#MapedCityNameregion12').focus();\n\n }\n }\n metro1State() {\n this.isSate5 = true;\n var local1State = $('#MapedStateNamemetro11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate5 += local1State + \",\";\n $('#MapedStateNamemetro1').val(this.localstate5);\n $('#MapedStateNamemetro11').val('');\n $('#MapedStateNamemetro11').focus();\n\n }\n }\n metro1city() {\n this.isCity5 = true;\n var local1State = $('#MapedCityNamemetro11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity5 += local1State + \",\";\n $('#MapedCityNamemetro1').val(this.localcity5);\n $('#MapedCityNamemetro11').val('');\n $('#MapedCityNamemetro11').focus();\n\n }\n }\n\n metro2State() {\n this.isSate6 = true;\n var local1State = $('#MapedStateNamemetro12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate6 += local1State + \",\";\n $('#MapedStateNamemetro2').val(this.localstate6);\n $('#MapedStateNamemetro12').val('');\n $('#MapedStateNamemetro12').focus();\n\n }\n }\n metro2city() {\n\n this.isCity6 = true;\n var local1State = $('#MapedCityNamemetro12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity6 += local1State + \",\";\n $('#MapedCityNamemetro2').val(this.localcity6);\n $('#MapedCityNamemetro12').val('');\n $('#MapedCityNamemetro12').focus();\n\n }\n }\n\n zone1State() {\n this.isSate7 = true;\n var local1State = $('#MapedStateNamezone11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate7 += local1State + \",\";\n $('#MapedStateNamezone1').val(this.localstate7);\n $('#MapedStateNamezone11').val('');\n $('#MapedStateNamezone11').focus();\n\n }\n }\n zone1city() {\n this.isCity7 = true;\n var local1State = $('#MapedCityNamezone11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity7 += local1State + \",\";\n $('#MapedCityNamezone1').val(this.localcity7);\n $('#MapedCityNamezone11').val('');\n $('#MapedCityNamezone11').focus();\n\n }\n }\n\n zone2State() {\n this.isSate8 = true;\n var local1State = $('#MapedStateNamezone12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate8 += local1State + \",\";\n $('#MapedStateNamezone2').val(this.localstate8);\n $('#MapedStateNamezone12').val('');\n $('#MapedStateNamezone12').focus();\n\n }\n }\n zone2city() {\n this.isCity8 = true;\n var local1State = $('#MapedCityNamezone12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity8 += local1State + \",\";\n $('#MapedCityNamezone2').val(this.localcity8);\n $('#MapedCityNamezone12').val('');\n $('#MapedCityNamezone12').focus();\n\n }\n }\n\n specialstation1State() {\n this.isSate9 = true;\n var local1State = $('#MapedStateNamespecialstation11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate9 += local1State + \",\";\n $('#MapedStateNamespecialstation1').val(this.localstate9);\n $('#MapedStateNamespecialstation11').val('');\n $('#MapedStateNamespecialstation11').focus();\n\n }\n }\n specialstation1city() {\n this.isCity9 = true;\n var local1State = $('#MapedCityNamespecialstation11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity9 += local1State + \",\";\n $('#MapedCityNamespecialstation1').val(this.localcity9);\n $('#MapedCityNamespecialstation11').val('');\n $('#MapedCityNamespecialstation11').focus();\n\n }\n }\n\n specialstation2State() {\n this.isSate10 = true;\n var local1State = $('#MapedStateNamespecialstation12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate10 += local1State + \",\";\n $('#MapedStateNamespecialstation2').val(this.localstate10);\n $('#MapedStateNamespecialstation12').val('');\n $('#MapedStateNamespecialstation12').focus();\n\n }\n }\n specialstation2city() {\n this.isCity10 = true;\n var local1State = $('#MapedCityNamespecialstation12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity10 += local1State + \",\";\n $('#MapedCityNamespecialstation2').val(this.localcity10);\n $('#MapedCityNamespecialstation12').val('');\n $('#MapedCityNamespecialstation12').focus();\n\n }\n }\n\n diplomatic1State() {\n this.isSate11 = true;\n var local1State = $('#MapedStateNamediplomaticstation11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate11 += local1State + \",\";\n $('#MapedStateNamediplomaticstation1').val(this.localstate11);\n $('#MapedStateNamediplomaticstation11').val('');\n $('#MapedStateNamediplomaticstation11').focus();\n\n }\n }\n diplomatic1city() {\n this.isCity11 = true;\n var local1State = $('#MapedCityNamediplomaticstation11').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity11 += local1State + \",\";\n $('#MapedCityNamediplomaticstation1').val(this.localcity11);\n $('#MapedCityNamediplomaticstation11').val('');\n $('#MapedCityNamediplomaticstation11').focus();\n\n }\n }\n\n diplomatic2State() {\n this.isSate12 = true;\n var local1State = $('#MapedStateNamediplomaticstation12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localstate12 += local1State + \",\";\n $('#MapedStateNamediplomaticstation2').val(this.localstate12);\n $('#MapedStateNamediplomaticstation12').val('');\n $('#MapedStateNamediplomaticstation12').focus();\n\n }\n }\n diplomatic2city() {\n this.isCity12 = true;\n var local1State = $('#MapedCityNamediplomaticstation12').val();\n if (local1State != \"\" && local1State != undefined) {\n this.localcity12 += local1State + \",\";\n $('#MapedCityNamediplomaticstation2').val(this.localcity12);\n $('#MapedCityNamediplomaticstation12').val('');\n $('#MapedCityNamediplomaticstation12').focus();\n\n }\n }\n}\nexport class RegionMaster {\n constructor(RegionType?: string, RegionName?: string, MapedStateName?: string,\n MapedCityName?: string, region2?: string, local1?: string, local2?: string\n , region1?: string, metro1?: string, metro2?: string, zone1?: string, zone2?: string, regionofficeid?: string,\n specialstation1?: string, specialstation2?: string, diplomaticstation1?: string, diplomaticstation2?: string) {\n this.RegionType = RegionType;\n this.RegionName = RegionName;\n this.regionofficeid = regionofficeid;\n\n this.local1 = local1;\n this.local2 = local2;\n this.region1 = region1;\n this.region2 = region2;\n this.metro1 = metro1;\n this.metro2 = metro2;\n this.zone1 = zone1;\n this.zone2 = zone2;\n this.specialstation1 = specialstation1;\n this.specialstation2 = specialstation2;\n this.diplomaticstation1 = diplomaticstation1;\n this.diplomaticstation2 = diplomaticstation2;\n };\n public regionofficeid: string\n public RegionType: string\n public RegionName: string\n\n public MapedStatews: string;\n public MapedStateNamelocal1: string\n public MapedStateNamelocal2: string\n public MapedStateNameregion1: string\n public MapedStateNameregion2: string\n public MapedStateNamemetro1: string\n public MapedStateNamemetro2: string\n public MapedStateNamezone1: string\n public MapedStateNamezone2: string\n public MapedStateNamespecialstation1: string\n public MapedStateNamespecialstation2: string\n public MapedStateNamediplomaticstation1: string\n public MapedStateNamediplomaticstation2: string\n public MapedCityNamelocal1: string\n public MapedCityNamelocal2: string\n public MapedCityNameregion1: string\n public MapedCityNameregion2: string\n public MapedCityNamemetro1: string\n public MapedCityNamemetro2: string\n public MapedCityNamezone1: string\n public MapedCityNamezone2: string\n public MapedCityNamespecialstation1: string\n public MapedCityNamespecialstation2: string\n public MapedCityNamediplomaticstation1: string\n public MapedCityNamediplomaticstation2: string\n public typelocal1: string\n public typelocal2: string\n public typeregion1: string\n public typeregion2: string\n public typemetro1: string\n public typemetro2: string\n public typezone1: string\n public typezone2: string\n public typespecialstation1: string\n public typespecialstation2: string\n public typediplomaticstation1: string\n public typediplomaticstation2: string\n public local1: string\n public local2: string\n public region1: string\n public region2: string\n public metro1: string\n public metro2: string\n public zone1: string\n public zone2: string\n public specialstation1: string\n public specialstation2: string\n public diplomaticstation1: string\n public diplomaticstation2: string\n}\n\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcmV2ZXJzZS1ib29raW5nL3JldmVyc2UtYm9va2luZy5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog, MatRadioChange } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { Guid } from 'guid-typescript';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Address } from '../controls/addressmaster.component';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-reverse-booking',\r\n templateUrl: './reverse-booking.component.html',\r\n styleUrls: ['./reverse-booking.component.scss']\r\n})\r\nexport class ReverseBookingComponent implements OnInit {\r\n arrOrigin: any[]=[];\r\n arrcust: any[]=[];\r\n baData: any;\r\n editdata: ReversePickupAwb = new ReversePickupAwb();\r\n saletype = \"0\";\r\n CustData: any[];\r\n billingofficeid: any = \"\";\r\n opPayMode = \"0\";\r\n\r\n constructor(private dialog: MatDialog, private transaction: TransactionService,\r\n private configurations: ConfigurationService, private localstre: LocalStoreManager, private router: Router,\r\n private authService: AuthService, private route: Router,\r\n private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n\r\n ngOnInit() {\r\n this.getOrigin();\r\n //this.getCustomerData();\r\n this.editdata = new ReversePickupAwb();\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n $('#billingFrom').val(_Balogindata[0].officename);\r\n this.billingofficeid = _Balogindata[0].officeid;\r\n this.editdata.billingOfficeId = this.billingofficeid;\r\n $('#customerCode').val('');\r\n }\r\n \r\n getOrigin() {\r\n this.ServiceMaster.getHelplist(\"BADACITY\").subscribe(result => this.onDatagetSuccessful(result, 'ba'), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n \r\n \r\n onDatagetSuccessful(ba: any[], listof: any) {\r\n this.arrOrigin = ba;\r\n }\r\n getoffice($event) {\r\n this.getOrigin();\r\n $('#officeName').autocomplete({\r\n source: this.arrOrigin,\r\n delay: 50\r\n });\r\n }\r\n \r\n getcustList($event) {\r\n this.getCustomerData($('#billingFrom').val());\r\n $('#customerCode').autocomplete({\r\n source: this.arrcust,\r\n delay: 50\r\n });\r\n }\r\n getCustomerData(officename: string) {\r\n if (isNullOrUndefined(officename)) {\r\n $('#billingFrom').focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n officename = officename.split('~')[0].trim();\r\n Req.ProcessName = 'Usp_GetOfficeFromName'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"officename\"\r\n pr.PropertyValue = officename;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n if (result[0].officename.trim() == officename) {\r\n this.ServiceMaster.getcustlist(result[0].officeid).subscribe(result => this.onDatagetcustSuccessful(result), error => this.onDataLoadFailed(error));\r\n }\r\n else {\r\n this.showErrorAlert(\"Customer\", \"No customer data\")\r\n }\r\n }\r\n else {\r\n this.showErrorAlert(\"Save\", \"No customer data\")\r\n }\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n onDatagetcustSuccessful(states: string[]) {\r\n\r\n this.arrcust = states;\r\n }\r\n getCustomerId(customercode: string) {\r\n let Req = new CommRequest();\r\n let custcode = $('#customerCode').val();\r\n Req.ProcessName = 'Usp_Getcustomerwithcode'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"customercode\"\r\n pr.PropertyValue = custcode;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n this.CustData = result;\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n SetcodeAndname($event) {\r\n let custcodename: string = (document.getElementById('customerCode')).value;\r\n if (custcodename.indexOf('-') > 0) {\r\n (document.getElementById('customerName')).value = custcodename.substring(0, custcodename.indexOf('-') - 1);\r\n (document.getElementById('customerCode')).value = custcodename.substring(custcodename.indexOf('-') + 1);\r\n\r\n }\r\n this.getCustomerId((document.getElementById('customerCode')).value);\r\n }\r\n getOfficeData() {\r\n if (isNullOrUndefined($('#officeName').val())) {\r\n $('#officeName').focus();\r\n return;\r\n }\r\n var officename = $('#officeName').val()\r\n let Req = new CommRequest();\r\n officename = officename.split('~')[0].trim();\r\n Req.ProcessName = 'Usp_GetOfficeFromName'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"officename\"\r\n pr.PropertyValue = officename;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n this.baData = result\r\n this.getCustomerData(officename);\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n setaddpincode() {\r\n $('#pincode').val($('#pickupPincode').val())\r\n }\r\n SaveData() {\r\n this.editdata.bookingOfficeId = this.baData[0].officeid;\r\n this.editdata.billingOfficeId = this.billingofficeid;\r\n \r\n if (this.editdata.billingOfficeId == '' || isNullOrUndefined(this.editdata.billingOfficeId)) {\r\n this.showErrorAlert(\"Awb\", \"Please enter billing office\")\r\n $('#Awbno').focus();\r\n return;\r\n }\r\n if (this.editdata.bookingOfficeId == '' || isNullOrUndefined(this.editdata.bookingOfficeId)) {\r\n this.showErrorAlert(\"Awb\", \"Booking office not found\")\r\n $('#Awbno').focus();\r\n return;\r\n }\r\n if (this.opPayMode == '2') {\r\n\r\n }\r\n this.editdata.destPincode = $('#destPincode').val();\r\n this.editdata.pickupPincode = $('#pickupPincode').val();\r\n this.editdata.approve = false;\r\n this.editdata.customerCode = $('#customerCode').val(); \r\n if (this.editdata.customerCode != '' && this.CustData.length > 0) {\r\n this.editdata.customerId = this.CustData[0].customerId;\r\n }\r\n else {\r\n this.editdata.customerCode = 'Retail'\r\n this.editdata.customerId = Guid.createEmpty();\r\n }\r\n if (this.editdata.customerCode.toUpperCase() == 'RETAIL') {\r\n this.editdata.customerCode = 'Retail'\r\n this.editdata.customerId = Guid.createEmpty();\r\n }\r\n if (this.opPayMode == '2') {\r\n if ($('#customerCode').val() == 'Retail' || $('#customerCode').val() == '' || this.CustData.length == 0 ) {\r\n this.showErrorAlert(\"Customer\", \"Please select customer\")\r\n return;\r\n\r\n }\r\n }\r\n this.editdata.ratePerkg = isNaN(parseFloat($('#perkgRate').val())) ? 0 : parseFloat($('#perkgRate').val());\r\n this.editdata.fixAmount = isNaN(parseFloat($('#fixAmount').val())) ? 0 : parseFloat($('#fixAmount').val());\r\n this.editdata.fuelSurcharge = isNaN(parseFloat($('#fuelpercent').val())) ? 0 : parseFloat($('#fuelpercent').val());\r\n this.editdata.otherCharge = isNaN(parseFloat($('#othercharge').val())) ? 0 : parseFloat($('#othercharge').val());\r\n\r\n this.editdata.pickupAddress = new Address();\r\n\r\n this.editdata.pickupAddress.houseNo = $('#houseNo').val();\r\n this.editdata.pickupAddress.streetName = $('#streetName').val();\r\n this.editdata.pickupAddress.city = $('#city').val();\r\n this.editdata.pickupAddress.stateName = $('#state').val()\r\n this.editdata.pickupAddress.pincode = $('#pincode').val()\r\n this.editdata.pickupAddress.landMark = \"\";\r\n this.editdata.acceptByBooking = false;\r\n this.editdata.pickupCharge = 0;\r\n this.editdata.mobileno = $('#pikupMobile').val();\r\n this.editdata.contactPerson = $('#cperson').val();\r\n this.editdata.approxWeight = isNaN(parseFloat($('#approxWeight').val())) ? 0 : parseFloat($('#approxWeight').val())\r\n if (this.editdata.approxWeight == 0) {\r\n $('#approxWeight').focus();\r\n return;\r\n }\r\n if (this.editdata.paymentMode = '') {\r\n this.showErrorAlert(\"Payment\", \"Please select pay mode\")\r\n return;\r\n }\r\n\r\n if (parseFloat(this.editdata.ratePerkg.toString()) == 0 && parseFloat(this.editdata.fixAmount.toString()) == 0) {\r\n this.showErrorAlert(\"Freight\", \"Please enter rate perkg or fix amount\")\r\n return;\r\n }\r\n if (parseFloat(this.editdata.ratePerkg.toString()) > 0 && parseFloat(this.editdata.fixAmount.toString()) > 0) {\r\n this.showErrorAlert(\"Freight\", \"Invalid freight,Please enter rate perkg or fix amount \")\r\n return;\r\n }\r\n this.editdata.revesrPickupId = Guid.raw();\r\n this.transaction.PostReverseBooking(this.editdata).subscribe(result => this.onsavereversebooking(result), error => this.onDataLoadFailed(error))\r\n }\r\n onsavereversebooking(result) {\r\n this.editdata = new ReversePickupAwb();\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n $('#billingFrom').val(_Balogindata[0].officename);\r\n this.billingofficeid = _Balogindata[0].officeid;\r\n this.editdata.billingOfficeId = this.billingofficeid;\r\n this.alertService.showMessage('Save', result.requestNo + \" Generated Successfully\", MessageSeverity.success);\r\n }\r\n RbSelectionchange_topay(mrChange: MatRadioChange) {\r\n\r\n if (mrChange.value == '1') {\r\n \r\n this.editdata.paymentMode = 'CASH'\r\n }\r\n if (mrChange.value == '2') {\r\n\r\n this.editdata.paymentMode = 'CREDIT'\r\n }\r\n if (mrChange.value == '3') {\r\n\r\n this.editdata.paymentMode = 'TOPAY'\r\n }\r\n \r\n }\r\n}\r\nexport class ReversePickupAwb {\r\n \r\n public revesrPickupId: any; \r\n public awbno: string;\r\n public bookingOfficeId;\r\n public billingOfficeId: any;\r\n public awbinscanId: any;\r\n public ratePerkg: number;\r\n public fixAmount: number;\r\n public otherCharge: number; \r\n public fuelSurcharge: number;\r\n public customerId: any;\r\n public customerCode: string; \r\n public createon: Date;\r\n public billno: string;\r\n public approve: boolean;\r\n public requestNo: string;\r\n public pickupCharge: number;\r\n public acceptByBooking: boolean;\r\n public pickupPincode: string;\r\n public destPincode: string;\r\n public approxWeight: number;\r\n public pickupAddress: Address;\r\n public mobileno :string;\r\n public contactPerson: string;\r\n public paymentMode: string;\r\n}\r\n","export default \"body {\\n margin: 0;\\n font-family: \\\"Source Sans Pro\\\", -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\", Arial, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\";\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n background-color: #fff;\\n}\\n\\n.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {\\n position: relative;\\n width: 100%;\\n padding-right: 7.5px;\\n padding-left: 7.5px;\\n}\\n\\n.small-box {\\n border-radius: 0.25rem;\\n box-shadow: 0 0 1px rgba(0, 0, 0, 0.13), 0 1px 3px rgba(0, 0, 0, 0.2);\\n display: block;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n\\n.small-box > .small-box-footer {\\n background-color: rgba(0, 0, 0, 0.1);\\n color: rgba(255, 255, 255, 0.8);\\n display: block;\\n padding: 3px 0;\\n position: relative;\\n text-align: center;\\n text-decoration: none;\\n z-index: 10;\\n}\\n\\n.bg-info > a {\\n color: #fff !important;\\n}\\n\\n.row {\\n display: flex;\\n flex-wrap: wrap;\\n margin-right: -7.5px;\\n margin-left: -7.5px;\\n}\\n\\n.col-lg-3 .small-box h3, .col-md-3 .small-box h3, .col-xl-3 .small-box h3 {\\n font-size: 2.2rem;\\n}\\n\\n.small-box h3 {\\n font-size: 2.2rem;\\n font-weight: 700;\\n margin: 0 0 10px;\\n padding: 0;\\n white-space: nowrap;\\n color: #fff;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box:hover {\\n text-decoration: none;\\n}\\n\\n:host ::ng-deep .row-color1 {\\n background-color: darkred;\\n color: white;\\n}\\n\\n:host ::ng-deep .row-color2 {\\n background-color: darkgreen;\\n color: white;\\n}\\n\\n.bg-success, .bg-success > a {\\n color: #fff !important;\\n}\\n\\n.inner {\\n height: 120px !important;\\n padding-left: 10px;\\n padding-top: 10px;\\n}\\n\\n.color {\\n color: #fff;\\n font-size: 1.4rem !important;\\n}\\n\\nbutton.close {\\n position: absolute;\\n top: 0.25rem;\\n right: 1.5rem;\\n z-index: 100;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9zYWxlLWRhc2hib2FyZC9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxzYWxlLWRhc2hib2FyZFxcc2FsZS1kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvc2FsZS1kYXNoYm9hcmQvc2FsZS1kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxTQUFBO0VBQ0Esb0xBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0FDQ0Y7O0FERUE7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0FDQ0Y7O0FERUE7RUFDRSxzQkFBQTtFQUNBLHFFQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QUNDRjs7QURFQTtFQUNFLG9DQUFBO0VBQ0EsK0JBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7QUNDRjs7QURFQTtFQUNFLHNCQUFBO0FDQ0Y7O0FERUE7RUFFRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7QUNDRjs7QURFQTtFQUNFLGlCQUFBO0FDQ0Y7O0FERUE7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0FDQ0Y7O0FERUE7RUFDRSxVQUFBO0FDQ0Y7O0FERUE7RUFDRSxlQUFBO0FDQ0Y7O0FERUE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QUNDRjs7QURFQTtFQUNFLHNCQUFBO0FDQ0Y7O0FERUE7RUFDRSxjQUFBO0VBQ0EsMEJBQUE7VUFBQSx1QkFBQTtFQUNBLHlCQUFBO1VBQUEscUJBQUE7RUFDQSx5QkFBQTtVQUFBLHdCQUFBO0VBQ0EsdUJBQUE7VUFBQSxzQkFBQTtBQ0NGOztBREVBO0VBQ0UsVUFBQTtBQ0NGOztBREVBO0VBQ0UsZUFBQTtBQ0NGOztBREVBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0FDQ0Y7O0FERUE7RUFDRSxzQkFBQTtBQ0NGOztBREVBO0VBQ0UsY0FBQTtFQUNBLDBCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtVQUFBLHFCQUFBO0VBQ0EseUJBQUE7VUFBQSx3QkFBQTtFQUNBLHVCQUFBO1VBQUEsc0JBQUE7QUNDRjs7QURFQTtFQUNFLHFCQUFBO0FDQ0Y7O0FEQ0E7RUFDRSx5QkFBQTtFQUNBLFlBQUE7QUNFRjs7QURDQTtFQUNFLDJCQUFBO0VBQ0EsWUFBQTtBQ0VGOztBRENBO0VBQ0Usc0JBQUE7QUNFRjs7QURDQTtFQUNFLHdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBQ0VGOztBRENBO0VBQ0UsV0FBQTtFQUNBLDRCQUFBO0FDRUY7O0FER0E7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtBQ0FGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9zYWxlLWRhc2hib2FyZC9zYWxlLWRhc2hib2FyZC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbImJvZHkge1xyXG4gIG1hcmdpbjogMDtcclxuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwtYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxcIlNlZ29lIFVJXCIsUm9ib3RvLFwiSGVsdmV0aWNhIE5ldWVcIixBcmlhbCxzYW5zLXNlcmlmLFwiQXBwbGUgQ29sb3IgRW1vamlcIixcIlNlZ29lIFVJIEVtb2ppXCIsXCJTZWdvZSBVSSBTeW1ib2xcIjtcclxuICBmb250LXNpemU6IDFyZW07XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5jb2wsIC5jb2wtMSwgLmNvbC0xMCwgLmNvbC0xMSwgLmNvbC0xMiwgLmNvbC0yLCAuY29sLTMsIC5jb2wtNCwgLmNvbC01LCAuY29sLTYsIC5jb2wtNywgLmNvbC04LCAuY29sLTksIC5jb2wtYXV0bywgLmNvbC1sZywgLmNvbC1sZy0xLCAuY29sLWxnLTEwLCAuY29sLWxnLTExLCAuY29sLWxnLTEyLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy1hdXRvLCAuY29sLW1kLCAuY29sLW1kLTEsIC5jb2wtbWQtMTAsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTIsIC5jb2wtbWQtMiwgLmNvbC1tZC0zLCAuY29sLW1kLTQsIC5jb2wtbWQtNSwgLmNvbC1tZC02LCAuY29sLW1kLTcsIC5jb2wtbWQtOCwgLmNvbC1tZC05LCAuY29sLW1kLWF1dG8sIC5jb2wtc20sIC5jb2wtc20tMSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiwgLmNvbC1zbS0yLCAuY29sLXNtLTMsIC5jb2wtc20tNCwgLmNvbC1zbS01LCAuY29sLXNtLTYsIC5jb2wtc20tNywgLmNvbC1zbS04LCAuY29sLXNtLTksIC5jb2wtc20tYXV0bywgLmNvbC14bCwgLmNvbC14bC0xLCAuY29sLXhsLTEwLCAuY29sLXhsLTExLCAuY29sLXhsLTEyLCAuY29sLXhsLTIsIC5jb2wteGwtMywgLmNvbC14bC00LCAuY29sLXhsLTUsIC5jb2wteGwtNiwgLmNvbC14bC03LCAuY29sLXhsLTgsIC5jb2wteGwtOSwgLmNvbC14bC1hdXRvIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZy1yaWdodDogNy41cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiA3LjVweDtcclxufVxyXG5cclxuLnNtYWxsLWJveCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcclxuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYigwIDAgMCAvIDEzJSksIDAgMXB4IDNweCByZ2IoMCAwIDAgLyAyMCUpO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uc21hbGwtYm94ID4gLnNtYWxsLWJveC1mb290ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjEpO1xyXG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44KTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAzcHggMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLmJnLWluZm8gPiBhIHtcclxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucm93IHtcclxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBtYXJnaW4tcmlnaHQ6IC03LjVweDtcclxuICBtYXJnaW4tbGVmdDogLTcuNXB4O1xyXG59XHJcblxyXG4uY29sLWxnLTMgLnNtYWxsLWJveCBoMywgLmNvbC1tZC0zIC5zbWFsbC1ib3ggaDMsIC5jb2wteGwtMyAuc21hbGwtYm94IGgzIHtcclxuICBmb250LXNpemU6IDIuMnJlbTtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMyB7XHJcbiAgZm9udC1zaXplOiAyLjJyZW07XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcclxuICB6LWluZGV4OiA1O1xyXG59XHJcblxyXG4uc21hbGwtYm94IHAge1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxufVxyXG5cclxucCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxucCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XHJcbiAgbWFyZ2luLWJsb2NrLWVuZDogMWVtO1xyXG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcclxuICBtYXJnaW4taW5saW5lLWVuZDogMHB4O1xyXG59XHJcblxyXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xyXG4gIHotaW5kZXg6IDU7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggcCB7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG59XHJcblxyXG5wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbiosIDo6YWZ0ZXIsIDo6YmVmb3JlIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5wIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFlbTtcclxuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XHJcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xyXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwcHg7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3g6aG92ZXIge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtyZWQ7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtncmVlbjtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5iZy1zdWNjZXNzLCAuYmctc3VjY2VzcyA+IGEge1xyXG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pbm5lciB7XHJcbiAgaGVpZ2h0OiAxMjBweCAhaW1wb3J0YW50O1xyXG4gIHBhZGRpbmctbGVmdDogMTBweDtcclxuICBwYWRkaW5nLXRvcDogMTBweDtcclxufVxyXG5cclxuLmNvbG9yIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LXNpemU6IDEuNHJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuXHJcbmJ1dHRvbi5jbG9zZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMC4yNXJlbTtcclxuICByaWdodDogMS41cmVtO1xyXG4gIHotaW5kZXg6IDEwMDtcclxufVxyXG4iLCJib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmNvbCwgLmNvbC0xLCAuY29sLTEwLCAuY29sLTExLCAuY29sLTEyLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC1hdXRvLCAuY29sLWxnLCAuY29sLWxnLTEsIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIsIC5jb2wtbGctMiwgLmNvbC1sZy0zLCAuY29sLWxnLTQsIC5jb2wtbGctNSwgLmNvbC1sZy02LCAuY29sLWxnLTcsIC5jb2wtbGctOCwgLmNvbC1sZy05LCAuY29sLWxnLWF1dG8sIC5jb2wtbWQsIC5jb2wtbWQtMSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZC0yLCAuY29sLW1kLTMsIC5jb2wtbWQtNCwgLmNvbC1tZC01LCAuY29sLW1kLTYsIC5jb2wtbWQtNywgLmNvbC1tZC04LCAuY29sLW1kLTksIC5jb2wtbWQtYXV0bywgLmNvbC1zbSwgLmNvbC1zbS0xLCAuY29sLXNtLTEwLCAuY29sLXNtLTExLCAuY29sLXNtLTEyLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS1hdXRvLCAuY29sLXhsLCAuY29sLXhsLTEsIC5jb2wteGwtMTAsIC5jb2wteGwtMTEsIC5jb2wteGwtMTIsIC5jb2wteGwtMiwgLmNvbC14bC0zLCAuY29sLXhsLTQsIC5jb2wteGwtNSwgLmNvbC14bC02LCAuY29sLXhsLTcsIC5jb2wteGwtOCwgLmNvbC14bC05LCAuY29sLXhsLWF1dG8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiA3LjVweDtcbiAgcGFkZGluZy1sZWZ0OiA3LjVweDtcbn1cblxuLnNtYWxsLWJveCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEzKSwgMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNtYWxsLWJveCA+IC5zbWFsbC1ib3gtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uYmctaW5mbyA+IGEge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4ucm93IHtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtNy41cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNy41cHg7XG59XG5cbi5jb2wtbGctMyAuc21hbGwtYm94IGgzLCAuY29sLW1kLTMgLnNtYWxsLWJveCBoMywgLmNvbC14bC0zIC5zbWFsbC1ib3ggaDMge1xuICBmb250LXNpemU6IDIuMnJlbTtcbn1cblxuLnNtYWxsLWJveCBoMyB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAxMHB4O1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcbiAgei1pbmRleDogNTtcbn1cblxuLnNtYWxsLWJveCBwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuKiwgOjphZnRlciwgOjpiZWZvcmUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMWVtO1xuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDBweDtcbn1cblxuLnNtYWxsLWJveDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuOmhvc3QgOjpuZy1kZWVwIC5yb3ctY29sb3IxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya3JlZDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG46aG9zdCA6Om5nLWRlZXAgLnJvdy1jb2xvcjIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZ3JlZW47XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmJnLXN1Y2Nlc3MsIC5iZy1zdWNjZXNzID4gYSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5pbm5lciB7XG4gIGhlaWdodDogMTIwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbn1cblxuLmNvbG9yIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICByaWdodDogMS41cmVtO1xuICB6LWluZGV4OiAxMDA7XG59Il19 */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { fadeInOut } from 'src/app/services/animations';\r\n\r\n@Component({\r\n selector: 'app-sale-dashboard',\r\n templateUrl: './sale-dashboard.component.html',\r\n styleUrls: ['./sale-dashboard.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class SaleDashboardComponent implements OnInit {\r\n\r\n columns: any[] = [];\r\n rows: rowdata[] = [];\r\n loadingIndicator = false;\r\n totalsale: number = 0;\r\n NotSaleBa: number = 0;\r\n SaleBa: number = 0;\r\n saletype: string = \"Kart\";\r\n saleheading: string = \"Kart Rate Sale\";\r\n formheading: string = \"Kart Rate Sale Dashboard\";\r\n constructor(private localstre: LocalStoreManager, private troute: ActivatedRoute, private datePipe: DatePipe, private excelService: ExcelService, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n ngOnInit() {\r\n $('#fromdate').val(this.datePipe.transform(new Date(), 'dd-MM-yyyy'))\r\n $('#todate').val(this.datePipe.transform(new Date(), 'dd-MM-yyyy'))\r\n this.troute.params.subscribe(params => {\r\n //this.saletype = params.saletype == '0' ? 'Kart' : 'CASH';\r\n switch (params.saletype) {\r\n case \"0\":\r\n this.saletype =\"Kart\"\r\n break;\r\n case \"1\":\r\n this.saletype = 'CASH'\r\n break;\r\n case \"2\":\r\n this.saletype = 'Direct Party'\r\n break;\r\n default:\r\n this.saletype = ''\r\n break;\r\n }\r\n });\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n\r\n if (this.saletype != 'Kart') {\r\n if (this.saletype != 'Direct Party') {\r\n this.saleheading = \"CASH Sale\";\r\n this.formheading = \"Cash Sale Dashboard\";\r\n }\r\n else {\r\n this.saleheading = \"DP Sale\";\r\n this.formheading = \"DP Sale Dashboard\";\r\n }\r\n\r\n }\r\n if (this.saletype != 'Direct Party') {\r\n this.columns =\r\n [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'officeCode', name: 'Office Code', width: 50, canAutoResize: true },\r\n { prop: 'officename', name: 'Office Name', width: 200, canAutoResize: true },\r\n { prop: 'city', name: 'Office City', width: 150, canAutoResize: true },\r\n { prop: 'controloffice', name: 'Control Office', width: 200, canAutoResize: true },\r\n { prop: 'kartsale', name: 'Sale Amount', width: 50, canAutoResize: true },\r\n { prop: 'noofawb', name: 'No Of Awb', width: 50, canAutoResize: true },\r\n ];\r\n }\r\n else {\r\n this.columns =\r\n [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'officeCode', name: 'Office Code', width: 50, canAutoResize: true },\r\n { prop: 'officename', name: 'Office Name', width: 200, canAutoResize: true },\r\n { prop: 'city', name: 'Office City', width: 150, canAutoResize: true },\r\n { prop: 'controloffice', name: 'Control Office', width: 200, canAutoResize: true },\r\n { prop: 'customercode', name: 'Cust. Code', width: 70, canAutoResize: true },\r\n { prop: 'customerName', name: 'Cust. Name', width: 200, canAutoResize: true },\r\n { prop: 'freightAmt', name: 'Sale Amount', width: 50, canAutoResize: true },\r\n { prop: 'noofawb', name: 'No Of Awb', width: 50, canAutoResize: true },\r\n ];\r\n }\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n if (this.saletype == 'Kart') {\r\n Req.ProcessName = 'GetKartsaleDashboard' // this.saletype == 'Kart' ? 'GetKartsaleDashboard' : 'GetCashsaleDashboard'\r\n }\r\n else if (this.saletype == 'CASH') {\r\n Req.ProcessName = 'GetCashsaleDashboard'\r\n }\r\n else if (this.saletype == 'Direct Party') {\r\n Req.ProcessName = 'GetDPsaleDashboard'\r\n }\r\n else {\r\n Req.ProcessName = ''\r\n }\r\n if (Req.ProcessName == '') {\r\n this.alertService.showMessage(\"Inavlid PraMeter\");\r\n return\r\n }\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"OfficeCode\"\r\n pr.PropertyValue = logindata[0].officeCode;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getSucessDataExrate(result:rowdata[]) {\r\n this.rows = result;\r\n this.totalsale = 0;\r\n this.NotSaleBa = 0;\r\n this.SaleBa = 0;\r\n this.rows.forEach((itm, index) => {\r\n (itm as any).index = index + 1;\r\n itm.kartsale = isNullOrUndefined(itm.kartsale) ? '0.00' : parseFloat(itm.kartsale).toFixed(2);\r\n itm.freightAmt = isNullOrUndefined(itm.freightAmt) ? '0.00' : parseFloat(itm.freightAmt).toFixed(2);\r\n itm.noofawb = parseInt(itm.noofawb) == 0 ? '0' : parseInt(itm.noofawb).toFixed(0);\r\n if (this.saletype == 'Direct Party') {\r\n this.totalsale = this.totalsale + (isNullOrUndefined(itm.freightAmt) ? 0 : parseFloat(itm.freightAmt));\r\n }\r\n else {\r\n this.totalsale = this.totalsale + (isNullOrUndefined(itm.kartsale) ? 0 : parseFloat(itm.kartsale));\r\n }\r\n if (parseFloat(itm.noofawb) > 0) {\r\n this.SaleBa += 1;\r\n }\r\n else {\r\n this.NotSaleBa += 1;\r\n }\r\n \r\n\r\n });\r\n this.rows=[...this.rows]\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n getRowClass = (row) => {\r\n return {\r\n 'row-color1': parseInt(row.noofawb) <= 0,\r\n 'row-color2': parseInt(row.noofawb) > 0,\r\n };\r\n }\r\n Getsalereport() {\r\n var fromdt = $('#fromdate').val()\r\n var todt = $('#todate').val()\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n let Req = new CommRequest();\r\n if (this.saletype == 'Kart') {\r\n Req.ProcessName = 'GetKartsaleDashboard' // this.saletype == 'Kart' ? 'GetKartsaleDashboard' : 'GetCashsaleDashboard'\r\n }\r\n else if (this.saletype == 'CASH') {\r\n Req.ProcessName = 'GetCashsaleDashboard'\r\n }\r\n else if (this.saletype == 'Direct Party') {\r\n Req.ProcessName = 'GetDPsaleDashboard'\r\n }\r\n else {\r\n Req.ProcessName = ''\r\n }\r\n if (Req.ProcessName == '') {\r\n this.alertService.showMessage(\"Inavlid PraMeter\");\r\n return\r\n }\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"OfficeCode\";\r\n pr.PropertyValue = logindata[0].officeCode;\r\n Parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"fromdate\";\r\n pr.PropertyValue = fromdt.toString().substring(6) + '-' + fromdt.toString().substring(3, 5) + \"-\" + fromdt.toString().substring(0, 2);\r\n\r\n Parameter[1] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"todate\"\r\n pr.PropertyValue = todt.toString().substring(6) + '-' + todt.toString().substring(3, 5) + \"-\" + todt.toString().substring(0,2);\r\n Parameter[2] = pr;\r\n\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n\r\n generateExcel(type: any) {\r\n var Badata = this.localstre.getData(\"BaLoginData\");\r\n if (this.saletype != 'Direct Party') {\r\n if (type == \"1\") {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n data[index] = [this.rows[index].officeCode,\r\n this.rows[index].officename,\r\n this.rows[index].city,\r\n this.rows[index].controloffice,\r\n this.rows[index].kartsale,\r\n this.rows[index].noofawb\r\n\r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = this.saletype == 'Kart' ? \"Kart Sale All B.A\" : \"Cash Sale All Office\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Office Code\", \"Office Name\", \"Office City\", \"Control Office\", \"Sale Amount\", \"NoOfAwb\"]\r\n this.excelService.title = (this.saletype == 'Kart' ? \"Kart Rate Sale\" : this.saletype == 'CASH' ? 'Cash Sale' : \"DP Sale\") + ' From Date : ' + $('#fromdate').val() + \" To Date : \" + $('#todate').val();\r\n this.excelService.Widths = [15, 50, 50, 50, 15, 15]\r\n this.excelService.generateExcel();\r\n\r\n\r\n } else if (type == \"2\") {\r\n var data = []\r\n var loop = -1;\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (parseInt(this.rows[index].noofawb) > 0) {\r\n loop += 1;\r\n data[loop] = [this.rows[index].officeCode,\r\n this.rows[index].officename,\r\n this.rows[index].city,\r\n this.rows[index].controloffice,\r\n this.rows[index].kartsale,\r\n this.rows[index].noofawb\r\n\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = this.saletype == 'Kart' ? \"Kart Sale (Only Having Sale)\" : \"Cash Sale (Only Having Sale)\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Office Code\", \"Office Name\", \"Office City\", \"Control Office\", \"Sale Amount\", \"NoOfAwb\"]\r\n this.excelService.title = (this.saletype == 'Kart' ? \"Kart Rate Sale\" : this.saletype == 'CASH' ? 'Cash Sale' : \"DP Sale\") + ' From Date : ' + $('#fromdate').val() + \" To Date : \" + $('#todate').val();\r\n this.excelService.Widths = [15, 50, 50, 50, 15, 15]\r\n this.excelService.generateExcel();\r\n }\r\n else if (type == \"3\") {\r\n var data = []\r\n var loop = -1;\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (parseInt(this.rows[index].noofawb) <= 0) {\r\n loop += 1;\r\n data[loop] = [this.rows[index].officeCode,\r\n this.rows[index].officename,\r\n this.rows[index].city,\r\n this.rows[index].controloffice,\r\n this.rows[index].kartsale,\r\n this.rows[index].noofawb\r\n\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = this.saletype == 'Kart' ? \"Kart Sale(Only Having Not Sale)\" : \"Cash Sale(Only Having Not Sale)\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Office Code\", \"Office Name\", \"Office City\", \"Control Office\", \"Sale Amount\", \"NoOfAwb\"]\r\n this.excelService.title = (this.saletype == 'Kart' ? \"Kart Rate Sale\" : this.saletype == 'CASH' ? 'Cash Sale' : \"DP Sale\") + ' From Date : ' + $('#fromdate').val() + \" To Date : \" + $('#todate').val();\r\n this.excelService.Widths = [15, 50, 50, 50, 15, 15]\r\n this.excelService.generateExcel();\r\n }\r\n }\r\n else {\r\n if (type == \"1\") {\r\n var data = []\r\n var loop = -1;\r\n for (let index = 0; index < this.rows.length; index++) { \r\n loop += 1;\r\n data[loop] = [this.rows[index].officeCode,\r\n this.rows[index].officename,\r\n this.rows[index].city,\r\n this.rows[index].controloffice,\r\n this.rows[index].customercode,\r\n this.rows[index].customerName,\r\n this.rows[index].freightAmt,\r\n this.rows[index].noofawb\r\n\r\n ]\r\n \r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"DP Sale All Office\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Office Code\", \"Office Name\", \"Office City\", \"Control Office\", \"Cust. Code\", \"Cust.Name\", \"Sale Amount\", \"NoOfAwb\"]\r\n this.excelService.title = \"DP Sale\" + ' From Date : ' + $('#fromdate').val() + \" To Date : \" + $('#todate').val();\r\n this.excelService.Widths = [15, 50, 50, 50, 50, 50,15,15]\r\n this.excelService.generateExcel();\r\n\r\n\r\n } else if (type == \"2\") {\r\n var data = []\r\n var loop = -1;\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (parseInt(this.rows[index].noofawb) > 0) {\r\n loop += 1;\r\n data[loop] = [this.rows[index].officeCode,\r\n this.rows[index].officename,\r\n this.rows[index].city,\r\n this.rows[index].controloffice,\r\n this.rows[index].customercode,\r\n this.rows[index].customerName,\r\n this.rows[index].freightAmt,\r\n this.rows[index].noofawb\r\n\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"DP Sale (Only Having Sale)\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Office Code\", \"Office Name\", \"Office City\", \"Control Office\", \"Cust. Code\", \"Cust.Name\", \"Sale Amount\", \"NoOfAwb\"]\r\n this.excelService.title = \"DP Sale\" + ' From Date : ' + $('#fromdate').val() + \" To Date : \" + $('#todate').val();\r\n this.excelService.Widths = [15, 50, 50, 50, 50, 50, 15, 15]\r\n this.excelService.generateExcel();\r\n }\r\n else if (type == \"3\") {\r\n var data = []\r\n var loop = -1;\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (parseInt(this.rows[index].noofawb) <= 0) {\r\n loop += 1;\r\n data[loop] = [this.rows[index].officeCode,\r\n this.rows[index].officename,\r\n this.rows[index].city,\r\n this.rows[index].controloffice,\r\n this.rows[index].customercode,\r\n this.rows[index].customerName,\r\n this.rows[index].freightAmt,\r\n this.rows[index].noofawb\r\n\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname =\"DP Sale(Only Having Not Sale)\";\r\n let Office = Badata[0].officename == 'One-x Mahipalpur' ? \"Pan India\" : Badata[0].officename;\r\n this.excelService.header = [\"Office Code\", \"Office Name\", \"Office City\", \"Control Office\", \"Cust. Code\", \"Cust.Name\", \"Sale Amount\", \"NoOfAwb\"]\r\n this.excelService.title = \"DP Sale\" + ' From Date : ' + $('#fromdate').val() + \" To Date : \" + $('#todate').val();\r\n this.excelService.Widths = [15, 50, 50, 50, 50, 50, 15, 15]\r\n this.excelService.generateExcel();\r\n }\r\n }\r\n }\r\n\r\n\r\n}\r\nexport class rowdata {\r\n public officeCode: string;\r\n public officename: string;\r\n public city:string\r\n public controloffice: string;\r\n public kartsale: string;\r\n public noofawb: string;\r\n public customercode: string;\r\n public customerName: string;\r\n public freightAmt: string;\r\n}\r\n","export default \".separator-hr {\\n margin-top: 0;\\n margin-bottom: 10px;\\n}\\n\\n[hidden] {\\n display: none;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9zZXR0aW5ncy9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxzZXR0aW5nc1xcc2V0dGluZ3MuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvc2V0dGluZ3Mvc2V0dGluZ3MuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxhQUFBO0VBQ0EsbUJBQUE7QUNDSjs7QURFQTtFQUNJLGFBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvc2V0dGluZ3Mvc2V0dGluZ3MuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuc2VwYXJhdG9yLWhyIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG5baGlkZGVuXSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcbiIsIi5zZXBhcmF0b3ItaHIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59Il19 */\"","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Component, OnInit, OnDestroy, ViewChild } from '@angular/core';\r\nimport { Router, NavigationExtras, ActivatedRoute } from '@angular/router';\r\n\r\n\r\nimport { fadeInOut } from '../../services/animations';\r\nimport { BootstrapTabDirective } from '../../directives/bootstrap-tab.directive';\r\nimport { AccountService } from '../../services/account.service';\r\nimport { Permission } from '../../models/permission.model';\r\n\r\n@Component({\r\n selector: 'settings',\r\n templateUrl: './settings.component.html',\r\n styleUrls: ['./settings.component.scss'],\r\n animations: [fadeInOut]\r\n})\r\nexport class SettingsComponent implements OnInit, OnDestroy {\r\n\r\n isProfileActivated = true;\r\n isPreferencesActivated = false;\r\n isUsersActivated = false;\r\n isRolesActivated = false;\r\n\r\n fragmentSubscription: any;\r\n\r\n readonly profileTab = 'profile';\r\n readonly preferencesTab = 'preferences';\r\n readonly usersTab = 'users';\r\n readonly rolesTab = 'roles';\r\n\r\n\r\n @ViewChild('tab', { static: true })\r\n tab: BootstrapTabDirective;\r\n\r\n\r\n constructor(private router: Router, private route: ActivatedRoute, private accountService: AccountService) {\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.fragmentSubscription = this.route.fragment.subscribe(anchor => this.showContent(anchor));\r\n }\r\n\r\n\r\n ngOnDestroy() {\r\n this.fragmentSubscription.unsubscribe();\r\n }\r\n\r\n showContent(anchor: string) {\r\n if (anchor) {\r\n anchor = anchor.toLowerCase();\r\n }\r\n\r\n if ((this.isFragmentEquals(anchor, this.usersTab) && !this.canViewUsers) ||\r\n (this.isFragmentEquals(anchor, this.rolesTab) && !this.canViewRoles)) {\r\n return;\r\n }\r\n\r\n this.tab.show(`#${anchor || this.profileTab}Tab`);\r\n }\r\n\r\n\r\n isFragmentEquals(fragment1: string, fragment2: string) {\r\n\r\n if (fragment1 == null) {\r\n fragment1 = '';\r\n }\r\n\r\n if (fragment2 == null) {\r\n fragment2 = '';\r\n }\r\n\r\n return fragment1.toLowerCase() == fragment2.toLowerCase();\r\n }\r\n\r\n\r\n onShowTab(event) {\r\n const activeTab = event.target.hash.split('#', 2).pop();\r\n\r\n this.isProfileActivated = activeTab == this.profileTab;\r\n this.isPreferencesActivated = activeTab == this.preferencesTab;\r\n this.isUsersActivated = activeTab == this.usersTab;\r\n this.isRolesActivated = activeTab == this.rolesTab;\r\n\r\n this.router.navigate([], { fragment: activeTab });\r\n }\r\n\r\n\r\n get canViewUsers() {\r\n return this.accountService.userHasPermission(Permission.viewUsersPermission);\r\n }\r\n\r\n get canViewRoles() {\r\n return this.accountService.userHasPermission(Permission.viewRolesPermission);\r\n }\r\n}\r\n","export default \".control-box {\\n margin-bottom: 5px;\\n}\\n\\n.search-box {\\n margin: 0;\\n}\\n\\n.nav-item.toolbaritem a {\\n padding-top: 3px;\\n padding-bottom: 3px;\\n min-width: 100px;\\n}\\n\\n.user-disabled {\\n color: #777;\\n font-style: italic;\\n}\\n\\n.locked-out {\\n background-color: orangered;\\n color: whitesmoke;\\n width: 100%;\\n display: inline-block;\\n padding-left: 5px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9zdGF0ZW1hc3Rlci9EOlxcT25leFdlYlxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcQ2xpZW50QXBwL3NyY1xcYXBwXFxjb21wb25lbnRzXFxzdGF0ZW1hc3Rlclxcc3RhdGVtYXN0ZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvc3RhdGVtYXN0ZXIvc3RhdGVtYXN0ZXIuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7RUFDRSxrQkFBQTtBQ0RGOztBRElBO0VBQ0UsU0FBQTtBQ0RGOztBRElBO0VBQ0UsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0FDREY7O0FESUE7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7QUNERjs7QURJQTtFQUNFLDJCQUFBO0VBQ0EsaUJBQUE7RUFDQSxXQUFBO0VBQ0EscUJBQUE7RUFDQSxpQkFBQTtBQ0RGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9zdGF0ZW1hc3Rlci9zdGF0ZW1hc3Rlci5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5cclxuLmNvbnRyb2wtYm94IHtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuXHJcbi5zZWFyY2gtYm94IHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5uYXYtaXRlbS50b29sYmFyaXRlbSBhIHtcclxuICBwYWRkaW5nLXRvcDogM3B4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAzcHg7XHJcbiAgbWluLXdpZHRoOiAxMDBweDtcclxufVxyXG5cclxuLnVzZXItZGlzYWJsZWQge1xyXG4gIGNvbG9yOiAjNzc3O1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLmxvY2tlZC1vdXQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IG9yYW5nZXJlZDtcclxuICBjb2xvcjogd2hpdGVzbW9rZTtcclxuICB3aWR0aDogMTAwJTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbn1cclxuIiwiLmNvbnRyb2wtYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4uc2VhcmNoLWJveCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm5hdi1pdGVtLnRvb2xiYXJpdGVtIGEge1xuICBwYWRkaW5nLXRvcDogM3B4O1xuICBwYWRkaW5nLWJvdHRvbTogM3B4O1xuICBtaW4td2lkdGg6IDEwMHB4O1xufVxuXG4udXNlci1kaXNhYmxlZCB7XG4gIGNvbG9yOiAjNzc3O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5sb2NrZWQtb3V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogb3JhbmdlcmVkO1xuICBjb2xvcjogd2hpdGVzbW9rZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59Il19 */\"","import { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, Input, OnInit,AfterViewInit } from '@angular/core';\r\nimport { StateKey } from '@angular/platform-browser';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { RoleEditorComponent } from '../../components/controls/role-editor.component';\r\nimport { Permission } from '../../models/permission.model';\r\nimport { StateMaster} from '../../models/statemaster.model';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Masters } from '../../services/masters.service';\r\n\r\n@Component({\r\n selector: 'app-statemaster',\r\n templateUrl: './statemaster.component.html',\r\n styleUrls: ['./statemaster.component.scss']\r\n})\r\nexport class StateMasterComponent implements OnInit, AfterViewInit {\r\n //StateMaster = new StateMaster();\r\n columns: any[] = [];\r\n rows: StateMaster[] = []; //StateMaster[] = [];\r\n rowsCache: StateMaster[] = [];\r\n allPermissions: Permission[] = [];\r\n isEditMode = false;\r\n public isNewState:boolean= false;\r\n editedState: StateMaster;\r\n sourceState: StateMaster;\r\n editingStateName: { name: string };\r\n showValidationErrors =false\r\n loadingIndicator: boolean;\r\n stateEdit: StateMaster = new StateMaster();\r\n isLoading = false;\r\n formResetToggle = true;\r\n modalClosedCallback: () => void;\r\n changesCancelledCallback: () => void;\r\n loginStatusSubscription: any;\r\n @Input()\r\n isModal = false;\r\n public isSaving = false;\r\n @ViewChild('f', { static: false })\r\n public form;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef; \r\n @ViewChild('editorModal', { static: true })\r\n editorModal: ModalDirective; \r\n @ViewChild('stateCode', { static: false })\r\n public stateCode;\r\n @ViewChild('stateName', { static: false })\r\n public stateName;\r\n @ViewChild('stateEditor', { static: true })\r\n stateEditor: ModalDirective;\r\n\r\n constructor(private configurations: ConfigurationService, private authService: AuthService, private route: Router,\r\n private alertService: AlertService, private stateService:Masters) {\r\n }\r\n\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.stateCode, r.stateName));\r\n }\r\n ngOnInit() {\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'stateCode',name:'State Code', width: 75 },\r\n { prop: 'stateName', name: 'State Name', width: 320 }\r\n \r\n //{ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false }\r\n ];\r\n this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.loadData()\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve states from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n ngAfterViewInit() {\r\n\r\n this.modalClosedCallback = () => {\r\n this.addNewStateToList();\r\n this.editorModal.hide();\r\n };\r\n\r\n this.changesCancelledCallback = () => {\r\n this.editedState = null;\r\n this.sourceState = null;\r\n this.editorModal.hide();\r\n };\r\n }\r\n addNewStateToList() {\r\n if (this.sourceState) {\r\n Object.assign(this.sourceState, this.editedState);\r\n\r\n let sourceIndex = this.rowsCache.indexOf(this.sourceState, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.rowsCache, sourceIndex, 0);\r\n }\r\n\r\n sourceIndex = this.rows.indexOf(this.sourceState, 0);\r\n if (sourceIndex > -1) {\r\n Utilities.moveArrayItem(this.rows, sourceIndex, 0);\r\n }\r\n\r\n this.editedState = null;\r\n this.sourceState = null;\r\n } else {\r\n const state = new StateMaster();\r\n Object.assign(state, this.editedState);\r\n this.editedState = null;\r\n\r\n let maxIndex = 0;\r\n for (const u of this.rowsCache) {\r\n if ((u as any).index > maxIndex) {\r\n maxIndex = (u as any).index;\r\n }\r\n }\r\n\r\n (state as any).index = maxIndex + 1;\r\n\r\n this.rowsCache.splice(0, 0, state);\r\n this.rows.splice(0, 0, state);\r\n this.rows = [...this.rows];\r\n }\r\n }\r\n\r\n loadData() {\r\n this.alertService.startLoadingMessage();\r\n this.loadingIndicator = true;\r\n this.stateService.getStates().subscribe(results => this.onDataLoadSuccessful(results), error => this.onDataLoadFailed(error));\r\n \r\n }\r\n onDataLoadSuccessful(states: StateMaster[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n states.forEach((state, index, states) => {\r\n (state as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...states];\r\n this.rows = states;\r\n\r\n }\r\n \r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n editState(row: StateMaster) {\r\n this.isNewState = false;\r\n this.isEditMode = true;\r\n this.editingStateName = { name: row.stateName };\r\n this.editedState = row;\r\n this.sourceState = row;\r\n this.editorModal.show();\r\n }\r\n \r\n \r\n closeModal() {\r\n this.modalClosedCallback();\r\n \r\n }\r\n cancel() {\r\n \r\n this.stateEdit = new StateMaster();\r\n \r\n\r\n this.resetForm();\r\n\r\n this.alertService.showMessage('Cancelled', 'Operation cancelled by user', MessageSeverity.default);\r\n this.alertService.resetStickyMessage();\r\n\r\n \r\n this.isEditMode = false;\r\n \r\n\r\n if (this.changesCancelledCallback) {\r\n this.changesCancelledCallback();\r\n }\r\n }\r\n resetForm(replace = false) {\r\n\r\n if (!replace) {\r\n this.form.reset();\r\n } else {\r\n this.formResetToggle = false;\r\n\r\n setTimeout(() => {\r\n this.formResetToggle = true;\r\n });\r\n }\r\n }\r\n \r\n DeleteState(row: StateMaster) {\r\n this.alertService.showDialog('Are you sure you want to delete \\\"' + row.stateName + '\\\"?', DialogType.confirm, () => this.deleteStateHelper(row));\r\n\r\n }\r\n deleteStateHelper(row: StateMaster) {\r\n\r\n this.alertService.startLoadingMessage('Deleting...');\r\n this.loadingIndicator = true;\r\n\r\n this.stateService.DeleteState(row.stateName)\r\n .subscribe(results => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.rowsCache = this.rowsCache.filter(item => item !== row);\r\n this.rows = this.rows.filter(item => item !== row);\r\n },\r\n error => {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Delete Error', `An error occured whilst deleting the state.\\r\\nError: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n });\r\n }\r\n InsertState() {\r\n if (this.isNewState) {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.stateService.newState(this.stateEdit).subscribe(state => this.saveSuccessHelper(state), error => this.saveFailedHelper(error));\r\n this.showValidationErrors = false;\r\n }\r\n else {\r\n this.isSaving = true;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.stateService.UpdateState(this.editedState).subscribe(state => this.saveSuccessHelper(state), error => this.saveFailedHelper(error));\r\n this.showValidationErrors = false;\r\n }\r\n }\r\n\r\n\r\n onEditorModalHidden() {\r\n this.showValidationErrors = false;\r\n this.editingStateName = null;\r\n this.sourceState = null;\r\n this.editorModal.hide();\r\n }\r\n newState() {\r\n this.showValidationErrors = false;\r\n this.isNewState = true;\r\n this.isEditMode = true;\r\n this.stateEdit = this.editedState = new StateMaster();\r\n this.editingStateName = null;\r\n this.sourceState = null;\r\n this.editorModal.show();\r\n }\r\n\r\n\r\n private saveSuccessHelper(state?: StateMaster) {\r\n if (state) {\r\n Object.assign(this.stateEdit, state);\r\n //this.stateEdit.StateName = this.stateEdit.stateName\r\n }\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `State \\\"${this.stateEdit.stateName}\\\" was created successfully`, MessageSeverity.success);\r\n this.editorModal.hide();\r\n this.loadData();\r\n this.showValidationErrors = false;\r\n }\r\n\r\n private saveFailedHelper(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n\r\n}\r\n\r\n\r\n","export default \"@media print {\\n #printsec {\\n overflow-y: visible !important;\\n position: relative;\\n }\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy90YWxseS1sZWRnZXItcmVwb3J0L0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXHRhbGx5LWxlZGdlci1yZXBvcnRcXHRhbGx5LWxlZGdlci1yZXBvcnQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvdGFsbHktbGVkZ2VyLXJlcG9ydC90YWxseS1sZWRnZXItcmVwb3J0LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0U7SUFDRSw4QkFBQTtJQUNBLGtCQUFBO0VDQ0Y7QUFDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdGFsbHktbGVkZ2VyLXJlcG9ydC90YWxseS1sZWRnZXItcmVwb3J0LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQG1lZGlhIHByaW50IHtcclxuICAjcHJpbnRzZWMge1xyXG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxufVxyXG4iLCJAbWVkaWEgcHJpbnQge1xuICAjcHJpbnRzZWMge1xuICAgIG92ZXJmbG93LXk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn0iXX0= */\"","import { AfterViewInit, Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-tally-ledger-report',\r\n templateUrl: './tally-ledger-report.component.html',\r\n styleUrls: ['./tally-ledger-report.component.scss']\r\n})\r\nexport class TallyLedgerReportComponent implements OnInit,AfterViewInit {\r\n tledgermaster: any[] = [];\r\n AutocompList: any[] = [];\r\n constructor(private dialog: MatDialog, private tallyservice: TallyService, private transaction: TransactionService, private configurations: ConfigurationService, private localstre: LocalStoreManager, private router: Router, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) { }\r\n\r\n ngOnInit() {\r\n this.tallyservice.GetTallyLedger().subscribe(result => {\r\n if (result) {\r\n this.localstre.saveSessionData(result, \"TallyLedgerMaster\")\r\n this.tledgermaster = result;\r\n }\r\n });\r\n\r\n }\r\n ngAfterViewInit() {\r\n const ifram = (document.getElementById(\"frmtallyreport\"))\r\n ifram.addEventListener(\"load\", this.onloadiframe);\r\n ifram.style.height = ifram.contentWindow.document.documentElement.scrollHeight + 'px';\r\n\r\n }\r\n onloadiframe(obj) {\r\n const ifram = (document.getElementById(\"frmtallyreport\"))\r\n\r\n ifram.style.height = ifram.contentWindow.document.documentElement.scrollHeight + 'px';\r\n ifram.style.width = '100%';\r\n }\r\n GetLedgerHelp($event) {\r\n\r\n this.AutocompList = [];\r\n this.tledgermaster.forEach((ledger, index, ledarr) => {\r\n if (this.AutocompList.length == 0) {\r\n this.AutocompList[0] = ledger.name;\r\n }\r\n else {\r\n this.AutocompList.push(ledger.name);\r\n }\r\n });\r\n $('#vledger').autocomplete({\r\n source: this.AutocompList,\r\n delay: 50\r\n });\r\n }\r\n GetledgerReport() {\r\n let ledgername = $('#vledger').val();\r\n let fromdate = $('#fromdate').val();\r\n let todate = $('#todate').val();\r\n if (isNullOrUndefined(ledgername) || ledgername == '') {\r\n $('#vledger').focus();\r\n return;\r\n }\r\n if (isNullOrUndefined(fromdate) || fromdate == '') {\r\n $('#fromdate').focus();\r\n return;\r\n }\r\n if (isNullOrUndefined(todate) || todate == '') {\r\n $('#todate').focus();\r\n return;\r\n }\r\n var req = new TallyRequest()\r\n req.fromDate = fromdate;\r\n req.toDate = todate;\r\n req.LedgerName = ledgername;\r\n this.tallyservice.PostTallyLedgerReport(req).subscribe(result => {\r\n if (result && result.status == 0) {\r\n // $(\"#frmtallyreport\").attr(\"src\", result.response);\r\n var resp: string = result.response;\r\n\r\n resp = resp.replace('width=\"1297\"', '');\r\n resp = resp.replace('Width=\"1297\"', '');\r\n var regtmp = /width=\"1297\"/g\r\n resp = resp.replace(regtmp, '');\r\n\r\n $('#frmtallyreport').attr(\"srcdoc\", resp); \r\n\r\n var iframe = document.getElementById(\"frmtallyreport\");\r\n iframe.width = iframe.contentWindow.document.body.scrollWidth.toString();\r\n iframe.height = iframe.contentWindow.document.body.scrollHeight.toString();\r\n iframe.style.height = iframe.contentWindow.document.documentElement.scrollHeight + 'px';\r\n\r\n \r\n }\r\n else {\r\n this.alertService.showMessage(\"Ledger\", \"Error in getting ledger report....\", MessageSeverity.error);\r\n }\r\n }, error => this.onDataLoadFailed(error));\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n}\r\nexport class TallyRequest {\r\n public fromDate: string;\r\n public toDate: string; \r\n public LedgerName: string; \r\n }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdGFsbHktbGVkZ2VyL3RhbGx5LWxlZGdlci5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AlertService } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\n\n@Component({\n selector: 'app-tally-ledger',\n templateUrl: './tally-ledger.component.html',\n styleUrls: ['./tally-ledger.component.scss']\n})\nexport class TallyLedgerComponent implements OnInit {\n\n constructor(private transaction: TransactionService, private ServiceMaster: Masters,\n private alertService: AlertService, private configurations: ConfigurationService,\n private authService: AuthService, public router: ActivatedRoute, private _router: Router) { }\n\n ngOnInit() {\n }\n\n}\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdGFsbHktdm91Y2hlci90YWxseS12b3VjaGVyLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { MatDialog } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-tally-voucher',\r\n templateUrl: './tally-voucher.component.html',\r\n styleUrls: ['./tally-voucher.component.scss']\r\n})\r\nexport class TallyVoucherComponent implements OnInit {\r\n\r\n tledgermaster: TallyLedgerMaster[] = [];\r\n tcostcenter: TallyCostCenter[] = [];\r\n tvouchertype: TallyVoucherType[] = [];\r\n AutocompList: string[] = [];\r\n columns: any[] = [];\r\n newdt = new Date();\r\n rows: vledger[] = [];\r\n tCredit: number = 0;\r\n tDebit: number = 0;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n\r\n constructor(private dialog: MatDialog, private tallyservice: TallyService, private transaction: TransactionService, private configurations: ConfigurationService, private localstre: LocalStoreManager, private router: Router, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) { }\r\n\r\n ngOnInit() {\r\n this.tCredit = 0;\r\n this.tDebit = 0;\r\n this.columns = [\r\n { prop: 'indexNumber', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'drcr', name: 'Dr/Cr', width: 100 },\r\n { prop: 'ledgerName', name: 'Ledger Name', width: 100 },\r\n { prop: 'Amount', name: 'Amount', width: 100 },\r\n { prop: 'costcenterName', name: 'Cost Center', width: 100 },\r\n\r\n ];\r\n\r\n\r\n this.tallyservice.GetTallyLedger().subscribe(result => {\r\n if (result) {\r\n this.localstre.saveSessionData(result, \"TallyLedgerMaster\")\r\n this.tledgermaster = result;\r\n }\r\n });\r\n this.tallyservice.GetTallyVoucherType().subscribe(result => {\r\n if (result) {\r\n this.localstre.saveSessionData(result, \"TallyVoucherType\")\r\n this.tvouchertype = result;\r\n }\r\n });\r\n this.tallyservice.GetTallyCostCenter().subscribe(result => {\r\n if (result) {\r\n this.localstre.saveSessionData(result, \"TallyCostCenter\")\r\n this.tcostcenter = result;\r\n }\r\n });\r\n\r\n }\r\n GetLedgerHelp($event) {\r\n\r\n this.AutocompList = [];\r\n this.tledgermaster.forEach((ledger, index, ledarr) => {\r\n if (this.AutocompList.length == 0) {\r\n this.AutocompList[0] = ledger.name;\r\n }\r\n else {\r\n this.AutocompList.push(ledger.name);\r\n }\r\n });\r\n $('#vledger').autocomplete({\r\n source: this.AutocompList,\r\n delay: 50\r\n });\r\n }\r\n GetvtypeHelp($event) {\r\n\r\n this.AutocompList = [];\r\n this.tvouchertype.forEach((ledger, index, ledarr) => {\r\n if (this.AutocompList.length == 0) {\r\n this.AutocompList[0] = ledger.name;\r\n }\r\n else {\r\n this.AutocompList.push(ledger.name);\r\n }\r\n });\r\n $('#Vtype').autocomplete({\r\n source: this.AutocompList,\r\n delay: 50\r\n });\r\n }\r\n adddetail() {\r\n if ($('#vledger').val() == '' || isNullOrUndefined($('#vledger').val())) {\r\n $('#vledger').focus();\r\n return;\r\n }\r\n if ($('#vamount').val() == '' || $('#vamount').val() == '0' || isNullOrUndefined($('#vamount').val())) {\r\n $('#vamount').focus();\r\n return;\r\n }\r\n if ($('#Drcr option:selected').val() == 'NA') {\r\n $('#Drcr').focus();\r\n }\r\n\r\n if ($('#Drcr option:selected').val() == 'DR') {\r\n this.tDebit = this.tDebit + parseFloat($('#vamount').val())\r\n\r\n }\r\n else {\r\n this.tCredit = this.tCredit + parseFloat($('#vamount').val())\r\n }\r\n var costcat = \"\";\r\n if ($('#costcenter').val() != '' && !isNullOrUndefined($('#costcenter').val())) {\r\n this.tcostcenter.forEach((costcnt, index, arr) => {\r\n if (costcnt.name == $('#costcenter').val()) {\r\n costcat = costcnt.category;\r\n }\r\n });\r\n }\r\n\r\n if (this.rows.length == 0) {\r\n this.rows[0] = new vledger();\r\n this.rows[0].ledgerName = $('#vledger').val();\r\n this.rows[0].Amount = $('#vamount').val();\r\n this.rows[0].refrenceno = $('#refno').val();\r\n this.rows[0].costcenterName = $('#costcenter').val();\r\n this.rows[0].costcategoryname = costcat;\r\n this.rows[0].drcr = $('#Drcr option:selected').val();\r\n }\r\n else {\r\n var vl = new vledger();\r\n vl.ledgerName = $('#vledger').val();\r\n vl.Amount = $('#vamount').val();\r\n vl.refrenceno = $('#refno').val();\r\n vl.costcenterName = $('#costcenter').val();\r\n vl.costcategoryname = costcat;\r\n vl.drcr = $('#Drcr option:selected').val();\r\n this.rows.push(vl)\r\n }\r\n this.rows.forEach((ledger, index, arr) => {\r\n ledger.indexNumber = (index + 1).toString();\r\n });\r\n this.rows = [...this.rows];\r\n }\r\n SaveVoucher() {\r\n\r\n if ($('#Vremarks').val() == '' || isNullOrUndefined($('#Vremarks').val())) {\r\n $('#Vremarks').focus();\r\n return;\r\n }\r\n if ($('#Vdate').val() == '' || isNullOrUndefined($('#Vdate').val())) {\r\n $('#Vdate').focus();\r\n return;\r\n }\r\n if ($('#Vtype').val() == '' || isNullOrUndefined($('#Vtype').val())) {\r\n $('#Vtype').focus();\r\n return;\r\n }\r\n if (this.tCredit == 0) {\r\n this.alertService.showMessage(\"Credit Amount\", \"Credit amount not can 0 !\", MessageSeverity.error)\r\n return;\r\n }\r\n if (this.tDebit == 0) {\r\n this.alertService.showMessage(\"Credit Amount\", \"Debit amount not can 0 !\", MessageSeverity.error)\r\n return;\r\n }\r\n if (this.tDebit != this.tCredit) {\r\n this.alertService.showMessage(\"Amount Mismatch\", \"Debit and credit amount mismatch !\", MessageSeverity.error)\r\n return;\r\n }\r\n var tvoucher = new TallyVoucher();\r\n tvoucher.Ledgerdetail = this.rows;\r\n tvoucher.Narration = $('#Vremarks').val();\r\n tvoucher.VoucherDate = $('#Vdate').val();\r\n tvoucher.voucherType = $('#Vtype').val();\r\n tvoucher.referenceno = $('#refno').val();\r\n tvoucher.Action = \"Create\";\r\n var _Balogindata = this.localstre.getData(\"BaLoginData\");\r\n tvoucher.OfficeName = _Balogindata[0].officename;\r\n tvoucher.OfficeId = _Balogindata[0].officeid;\r\n tvoucher.TotalCredit = this.tCredit;\r\n tvoucher.TotalDebit = this.tDebit;\r\n this.tallyservice.PostTallyVoucher(tvoucher).subscribe(result => {\r\n if (result) {\r\n if (result.status == 0) {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.success)\r\n this.route.navigate(['/vchprint'], {\r\n queryParams: {\r\n billNo: result.response.split(',')[1].split('-')[1].trim(),\r\n backurl: '/tallyvoucher'\r\n }\r\n });// define your componen\r\n }\r\n else {\r\n this.alertService.showMessage(\"Voucher\", result.response, MessageSeverity.error);\r\n }\r\n }\r\n }, error => {this.alertService.showMessage(\"Error\", JSON.stringify(error), MessageSeverity.error) });\r\n\r\n }\r\n Getcostcenterhelp($event) {\r\n\r\n this.AutocompList = [];\r\n this.tcostcenter.forEach((ledger, index, ledarr) => {\r\n if (this.AutocompList.length == 0) {\r\n this.AutocompList[0] = ledger.name;\r\n }\r\n else {\r\n this.AutocompList.push(ledger.name);\r\n }\r\n });\r\n $('#costcenter').autocomplete({\r\n source: this.AutocompList,\r\n delay: 50\r\n });\r\n }\r\n}\r\nexport class TallyLedgerMaster {\r\n masterId: number\r\n guid: string\r\n remoteId: string\r\n alterId: number\r\n name: string\r\n groupName: string\r\n groupId: string\r\n alias: string\r\n tallyLedgerId: string\r\n createdOn: string\r\n updatedOn: string\r\n openingBalance: number\r\n}\r\nexport class TallyVoucherType {\r\n masterId: number\r\n guid: string\r\n remoteId: string\r\n alterId: number\r\n name: string\r\n alias: string\r\n parent: string\r\n parentId: string\r\n numberingMethod: string\r\n useZeroEntries: any\r\n isActive: any\r\n printAfterSave: any\r\n useforPOSInvoice: any\r\n vchPrintBankName: string\r\n vchPrintTitle: string\r\n taxUnitName: string\r\n vchPrintJurisdiction: string\r\n isOptional: any\r\n commonNarration: any\r\n multiNarration: any\r\n isDefaultAllocationEnabled: any\r\n effectStock: any\r\n asMfgJrnl: any\r\n useforJobwork: any\r\n isforJobworkIn: any\r\n voucherClasses: any[]\r\n defaultVoucherCategory: number\r\n coreVoucherType: number\r\n canDelete: any\r\n}\r\nexport class TallyCostCenter {\r\n masterId: number\r\n guid: string\r\n remoteId: string\r\n alterId: number\r\n name: string\r\n category: string\r\n categoryId: string\r\n parent: string\r\n parentId: string\r\n emailId: string\r\n showOpeningBal: any\r\n alias: string\r\n}\r\n\r\nexport class TallyVoucher {\r\n voucherType: string;\r\n VoucherDate: string;\r\n Narration: string;\r\n Ledgerdetail: vledger[];\r\n Action: string;\r\n OfficeId: string;\r\n OfficeName: string; \r\n TotalCredit: number; \r\n TotalDebit: number;\r\n referenceno: string;\r\n}\r\nexport class vledger {\r\n ledgerName: string;\r\n ledgerId: string;\r\n indexNumber: string;\r\n drcr: string;\r\n Amount: number;\r\n costcenterName: string;\r\n costcategoryname: string;\r\n costcenterAmount: string;\r\n refrenceno: string;\r\n\r\n}\r\n\r\n","export default \".row {\\n margin-right: 0px;\\n margin-left: 0px;\\n}\\n\\n.form-group {\\n margin-bottom: 5px;\\n}\\n\\n.card-header {\\n background-color: #142c4c;\\n color: white;\\n}\\n\\n.toggle.btn-sm {\\n min-width: 70px !important;\\n min-height: 30px;\\n}\\n\\n.toggle.btn {\\n min-width: 70px !important;\\n min-height: 34px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy90YXJpZmYtcmF0ZS1tYXN0ZXIvRDpcXE9uZXhXZWJcXE9uZXhBbmd1bGFyQXBwXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXENsaWVudEFwcC9zcmNcXGFwcFxcY29tcG9uZW50c1xcdGFyaWZmLXJhdGUtbWFzdGVyXFx0YXJpZmYtcmF0ZS1tYXN0ZXIuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvdGFyaWZmLXJhdGUtbWFzdGVyL3RhcmlmZi1yYXRlLW1hc3Rlci5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGlCQUFBO0VBQ0EsZ0JBQUE7QUNDRjs7QURFQTtFQUNFLGtCQUFBO0FDQ0Y7O0FERUE7RUFDRSx5QkFBQTtFQUNBLFlBQUE7QUNDRjs7QURFQTtFQUNFLDBCQUFBO0VBQ0EsZ0JBQUE7QUNDRjs7QURFQTtFQUNFLDBCQUFBO0VBQ0EsZ0JBQUE7QUNDRiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdGFyaWZmLXJhdGUtbWFzdGVyL3RhcmlmZi1yYXRlLW1hc3Rlci5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5yb3cge1xyXG4gIG1hcmdpbi1yaWdodDogMHB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAwcHg7XHJcbn1cclxuXHJcbi5mb3JtLWdyb3VwIHtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuXHJcbi5jYXJkLWhlYWRlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MmM0YztcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi50b2dnbGUuYnRuLXNtIHtcclxuICBtaW4td2lkdGg6IDcwcHggIWltcG9ydGFudDtcclxuICBtaW4taGVpZ2h0OiAzMHB4O1xyXG59XHJcblxyXG4udG9nZ2xlLmJ0biB7XHJcbiAgbWluLXdpZHRoOiA3MHB4ICFpbXBvcnRhbnQ7XHJcbiAgbWluLWhlaWdodDogMzRweDtcclxufVxyXG4iLCIucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4uY2FyZC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQyYzRjO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi50b2dnbGUuYnRuLXNtIHtcbiAgbWluLXdpZHRoOiA3MHB4ICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IDMwcHg7XG59XG5cbi50b2dnbGUuYnRuIHtcbiAgbWluLXdpZHRoOiA3MHB4ICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IDM0cHg7XG59Il19 */\"","import { Component, OnInit } from '@angular/core';\nimport { MatDialog } from '@angular/material';\r\nimport { Router } from '@angular/router';\r\nimport { AlertService } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TallyService } from '../../services/tally.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\n\n@Component({\n selector: 'app-tariff-rate-master',\n templateUrl: './tariff-rate-master.component.html',\n styleUrls: ['./tariff-rate-master.component.scss']\n})\nexport class TariffRateMasterComponent implements OnInit {\n\n constructor(private dialog: MatDialog,private tallyservice:TallyService, private transaction: TransactionService, private configurations: ConfigurationService, private localstre: LocalStoreManager, private router: Router, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) { }\n\n ngOnInit() {\n\n this.tallyservice.GetTallyLedger().subscribe(result => {\n if (result) {\r\n this.localstre.saveSessionData(result, \"TallyLedgerMaster\")\r\n }\r\n });\n this.tallyservice.GetTallyVoucherType().subscribe(result => {\n if (result) {\r\n this.localstre.saveSessionData(result, \"TallyVoucherType\")\r\n }\r\n });\n this.tallyservice.GetTallyCostCenter().subscribe(result => {\n if (result) {\r\n this.localstre.saveSessionData(result, \"TallyCostCenter\")\r\n }\r\n });\n }\n\n}\n","export default \"body {\\n margin: 0;\\n font-family: \\\"Source Sans Pro\\\", -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\", Arial, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\";\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n background-color: #fff;\\n}\\n\\n.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {\\n position: relative;\\n width: 100%;\\n padding-right: 7.5px;\\n padding-left: 7.5px;\\n}\\n\\n.small-box {\\n border-radius: 0.25rem;\\n box-shadow: 0 0 1px rgba(0, 0, 0, 0.13), 0 1px 3px rgba(0, 0, 0, 0.2);\\n display: block;\\n margin-bottom: 20px;\\n position: relative;\\n}\\n\\n.small-box > .small-box-footer {\\n background-color: rgba(0, 0, 0, 0.1);\\n color: rgba(255, 255, 255, 0.8);\\n display: block;\\n padding: 3px 0;\\n position: relative;\\n text-align: center;\\n text-decoration: none;\\n z-index: 10;\\n}\\n\\n.bg-info > a {\\n color: #fff !important;\\n}\\n\\n.row {\\n display: flex;\\n flex-wrap: wrap;\\n margin-right: -7.5px;\\n margin-left: -7.5px;\\n}\\n\\n.col-lg-3 .small-box h3, .col-md-3 .small-box h3, .col-xl-3 .small-box h3 {\\n font-size: 2.2rem;\\n}\\n\\n.small-box h3 {\\n font-size: 2.2rem;\\n font-weight: 700;\\n margin: 0 0 10px;\\n padding: 0;\\n white-space: nowrap;\\n color: #fff;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box h3, .small-box p {\\n z-index: 5;\\n}\\n\\n.small-box p {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\n*, ::after, ::before {\\n box-sizing: border-box;\\n}\\n\\np {\\n display: block;\\n -webkit-margin-before: 1em;\\n margin-block-start: 1em;\\n -webkit-margin-after: 1em;\\n margin-block-end: 1em;\\n -webkit-margin-start: 0px;\\n margin-inline-start: 0px;\\n -webkit-margin-end: 0px;\\n margin-inline-end: 0px;\\n}\\n\\n.small-box:hover {\\n text-decoration: none;\\n}\\n\\n.bg-success, .bg-success > a {\\n color: #fff !important;\\n}\\n\\n.inner {\\n height: 120px !important;\\n padding-left: 10px;\\n padding-top: 10px;\\n}\\n\\n.color {\\n color: #fff;\\n font-size: 1.4rem !important;\\n}\\n\\nbutton.close {\\n position: absolute;\\n top: 0.25rem;\\n right: 1.5rem;\\n z-index: 100;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy90ZWFib29raW5nZGFzaGJvYXJkL0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXHRlYWJvb2tpbmdkYXNoYm9hcmRcXHRlYWJvb2tpbmdkYXNoYm9hcmQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvdGVhYm9va2luZ2Rhc2hib2FyZC90ZWFib29raW5nZGFzaGJvYXJkLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0UsU0FBQTtFQUNBLG9MQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQkFBQTtBQ0RGOztBRElBO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0Esb0JBQUE7RUFDQSxtQkFBQTtBQ0RGOztBRElBO0VBQ0Usc0JBQUE7RUFDQSxxRUFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FDREY7O0FESUE7RUFDRSxvQ0FBQTtFQUNBLCtCQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0FDREY7O0FESUE7RUFDRSxzQkFBQTtBQ0RGOztBRElBO0VBRUUsYUFBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0FDREY7O0FESUE7RUFDRSxpQkFBQTtBQ0RGOztBRElBO0VBQ0UsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtBQ0RGOztBRElBO0VBQ0UsVUFBQTtBQ0RGOztBRElBO0VBQ0UsZUFBQTtBQ0RGOztBRElBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0FDREY7O0FESUE7RUFDRSxzQkFBQTtBQ0RGOztBRElBO0VBQ0UsY0FBQTtFQUNBLDBCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtVQUFBLHFCQUFBO0VBQ0EseUJBQUE7VUFBQSx3QkFBQTtFQUNBLHVCQUFBO1VBQUEsc0JBQUE7QUNERjs7QURJQTtFQUNFLFVBQUE7QUNERjs7QURJQTtFQUNFLGVBQUE7QUNERjs7QURJQTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtBQ0RGOztBRElBO0VBQ0Usc0JBQUE7QUNERjs7QURJQTtFQUNFLGNBQUE7RUFDQSwwQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJBQUE7VUFBQSxxQkFBQTtFQUNBLHlCQUFBO1VBQUEsd0JBQUE7RUFDQSx1QkFBQTtVQUFBLHNCQUFBO0FDREY7O0FESUE7RUFDRSxxQkFBQTtBQ0RGOztBRElBO0VBQ0Usc0JBQUE7QUNERjs7QURJQTtFQUNFLHdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBQ0RGOztBRElBO0VBQ0UsV0FBQTtFQUNBLDRCQUFBO0FDREY7O0FETUE7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtBQ0hGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy90ZWFib29raW5nZGFzaGJvYXJkL3RlYWJvb2tpbmdkYXNoYm9hcmQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuXHJcbmJvZHkge1xyXG4gIG1hcmdpbjogMDtcclxuICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIiwtYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxcIlNlZ29lIFVJXCIsUm9ib3RvLFwiSGVsdmV0aWNhIE5ldWVcIixBcmlhbCxzYW5zLXNlcmlmLFwiQXBwbGUgQ29sb3IgRW1vamlcIixcIlNlZ29lIFVJIEVtb2ppXCIsXCJTZWdvZSBVSSBTeW1ib2xcIjtcclxuICBmb250LXNpemU6IDFyZW07XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5jb2wsIC5jb2wtMSwgLmNvbC0xMCwgLmNvbC0xMSwgLmNvbC0xMiwgLmNvbC0yLCAuY29sLTMsIC5jb2wtNCwgLmNvbC01LCAuY29sLTYsIC5jb2wtNywgLmNvbC04LCAuY29sLTksIC5jb2wtYXV0bywgLmNvbC1sZywgLmNvbC1sZy0xLCAuY29sLWxnLTEwLCAuY29sLWxnLTExLCAuY29sLWxnLTEyLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy1hdXRvLCAuY29sLW1kLCAuY29sLW1kLTEsIC5jb2wtbWQtMTAsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTIsIC5jb2wtbWQtMiwgLmNvbC1tZC0zLCAuY29sLW1kLTQsIC5jb2wtbWQtNSwgLmNvbC1tZC02LCAuY29sLW1kLTcsIC5jb2wtbWQtOCwgLmNvbC1tZC05LCAuY29sLW1kLWF1dG8sIC5jb2wtc20sIC5jb2wtc20tMSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiwgLmNvbC1zbS0yLCAuY29sLXNtLTMsIC5jb2wtc20tNCwgLmNvbC1zbS01LCAuY29sLXNtLTYsIC5jb2wtc20tNywgLmNvbC1zbS04LCAuY29sLXNtLTksIC5jb2wtc20tYXV0bywgLmNvbC14bCwgLmNvbC14bC0xLCAuY29sLXhsLTEwLCAuY29sLXhsLTExLCAuY29sLXhsLTEyLCAuY29sLXhsLTIsIC5jb2wteGwtMywgLmNvbC14bC00LCAuY29sLXhsLTUsIC5jb2wteGwtNiwgLmNvbC14bC03LCAuY29sLXhsLTgsIC5jb2wteGwtOSwgLmNvbC14bC1hdXRvIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZy1yaWdodDogNy41cHg7XHJcbiAgcGFkZGluZy1sZWZ0OiA3LjVweDtcclxufVxyXG5cclxuLnNtYWxsLWJveCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcclxuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYigwIDAgMCAvIDEzJSksIDAgMXB4IDNweCByZ2IoMCAwIDAgLyAyMCUpO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uc21hbGwtYm94ID4gLnNtYWxsLWJveC1mb290ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjEpO1xyXG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44KTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAzcHggMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLmJnLWluZm8gPiBhIHtcclxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucm93IHtcclxuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBtYXJnaW4tcmlnaHQ6IC03LjVweDtcclxuICBtYXJnaW4tbGVmdDogLTcuNXB4O1xyXG59XHJcblxyXG4uY29sLWxnLTMgLnNtYWxsLWJveCBoMywgLmNvbC1tZC0zIC5zbWFsbC1ib3ggaDMsIC5jb2wteGwtMyAuc21hbGwtYm94IGgzIHtcclxuICBmb250LXNpemU6IDIuMnJlbTtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMyB7XHJcbiAgZm9udC1zaXplOiAyLjJyZW07XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLnNtYWxsLWJveCBoMywgLnNtYWxsLWJveCBwIHtcclxuICB6LWluZGV4OiA1O1xyXG59XHJcblxyXG4uc21hbGwtYm94IHAge1xyXG4gIGZvbnQtc2l6ZTogMXJlbTtcclxufVxyXG5cclxucCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxucCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XHJcbiAgbWFyZ2luLWJsb2NrLWVuZDogMWVtO1xyXG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDBweDtcclxuICBtYXJnaW4taW5saW5lLWVuZDogMHB4O1xyXG59XHJcblxyXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xyXG4gIHotaW5kZXg6IDU7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3ggcCB7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG59XHJcblxyXG5wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbiosIDo6YWZ0ZXIsIDo6YmVmb3JlIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5wIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFlbTtcclxuICBtYXJnaW4tYmxvY2stZW5kOiAxZW07XHJcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xyXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwcHg7XHJcbn1cclxuXHJcbi5zbWFsbC1ib3g6aG92ZXIge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLmJnLXN1Y2Nlc3MsIC5iZy1zdWNjZXNzID4gYSB7XHJcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmlubmVyIHtcclxuICBoZWlnaHQ6IDEyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gIHBhZGRpbmctdG9wOiAxMHB4O1xyXG59XHJcblxyXG4uY29sb3Ige1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG5cclxuYnV0dG9uLmNsb3NlIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwLjI1cmVtO1xyXG4gIHJpZ2h0OiAxLjVyZW07XHJcbiAgei1pbmRleDogMTAwO1xyXG59XHJcbiIsImJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uY29sLCAuY29sLTEsIC5jb2wtMTAsIC5jb2wtMTEsIC5jb2wtMTIsIC5jb2wtMiwgLmNvbC0zLCAuY29sLTQsIC5jb2wtNSwgLmNvbC02LCAuY29sLTcsIC5jb2wtOCwgLmNvbC05LCAuY29sLWF1dG8sIC5jb2wtbGcsIC5jb2wtbGctMSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiwgLmNvbC1sZy0yLCAuY29sLWxnLTMsIC5jb2wtbGctNCwgLmNvbC1sZy01LCAuY29sLWxnLTYsIC5jb2wtbGctNywgLmNvbC1sZy04LCAuY29sLWxnLTksIC5jb2wtbGctYXV0bywgLmNvbC1tZCwgLmNvbC1tZC0xLCAuY29sLW1kLTEwLCAuY29sLW1kLTExLCAuY29sLW1kLTEyLCAuY29sLW1kLTIsIC5jb2wtbWQtMywgLmNvbC1tZC00LCAuY29sLW1kLTUsIC5jb2wtbWQtNiwgLmNvbC1tZC03LCAuY29sLW1kLTgsIC5jb2wtbWQtOSwgLmNvbC1tZC1hdXRvLCAuY29sLXNtLCAuY29sLXNtLTEsIC5jb2wtc20tMTAsIC5jb2wtc20tMTEsIC5jb2wtc20tMTIsIC5jb2wtc20tMiwgLmNvbC1zbS0zLCAuY29sLXNtLTQsIC5jb2wtc20tNSwgLmNvbC1zbS02LCAuY29sLXNtLTcsIC5jb2wtc20tOCwgLmNvbC1zbS05LCAuY29sLXNtLWF1dG8sIC5jb2wteGwsIC5jb2wteGwtMSwgLmNvbC14bC0xMCwgLmNvbC14bC0xMSwgLmNvbC14bC0xMiwgLmNvbC14bC0yLCAuY29sLXhsLTMsIC5jb2wteGwtNCwgLmNvbC14bC01LCAuY29sLXhsLTYsIC5jb2wteGwtNywgLmNvbC14bC04LCAuY29sLXhsLTksIC5jb2wteGwtYXV0byB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDcuNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDcuNXB4O1xufVxuXG4uc21hbGwtYm94IHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMTMpLCAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc21hbGwtYm94ID4gLnNtYWxsLWJveC1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5iZy1pbmZvID4gYSB7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5yb3cge1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC03LjVweDtcbiAgbWFyZ2luLWxlZnQ6IC03LjVweDtcbn1cblxuLmNvbC1sZy0zIC5zbWFsbC1ib3ggaDMsIC5jb2wtbWQtMyAuc21hbGwtYm94IGgzLCAuY29sLXhsLTMgLnNtYWxsLWJveCBoMyB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xufVxuXG4uc21hbGwtYm94IGgzIHtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAwIDEwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xuICB6LWluZGV4OiA1O1xufVxuXG4uc21hbGwtYm94IHAge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbnAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDFlbTtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xuICBtYXJnaW4taW5saW5lLWVuZDogMHB4O1xufVxuXG4uc21hbGwtYm94IGgzLCAuc21hbGwtYm94IHAge1xuICB6LWluZGV4OiA1O1xufVxuXG4uc21hbGwtYm94IHAge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4qLCA6OmFmdGVyLCA6OmJlZm9yZSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbnAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDFlbTtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMHB4O1xuICBtYXJnaW4taW5saW5lLWVuZDogMHB4O1xufVxuXG4uc21hbGwtYm94OmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYmctc3VjY2VzcywgLmJnLXN1Y2Nlc3MgPiBhIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLmlubmVyIHtcbiAgaGVpZ2h0OiAxMjBweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG4uY29sb3Ige1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxLjRyZW0gIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLmNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMjVyZW07XG4gIHJpZ2h0OiAxLjVyZW07XG4gIHotaW5kZXg6IDEwMDtcbn0iXX0= */\"","import { Component, OnInit, ViewChild, ElementRef, TemplateRef, AfterViewInit } from '@angular/core';\r\nimport { NgxPrintModule } from 'ngx-print'\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport { QRCodeComponent } from 'angular2-qrcode'\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PrintService, UsbDriver, WebPrintDriver } from 'ng-thermal-print';\r\nimport { PrintDriver } from 'ng-thermal-print/lib/drivers/PrintDriver';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ConfigurationService } from 'src/app/services/configuration.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { fadeInOut } from 'src/app/services/animations';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { MatDialog } from '@angular/material';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-teabookingdashboard',\r\n templateUrl: './teabookingdashboard.component.html',\r\n styleUrls: ['./teabookingdashboard.component.scss']\r\n})\r\nexport class TeabookingdashboardComponent implements OnInit,AfterViewInit {\r\n\r\n appLogo = require('../../assets/images/logos-02.png');\r\n Booking: any\r\n Badata: any\r\n BookingButNotOut: any\r\n OutButnotIn: any\r\n inButnotout: any\r\n OutForDelivery: any\r\n officename: any\r\n combdisb:boolean = false;\r\n excel: any\r\n IFtrue = false;\r\n loadingIndicator = false;\r\n columns: any[] = [];\r\n rows: BookingButNotOut[] = [];\r\n bookingdata: any[] = [];\r\n addrow: BookingButNotOut[] = [];\r\n rowsCache: BookingButNotOut[] = [];\r\n roregionarr: any[] = [];\r\n OfdButNotout = \"0\"\r\n\r\n constructor(public dialog: MatDialog, private datePipe: DatePipe, private excelService: ExcelService, private localstre: LocalStoreManager, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService) {\r\n }\r\n\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('consigneeeditorModal', { static: true })\r\n pipe = new DatePipe('en-US');\r\n now = Date.now();\r\n datee = this.pipe.transform(this.now, 'dd-MM-yyyy');\r\n timee = this.pipe.transform(this.now, 'hh:mm:ss');\r\n ngOnInit() {\r\n this.Badata = this.localstre.getData(\"BaLoginData\");\r\n if (this.Badata[0].officeCode != '000001') {\r\n this.combdisb = true;\r\n $('#ddlregion').val('All')\r\n }\r\n else {\r\n this.combdisb = false;\r\n $('#ddlregion').val('All')\r\n }\r\n this.loaddata();\r\n }\r\n ngAfterViewInit() {\r\n this.Badata = this.localstre.getData(\"BaLoginData\");\r\n\r\n if (this.Badata[0].officeCode != '000001') {\r\n this.combdisb = true;\r\n $('#ddlregion').val('All')\r\n }\r\n else {\r\n this.combdisb = false;\r\n $('#ddlregion').val('All')\r\n }\r\n }\r\n loaddata() {\r\n this.getBookingvsScancount();\r\n this.Getroregion();\r\n }\r\n Getroregion() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetRegionOffice'\r\n let Parameter = new Array(2);\r\n let pr = new Prclass();\r\n Parameter[0] = null;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n this.roregionarr = result;\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n getBookingvsScancount() {\r\n this.transaction.GetBookingvsScanCount(\"\",\"1\").subscribe(office => this.ongetBookingvsScancountsuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n ongetBookingvsScancountsuccess(add: any) {\r\n this.BookingButNotOut = add[0].bookingButNotOut;\r\n this.OutButnotIn = add[0].outButnotIn;\r\n this.inButnotout = add[0].inButnotout;\r\n this.OfdButNotout = add[0].ofdButnotdel\r\n }\r\n fundivineblessings(value: any) {\r\n this.IFtrue = true;\r\n var strvalue = value;\r\n this.excel = strvalue;\r\n if (strvalue == '1') {\r\n this.columns = [\r\n /* { prop: 'index', name: '#', width: 30, },*/\r\n { prop: 'aAwbno', name: 'Awbno', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'aAwbInscanDate', name: 'Book Date', width: 120 },\r\n { prop: 'abooktime', name: 'Time', width: 100 },\r\n { prop: 'aBooKingOffice', name: 'Booking Office', width: 150 },\r\n { prop: 'aOrigin', name: 'Origin', width: 100 },\r\n { prop: 'aDestination', name: 'Destination', width: 100 },\r\n { prop: 'aAwbMode', name: 'Mode', width: 50 },\r\n { prop: 'aProduct', name: 'Product', width: 100 },\r\n { prop: 'aAwbWeight', name: 'Weight', width: 70 },\r\n /* { prop: 'aDispatchDate', name: 'Dispatch Date', width: 100 },*/\r\n\r\n ];\r\n this.transaction.GetBookingvsScans(\"1\",\"1\").subscribe(office => this.onBookingButNotOutsssuccess(office), error => this.onDataLoadFailed(error));\r\n }\r\n if (strvalue == '2') {\r\n this.columns = [\r\n\r\n { prop: 'bawbno', name: 'Awbno', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'bAwbMode', name: 'Mode', width: 50 },\r\n { prop: 'bProduct', name: 'Product', width: 70 },\r\n { prop: 'bBookingDate', name: 'BookingDate', width: 100 },\r\n { prop: 'bOrigin', name: 'Origin', width: 150 },\r\n { prop: 'bDestination', name: 'Destination', width: 150 },\r\n { prop: 'bPieces', name: 'Pcs', width: 50 },\r\n { prop: 'bAwbWeight', name: 'Weight', width: 70 },\r\n { prop: 'bOffice', name: 'Dispatch Station', width: 150 },\r\n /* { prop: 'bAwbinoutDate', name: 'Awb Inout Date', width: 100 },*/\r\n { prop: 'bDispatchDate', name: 'Ds. Date', width: 100 },\r\n { prop: 'bDispatchtime', name: 'Ds. Time', width: 100 },\r\n { prop: 'bToCity', name: 'Dispatch To', width: 200 },\r\n { prop: 'bDmode', name: 'Ds. Mode', width: 100 },\r\n { prop: 'bVendor', name: 'Vendor', width: 130 },\r\n { prop: 'bStatus', name: 'Status', width: 100 },\r\n\r\n ];\r\n this.transaction.GetBookingvsScans(\"2\",\"1\").subscribe(office => this.onBookingOutButnotInsssuccess(office), error => this.onDataLoadFailed(error));\r\n\r\n }\r\n if (strvalue == '3') {\r\n this.columns = [\r\n { prop: 'cawbno', name: 'Awbno', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'cInComingDate', name: 'Recieve Date', width: 100 },\r\n { prop: 'cInComingtime', name: 'Recieve Time', width: 100 },\r\n { prop: 'cBookingDate', name: 'BookingDate', width: 100 },\r\n { prop: 'cOffice', name: 'Office', width: 150 },\r\n { prop: 'cOrigin', name: 'Origin', width: 100 },\r\n { prop: 'cDestination', name: 'Destination', width: 100 },\r\n { prop: 'cAwbMode', name: 'Awb Mode', width: 70 },\r\n { prop: 'cProduct', name: 'Product', width: 70 },\r\n { prop: 'cAwbWeight', name: 'Weight', width: 70 },\r\n { prop: 'cFromCity', name: 'FromCity', width: 120 },\r\n\r\n ];\r\n this.transaction.GetBookingvsScans(\"3\",\"1\").subscribe(office => this.onBookinginButnotoutssuccess(office), error => this.onDataLoadFailed(error));\r\n }\r\n if (strvalue == '4') {\r\n\r\n this.columns = [\r\n { prop: 'dawbno', name: 'Awbno', width: 100, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'dProduct', name: 'Product', width: 70 },\r\n { prop: 'dBookingDate', name: 'BookingDate', width: 100 },\r\n { prop: 'dOrigin', name: 'Origin', width: 170 },\r\n { prop: 'dDestination', name: 'Destination', width: 150 },\r\n { prop: 'dPcs', name: 'Pcs', width: 50 },\r\n { prop: 'dAwbWeight', name: 'Weight', width: 70 },\r\n { prop: 'dOffice', name: 'OFD Office', width: 200 },\r\n { prop: 'dRecvdate', name: 'Reached At', width: 150 },\r\n { prop: 'dOFDDate', name: 'OFD Date', width: 100 },\r\n { prop: 'dOfdtime', name: 'OFD Time', width: 100 },\r\n { prop: 'dDlvboy', name: 'Delivery Boy', width: 120 },\r\n { prop: 'dMobileno', name: 'Mobileno', width: 100 },\r\n { prop: 'dTopay', name: 'Topay', width: 50 },\r\n { prop: 'dCOD', name: 'DOD/COD', width: 50 },\r\n { prop: 'dStatus', name: 'Status', width: 100 }\r\n\r\n ];\r\n this.transaction.GetBookingvsScans(\"4\",\"1\").subscribe(office => this.OnSuceesOFDButNoDELv(office), error => this.onDataLoadFailed(error));\r\n }\r\n }\r\n OnSuceesOFDButNoDELv(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as BookingButNotOut[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as BookingButNotOut[];\r\n this.bookingdata = result;\r\n this.OfdButNotout = result.length.toString();\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new BookingButNotOut();\r\n this.addrow[0].dawbno = result[index].awbno;\r\n this.addrow[0].dOFDDate = result[index].ofdDate;\r\n this.addrow[0].dOfdtime = result[index].ofdTime;\r\n this.addrow[0].dOffice = result[index].office;\r\n this.addrow[0].dOrigin = result[index].origin;\r\n this.addrow[0].dDestination = result[index].destination;\r\n this.addrow[0].dAwbMode = result[index].awbMode;\r\n this.addrow[0].dProduct = result[index].product;\r\n this.addrow[0].dAwbWeight = result[index].awbWeight;\r\n this.addrow[0].dBookingDate = result[index].bookingDate;\r\n this.addrow[0].dDlvboy = result[index].deliveryBoy;\r\n this.addrow[0].dMobileno = result[index].mobileNo;\r\n this.addrow[0].dTopay = result[index].topay;\r\n this.addrow[0].dCOD = result[index].coddod;\r\n this.addrow[0].dPcs = result[index].pieces;\r\n this.addrow[0].dRecvdate = result[index].recvdate;\r\n this.addrow[0].dStatus = result[index].status;\r\n this.addrow[0].dControlOffice = result[index].controloffice;\r\n /* this.addrow[0].aDispatchDate = result[index].dispatchDate*/\r\n this.rows = this.addrow;\r\n\r\n }\r\n else {\r\n var tmp = new BookingButNotOut();\r\n tmp.dawbno = result[index].awbno;\r\n tmp.dOFDDate = result[index].ofdDate;\r\n tmp.dOfdtime = result[index].ofdTime;\r\n tmp.dOffice = result[index].office;\r\n tmp.dOrigin = result[index].origin;\r\n tmp.dDestination = result[index].destination;\r\n tmp.dAwbMode = result[index].awbMode;\r\n tmp.dProduct = result[index].product;\r\n tmp.dAwbWeight = result[index].awbWeight;\r\n tmp.dBookingDate = result[index].bookingDate;\r\n tmp.dDlvboy = result[index].deliveryBoy;\r\n tmp.dMobileno = result[index].mobileNo;\r\n tmp.dTopay = result[index].topay;\r\n tmp.dCOD = result[index].coddod;\r\n tmp.dPcs = result[index].pieces;\r\n tmp.dRecvdate = result[index].recvdate;\r\n tmp.dStatus = result[index].status;\r\n tmp.dControlOffice = result[index].controloffice;\r\n\r\n /* tmp.aDispatchDate = result[index].dispatchDate*/\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n onBookingButNotOutsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as BookingButNotOut[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as BookingButNotOut[];\r\n this.bookingdata = result;\r\n this.BookingButNotOut = result.length.toString();\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n this.addrow[0] = new BookingButNotOut();\r\n this.addrow[0].aAwbno = result[index].awbno;\r\n this.addrow[0].aAwbInscanDate = result[index].bookingDate;\r\n this.addrow[0].abooktime = result[index].booktime;\r\n this.addrow[0].aBooKingOffice = result[index].booKingOffice;\r\n this.addrow[0].aOrigin = result[index].origin;\r\n this.addrow[0].aDestination = result[index].destination;\r\n this.addrow[0].aAwbMode = result[index].awbMode;\r\n this.addrow[0].aProduct = result[index].product;\r\n this.addrow[0].aAwbWeight = result[index].awbWeight;\r\n this.addrow[0].aBookDate = result[index].bookingDate;\r\n this.addrow[0].aDestination = result[index].destination;\r\n this.addrow[0].aControlOffice = result[index].controloffice;\r\n\r\n /* this.addrow[0].aDispatchDate = result[index].dispatchDate*/\r\n this.rows = this.addrow;\r\n\r\n }\r\n else {\r\n var tmp = new BookingButNotOut();\r\n tmp.aAwbno = result[index].awbno;\r\n tmp.aAwbInscanDate = result[index].bookingDate;\r\n tmp.abooktime = result[index].booktime;\r\n tmp.aBooKingOffice = result[index].booKingOffice;\r\n tmp.aOrigin = result[index].origin;\r\n tmp.aDestination = result[index].destination\r\n tmp.aAwbMode = result[index].awbMode\r\n tmp.aProduct = result[index].product\r\n tmp.aAwbWeight = result[index].awbWeight\r\n tmp.aDestination = result[index].destination\r\n tmp.aBookDate = result[index].bookingDate;\r\n tmp.aControlOffice = result[index].controloffice;\r\n\r\n /* tmp.aDispatchDate = result[index].dispatchDate*/\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n\r\n onBookingOutButnotInsssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as BookingButNotOut[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as BookingButNotOut[];\r\n this.bookingdata = result;\r\n this.OutButnotIn = result.length.toString();\r\n\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n\r\n this.addrow[0] = new BookingButNotOut();\r\n this.addrow[0].bawbno = result[index].awbno;\r\n this.addrow[0].bDispatchDate = result[index].dispatchDate;\r\n this.addrow[0].bDispatchtime = result[index].dispatchtime;\r\n /* this.addrow[0].bAwbinoutDate = result[index].awbinoutDate;*/\r\n this.addrow[0].bBookingDate = result[index].bookingDate;\r\n this.addrow[0].bOffice = result[index].office;\r\n this.addrow[0].bOrigin = result[index].origin;\r\n this.addrow[0].bDestination = result[index].destination;\r\n this.addrow[0].bAwbMode = result[index].awbMode;\r\n this.addrow[0].bProduct = result[index].product;\r\n this.addrow[0].bAwbWeight = result[index].awbWeight;\r\n this.addrow[0].bToCity = result[index].toCity;\r\n this.addrow[0].bPieces = result[index].pieces;\r\n this.addrow[0].bDmode = result[index].mode;\r\n this.addrow[0].bStatus = result[index].status;\r\n this.addrow[0].bVendor = result[index].vendor;\r\n this.addrow[0].bControlOffice = result[index].controloffice;\r\n\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new BookingButNotOut();\r\n tmp.bawbno = result[index].awbno;\r\n tmp.bDispatchDate = result[index].dispatchDate;\r\n tmp.bDispatchtime = result[index].dispatchtime;\r\n /* tmp.bAwbinoutDate = result[index].awbinoutDate;*/\r\n tmp.bBookingDate = result[index].bookingDate;\r\n tmp.bOffice = result[index].office;\r\n tmp.bOrigin = result[index].origin;\r\n tmp.bDestination = result[index].destination;\r\n tmp.bAwbMode = result[index].awbMode;\r\n tmp.bProduct = result[index].product;\r\n tmp.bAwbWeight = result[index].awbWeight;\r\n tmp.bToCity = result[index].toCity;\r\n tmp.bPieces = result[index].pieces;\r\n tmp.bDmode = result[index].mode;\r\n tmp.bStatus = result[index].status;\r\n tmp.bVendor = result[index].vendor;\r\n tmp.bControlOffice = result[index].controloffice;\r\n\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n\r\n onBookinginButnotoutssuccess(result: any) {\r\n if (result.length > 0) {\r\n this.rows = [] as BookingButNotOut[];\r\n this.rowsCache = [...this.rows];\r\n this.addrow = [] as BookingButNotOut[];\r\n this.bookingdata = result;\r\n this.inButnotout = result.length.toString();\r\n for (let index = 0; index < this.bookingdata.length; index++) {\r\n if (this.rows.length == 0) {\r\n\r\n this.addrow[0] = new BookingButNotOut();\r\n this.addrow[0].cawbno = result[index].awbno;\r\n this.addrow[0].cAwbinoutDate = result[index].awbinoutDate.split(\"T\")[0];\r\n this.addrow[0].cInComingDate = result[index].inComingDate;\r\n this.addrow[0].cInComingtime = result[index].inComingtime;\r\n this.addrow[0].cBookingDate = result[index].bookingDate;\r\n this.addrow[0].cOffice = result[index].office;\r\n this.addrow[0].cOrigin = result[index].origin;\r\n this.addrow[0].cDestination = result[index].destination;\r\n this.addrow[0].cInscanDate = result[index].inscanDate;\r\n this.addrow[0].cAwbMode = result[index].awbMode;\r\n this.addrow[0].cProduct = result[index].product;\r\n this.addrow[0].cAwbWeight = result[index].awbWeight;\r\n this.addrow[0].cFromCity = result[index].fromCity;\r\n this.addrow[0].cControlOffice = result[index].controloffice;\r\n\r\n this.rows = this.addrow;\r\n }\r\n else {\r\n var tmp = new BookingButNotOut();\r\n tmp.cawbno = result[index].awbno;\r\n tmp.cAwbinoutDate = result[index].awbinoutDate.split(\"T\")[0];\r\n tmp.cInComingDate = result[index].inComingDate;\r\n tmp.cInComingtime = result[index].inComingtime;\r\n tmp.cBookingDate = result[index].bookingDate;\r\n tmp.cOffice = result[index].office;\r\n tmp.cOrigin = result[index].origin;\r\n tmp.cDestination = result[index].destination;\r\n tmp.cInscanDate = result[index].inscanDate;\r\n tmp.cAwbMode = result[index].awbMode;\r\n tmp.cProduct = result[index].product;\r\n tmp.cAwbWeight = result[index].awbWeight;\r\n tmp.cFromCity = result[index].fromCity;\r\n tmp.cControlOffice = result[index].controloffice;\r\n\r\n this.rows.push(tmp);\r\n }\r\n this.rowsCache = [...this.rows];\r\n }\r\n }\r\n else {\r\n alert(\"No Record Found\")\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve Dashboard from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n onSearchChanged(value: string) {\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.aAwbno, r.bawbno, r.cawbno));\r\n }\r\n generateExcel() {\r\n var region = $('#ddlregion').val();\r\n if (this.excel == \"1\") {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (region == 'All' || this.rows[index].aControlOffice == region) {\r\n data[index] = [this.rows[index].aAwbno,\r\n this.rows[index].aBookDate,\r\n this.rows[index].abooktime,\r\n this.rows[index].aBooKingOffice,\r\n this.rows[index].aOrigin,\r\n this.rows[index].aDestination,\r\n this.rows[index].aAwbMode,\r\n this.rows[index].aProduct,\r\n this.rows[index].aAwbWeight, '', '', ''\r\n\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"SHIPMENTS_BOOKED_BUT_NOT_OUT\";\r\n let Office = \"\";\r\n if (this.Badata[0].officeCode == '000001') {\r\n Office = region == 'All' ? \"Pan India\" : $('#ddlregion option:selected').text().toString();\r\n }\r\n else {\r\n Office = region == 'All' ? this.Badata[0].officename : $('#ddlregion option:selected').text().toString();\r\n }\r\n this.excelService.header = [\"Awbno\", \"Booking Date\", \"Time\", \"Booking Office\", \"Origin\", \"Destination\", \"Mode\", \"Product\", \"Weight\", \"Reason\", \"Dispatch On\", \"Remark\"]\r\n this.excelService.title = \"DAILY MIS:SHIPMENTS BOOKED BUT NOT DISPATCHED\" + ' DATE : ' + this.datePipe.transform(new Date(), 'dd-MM-yyyy') + ' OFFICE:' + Office\r\n this.excelService.Widths = [15, 20, 10, 30, 30, 30, 10, 20, 10, 50, 30, 30]\r\n this.excelService.generateExcel();\r\n\r\n\r\n } else if (this.excel == \"2\") {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (region == 'All' || this.rows[index].bControlOffice == region) {\r\n data[index] = [this.rows[index].bawbno,\r\n this.rows[index].bAwbMode,\r\n this.rows[index].bProduct,\r\n this.rows[index].bBookingDate,\r\n this.rows[index].bOrigin,\r\n this.rows[index].bDestination,\r\n this.rows[index].bPieces,\r\n this.rows[index].bAwbWeight,\r\n this.rows[index].bOffice,\r\n this.rows[index].bDispatchDate,\r\n this.rows[index].bDispatchtime,\r\n this.rows[index].bToCity.substr(0, this.rows[index].bToCity.indexOf('-')),\r\n this.rows[index].bDmode,\r\n this.rows[index].bVendor,\r\n this.rows[index].bStatus,\r\n '', '', ''\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"SHIPMENTS_DIPATCH_BUT_NOT_IN\";\r\n let Office = \"\";\r\n if (this.Badata[0].officeCode == '000001') {\r\n Office = region == 'All' ? \"Pan India\" : $('#ddlregion option:selected').text().toString();\r\n }\r\n else {\r\n Office = region == 'All' ? this.Badata[0].officename : $('#ddlregion option:selected').text().toString();\r\n }\r\n this.excelService.header = [\"Awbno\", \"Mode\", \"Product\", \"Book Date\", \"Origin\", \"Destination\", \"Pcs\", \"Weight\", \"Dispatch Station\", \"DispatchDate\", \"Time\", \"ToCity\", \"Dispach Mode\", \"Venore\", \"Status\", \"Reason\", \"Recived On\", \"Remark\"]\r\n this.excelService.title = \"DAILY MIS:SHIPMENTS DIPATCHED BUT NOT RECEIVED\" + ' DATE : ' + this.datePipe.transform(new Date(), 'dd-MM-yyyy') + ' OFFICE:' + Office\r\n this.excelService.Widths = [15, 20, 10, 20, 30, 30, 30, 10, 15, 10, 25, 30, 30, 30]\r\n this.excelService.generateExcel();\r\n }\r\n else if (this.excel == \"3\") {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (region == 'All' || this.rows[index].cControlOffice == region) {\r\n\r\n data[index] = [this.rows[index].cawbno,\r\n this.rows[index].cInComingDate,\r\n this.rows[index].cInComingtime,\r\n this.rows[index].cBookingDate,\r\n this.rows[index].cOffice,\r\n this.rows[index].cOrigin,\r\n this.rows[index].cDestination,\r\n this.rows[index].cAwbMode,\r\n this.rows[index].cProduct,\r\n this.rows[index].cAwbWeight,\r\n this.rows[index].cFromCity.substr(0, this.rows[index].cFromCity.indexOf('-')), '', '', ''\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"SHIPMENTS_RECIEVE_BUT_NOT\";\r\n let Office = \"\";\r\n if (this.Badata[0].officeCode == '000001') {\r\n Office = region == 'All' ? \"Pan India\" : $('#ddlregion option:selected').text().toString();\r\n }\r\n else {\r\n Office = region == 'All' ? this.Badata[0].officename : $('#ddlregion option:selected').text().toString();\r\n }\r\n this.excelService.header = [\"Awbno\", \"Recive Date\", \"Time\", \"Book Date\", \"Office\", \"Origin\", \"Destination\", \"Mode\", \"Product\", \"Weight\", \"From City\", \"Reason\", \"Ofd On\", \"Remark\"]\r\n this.excelService.title = \"DAILY MIS:SHIPMENTS RECIEVED BUT NOT OFD\" + ' DATE : ' + this.datePipe.transform(new Date(), 'dd-MM-yyyy') + ' OFFICE:' + Office\r\n this.excelService.Widths = [15, 15, 10, 15, 30, 30, 30, 10, 25, 10, 30, 30, 30, 30]\r\n this.excelService.generateExcel();\r\n }\r\n else {\r\n var data = []\r\n for (let index = 0; index < this.rows.length; index++) {\r\n if (region == 'All' || this.rows[index].dControlOffice == region) {\r\n\r\n data[index] = [this.rows[index].dawbno,\r\n this.rows[index].dProduct,\r\n this.rows[index].dBookingDate,\r\n this.rows[index].dOrigin,\r\n this.rows[index].dDestination,\r\n this.rows[index].dPcs,\r\n this.rows[index].dAwbWeight,\r\n this.rows[index].dOffice,\r\n this.rows[index].dRecvdate,\r\n this.rows[index].dOFDDate,\r\n this.rows[index].dOfdtime,\r\n this.rows[index].dDlvboy,\r\n this.rows[index].dMobileno,\r\n this.rows[index].dTopay,\r\n this.rows[index].dCOD,\r\n this.rows[index].dStatus,\r\n '', '', ''\r\n ]\r\n }\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"OFD_BUT_NOT_DELIVER\";\r\n let Office = \"\";\r\n if (this.Badata[0].officeCode == '000001') {\r\n Office = region == 'All' ? \"Pan India\" : $('#ddlregion option:selected').text().toString();\r\n }\r\n else {\r\n Office = region == 'All' ? this.Badata[0].officename : $('#ddlregion option:selected').text().toString();\r\n }\r\n this.excelService.header = [\"Awbno\", \"Product\", \"Book Date\", \"Origin\", \"Destination\", \"Pcs\", \"Weight\", \"Office\", \"Recached At\", \"Ofd Date\", \"Ofd Time\", \"Delivery Boy\", \"Mobileno\", \"Topay\", \"COD/DOD\", \"Status\", \"Reason\", \"Delivery On\", \"Remark\"]\r\n this.excelService.title = \"DAILY MIS:OFD DONE BUT NOT DELIVER\" + ' DATE : ' + this.datePipe.transform(new Date(), 'dd-MM-yyyy') + ' OFFICE:' + Office\r\n this.excelService.Widths = [15, 15, 10, 15, 30, 30, 30, 10, 25, 10, 30, 30, 30, 30]\r\n this.excelService.generateExcel();\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\nexport class BookingButNotOut {\r\n\r\n public aAwbno: string\r\n public aAwbInscanDate: string\r\n public abooktime: string\r\n public aBooKingOffice: string\r\n public aOrigin: string\r\n public aDestination: string\r\n public aAwbMode: string\r\n public aProduct: string\r\n public aAwbWeight: string\r\n public aDispatchDate: string\r\n public aBookDate: string;\r\n public aControlOffice: string;\r\n\r\n public bawbno: string\r\n public bDispatchDate: string\r\n public bAwbinoutDate: string\r\n public bBookingDate: string\r\n public bDispatchtime: string\r\n public bOffice: string\r\n public bOrigin: string\r\n public bDestination: string\r\n public bAwbMode: string\r\n public bProduct: string\r\n public bAwbWeight: string\r\n public bToCity: string\r\n public bScanOfficeid: string\r\n public bInscanDate: string\r\n public bHubconnect: string\r\n public bPieces: string;\r\n public bDmode: string;\r\n public bVendor: string;\r\n public bStatus: string;\r\n public bControlOffice: string;\r\n\r\n public cawbno: string\r\n public cAwbinoutDate: string\r\n public cInComingDate: string\r\n public cBookingDate: string\r\n public cInComingtime: string\r\n public cOffice: string\r\n public cOrigin: string\r\n public cDestination: string\r\n public cAwbMode: string\r\n public cProduct: string\r\n public cAwbWeight: string\r\n public cFromCity: string\r\n public cScanOfficeid: string\r\n public cInscanDate: string\r\n public cControlOffice: string;\r\n\r\n public dawbno: string\r\n public dAwbinoutDate: string\r\n public dOFDDate: string\r\n public dBookingDate: string\r\n public dOfdtime: string\r\n public dOffice: string\r\n public dOrigin: string\r\n public dDestination: string\r\n public dAwbMode: string\r\n public dProduct: string\r\n public dAwbWeight: string\r\n public dDlvboy: string\r\n public dMobileno: string\r\n public dTopay: string\r\n public dCOD: string\r\n public dPcs: string\r\n public dRecvdate: string\r\n public dStatus: string\r\n public dControlOffice: string;\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdXBkYXRlLWFjbi91cGRhdGUtYWNuLmNvbXBvbmVudC5zY3NzIn0= */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { MatDialog } from '@angular/material';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { ACNDetail, AcnUpdateComponent, ConfirmDialogACNModels } from '../controls/acn-update.component';\r\n\r\n@Component({\r\n selector: 'app-update-acn',\r\n templateUrl: './update-acn.component.html',\r\n styleUrls: ['./update-acn.component.scss']\r\n})\r\nexport class UpdateACNComponent implements OnInit {\r\n\r\n repoertData: any[] = [];\r\n typee: string = \"0\";\r\n rows: any = [];\r\n columns: any = [];\r\n isgpwise: boolean;\r\n isDatewise: boolean;\r\n isbutton: boolean;\r\n loadingIndicator: boolean = false;\r\n text: string = \"\";\r\n dialogRef: any;\r\n\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate1', { static: true })\r\n actionsTemplate1: TemplateRef;\r\n\r\n constructor(private localstre: LocalStoreManager, public dialog: MatDialog, private troute: ActivatedRoute, private datePipe: DatePipe, private excelService: ExcelService, private configurations: ConfigurationService, private router: Router, private ServiceMaster: Masters, private authService: AuthService, private route: Router, private alertService: AlertService, private transaction: TransactionService,) { }\r\n ngOnInit() {\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 20, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'origin', name: 'Origin', width: 30 },\r\n { prop: 'gatePassno', name: 'GatePass No', width: 30 },\r\n { prop: 'loadDate', name: 'loadDate', width: 30 },\r\n { prop: 'acnno', name: 'Acn', width: 30 },\r\n { prop: 'detination', name: 'Destination', width: 70 },\r\n { prop: 'totalWeight', name: 'TotalWeight', width: 20 },\r\n { prop: 'totalBag', name: 'TotalBag', width: 20 },\r\n\r\n ];\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.columns.push({ name: '', width: 100, cellTemplate: this.actionsTemplate1, sortable: false, draggable: false })\r\n \r\n\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetLoadMovement'\r\n Req.LstParameter = null;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n\r\n }\r\n getSucessDataExrate(result) {\r\n this.rows = result.table;\r\n this.repoertData = result.table\r\n this.rows.forEach((obj, ind, arr) => {\r\n (obj as any).index = ind + 1;\r\n })\r\n this.rows = [...this.rows];\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.loadingIndicator = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n funHide() {\r\n var typeee = this.typee == \"1\" ? \"1\" : \"2\";\r\n if (typeee == \"1\") {\r\n this.isgpwise = true;\r\n this.text = \"Gatepass No.\";\r\n this.isDatewise = false;\r\n this.isbutton = true;\r\n } else {\r\n this.text = \"Date Range\";\r\n this.isgpwise = false;\r\n this.isDatewise = true;\r\n this.isbutton = true;\r\n }\r\n }\r\n get officename(): string {\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n return logindata[0].officename;\r\n }\r\n getdate() {\r\n if (this.typee == \"1\") {\r\n if ((document.getElementById(\"gatepassno\")).value == '') {\r\n (document.getElementById(\"gatepassno\")).focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetLoadMovement'\r\n let parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"GatePassno\";\r\n pr.PropertyValue = (document.getElementById(\"gatepassno\")).value\r\n parameter[0] = pr;\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n else {\r\n if ((document.getElementById(\"fromdate\")).value == '') {\r\n (document.getElementById(\"fromdate\")).focus();\r\n return;\r\n }\r\n if ((document.getElementById(\"todate\")).value == '') {\r\n (document.getElementById(\"todate\")).focus();\r\n return;\r\n }\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetLoadMovement'\r\n let parameter = new Array(2);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"FromDate\";\r\n pr.PropertyValue = (document.getElementById(\"fromdate\")).value\r\n parameter[0] = pr;\r\n pr = new Prclass();\r\n pr.ParameterDirection = \"Input\";\r\n pr.PropertType = \"Date\";\r\n pr.PropertyName = \"ToDate\";\r\n pr.PropertyValue = (document.getElementById(\"todate\")).value\r\n parameter[1] = pr;\r\n Req.LstParameter = parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n }\r\n confirmDialog_ACN(mes: any, pieces: any, unit: any, mps: ACNDetail, callback: any): void {\r\n const message = mes;\r\n const dialogData = new ConfirmDialogACNModels(\"ACNUpdate\",mps);\r\n this.dialogRef = this.dialog.open(AcnUpdateComponent, {\r\n disableClose: true,\r\n minWidth: \"900px\",\r\n minHeight: \"400px\",\r\n data: dialogData\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n OnMPSResultofmodel(result: any) {\r\n if (result.IsError == true) {\r\n alert(\"Error In UpdateAcn\")\r\n \r\n //this.confirmDialog_MPS(this.editedawkbooking.pieces + \",\" + this.Unit, this.OnMPSResultofmodel)\r\n //this.isSaving = true;\r\n //this.transaction.postGenawbno(this.editedawkbooking.Booktype, this.editedawkbooking.awbMode + \" \" + this.editedawkbooking.ProductName, this.editedawkbooking.bookoffice, this.editedawkbooking.clientCode).subscribe(awbno => this.onawbgetSuccessful(awbno), error => this.saveFailedHelper(error));\r\n //this.router.navigate(['/awbprint'], { queryParams: { awbno: this.editedawkbooking.awbNo } }); // define your component where you want to go\r\n return;\r\n }\r\n this.transaction.PostACNUpdate(result).subscribe(awbno => { this.alertService.showMessage(\"Save\", \"Update acn Successfully\",MessageSeverity.success); }, error => this.saveFailedHelper(error));\r\n\r\n\r\n \r\n }\r\n updateAcn(row: any) {\r\n let acndata = new ACNDetail();\r\n acndata.gatePassNo = row.gatePassno;\r\n acndata.vendoreCode = row.vendoreCode;\r\n acndata.gpWeight = row.totalWeight;\r\n acndata.vendoreName = row.vendoreName;\r\n acndata.loadMovementId = row.loadMovementId\r\n acndata.aCNNO = row.acnno\r\n this.confirmDialog_ACN(\"\", \"\", \"\", acndata, null);\r\n }\r\n generateExcel() {\r\n var data = []\r\n\r\n for (let index = 0; index < this.repoertData.length; index++) {\r\n data[index] = [\r\n index + 1,\r\n this.repoertData[index].origin,\r\n this.repoertData[index].gatePassno,\r\n this.repoertData[index].loadDate,\r\n this.repoertData[index].mode,\r\n this.repoertData[index].detination,\r\n this.repoertData[index].vendoreCode,\r\n this.repoertData[index].vendoreName,\r\n this.repoertData[index].totalWeight,\r\n this.repoertData[index].totalBag,\r\n this.repoertData[index].frieghtAmt,\r\n this.repoertData[index].acnAmount,\r\n this.repoertData[index].acnWeight,\r\n this.repoertData[index].acnno,\r\n this.repoertData[index].saleAmount,\r\n this.repoertData[index].yieldFr,\r\n this.repoertData[index].yieldSale,\r\n ( parseFloat(this.repoertData[index].yieldSale) - parseFloat(this.repoertData[index].yieldFr)).toFixed(2)\r\n \r\n ]\r\n }\r\n\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Gate Pass Report\";\r\n let Office = \"Pan India\";\r\n\r\n this.excelService.header = [\"Sno\", \"Origin\", \"Gatepass No\", \"Date\", \"Mode\", \"Destination\", \"Vendore Code\", \"Vendore Name\", \"Total Weight\", \"Total Bag\", \"Frieght\", \"Acn Wieght\", \"Acn Amount\",\r\n \"ACN No\", \"Sale Amount\",\"Frieght Yield\",\"Sale Yield\",\"Diff.\"]\r\n this.excelService.title = \"Gate Pass Report\";\r\n this.excelService.Widths = [5, 30, 15, 15, 30, 10, 10, 50, 10, 10, 10, 15, 15,15,15,15,15,15]\r\n this.excelService.generateExcel();\r\n\r\n }\r\n \r\nprivate saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n}\r\n awbprint(row: any) {\r\n this.router.navigate(['/printgp'], {\r\n queryParams: {\r\n GatePassno: row.gatePassno,\r\n backurl: '/updacn'\r\n }\r\n }); // define your component where you want to go\r\n \r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdXBkYXRlLXBpbmNvZGUvdXBkYXRlLXBpbmNvZGUuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-update-pincode',\n templateUrl: './update-pincode.component.html',\n styleUrls: ['./update-pincode.component.scss']\n})\nexport class UpdatePincodeComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit() {\n }\n\n}\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdmVuZGVybWFzdGVyL3ZlbmRlcm1hc3Rlci5jb21wb25lbnQuc2NzcyJ9 */\"","import { AfterViewInit, ViewChild, ViewChildren } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\n//import { document } from 'ngx-bootstrap';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { Address, AddressmasterComponent } from '../controls/addressmaster.component';\r\nimport { rowdata } from '../sale-dashboard/sale-dashboard.component';\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-vendormaster',\r\n templateUrl: './vendermaster.component.html',\r\n styleUrls: ['./vendermaster.component.scss']\r\n})\r\nexport class VendormasterComponent implements OnInit,AfterViewInit {\r\n\r\n editedVendors: VendorMaster = new VendorMaster();\r\n columns: any[] = [];\r\n rows: VendorMaster[] = [];\r\n rowsCache: VendorMaster[] = [];\r\n vaddress = new Address();\r\n isSaving = false;\r\n isLoading = false;\r\n formResetToggle = true;\r\n loadingIndicator = false;\r\n lastkeydown2: number = 0;\r\n arrcity: any[] = [];\r\n arrcity2: any[] = [];\r\n airsurface = \"0\";\r\n optdisable = true;\r\n rowscity: MapStation[] = [];\r\n columnscity: any[] = [];\r\n ratetype:string = \"0\"\r\n constructor(private configurations: ConfigurationService, private excelService: ExcelService, private localstre: LocalStoreManager, private authService: AuthService, private route: Router, private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n @ViewChild('f', { static: false })\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n @ViewChildren('addressEditor') addressEditor: AddressmasterComponent;\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'vendoreType', name: 'Vendore Type', width: 100 },\r\n { prop: 'vendoreCode', name: 'Vendore Code', width: 100 },\r\n { prop: 'vendorName', name: 'Name Of The Vendor', width: 100 },\r\n { prop: 'company', name: 'Company', width: 100 },\r\n { prop: 'vendAddress', name: 'Address', width: 100 },\r\n { prop: 'mobileno', name: 'Mobile No.', width: 100 },\r\n { prop: 'email', name: 'Email-Id', width: 100 },\r\n { prop: 'pinCode', name: 'Pin-Code', width: 100 },\r\n { prop: 'cityName', name: 'City', width: 50 },\r\n { prop: 'stateName', name: 'State', width: 50 },\r\n ];\r\n this.columns.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.bindgrid();\r\n this.columnscity = [\r\n { prop: 'index', name: \"#\", width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'cityName', name: 'City', width: 100 },\r\n\r\n ]\r\n var logindata = this.localstre.getData(\"BaLoginData\");\r\n this.editedVendors.region = logindata[0].officename;\r\n //this.columnscity.push({ name: '', width: 160, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n }\r\n \r\n ngAfterViewInit() {\r\n this.vaddress = this.addressEditor.editedAddress;\r\n }\r\n getCityList($event) {\r\n this.GetCityMaster();\r\n this.arrcity2 = this.arrcity\r\n $('#city').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500 \r\n });\r\n $('#mapcity').autocomplete({\r\n source: this.arrcity2,\r\n delay: 500\r\n });\r\n }\r\n \r\n Addcity() {\r\n if (this.rowscity.length == 0) {\r\n let mapcity: MapStation = new MapStation();\r\n mapcity.cityName = $('#mapcity').val()\r\n if (mapcity.cityName != '') {\r\n this.rowscity[0] = mapcity\r\n }\r\n\r\n }\r\n else {\r\n let mapcity: MapStation = new MapStation();\r\n mapcity.cityName = $('#mapcity').val()\r\n if (mapcity.cityName != '') {\r\n this.rowscity.push(mapcity)\r\n }\r\n }\r\n $('#mapcity').val('');\r\n $('#mapcity').focus();\r\n this.rowscity.forEach((city, ind, arr) => {\r\n (city as any).index = ind + 1;\r\n });\r\n this.rowscity =[...this.rowscity]\r\n }\r\n \r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n if (listof == \"STATE\") {\r\n this.arrcity = states;\r\n }\r\n if (listof == \"CITY\") {\r\n this.arrcity = states;\r\n }\r\n }\r\n loaddata() {\r\n this.loadingIndicator = true;\r\n this.ServiceMaster.GetVendoreMaster().subscribe(results => this.LoadSucessdata(results), error => this.onDataLoadFailed(error))\r\n this.GetCityMaster();\r\n }\r\n LoadSucessdata(vendors: VendorMaster[]) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n vendors.forEach((prod, index, vendors) => {\r\n (prod as any).index = index + 1;\r\n });\r\n\r\n this.rowsCache = [...vendors];\r\n this.rows = vendors;\r\n }\r\n SetCityAndState($event) {\r\n let citystate: string = (document.getElementById('city')).value;\r\n if (citystate.indexOf('-') > 0) {\r\n (document.getElementById('city')).value = citystate.substring(0, citystate.indexOf('-') - 1);\r\n (document.getElementById('state')).value = citystate.substring(citystate.indexOf('-') + 1); \r\n\r\n }\r\n }\r\n Setmode($events) {\r\n if (this.editedVendors.vendoreType == 'Temporary Vendore' || this.editedVendors.vendoreType == 'Transporter' || this.editedVendors.vendoreType == 'Co-Loader' ) {\r\n this.optdisable = false\r\n }\r\n else {\r\n this.optdisable = true\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n this.loadingIndicator = false;\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n }\r\n \r\n Insertvendors() {\r\n if (this.editedVendors.vendorName == '' || isNullOrUndefined(this.editedVendors.vendorName)) {\r\n this.alertService.showMessage(\"Failure\", \"Please Select Correct vendorename\", MessageSeverity.error);\r\n $('#vendorName').focus();\r\n\r\n return false;\r\n }\r\n if (this.editedVendors.vendoreType == '' || isNullOrUndefined(this.editedVendors.vendoreType)) {\r\n this.alertService.showMessage(\"Failure\", \"Please Select Correct vendoretpe\", MessageSeverity.error);\r\n $('#vendoreType').focus();\r\n\r\n return false;\r\n }\r\n if (this.editedVendors.company == '' || isNullOrUndefined(this.editedVendors.company)) {\r\n this.alertService.showMessage(\"Failure\", \"Please Select Correct company\", MessageSeverity.error);\r\n $('#company').focus();\r\n return false;\r\n }\r\n if (this.editedVendors.bankaddress == '' || isNullOrUndefined(this.editedVendors.bankaddress)) {\r\n //his.alertService.showMessage(\"Failure\", \"Please Select Correct bank address\", MessageSeverity.error);\r\n $('#bankAddress').focus();\r\n return false;\r\n }\r\n if (this.editedVendors.accountno == '' || isNullOrUndefined(this.editedVendors.accountno)) {\r\n // this.alertService.showMessage(\"Failure\", \"Please Select Correct bank address\", MessageSeverity.error);\r\n $('#accountno').focus();\r\n return false;\r\n }\r\n if (this.editedVendors.bankName == '' || isNullOrUndefined(this.editedVendors.bankName)) {\r\n // this.alertService.showMessage(\"Failure\", \"Please Select Correct bank address\", MessageSeverity.error);\r\n $('#bankName').focus();\r\n return false;\r\n }\r\n \r\n \r\n if (isNullOrUndefined(this.editedVendors.gstnumber)){\r\n this.editedVendors.gstnumber = ''\r\n }\r\n if (isNullOrUndefined(this.editedVendors.panno)) {\r\n this.editedVendors.panno = ''\r\n }\r\n \r\n if (isNullOrUndefined(this.editedVendors.landLineno)) {\r\n this.editedVendors.landLineno = 'NA'\r\n\r\n }\r\n if (isNullOrUndefined(this.editedVendors.email)) {\r\n this.editedVendors.email = 'temp@mail.com'\r\n }\r\n if (isNullOrUndefined(this.editedVendors.dateOfEstablishment)) {\r\n this.editedVendors.dateOfEstablishment = '2022-01-01';\r\n }\r\n this.editedVendors.mode = this.airsurface == \"0\" ? \"NA\" : this.airsurface == \"1\" ? \"Air\" : this.airsurface == \"2\" ? \"Surface\" : \"Train\"\r\n //this.editedVendors.vendorName = this.editedVendors.vendorName \r\n this.isSaving = true; \r\n this.editedVendors.vendoreType = (document.getElementById('vendoreType')).value\r\n this.editedVendors.stateName = (document.getElementById('state')).value\r\n this.editedVendors.cityName = (document.getElementById('city')).value\r\n this.editedVendors.pinCode = (document.getElementById('pincode')).value\r\n this.editedVendors.address[0].city = this.editedVendors.cityName\r\n this.editedVendors.address[0].stateName = this.editedVendors.stateName;\r\n this.editedVendors.address[0].houseNo = (document.getElementById('houseNo')).value\r\n this.editedVendors.address[0].streetName = (document.getElementById('streetName')).value\r\n this.editedVendors.address[0].pincode = (document.getElementById('pincode')).value\r\n this.editedVendors.address[0].landMark = (document.getElementById(\"landMark\")).value\r\n this.editedVendors.landLineno = \"NA\";\r\n this.editedVendors.mapstation = this.rowscity;\r\n this.editedVendors.rateType = this.ratetype;\r\n this.alertService.startLoadingMessage('Saving changes...');\r\n this.ServiceMaster.NewVendore(this.editedVendors).subscribe(vendors => this.saveSuccessHelper(vendors), error => this.saveFailedHelper(error));\r\n }\r\n private saveSuccessHelper(vendors?: VendorMaster) {\r\n this.isSaving = false;\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showMessage('Success', `vendors \\\"${this.editedVendors.vendorName + \"-\" + this.editedVendors.vendorName}\\\" was created successfully`, MessageSeverity.success);\r\n if (this.rows.length == 0) {\r\n this.rows[0] = vendors[0];\r\n this.rowsCache[0] = vendors[0];\r\n }\r\n else {\r\n this.rows.push(vendors[0]);\r\n this.rowsCache.push(vendors[0]);\r\n }\r\n this.rows.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache.forEach((state, index, citys) => {\r\n (state as any).index = index + 1;\r\n });\r\n this.rowsCache = [...this.rowsCache]\r\n this.rows = [...this.rows]\r\n this.editedVendors = new VendorMaster()\r\n this.airsurface = '0';\r\n this.ratetype = '0';\r\n\r\n }\r\n bindgrid() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'sp_bindVendoredetails'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"vendorMasterid\"\r\n pr.PropertyValue = \"\";\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataExrate(result), error => this.onDataLoadFailed(error))\r\n }\r\n getSucessDataExrate(result: VendorMaster[]) {\r\n this.rows = result;\r\n this.rows.forEach((itm, index) => {\r\n (itm as any).index = index + 1;\r\n });\r\n this.rows = [...this.rows]\r\n }\r\n GenerateExcel(){\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetVendoreMaster'\r\n //let Parameter = new Array(1);\r\n //let pr = new Prclass();\r\n //Parameter[0] = pr;\r\n Req.LstParameter = null;\r\n var data = []\r\n this.ServiceMaster.Postcommondata(Req).subscribe(results => {\r\n for (let index = 0; index < results.length; index++) {\r\n data[index] = [results[index].region,\r\n results[index].vendoreCode,\r\n results[index].vendorName,\r\n results[index].vendoreType,\r\n results[index].mode,\r\n results[index].mobileno,\r\n results[index].email,\r\n results[index].ratedefine\r\n ]\r\n }\r\n this.excelService.data = data;\r\n this.excelService.Sheetname = \"Vendore Master\";\r\n let Office = \"Pan India\";\r\n this.excelService.header = [\"R.O\", \"Code\", \"Vendor Name\", \"Type\", \"Mode\", \"Mobileno\",\"Email\", \"RateDefine\",]\r\n this.excelService.title = \"Vendore Master\"\r\n this.excelService.Widths = [30, 10, 50, 30, 15, 10, 50,10]\r\n this.excelService.generateExcel();\r\n }, error => this.onDataLoadFailed(error));\r\n\r\n}\r\n editvendor(row: any) {\r\n $('#houseNo').val(row.houseNo); \r\n $('#streetName').val(row.streetName);\r\n var prmCity = row.cityName;\r\n $('#city').val(prmCity);\r\n $('#state').val(row.stateName);\r\n $('#pincode').val(row.pinCode);\r\n $('#bankaddress').val(row.bankAddress);\r\n this.formResetToggle = true;\r\n this.editedVendors = row;\r\n this.airsurface = row.mode == \"Air\" ? \"1\" : row.mode == \"Surface\" ? \"2\" : row.mode == \"Train\" ? \"3\" : \"0\"\r\n\r\n if (this.editedVendors.vendoreType == 'Temporary Vendore' || this.editedVendors.vendoreType == 'Transporter' || this.editedVendors.vendoreType == 'Co-Loader') {\r\n this.optdisable = false\r\n }\r\n else {\r\n this.optdisable = true;\r\n }\r\n this.editedVendors.pinCode = row.pinCode;\r\n this.editedVendors.cityName = row.cityName;\r\n this.editedVendors.streetName = row.streetName;\r\n this.editedVendors.houseNo = row.houseNo;\r\n this.editedVendors.bankaddress = row.bankAddress;\r\n this.editedVendors.stateName = row.stateName\r\n this.editedVendors.address = [];\r\n this.editedVendors.address[0] = new Address();\r\n this.editedVendors.region = row.region;\r\n this.editedVendors.rateType = row.rateType;\r\n this.bindcity(this.editedVendors.vendoreCode);\r\n this.ratetype = row.rateType;\r\n }\r\n\r\n\r\n bindcity(vendorecode:string) {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_GetVendorMapStation'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"vendoreCode\"\r\n pr.PropertyValue = vendorecode;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => this.getSucessDataCity(result), error => this.onDataLoadFailed(error))\r\n }\r\n getSucessDataCity(result: any[]) {\r\n this.rowscity = [];\r\n let Station: MapStation;\r\n result.forEach((city, ind, arr) => {\r\n\r\n\r\n if (this.rowscity.length == 0) {\r\n Station = new MapStation();\r\n Station.cityName = city.cityName\r\n this.rowscity[0] = Station;\r\n }\r\n else {\r\n Station = new MapStation();\r\n Station.cityName = city.cityName\r\n this.rowscity.push( Station);\r\n }\r\n });\r\n this.rowscity.forEach((itm, index) => {\r\n (itm as any).index = index + 1;\r\n });\r\n this.rowscity = [...this.rowscity]\r\n }\r\n\r\n\r\n\r\n\r\n onSearchChanged(value: string) {\r\n\r\n this.rows = this.rowsCache.filter(r => Utilities.searchArray(value, false, r.vendorName, r.mobileno));\r\n }\r\n private saveFailedHelper(error: any) {\r\n\r\n this.alertService.stopLoadingMessage();\r\n this.alertService.showStickyMessage('Save Error', 'The below errors occured whilst saving your changes:', MessageSeverity.error, error);\r\n this.alertService.showStickyMessage(error, null, MessageSeverity.error);\r\n }\r\n showErrorAlert(caption: string, message: string) {\r\n this.alertService.showMessage(caption, message, MessageSeverity.error);\r\n }\r\n onlyNumberKey(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))\r\n return false;\r\n return true;\r\n }\r\n}\r\nexport class VendorMaster {\r\n constructor(vendorName?: string, company?: string, address?: string, pinCode?: string, city?: string\r\n , state?: string, gstn?: string, panno?: string, mobileno?: string, landLineno?: string,\r\n email?: string, dateOfEstablishment?: string, natureOfService?: string, surface?: string, local?: string,\r\n air?: string, vehicle?: string, haveWeUsedTheirServiceInanyform?: string, bankName?: string, accountno?: string,\r\n ifsccode?: string, bankaddress?: string, accountholdername?: string) {\r\n\r\n this.vendorName = vendorName;\r\n this.company = company;\r\n this.vendAddress = address;\r\n this.pinCode = pinCode;\r\n this.cityName = city;\r\n this.stateName = state;\r\n this.gstnumber = gstn;\r\n this.panno = panno;\r\n this.mobileno = mobileno;\r\n this.landLineno = landLineno;\r\n this.email = email;\r\n this.dateOfEstablishment = dateOfEstablishment;\r\n this.natureOfService = natureOfService;\r\n \r\n this.bankName = bankName;\r\n this.accountno = accountno;\r\n this.ifsccode = ifsccode;\r\n this.bankaddress = bankaddress;\r\n this.accountholdername = accountholdername;\r\n this.address = [new Address()];\r\n };\r\n public vendoreMasterId: string\r\n public vendorName: string\r\n public vendoreCode: string\r\n public vendoreType:string\r\n public company: string\r\n public vendAddress: string\r\n public pinCode: string\r\n public cityName: string\r\n public stateName: string\r\n public gstnumber: string\r\n public panno: string\r\n public mobileno: string\r\n public landLineno: string\r\n public email: string\r\n public dateOfEstablishment: string\r\n public natureOfService: string \r\n public bankName: string\r\n public accountno: string\r\n public ifsccode: string\r\n public bankaddress: string\r\n public accountholdername: string\r\n public address: Address[];\r\n public chequeimage: string;\r\n public houseNo: string;\r\n public streetName: string;\r\n public mode: string;\r\n public mapstation: MapStation[];\r\n public rateType: string;\r\n public region: string;\r\n}\r\nexport class MapStation {\r\n public cityName: string;\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdmVuZG9yLXJhdGUvdmVuZG9yLXJhdGUuY29tcG9uZW50LnNjc3MifQ== */\"","import { DatePipe } from '@angular/common';\r\nimport { ViewChild } from '@angular/core';\r\nimport { TemplateRef } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDirective } from 'ngx-bootstrap/modal';\r\nimport { Subscription, timer } from 'rxjs';\r\nimport { map, share } from 'rxjs/operators';\r\nimport { AlertService, DialogType, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { LocalStoreManager } from '../../services/local-store-manager.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { InscanResponse } from '../inscan/inscan.component';\r\nimport { Message } from '@angular/compiler/src/i18n/i18n_ast';\r\nimport { isNullOrUndefined } from 'util';\r\nimport { ConfirmDialogMpsModels, DialogMpsinscanComponent, MPStransaction } from '../controls/dialog-mpsinscan.component';\r\nimport { MatDialog } from '@angular/material';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms'\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { Guid } from 'guid-typescript';\r\nimport { isNull } from '@angular/compiler/src/output/output_ast';\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-vendor-rate',\r\n templateUrl: './vendor-rate.component.html',\r\n styleUrls: ['./vendor-rate.component.scss']\r\n})\r\nexport class VendorRateComponent implements OnInit {\r\n vendorRate: FormGroup;\r\n RouteVia: any[];\r\n columns: any[] = [];\r\n rows: VendRate[] = [];\r\n arrcity: any[] = [];\r\n mapcity: any[] = [];\r\n rateType: any;\r\n vendrateId: any;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n constructor(private dialog: MatDialog, private transaction: TransactionService,\r\n private configurations: ConfigurationService, private localstre: LocalStoreManager, private router: Router,\r\n private authService: AuthService, private route: Router,\r\n private alertService: AlertService, private ServiceMaster: Masters) {\r\n }\r\n\r\n ngOnInit() {\r\n this.RouteVia = [{ \"id\": \"1\", \"Value\": \"Direct\" }, { \"id\": \"2\", \"Value\": \"Via\" }]\r\n this.vendrateId = '';\r\n this.vendorRate = new FormGroup({\r\n vendorName: new FormControl('', Validators.required),\r\n vendorCode: new FormControl('', Validators.required),\r\n flightName: new FormControl(''),\r\n flightNumber: new FormControl(''),\r\n transitMode: new FormControl('', Validators.required),\r\n exFromCity: new FormControl('', Validators.required),\r\n routeVia: new FormControl(''),\r\n destCity: new FormControl('', Validators.required),\r\n viaCity: new FormControl(''),\r\n vrate: new FormControl('', Validators.required),\r\n minWt: new FormControl('', Validators.required),\r\n vsmbag: new FormControl('0'),\r\n smlbag: new FormControl('0'),\r\n mdmbag: new FormControl('0'),\r\n bigbag: new FormControl('0'),\r\n oddbag: new FormControl('0'),\r\n minWtsur: new FormControl('0'),\r\n vratesur: new FormControl('0'),\r\n destCitysur: new FormControl('')\r\n });\r\n\r\n\r\n\r\n this.vendorRate.controls[\"vendorName\"].disable();\r\n this.vendorRate.controls[\"transitMode\"].disable();\r\n this.vendorRate.controls[\"viaCity\"].disable();\r\n\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 50, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'vendorName', name: 'Name', width: 100 },\r\n { prop: 'vendorCode', name: 'Code', width: 100 },\r\n { prop: 'flightName', name: 'Flight', width: 100 },\r\n { prop: 'transitMode', name: 'Mode', width: 100 },\r\n { prop: 'exFromCity', name: 'From City', width: 100 },\r\n { prop: 'viaCity', name: 'Route', width: 150 },\r\n { prop: 'destCity', name: 'Dest City', width: 150 },\r\n { prop: 'minWt', name: 'Min Wt.', width: 50 },\r\n { prop: 'vrate', name: 'Rate', width: 50 },\r\n { prop: 'vsmbag', name: 'VSbag', width: 50 },\r\n { prop: 'smlbag', name: 'SmlBag', width: 50 },\r\n { prop: 'mdmbag', name: 'MdmBag', width: 50 },\r\n { prop: 'bigbag', name: 'Bigbag', width: 50 },\r\n { prop: 'oddbag', name: 'Oddbag', width: 50 }\r\n \r\n ];\r\n this.columns.push({ name: 'Action', width: 100, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n\r\n\r\n }\r\n getvendlista($event) {\r\n this.getVendor();\r\n\r\n $('#vendorCode').autocomplete({\r\n source: this.arrcity,\r\n delay: 50\r\n\r\n });\r\n }\r\n getcitylist($event) {\r\n this.GetCityMaster();\r\n\r\n $('#destCity').autocomplete({\r\n source: this.arrcity,\r\n delay: 50\r\n\r\n });\r\n $('#destCitysur').autocomplete({\r\n source: this.arrcity,\r\n delay: 50\r\n\r\n });\r\n }\r\n getcitylistex($event) {\r\n this.GetCityMaster();\r\n\r\n $('#exFromCity').autocomplete({\r\n source: this.arrcity,\r\n delay: 50\r\n\r\n });\r\n }\r\n getcitylistvia($event) {\r\n this.GetCityMaster();\r\n\r\n $('#viaCity').autocomplete({\r\n source: this.arrcity,\r\n delay: 50\r\n\r\n });\r\n }\r\n onlyNumberKeywithdecimal(event) {\r\n var ASCIICode = (event.which) ? event.which : event.keyCode\r\n if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57) && ASCIICode > 46) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n SetcodeAndname($event) {\r\n let custcodename: string = (document.getElementById('vendorCode')).value;\r\n if (custcodename.indexOf('-') > 0) {\r\n (document.getElementById('vendorCode')).value = custcodename.substring(0, custcodename.indexOf('-') - 1);\r\n (document.getElementById('vendorName')).value = custcodename.substring(custcodename.indexOf('-') + 1);\r\n this.vendorRate.controls[\"vendorName\"].setValue(custcodename.substring(custcodename.indexOf('-') + 1));\r\n this.vendorRate.controls[\"vendorCode\"].setValue(custcodename.substring(0, custcodename.indexOf('-') - 1));\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getVendoreFromCode'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"VendCode\";\r\n pr.PropertyValue = $('#vendorCode').val();\r\n Parameter[0] = pr;\r\n\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(resultset => {\r\n var result = resultset.table;\r\n this.mapcity = [];\r\n this.rateType = result[0].rateType;\r\n if (resultset.table1.length > 0) {\r\n resultset.table1.forEach((city, ind, arr) => {\r\n if (this.mapcity.length == 0) {\r\n this.mapcity[0] = city.cityName;\r\n }\r\n else {\r\n this.mapcity.push(city.cityName);\r\n }\r\n })\r\n }\r\n if (result.length > 0) {\r\n this.vendorRate.controls[\"transitMode\"].setValue(result[0].mode);\r\n if (this.vendorRate.controls[\"transitMode\"].value == 'Air') {\r\n this.vendorRate.controls[\"vsmbag\"].disable();\r\n this.vendorRate.controls[\"smlbag\"].disable();\r\n this.vendorRate.controls[\"mdmbag\"].disable();\r\n this.vendorRate.controls[\"bigbag\"].disable();\r\n this.vendorRate.controls[\"oddbag\"].disable();\r\n this.vendorRate.controls[\"flightName\"].enable();\r\n this.vendorRate.controls[\"flightNumber\"].enable();\r\n this.vendorRate.controls[\"routeVia\"].enable();\r\n this.vendorRate.controls[\"viaCity\"].enable();\r\n this.vendorRate.controls[\"destCitysur\"].disable();\r\n this.vendorRate.controls[\"destCity\"].enable();\r\n this.vendorRate.controls[\"minWt\"].enable();\r\n this.vendorRate.controls[\"vrate\"].enable();\r\n this.vendorRate.controls[\"minWtsur\"].disable();\r\n this.vendorRate.controls[\"vratesur\"].disable();\r\n }\r\n else {\r\n if (result[0].rateType == \"2\") {\r\n this.vendorRate.controls[\"vsmbag\"].enable();\r\n this.vendorRate.controls[\"smlbag\"].enable();\r\n this.vendorRate.controls[\"mdmbag\"].enable();\r\n this.vendorRate.controls[\"bigbag\"].enable();\r\n this.vendorRate.controls[\"oddbag\"].enable();\r\n this.vendorRate.controls[\"minWtsur\"].disable();\r\n this.vendorRate.controls[\"vratesur\"].disable();\r\n }\r\n else {\r\n this.vendorRate.controls[\"vsmbag\"].disable();\r\n this.vendorRate.controls[\"smlbag\"].disable();\r\n this.vendorRate.controls[\"mdmbag\"].disable();\r\n this.vendorRate.controls[\"bigbag\"].disable();\r\n this.vendorRate.controls[\"oddbag\"].disable();\r\n this.vendorRate.controls[\"minWtsur\"].enable();\r\n this.vendorRate.controls[\"vratesur\"].enable();\r\n }\r\n this.vendorRate.controls[\"flightName\"].disable();\r\n this.vendorRate.controls[\"flightNumber\"].disable();\r\n this.vendorRate.controls[\"routeVia\"].disable();\r\n this.vendorRate.controls[\"viaCity\"].disable();\r\n this.vendorRate.controls[\"destCitysur\"].enable();\r\n this.vendorRate.controls[\"destCity\"].disable();\r\n this.vendorRate.controls[\"minWt\"].disable();\r\n this.vendorRate.controls[\"vrate\"].disable();\r\n \r\n }\r\n this.Getdata();\r\n }\r\n\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n\r\n\r\n }\r\n }\r\n Getdata() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'p_GetVendRate'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\";\r\n pr.PropertyName = \"vendcode\";\r\n pr.PropertyValue = $('#vendorCode').val();\r\n Parameter[0] = pr;\r\n this.rows = [];\r\n\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondata(Req).subscribe(result => {\r\n if (result.length > 0) {\r\n\r\n this.rows = result;\r\n\r\n this.rows.forEach((rate, ind, arr) => {\r\n (rate as any).index = ind + 1;\r\n })\r\n this.rows = [...this.rows]\r\n }\r\n\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n }\r\n onSubmit() {\r\n if (!this.vendorRate.valid) {\r\n this.vendorRate.controls['exFromCity'].setValue($('#exFromCity').val())\r\n\r\n if ($('#transitMode').val() == \"Air\") {\r\n if (this.vendorRate.controls['vendorCode'].value == '') {\r\n $('#vendorCode').focus()\r\n this.alertService.showMessage(\"Vendore Code\", \"Please select vendore code\", MessageSeverity.info);\r\n return;\r\n }\r\n if (this.vendorRate.controls['vendorName'].value == '') {\r\n $('#vendorName').focus()\r\n this.alertService.showMessage(\"Vendore Name\", \"Please select vendore name\", MessageSeverity.info);\r\n return;\r\n }\r\n if (this.vendorRate.controls['exFromCity'].value == '') {\r\n $('#vendorName').focus()\r\n this.alertService.showMessage(\"From City\", \"Please select from city\", MessageSeverity.info);\r\n return;\r\n }\r\n if (this.vendorRate.controls['transitMode'].value == '') {\r\n $('#transitMode').focus()\r\n this.alertService.showMessage(\"Mode\", \"Invalid Transit Mode,Please map transit mode in vendore Master\", MessageSeverity.info);\r\n return;\r\n }\r\n if (this.vendorRate.controls['flightName'].value == '') {\r\n $('#flightName').focus()\r\n this.alertService.showMessage(\"flight Name\", \"Please enter flight name\", MessageSeverity.info);\r\n return;\r\n }\r\n if (this.vendorRate.controls['flightNumber'].value == '') {\r\n $('#flightNumber').focus()\r\n this.alertService.showMessage(\"flight Number\", \"Please enter flight number\", MessageSeverity.info);\r\n }\r\n if (this.vendorRate.controls['minWt'].value == '' || parseFloat(this.vendorRate.controls['minWt'].value) == 0) {\r\n $('#minWt').focus()\r\n this.alertService.showMessage(\"Min. Wt.\", \"Please enter min. weight\", MessageSeverity.info);\r\n return;\r\n }\r\n if (this.vendorRate.controls['vrate'].value == '' || parseFloat(this.vendorRate.controls['vrate'].value) == 0) {\r\n $('#vrate').focus()\r\n this.alertService.showMessage(\"Rate\", \"Please enter rate\", MessageSeverity.info);\r\n return;\r\n }\r\n if (this.vendorRate.controls['destCity'].value == '') {\r\n $('#destCity').focus()\r\n this.alertService.showMessage(\"Dest city\", \"Please destination city\", MessageSeverity.info);\r\n return;\r\n }\r\n }\r\n else {\r\n if (this.vendorRate.controls['vendorCode'].value == '') {\r\n $('#vendorCode').focus()\r\n this.alertService.showMessage(\"Vendore Code\", \"Please select vendore code\", MessageSeverity.info);\r\n return;\r\n }\r\n if (this.vendorRate.controls['vendorName'].value == '') {\r\n this.alertService.showMessage(\"Vendore Name\", \"Please select vendore name\", MessageSeverity.info);\r\n $('#vendorName').focus()\r\n\r\n return;\r\n }\r\n if (this.vendorRate.controls['transitMode'].value == '') {\r\n this.alertService.showMessage(\"Mode\", \"Invalid Transit Mode,Please map transit mode in vendore Master\", MessageSeverity.info);\r\n $('#transitMode').focus()\r\n return;\r\n }\r\n if (this.vendorRate.controls['smlbag'].value == '') {\r\n this.alertService.showMessage(\"Small Bag Rate\", \"Please enter small bag rate\", MessageSeverity.info);\r\n $('#smlbag').focus()\r\n return;\r\n }\r\n if (this.vendorRate.controls['vsmbag'].value == '') {\r\n this.alertService.showMessage(\"Rate\", \"Please enter very small bag rate\", MessageSeverity.info);\r\n $('#vsmbag').focus()\r\n\r\n return;\r\n }\r\n if (this.vendorRate.controls['bigbag'].value == '') {\r\n this.alertService.showMessage(\"Rate\", \"Please enter big bag rate\", MessageSeverity.info);\r\n $('#bigbag').focus()\r\n\r\n return;\r\n }\r\n if (this.vendorRate.controls['mdmbag'].value == '') {\r\n this.alertService.showMessage(\"rate\", \"Please enter medium bag rate\", MessageSeverity.info);\r\n $('#mdmbag').focus()\r\n return;\r\n }\r\n if (this.vendorRate.controls['oddbag'].value == '') {\r\n this.alertService.showMessage(\"Mode\", \"Please enter odd bag rate\", MessageSeverity.info);\r\n $('#oddbag').focus()\r\n return;\r\n }\r\n if (this.vendorRate.controls['destCitysur'].value == '') {\r\n $('#destCitysur').focus()\r\n this.alertService.showMessage(\"Dest city\", \"Please destination city\", MessageSeverity.info);\r\n return;\r\n }\r\n }\r\n return;\r\n }\r\n this.vendorRate.controls['destCity'].setValue($('#destCity').val())\r\n this.vendorRate.controls['viaCity'].setValue($('#viaCity').val())\r\n this.vendorRate.controls['destCitysur'].setValue($('#destCitysur').val());\r\n\r\n let vendrate = new VendRate();\r\n vendrate.destCity = this.vendorRate.controls['destCity'].value;\r\n vendrate.exFromCity = this.vendorRate.controls['exFromCity'].value;\r\n vendrate.flightName = this.vendorRate.controls['flightName'].value;\r\n vendrate.routeVia = this.vendorRate.controls['routeVia'].value;\r\n vendrate.transitMode = this.vendorRate.controls['transitMode'].value;\r\n vendrate.vendorCode = this.vendorRate.controls['vendorCode'].value;\r\n vendrate.vendorName = this.vendorRate.controls['vendorName'].value;\r\n\r\n vendrate.viaCity = this.vendorRate.controls['viaCity'].value;\r\n vendrate.flightNumber = this.vendorRate.controls['flightNumber'].value;\r\n if ($('#transitMode').val() == \"Air\") {\r\n vendrate.minWt = this.vendorRate.controls['minWt'].value;\r\n vendrate.vrate = this.vendorRate.controls['vrate'].value;\r\n vendrate.destCity = this.vendorRate.controls['destCity'].value;\r\n }\r\n else {\r\n vendrate.minWt = this.vendorRate.controls['minWtsur'].value;\r\n vendrate.vrate = this.vendorRate.controls['vratesur'].value;\r\n vendrate.destCity = this.vendorRate.controls['destCitysur'].value;\r\n\r\n }\r\n vendrate.smlbag = this.vendorRate.controls['smlbag'].value;\r\n vendrate.vsmbag = this.vendorRate.controls['vsmbag'].value;\r\n vendrate.mdmbag = this.vendorRate.controls['mdmbag'].value;\r\n vendrate.bigbag = this.vendorRate.controls['bigbag'].value;\r\n vendrate.oddbag = this.vendorRate.controls['oddbag'].value;\r\n if (this.vendrateId == '') {\r\n vendrate.vendoreRateId = Guid.raw();\r\n }\r\n else {\r\n vendrate.vendoreRateId = this.vendrateId;\r\n }\r\n \r\n\r\n this.ServiceMaster.PostSavevendRate(vendrate).subscribe(result => {\r\n if (this.rows.length == 0) {\r\n this.rows[0] = vendrate\r\n }\r\n else {\r\n this.rows.push(vendrate)\r\n }\r\n this.rows.forEach((rate, ind, arr) => {\r\n (rate as any).index = ind + 1;\r\n })\r\n\r\n this.rows = [...this.rows];\r\n\r\n this.vendorRate.controls['destCity'].setValue('');\r\n this.vendorRate.controls['flightName'].setValue('')\r\n this.vendorRate.controls['minWt'].setValue('0');\r\n this.vendorRate.controls['routeVia'].setValue('');\r\n this.vendorRate.controls['vrate'].setValue('0')\r\n this.vendorRate.controls['viaCity'].setValue('')\r\n this.vendorRate.controls['flightNumber'].setValue('');\r\n this.vendorRate.controls['destCitysur'].setValue('');\r\n this.vendorRate.controls['minWtsur'].setValue('0');\r\n this.vendorRate.controls['vratesur'].setValue('0')\r\n this.vendorRate.controls['smlbag'].setValue('0');\r\n this.vendorRate.controls['vsmbag'].setValue('0');\r\n this.vendorRate.controls['mdmbag'].setValue('0');\r\n this.vendorRate.controls['bigbag'].setValue('0');\r\n this.vendorRate.controls['oddbag'].setValue('0');\r\n\r\n this.vendrateId = '';\r\n vendrate = new VendRate();\r\n this.alertService.showMessage(\"Vend Rate\", \"Successfully saved\", MessageSeverity.success);\r\n\r\n }, error => this.onDataLoadFailed(error))\r\n\r\n }\r\n setroutevia() {\r\n if (this.vendorRate.controls['routeVia'].value == '2') {\r\n this.vendorRate.controls['viaCity'].enable();\r\n }\r\n else {\r\n this.vendorRate.controls['viaCity'].disable();\r\n }\r\n }\r\n GetCityMaster() {\r\n this.ServiceMaster.getcitylist().subscribe(result => this.onDatagetSuccessful(result, 'CITY'), error => this.onDataLoadFailed(error));\r\n }\r\n getVendor() {\r\n this.ServiceMaster.getHelplist(\"VENDOR\").subscribe(result => this.onDatagetSuccessful(result, 'vend'), error => this.onDataLoadFailed(error));\r\n }\r\n onDatagetSuccessful(states: string[], listof: any) {\r\n this.alertService.stopLoadingMessage();\r\n //this.loadingIndicator = false; \r\n this.arrcity = states;\r\n }\r\n\r\n onDataLoadFailed(error: any) {\r\n this.alertService.stopLoadingMessage();\r\n\r\n this.alertService.showStickyMessage('Load Error', `Unable to retrieve city from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error, error);\r\n\r\n }\r\n editvendor(vendrate: VendRate) {\r\n this.vendrateId = vendrate.vendoreRateId;\r\n //let vendrate = new VendRate();\r\n this.vendorRate.controls['destCity'].setValue(vendrate.destCity); //= this.vendorRate.controls['destCity'].value;\r\n this.vendorRate.controls['exFromCity'].setValue(vendrate.exFromCity);\r\n this.vendorRate.controls['flightName'].setValue(vendrate.flightName);\r\n this.vendorRate.controls['routeVia'].setValue(vendrate.routeVia) ;\r\n this.vendorRate.controls['transitMode'].setValue(vendrate.transitMode);\r\n this.vendorRate.controls['vendorCode'].setValue(vendrate.vendorCode);\r\n this.vendorRate.controls['vendorName'].setValue(vendrate.vendorName);\r\n this.vendorRate.controls['viaCity'].setValue(vendrate.viaCity);\r\n this.vendorRate.controls['flightNumber'].setValue(vendrate.flightNumber);\r\n if ($('#transitMode').val() == \"Air\") {\r\n this.vendorRate.controls['minWt'].setValue(vendrate.minWt);\r\n this.vendorRate.controls['vrate'].setValue(vendrate.vrate);\r\n this.vendorRate.controls['destCity'].setValue(vendrate.destCity);\r\n }\r\n else {\r\n this.vendorRate.controls['minWtsur'].setValue(vendrate.minWt);\r\n this.vendorRate.controls['vratesur'].setValue(vendrate.vrate);\r\n this.vendorRate.controls['destCitysur'].setValue(vendrate.destCity);\r\n\r\n }\r\n this.vendorRate.controls['smlbag'].setValue(isNullOrUndefined(vendrate.smlbag) ? '0' : vendrate.smlbag);\r\n this.vendorRate.controls['vsmbag'].setValue(isNullOrUndefined(vendrate.vsmbag) ? '0' : vendrate.vsmbag);\r\n this.vendorRate.controls['mdmbag'].setValue(isNullOrUndefined(vendrate.mdmbag) ? '0' : vendrate.mdmbag);\r\n this.vendorRate.controls['bigbag'].setValue(isNullOrUndefined(vendrate.bigbag) ? '0': vendrate.bigbag);\r\n this.vendorRate.controls['oddbag'].setValue(isNullOrUndefined(vendrate.oddbag) ? '0':vendrate.oddbag); \r\n }\r\n}\r\nexport class VendRate {\r\n public vendorName: string\r\n public vendorCode: string\r\n public transitMode: string\r\n public flightName: string\r\n public exFromCity: string\r\n public routeVia: string\r\n public destCity: string\r\n public viaCity: string\r\n public vrate: string\r\n public minWt: string\r\n public flightNumber: string;\r\n public vsmbag: string;\r\n public smlbag: string;\r\n public mdmbag: string;\r\n public bigbag: string;\r\n public oddbag: string;\r\n public vendoreRateId: any;\r\n}\r\n","export default \"p {\\n margin-bottom: 5px;\\n}\\n\\ntd {\\n text-align: center;\\n}\\n\\n.span4 {\\n width: 100%;\\n}\\n\\n.alignleft {\\n text-align: left;\\n border: solid 1px;\\n border-color: black;\\n padding-left: 7px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy92b3VjaGVyLXByaW50L0Q6XFxPbmV4V2ViXFxPbmV4QW5ndWxhckFwcFxcT25leEFuZ3VsYXJBcHBcXE9uZXhBbmd1bGFyQXBwXFxDbGllbnRBcHAvc3JjXFxhcHBcXGNvbXBvbmVudHNcXHZvdWNoZXItcHJpbnRcXHZvdWNoZXItcHJpbnQuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL2NvbXBvbmVudHMvdm91Y2hlci1wcmludC92b3VjaGVyLXByaW50LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usa0JBQUE7QUNDRjs7QURFQTtFQUNFLGtCQUFBO0FDQ0Y7O0FERUE7RUFDRSxXQUFBO0FDQ0Y7O0FERUE7RUFDRSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxpQkFBQTtBQ0NGIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy92b3VjaGVyLXByaW50L3ZvdWNoZXItcHJpbnQuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJwIHtcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuXHJcbnRkIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zcGFuNCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5hbGlnbmxlZnQge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgYm9yZGVyOiBzb2xpZCAxcHg7XHJcbiAgYm9yZGVyLWNvbG9yOiBibGFjaztcclxuICBwYWRkaW5nLWxlZnQ6IDdweDtcclxufVxyXG4iLCJwIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG50ZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNwYW40IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hbGlnbmxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBib3JkZXI6IHNvbGlkIDFweDtcbiAgYm9yZGVyLWNvbG9yOiBibGFjaztcbiAgcGFkZGluZy1sZWZ0OiA3cHg7XG59Il19 */\"","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\n\r\n@Component({\r\n selector: 'app-voucher-print',\r\n templateUrl: './voucher-print.component.html',\r\n styleUrls: ['./voucher-print.component.scss']\r\n})\r\nexport class VoucherPrintComponent implements OnInit {\r\n voucherno: string;\r\n backurl: string;\r\n vdetail: any[] = [];\r\n fulladdress: string;\r\n cityName: string;\r\n opincode: string;\r\n VoucherType: string;\r\n officename: string;\r\n vdate: string;\r\n reference: string;\r\n totcr: number;\r\n totdr: number;\r\n charamount: string;\r\n narration: string;\r\n userName: string;\r\n @ViewChild('contentprint', { static: true }) contentprint: ElementRef;\r\n constructor(private transaction: TransactionService, private ServiceMaster: Masters,\r\n private alertService: AlertService, private configurations: ConfigurationService,\r\n private authService: AuthService, public router: ActivatedRoute, private _router: Router) { }\r\n\r\n ngOnInit() {\r\n this.router.queryParams\r\n .subscribe(params => {\r\n this.voucherno = params.billNo;\r\n this.backurl = params.backurl;\r\n });\r\n //this.voucherno = '23870';\r\n this.loadData()\r\n\r\n }\r\n loadData() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_GetVocuherPrintData'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"String\"\r\n pr.PropertyName = \"VoucherNo\"\r\n pr.PropertyValue = this.voucherno;\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => this.OngetsuccessGatePass(result), error => this.onDataLoadFailed(error))\r\n }\r\n OngetsuccessGatePass(result: any) {\r\n debugger;\r\n if (result) {\r\n this.vdetail = result.table1;\r\n this.fulladdress = result.table[0].fullAdress;\r\n this.cityName = result.table[0].cityName;\r\n this.opincode = result.table[0].opincode;\r\n this.VoucherType = result.table[0].voucherType;\r\n this.officename = result.table[0].officeName;\r\n this.vdate = result.table[0].voucherDate;\r\n this.reference = result.table[0].refrenceno;\r\n this.totcr = result.table[0].totalCredit;\r\n this.totdr = result.table[0].totalDebit;\r\n this.charamount = (this.convertToword(this.totdr) + \" Only\").toUpperCase();\r\n this.narration = result.table[0].narration;\r\n this.userName = result.table[0].userName;\r\n this.voucherno = result.table[0].voucherNo;\r\n }\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n convertToword(num: any) {\r\n var a = ['', 'one ', 'two ', 'three ', 'four ', 'five ', 'six ', 'seven ', 'eight ', 'nine ', 'ten ', 'eleven ', 'twelve ', 'thirteen ', 'fourteen ', 'fifteen ', 'sixteen ', 'seventeen ', 'eighteen ', 'nineteen '];\r\n var b = ['', '', 'twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety'];\r\n\r\n\r\n if ((num = num.toString()).length > 9) return 'overflow';\r\n var n: any = ('000000000' + num).substr(-9).match(/^(\\d{2})(\\d{2})(\\d{2})(\\d{1})(\\d{2})$/);\r\n if (!n) {\r\n return;\r\n }\r\n var str = '';\r\n str += (n[1] != 0) ? (a[Number(n[1])] || b[n[1][0]] + ' ' + a[n[1][1]]) + 'crore ' : '';\r\n str += (n[2] != 0) ? (a[Number(n[2])] || b[n[2][0]] + ' ' + a[n[2][1]]) + 'lakh ' : '';\r\n str += (n[3] != 0) ? (a[Number(n[3])] || b[n[3][0]] + ' ' + a[n[3][1]]) + 'thousand ' : '';\r\n str += (n[4] != 0) ? (a[Number(n[4])] || b[n[4][0]] + ' ' + a[n[4][1]]) + 'hundred ' : '';\r\n str += (n[5] != 0) ? ((str != '') ? 'and ' : '') + (a[Number(n[5])] || b[n[5][0]] + ' ' + a[n[5][1]]) + 'only ' : '';\r\n return str;\r\n }\r\n GobackUrl() {\r\n this._router.navigate([this.backurl]);\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvd2hhdHNhcHBwb2Qvd2hhdHNhcHBwb2QuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { MatDialog } from '@angular/material';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CommRequest, Prclass } from '../../models/comm-request.model';\r\nimport { AlertService, MessageSeverity } from '../../services/alert.service';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ConfigurationService } from '../../services/configuration.service';\r\nimport { Masters } from '../../services/masters.service';\r\nimport { TransactionService } from '../../services/transaction.service';\r\nimport { Utilities } from '../../services/utilities';\r\nimport {PoddialogModel, WppoddialogComponent } from '../controls/wppoddialog.component';\r\n\r\n@Component({\r\n selector: 'app-whatsapppod',\r\n templateUrl: './whatsapppod.component.html',\r\n styleUrls: ['./whatsapppod.component.scss']\r\n})\r\nexport class WhatsapppodComponent implements OnInit {\r\n rows: any[] = [];\r\n columns: any[] = [];\r\n dialogRef: any;\r\n @ViewChild('indexTemplate', { static: true })\r\n indexTemplate: TemplateRef;\r\n @ViewChild('actionsTemplate', { static: true })\r\n actionsTemplate: TemplateRef;\r\n constructor(public dialog: MatDialog, private transaction: TransactionService, private ServiceMaster: Masters,\r\n private alertService: AlertService, private configurations: ConfigurationService,\r\n private authService: AuthService, public router: ActivatedRoute, private _router: Router) { }\r\n\r\n ngOnInit() {\r\n this.columns = [\r\n { prop: 'index', name: '#', width: 20, cellTemplate: this.indexTemplate, canAutoResize: false },\r\n { prop: 'fromMobileno', name: 'Mobleno', width: 30 },\r\n { prop: 'podOffice', name: 'Pod Office', width: 50 },\r\n { prop: 'receiveDate', name: 'Recieve Date', width: 20 },\r\n { prop: 'imageid', name: 'ImageID', width: 30 },\r\n { prop: 'message', name: 'Message', width: 20 },\r\n ]\r\n this.columns.push({ name: '', width:150, cellTemplate: this.actionsTemplate, resizeable: false, canAutoResize: false, sortable: false, draggable: false });\r\n this.GetPodData();\r\n\r\n }\r\n confirmDialog_edl(imageid:string,mobileno:string,messageid:string,date:string ): void {\r\n\r\n const dialogData = new PoddialogModel(\"POD\", imageid, messageid, mobileno, date);\r\n\r\n this.dialogRef = this.dialog.open(WppoddialogComponent, {\r\n maxWidth: \"800px\",\r\n width:\"800px\",\r\n data: dialogData,\r\n disableClose: true\r\n });\r\n this.dialogRef.afterClosed().subscribe(dialogResult => { this.OnMPSResultofmodel(dialogResult) });\r\n }\r\n OnMPSResultofmodel(dialogResult) {\r\n if (dialogResult) {\r\n this.GetPodData();\r\n\r\n }\r\n }\r\n GetPodData() {\r\n let Req = new CommRequest();\r\n Req.ProcessName = 'Usp_getWpPodData'\r\n let Parameter = new Array(1);\r\n let pr = new Prclass();\r\n pr.ParameterDirection = \"Input\"\r\n pr.PropertType = \"Date\"\r\n pr.PropertyName = \"Date\"\r\n pr.PropertyValue = '2023-01-01';\r\n Parameter[0] = pr;\r\n Req.LstParameter = Parameter;\r\n this.ServiceMaster.Postcommondataset(Req).subscribe(result => {\r\n this.rows = result.table;\r\n this.rows = [...this.rows];\r\n }, error => this.onDataLoadFailed(error))\r\n }\r\n onDataLoadFailed(error: any) {\r\n this.alertService.showMessage('Load Error', `Unable to retrieve data from the server.\\r\\nErrors: \"${Utilities.getHttpResponseMessages(error)}\"`,\r\n MessageSeverity.error);\r\n }\r\n opendilog(row:any) {\r\n this.confirmDialog_edl(row.imageid, row.fromMobileno, row.messageid, row.receiveDate);\r\n }\r\n}\r\n","const CONSTANTS = {\r\n PROJECT_NAME: 'Paytm Blink Checkout JS',\r\n ENV: {\r\n PROD: 'PROD',\r\n STAGE: 'STAGE'\r\n },\r\n HOSTS: {\r\n PROD: 'https://securegw.paytm.in',\r\n STAGE: 'https://securegw-stage.paytm.in'\r\n },\r\n LINKS: {\r\n CHECKOUT_JS_URL: '/merchantpgpui/checkoutjs/merchants/'\r\n },\r\n ERRORS: {\r\n INIT: 'An error during initialization!',\r\n INVOKE: 'An error during invoking!',\r\n MERCHANT_ID_NOT_FOUND: 'Please provide merchant id!',\r\n CHECKOUT_NOT_AVAILABLE: 'Checkout JS library not found. Please make sure you have included checkout js!',\r\n INVALID_CHECKOUT_JS_INSTANCE: 'Invalid instance provided!'\r\n },\r\n IDS: {\r\n CHECKOUT_ELEMENT: 'checkout-wrapper-'\r\n }\r\n};\r\n\r\n// Prefix error with project name\r\nObject.keys(CONSTANTS.ERRORS).forEach(errorCode => {\r\n (CONSTANTS.ERRORS as any)[errorCode] = `${CONSTANTS.PROJECT_NAME}: ${(CONSTANTS.ERRORS as any)[errorCode]}`;\r\n});\r\n\r\nexport default CONSTANTS;\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Directive, ElementRef, OnInit } from '@angular/core';\r\n\r\n\r\n@Directive({\r\n selector: '[autofocus]'\r\n})\r\nexport class AutofocusDirective implements OnInit {\r\n constructor(public elementRef: ElementRef) { }\r\n\r\n ngOnInit() {\r\n setTimeout(() => this.elementRef.nativeElement.focus(), 500);\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Directive, ElementRef, Input, Output, EventEmitter, OnInit, OnDestroy } from '@angular/core';\r\nimport { Observable, Subscription, fromEvent } from 'rxjs';\r\n\r\n\r\ndeclare var $: any;\r\n\r\n@Directive({\r\n selector: '[bootstrapDatepicker]',\r\n exportAs: 'bootstrap-datepicker'\r\n})\r\nexport class BootstrapDatepickerDirective implements OnInit, OnDestroy {\r\n\r\n private _isShown = false;\r\n private updateTimeout;\r\n private changedSubscription: Subscription;\r\n private shownSubscription: Subscription;\r\n private hiddenSubscription: Subscription;\r\n\r\n get isShown() {\r\n return this._isShown;\r\n }\r\n\r\n @Input()\r\n options = {};\r\n\r\n @Input()\r\n set ngModel(value) {\r\n this.tryUpdate(value);\r\n }\r\n\r\n\r\n @Output()\r\n ngModelChange = new EventEmitter();\r\n\r\n\r\n constructor(private el: ElementRef) {\r\n this.changedSubscription = fromEvent($(this.el.nativeElement), 'change').subscribe((e: any) => setTimeout(() => this.ngModelChange.emit(e.target.value)));\r\n this.shownSubscription = fromEvent($(this.el.nativeElement), 'show').subscribe((e: any) => this._isShown = true);\r\n this.hiddenSubscription = fromEvent($(this.el.nativeElement), 'hide').subscribe((e: any) => this._isShown = false);\r\n }\r\n\r\n\r\n\r\n ngOnInit() {\r\n this.initialize(this.options);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy();\r\n }\r\n\r\n\r\n\r\n\r\n initialize(options?: any) {\r\n $(this.el.nativeElement).datepicker(options);\r\n }\r\n\r\n destroy() {\r\n if (this.changedSubscription) {\r\n this.changedSubscription.unsubscribe();\r\n this.shownSubscription.unsubscribe();\r\n this.hiddenSubscription.unsubscribe();\r\n }\r\n\r\n $(this.el.nativeElement).datepicker('destroy');\r\n }\r\n\r\n\r\n\r\n show() {\r\n $(this.el.nativeElement).datepicker('show');\r\n }\r\n\r\n\r\n hide() {\r\n $(this.el.nativeElement).datepicker('hide');\r\n }\r\n\r\n\r\n toggle() {\r\n this.isShown ? this.hide() : this.show();\r\n }\r\n\r\n\r\n private tryUpdate(value) {\r\n\r\n clearTimeout(this.updateTimeout);\r\n\r\n if (!$(this.el.nativeElement).is(':focus')) {\r\n this.update(value);\r\n } else {\r\n this.updateTimeout = setTimeout(() => {\r\n this.updateTimeout = null;\r\n this.tryUpdate(value);\r\n }, 100);\r\n }\r\n }\r\n\r\n update(value) {\r\n setTimeout(() => $(this.el.nativeElement).datepicker('update', value));\r\n }\r\n\r\n\r\n setDate(value) {\r\n setTimeout(() => $(this.el.nativeElement).datepicker('setDate', value));\r\n }\r\n\r\n\r\n setUTCDate(value) {\r\n setTimeout(() => $(this.el.nativeElement).datepicker('setUTCDate', value));\r\n }\r\n\r\n\r\n clearDates() {\r\n setTimeout(() => $(this.el.nativeElement).datepicker('clearDates'));\r\n }\r\n\r\n\r\n getDate() {\r\n $(this.el.nativeElement).datepicker('getDate');\r\n }\r\n\r\n\r\n getUTCDate() {\r\n $(this.el.nativeElement).datepicker('getUTCDate');\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Directive, Attribute, ElementRef, Input, Output, EventEmitter, OnInit, OnDestroy } from '@angular/core';\r\nimport { Observable, Subscription, fromEvent } from 'rxjs';\r\ndeclare var $: any;\r\n@Directive({\r\n selector: '[bootstrapSelect]',\r\n exportAs: 'bootstrap-select'\r\n})\r\nexport class BootstrapSelectDirective implements OnInit, OnDestroy {\r\n\r\n private oldValues: string | string[] = '';\r\n\r\n private changedSubscription: Subscription;\r\n private shownSubscription: Subscription;\r\n private hiddenSubscription: Subscription;\r\n\r\n @Input()\r\n required: string;\r\n\r\n @Input()\r\n set ngModel(values: string | string[]) {\r\n setTimeout(() => this.selected = values);\r\n }\r\n\r\n\r\n @Output()\r\n ngModelChange = new EventEmitter();\r\n\r\n @Output()\r\n shown = new EventEmitter();\r\n\r\n @Output()\r\n hidden = new EventEmitter();\r\n\r\n\r\n constructor(private el: ElementRef) {\r\n this.changedSubscription = fromEvent($(this.el.nativeElement), 'changed.bs.select').subscribe((e: any) => setTimeout(() => {\r\n if (this.checkIsValuesChanged(this.selected)) {\r\n this.ngModelChange.emit(this.selected);\r\n }\r\n }));\r\n this.shownSubscription = fromEvent($(this.el.nativeElement), 'shown.bs.select').subscribe((e: any) => setTimeout(() => this.shown.emit()));\r\n this.hiddenSubscription = fromEvent($(this.el.nativeElement), 'hidden.bs.select').subscribe((e: any) => setTimeout(() => this.hidden.emit()));\r\n }\r\n\r\n\r\n ngOnInit() {\r\n $(this.el.nativeElement).selectpicker();\r\n\r\n if (this.requiredAttribute) {\r\n $(this.el.nativeElement).selectpicker('setStyle', 'required', 'add');\r\n }\r\n\r\n setTimeout(() => {\r\n this.refresh();\r\n this.doValidation();\r\n });\r\n\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.changedSubscription) {\r\n this.changedSubscription.unsubscribe();\r\n }\r\n\r\n if (this.shownSubscription) {\r\n this.shownSubscription.unsubscribe();\r\n }\r\n\r\n if (this.hiddenSubscription) {\r\n this.hiddenSubscription.unsubscribe();\r\n }\r\n\r\n $(this.el.nativeElement).selectpicker('destroy');\r\n }\r\n\r\n private checkIsValuesChanged(newValue: string | string[]) {\r\n return !(newValue == this.oldValues ||\r\n (newValue instanceof Array && newValue.length === this.oldValues.length && newValue.every((v, i) => v === this.oldValues[i])));\r\n }\r\n\r\n private doValidation() {\r\n if (this.requiredAttribute) {\r\n $(this.el.nativeElement).selectpicker('setStyle', !this.valid ? 'ng-valid' : 'ng-invalid', 'remove');\r\n $(this.el.nativeElement).selectpicker('setStyle', this.valid ? 'ng-valid' : 'ng-invalid', 'add');\r\n }\r\n }\r\n\r\n private get requiredAttribute() {\r\n return this.required === '' || this.required == 'true';\r\n }\r\n\r\n\r\n refresh() {\r\n setTimeout(() => {\r\n $(this.el.nativeElement).selectpicker('refresh');\r\n });\r\n }\r\n\r\n render() {\r\n setTimeout(() => {\r\n $(this.el.nativeElement).selectpicker('render');\r\n });\r\n }\r\n\r\n\r\n get valid(): boolean {\r\n return this.requiredAttribute ? this.selected && this.selected.length > 0 : true;\r\n }\r\n\r\n\r\n set selected(values: string | string[]) {\r\n\r\n if (!this.checkIsValuesChanged(values)) {\r\n return;\r\n }\r\n\r\n this.oldValues = this.selected;\r\n $(this.el.nativeElement).selectpicker('val', values);\r\n this.doValidation();\r\n }\r\n\r\n\r\n get selected(): string | string[] {\r\n return $(this.el.nativeElement).selectpicker('val');\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Directive, ElementRef, Output, EventEmitter, OnDestroy, NgZone } from '@angular/core';\r\nimport { Observable, Subscription, fromEvent } from 'rxjs';\r\ndeclare var $: any;\r\ninterface eventArg { type: string; target: Element; relatedTarget: Element; }\r\n\r\n@Directive({\r\n selector: '[bootstrapTab]',\r\n exportAs: 'bootstrap-tab'\r\n})\r\nexport class BootstrapTabDirective implements OnDestroy {\r\n\r\n\r\n @Output()\r\n showBSTab = new EventEmitter();\r\n\r\n @Output()\r\n hideBSTab = new EventEmitter();\r\n\r\n private tabShownSubscription: Subscription;\r\n private tabHiddenSubscription: Subscription;\r\n\r\n\r\n constructor(private el: ElementRef, private zone: NgZone) {\r\n\r\n this.tabShownSubscription = fromEvent($(this.el.nativeElement), 'show.bs.tab')\r\n .subscribe((e: any) => {\r\n this.runInZone(() => this.showBSTab.emit({ type: e.type, target: e.target, relatedTarget: e.relatedTarget }));\r\n });\r\n\r\n this.tabHiddenSubscription = fromEvent($(this.el.nativeElement), 'hidden.bs.tab')\r\n .subscribe((e: any) => {\r\n this.runInZone(() => this.hideBSTab.emit({ type: e.type, target: e.target, relatedTarget: e.relatedTarget }));\r\n });\r\n }\r\n\r\n\r\n ngOnDestroy() {\r\n this.tabShownSubscription.unsubscribe();\r\n this.tabHiddenSubscription.unsubscribe();\r\n }\r\n\r\n\r\n private runInZone(delegate: () => any) {\r\n this.zone.run(() => {\r\n delegate();\r\n });\r\n }\r\n\r\n\r\n show(selector: string) {\r\n //var jq = $.noConflict(true);\r\n $(selector).tab('show'); \r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Directive, ElementRef, Input, Output, EventEmitter, OnInit, OnDestroy } from '@angular/core';\r\nimport { Observable, Subscription, fromEvent } from 'rxjs';\r\n\r\n\r\ndeclare var $: any;\r\n\r\n@Directive({\r\n selector: '[bootstrapToggle]',\r\n exportAs: 'bootstrap-toggle'\r\n})\r\nexport class BootstrapToggleDirective implements OnInit, OnDestroy {\r\n\r\n private checkedSubscription: Subscription;\r\n\r\n @Input()\r\n set ngModel(value) {\r\n this.toggle(value);\r\n }\r\n\r\n @Output()\r\n ngModelChange = new EventEmitter();\r\n\r\n\r\n constructor(private el: ElementRef) {\r\n this.checkedSubscription = fromEvent($(this.el.nativeElement), 'change')\r\n .subscribe((e: any) => this.ngModelChange.emit(e.target.checked));\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.initialize();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy();\r\n }\r\n\r\n\r\n initialize(options?: any) {\r\n $(this.el.nativeElement).bootstrapToggle(options);\r\n }\r\n\r\n destroy() {\r\n if (this.checkedSubscription) {\r\n this.checkedSubscription.unsubscribe();\r\n }\r\n\r\n $(this.el.nativeElement).bootstrapToggle('destroy');\r\n }\r\n\r\n toggleOn() {\r\n $(this.el.nativeElement).bootstrapToggle('on');\r\n }\r\n\r\n toggleOff() {\r\n $(this.el.nativeElement).bootstrapToggle('off');\r\n }\r\n\r\n toggle(value?: boolean) {\r\n if (value == null) {\r\n $(this.el.nativeElement).bootstrapToggle('toggle');\r\n } else {\r\n $(this.el.nativeElement).prop('checked', value).change();\r\n }\r\n }\r\n\r\n enable() {\r\n $(this.el.nativeElement).bootstrapToggle('enable');\r\n }\r\n\r\n disable() {\r\n $(this.el.nativeElement).bootstrapToggle('disable');\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Directive, forwardRef, Attribute } from '@angular/core';\r\nimport { Validator, AbstractControl, NG_VALIDATORS } from '@angular/forms';\r\n\r\n\r\n\r\n@Directive({\r\n selector: '[validateEqual][formControlName],[validateEqual][formControl],[validateEqual][ngModel]',\r\n providers: [\r\n { provide: NG_VALIDATORS, useExisting: forwardRef(() => EqualValidator), multi: true }\r\n ]\r\n})\r\nexport class EqualValidator implements Validator {\r\n constructor( @Attribute('validateEqual') public validateEqual: string,\r\n @Attribute('reverse') public reverse: string) {\r\n }\r\n\r\n validate(c: AbstractControl): { [key: string]: any } {\r\n const other = c.root.get(this.validateEqual);\r\n\r\n if (!other) {\r\n return null;\r\n }\r\n\r\n return this.reverse === 'true' ? this.validateReverse(c, other) : this.validateNoReverse(c, other);\r\n }\r\n\r\n private validateNoReverse(c: AbstractControl, other: AbstractControl): { [key: string]: any } {\r\n return other.value === c.value ? null : { validateEqual: true };\r\n }\r\n\r\n private validateReverse(c: AbstractControl, other: AbstractControl): { [key: string]: any } {\r\n if (c.value === other.value) {\r\n if (other.errors) {\r\n delete other.errors.validateEqual;\r\n\r\n if (Object.keys(other.errors).length == 0) {\r\n other.setErrors(null);\r\n }\r\n }\r\n } else {\r\n other.setErrors({ validateEqual: true });\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Directive, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n\r\n@Directive({\r\n selector: '[lastElement]'\r\n})\r\nexport class LastElementDirective {\r\n @Input()\r\n set lastElement(isLastElement: boolean) {\r\n\r\n if (isLastElement) {\r\n setTimeout(() => {\r\n this.lastFunction.emit();\r\n });\r\n }\r\n }\r\n\r\n @Output()\r\n lastFunction = new EventEmitter();\r\n}\r\n","export class Citymaster {\r\n constructor(cityMasterId?: string, cityName?: string, stateName?: string, pinCode?: string) {\r\n this.cityMasterId = cityMasterId;\r\n this.cityName = cityName;\r\n this.pinCode = pinCode;\r\n\r\n this.stateName = stateName;\r\n }\r\n\r\n public cityMasterId:string\r\n public cityName:string\r\n public stateName: string\r\n public District:string\r\n public pinCode:string\r\n \r\n}\r\n","export class CommRequest {\r\n public ProcessName: string; \r\n public LstParameter: Prclass[];\r\n}\r\nexport class Prclass {\r\n public PropertyName: string;\r\n public PropertType: string; \r\n public PropertyValue: string;\r\n public ParameterDirection: string;\r\n}\r\n","import CONSTANTS from \"../constants\";\r\n\r\ninterface IStringDictionary {\r\n [key: string]: string\r\n}\r\n\r\nexport interface ICheckoutInstance {\r\n onLoad?: (fn: Function) => void,\r\n init?: (config: any) => Promise,\r\n close?: () => void,\r\n invoke?: () => void,\r\n initLib?: (merchantId: string) => Promise,\r\n PAYMODE?: IStringDictionary,\r\n FLOW?: IStringDictionary,\r\n TOKEN?: IStringDictionary,\r\n DEFERRED_EVENTS?: IStringDictionary,\r\n NOTIFY_MERCHANT_EVENTS?: IStringDictionary\r\n}\r\n\r\nexport type Env = 'STAGE' | 'PROD';\r\n\r\n\r\nexport class ICheckoutOptions {\r\n env?: Env;\r\n openInPopup?: boolean;\r\n checkoutJsInstance?: ICheckoutInstance;\r\n}\r\n\r\nexport class CheckoutOptions implements ICheckoutOptions {\r\n public constructor(\r\n public env: Env,\r\n public openInPopup?: boolean,\r\n public checkoutJsInstance?: ICheckoutInstance,\r\n ) {\r\n }\r\n\r\n static from(options: ICheckoutOptions): CheckoutOptions {\r\n options = options || {};\r\n const env = options.env || CONSTANTS.ENV.PROD;\r\n const openInPopup = typeof options.openInPopup === 'boolean' ? options.openInPopup : true;\r\n\r\n return new CheckoutOptions(\r\n env,\r\n openInPopup,\r\n options.checkoutJsInstance\r\n );\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Utilities } from '../services/utilities';\r\n\r\n\r\nexport class Notification {\r\n\r\n\r\n public id: number;\r\n public header: string;\r\n public body: string;\r\n public isRead: boolean;\r\n public isPinned: boolean;\r\n public date: Date;\r\n\r\n public static Create(data: {}) {\r\n const n = new Notification();\r\n Object.assign(n, data);\r\n\r\n if (n.date) {\r\n n.date = Utilities.parseDate(n.date);\r\n }\r\n\r\n return n;\r\n }\r\n}\r\n","import { ThemeService } from \"ng2-charts\";\n\nexport class Officemaster {\n\n constructor(Type?: string, Mobileno?: string, OfficeCode?: string, OfficeName?: string, Landlineno?: string, EmailId?: string, FullPostalAddress?: string\n , City?: string, PinCode?: string, District?: string, State?: string, OwnedRented?: string, TotalArea?: string,\n OwnerName?: string, MonthlyRent?: string, RentAgreementFrom?: string, RentAgreementTo?: string,\n PanNo?: string, GstNo?: string, ElectricityDetails?: string, Remarks?: string,\n CreatedBy?: string, UpdatedBy?: string, CreatedDate?: string, UpdatedDate?: string) {\n \n this.OfficeType = Type;\n this.Mobileno = Mobileno;\n this.officeCode = OfficeCode;\n this.officeName = OfficeName;\n this.Landlineno = Landlineno;\n this.Email = EmailId;\n this.FullAdress = FullPostalAddress;\n this.CityName = City;\n this.PinCode = PinCode;\n this.District = District;\n this.State = State;\n this.Owned_Rented = OwnedRented;\n this.TotalArea = TotalArea;\n this.OwnerName = OwnerName;\n this.MonthlyRent = MonthlyRent;\n this.RentAgreementFrom = RentAgreementFrom;\n this.RentAgreementTo = RentAgreementTo;\n this.PanNo = PanNo;\n this.GstNo = GstNo;\n this.ElectricityFile = ElectricityDetails;\n this.Remarks = Remarks;\n this.CreatedBy = CreatedBy;\n this.UpdatedBy = UpdatedBy;\n this.CreatedDate = CreatedDate;\n this.UpdatedDate = UpdatedDate;\n }\n public OfficeType: string;\n public officeCode: string;\n public officeName: string;\n public Mobileno: string;\n public Landlineno: string;\n public Email: string;\n public FullAdress: string;\n public CityName: string;\n public PinCode: string;\n public District: string;\n public State: string;\n public Owned_Rented: string;\n public TotalArea: string;\n public OwnerName: string;\n public MonthlyRent: string;\n public RentAgreementFrom: string;\n public RentAgreementTo: string;\n public PanNo: string;\n public GstNo: string;\n public ElectricityFile: string;\n public AgreementFile: string;\n public Remarks: string;\n public CreatedBy: string;\n public UpdatedBy: string;\n public CreatedDate: string;\n public UpdatedDate: string;\n\n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nexport type PermissionNames =\r\n 'View Users' | 'Manage Users' |\r\n 'View Roles' | 'Manage Roles' | 'Assign Roles';\r\n\r\nexport type PermissionValues =\r\n 'users.view' | 'users.manage' |\r\n 'roles.view' | 'roles.manage' | 'roles.assign';\r\n\r\nexport class Permission {\r\n\r\n public static readonly viewUsersPermission: PermissionValues = 'users.view';\r\n public static readonly manageUsersPermission: PermissionValues = 'users.manage';\r\n\r\n public static readonly viewRolesPermission: PermissionValues = 'roles.view';\r\n public static readonly manageRolesPermission: PermissionValues = 'roles.manage';\r\n public static readonly assignRolesPermission: PermissionValues = 'roles.assign';\r\n\r\n\r\n constructor(name?: PermissionNames, value?: PermissionValues, groupName?: string, description?: string) {\r\n this.name = name;\r\n this.value = value;\r\n this.groupName = groupName;\r\n this.description = description;\r\n }\r\n\r\n public name: PermissionNames;\r\n public value: PermissionValues;\r\n public groupName: string;\r\n public description: string;\r\n}\r\n","\nexport class Pincodemaster {\n constructor(cityName?: string, stateName?: string, streetName?: string, pinCode?: string, isDoxService?: string\n , isParcelService?: string, isPriorityService?: string, isTopayService?: string, isDODService?: string\n , isODAlocation?: string, isEDLlocation?: string, isNonServiceable?: string, isCODservice?: string, isTeaservoce?: string) {\n this.cityName = cityName;\n this.stateName = stateName;\n this.streetName = streetName;\n this.pinCode = pinCode;\n this.isDoxService = isDoxService;\n this.isParcelService = isParcelService;\n this.isPriorityService = isPriorityService;\n this.isTopayService = isTopayService;\n this.isDODService = isDODService;\n this.isODAlocation = isODAlocation;\n this.isEDLlocation = isEDLlocation;\n this.isNonServiceable = isNonServiceable;\n this.isCODservice = isCODservice;\n this.isTeaservice = isTeaservoce;\n\n }\n public cityName: string;\n public stateName: string;\n public streetName: string;\n public statemasterId: string;\n public citymasterid: string;\n public pinCode: string;\n public isDoxService: string;\n public isParcelService: string;\n public isPriorityService: string;\n public isTopayService: string;\n public isDODService: string;\n public isODAlocation: string;\n public isEDLlocation: string;\n public isNonServiceable: string;\n public isCODservice: string;\n public isTeaservice: string;\n public IsPartialService: string;\n public PincodeStreets: any[];\n}\n\n","\nexport class ProductMaster {\n constructor(productCode?: string, productType?: string, bookingFor?: string, service?: string) {\n this.productCode = productCode;\n this.productType = productType;\n this.bookingFor = bookingFor;\n this.mode = service;\n }\n public productCode: string;\n public productType: string;\n public bookingFor: string;\n public mode: string;\n public service: string;\n\n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Permission } from './permission.model';\r\n\r\n\r\nexport class Role {\r\n\r\n constructor(name?: string, description?: string, permissions?: Permission[]) {\r\n\r\n this.name = name;\r\n this.description = description;\r\n this.permissions = permissions;\r\n }\r\n\r\n public id: string;\r\n public name: string;\r\n public description: string;\r\n public usersCount: number;\r\n public permissions: Permission[];\r\n}\r\n","export class StateMaster {\n\n constructor(StateMasterId?: string, Statecode?: string, StateName?: string, RgstrdGst?: string, RgstrdAddress?: string)\n {\n this.StateMasterId = StateMasterId;\n this.stateCode = Statecode;\n this.stateName = StateName;\n this.rgstrdGst = RgstrdGst;\n this.rgstrdAddress = RgstrdAddress;\n //this.CreatedBy = CreatedBy;\n //this.UpdatedBy = UpdatedBy;\n //this.CreatedDate = CreatedDate;\n //this.UpdatedDate = UpdatedDate;\n }\n StateMasterId: string;\n stateCode: string;\n stateName: string;\n rgstrdGst: string;\n rgstrdAddress: string;\n //CreatedBy: string;\n //UpdatedBy: string;\n //CreatedDate: string;\n //UpdatedDate: string;\n}\n\nexport class CountryMater {\n\n\n constructor(CountryMasterId?: string, Countrycode?: string, CountryName?: string, CreatedBy?: string, UpdatedBy?: string,\n CreatedOn?: string, Updatedon?: string) {\n this.CountryMasterId = CountryMasterId;\n this.Countrycode = Countrycode;\n this.CountryName = CountryName;\n this.CreatedBy = CreatedBy;\n this.UpdatedBy = UpdatedBy;\n this.CreatedOn = CreatedOn;\n this.Updatedon = Updatedon;\n }\n CountryMasterId: string;\n Countrycode: string;\n CountryName: string;\n CreatedBy: string;\n UpdatedBy: string;\n CreatedOn: string;\n Updatedon: string;\n\n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { User } from './user.model';\r\n\r\n\r\nexport class UserEdit extends User {\r\n constructor(currentPassword?: string, newPassword?: string, confirmPassword?: string) {\r\n super();\r\n\r\n this.currentPassword = currentPassword;\r\n this.newPassword = newPassword;\r\n this.confirmPassword = confirmPassword;\r\n }\r\n\r\n public currentPassword: string;\r\n public newPassword: string;\r\n public confirmPassword: string;\r\n\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nexport class UserLogin {\r\n constructor(userName?: string, password?: string, rememberMe?: boolean) {\r\n this.userName = userName;\r\n this.password = password;\r\n this.rememberMe = rememberMe;\r\n }\r\n\r\n userName: string;\r\n password: string;\r\n rememberMe: boolean;\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nexport class User {\r\n // Note: Using only optional constructor properties without backing store disables typescript's type checking for the type\r\n constructor(id?: string, userName?: string, fullName?: string, email?: string, jobTitle?: string, phoneNumber?: string, roles?: string[], officeName?: string,\r\n departmentName?: string) {\r\n\r\n this.id = id;\r\n this.userName = userName;\r\n this.fullName = fullName;\r\n this.email = email;\r\n this.jobTitle = jobTitle;\r\n this.phoneNumber = phoneNumber;\r\n this.roles = roles;\r\n this.departmentName = departmentName\r\n this.officeName = officeName\r\n }\r\n\r\n\r\n get friendlyName(): string {\r\n let name = this.fullName || this.userName;\r\n\r\n if (this.jobTitle) {\r\n name = this.jobTitle + ' ' + name;\r\n }\r\n\r\n return name;\r\n }\r\n public id: string;\r\n public userName: string;\r\n public fullName: string;\r\n public email: string;\r\n public jobTitle: string;\r\n public phoneNumber: string;\r\n public isEnabled: boolean;\r\n public isLockedOut: boolean;\r\n public officeName: string;\r\n public departmentName: string;\r\n public roles: string[];\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Pipe, PipeTransform } from '@angular/core';\r\n\r\n\r\n\r\n@Pipe({ name: 'groupBy' })\r\nexport class GroupByPipe implements PipeTransform {\r\n\r\n transform(value: Array, field: string): Array {\r\n\r\n if (!value) {\r\n return value;\r\n }\r\n\r\n const groupedObj = value.reduce((prev, cur) => {\r\n if (!prev[cur[field]]) {\r\n prev[cur[field]] = [cur];\r\n } else {\r\n prev[cur[field]].push(cur);\r\n }\r\n\r\n return prev;\r\n }, {});\r\n\r\n return Object.keys(groupedObj).map(key => ({ key, value: groupedObj[key] }));\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'stringifyJson'\r\n})\r\nexport class StringifyJsonPipe implements PipeTransform {\r\n\r\n transform(value: any, indentSpace = 0): string {\r\n return JSON.stringify(value, null, indentSpace) || '';\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'tableSearch'\n})\nexport class TableSearchPipe implements PipeTransform {\n\n transform(value: any, searchText: any): any {\n if (!searchText) return value\n if (!value) return [];\n searchText = searchText.toLowerCase();\n return value.filter(function (item) {\n return JSON.stringify(item)\r\n .toLowerCase()\r\n .includes(searchText);\r\n });\n \n }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { WalletItem } from '../models/WallteItem.model';\n\n@Pipe({\n name: 'walletOrder'\n})\nexport class WalletOrderPipe implements PipeTransform {\n\n transform(items: WalletItem[]): WalletItem[] {\n return items.sort((a) => {\n if (a.type === 'Incoming') {\n return -1;\n } else {\n return 1;\n }\n });\n }\n\n}\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { AuthService } from './auth.service';\r\nimport { EndpointBase } from './endpoint-base.service';\r\nimport { ConfigurationService } from './configuration.service';\r\n\r\n\r\n@Injectable()\r\nexport class AccountEndpoint extends EndpointBase {\r\n\r\n private readonly _usersUrl: string = '/api/account/users';\r\n private readonly _userByUserNameUrl: string = '/api/account/users/username';\r\n private readonly _currentUserUrl: string = '/api/account/users/me';\r\n private readonly _currentUserPreferencesUrl: string = '/api/account/users/me/preferences';\r\n private readonly _unblockUserUrl: string = '/api/account/users/unblock';\r\n private readonly _rolesUrl: string = '/api/account/roles';\r\n private readonly _roleByRoleNameUrl: string = '/api/account/roles/name';\r\n private readonly _permissionsUrl: string = '/api/account/permissions';\r\n\r\n get usersUrl() { return this.configurations.baseUrl + this._usersUrl; }\r\n get userByUserNameUrl() { return this.configurations.baseUrl + this._userByUserNameUrl; }\r\n get currentUserUrl() { return this.configurations.baseUrl + this._currentUserUrl; }\r\n get currentUserPreferencesUrl() { return this.configurations.baseUrl + this._currentUserPreferencesUrl; }\r\n get unblockUserUrl() { return this.configurations.baseUrl + this._unblockUserUrl; }\r\n get rolesUrl() { return this.configurations.baseUrl + this._rolesUrl; }\r\n get roleByRoleNameUrl() { return this.configurations.baseUrl + this._roleByRoleNameUrl; }\r\n get permissionsUrl() { return this.configurations.baseUrl + this._permissionsUrl; }\r\n\r\n\r\n constructor(private configurations: ConfigurationService, http: HttpClient, authService: AuthService) {\r\n super(http, authService);\r\n }\r\n\r\n\r\n getUserEndpoint(userId?: string): Observable {\r\n const endpointUrl = userId ? `${this.usersUrl}/${userId}` : this.currentUserUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUserEndpoint(userId));\r\n }));\r\n }\r\n\r\n\r\n getUserByUserNameEndpoint(userName: string): Observable {\r\n const endpointUrl = `${this.userByUserNameUrl}/${userName}`;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUserByUserNameEndpoint(userName));\r\n }));\r\n }\r\n\r\n\r\n getUsersEndpoint(page?: number, pageSize?: number): Observable {\r\n const endpointUrl = page && pageSize ? `${this.usersUrl}/${page}/${pageSize}` : this.usersUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUsersEndpoint(page, pageSize));\r\n }));\r\n }\r\n\r\n\r\n getNewUserEndpoint(userObject: any): Observable {\r\n\r\n return this.http.post(this.usersUrl, JSON.stringify(userObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewUserEndpoint(userObject));\r\n }));\r\n }\r\n\r\n getUpdateUserEndpoint(userObject: any, userId?: string): Observable {\r\n const endpointUrl = userId ? `${this.usersUrl}/${userId}` : this.currentUserUrl;\r\n\r\n return this.http.put(endpointUrl, JSON.stringify(userObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateUserEndpoint(userObject, userId));\r\n }));\r\n }\r\n\r\n getPatchUpdateUserEndpoint(patch: {}, userId?: string): Observable;\r\n getPatchUpdateUserEndpoint(value: any, op: string, path: string, from?: any, userId?: string): Observable;\r\n getPatchUpdateUserEndpoint(valueOrPatch: any, opOrUserId?: string, path?: string, from?: any, userId?: string): Observable {\r\n let endpointUrl: string;\r\n let patchDocument: {};\r\n\r\n if (path) {\r\n endpointUrl = userId ? `${this.usersUrl}/${userId}` : this.currentUserUrl;\r\n patchDocument = from ?\r\n [{ value: valueOrPatch, path, op: opOrUserId, from }] :\r\n [{ value: valueOrPatch, path, op: opOrUserId }];\r\n } else {\r\n endpointUrl = opOrUserId ? `${this.usersUrl}/${opOrUserId}` : this.currentUserUrl;\r\n patchDocument = valueOrPatch;\r\n }\r\n\r\n return this.http.patch(endpointUrl, JSON.stringify(patchDocument), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getPatchUpdateUserEndpoint(valueOrPatch, opOrUserId, path, from, userId));\r\n }));\r\n }\r\n\r\n\r\n getUserPreferencesEndpoint(): Observable {\r\n\r\n return this.http.get(this.currentUserPreferencesUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUserPreferencesEndpoint());\r\n }));\r\n }\r\n\r\n getUpdateUserPreferencesEndpoint(configuration: string): Observable {\r\n return this.http.put(this.currentUserPreferencesUrl, JSON.stringify(configuration), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateUserPreferencesEndpoint(configuration));\r\n }));\r\n }\r\n\r\n getUnblockUserEndpoint(userId: string): Observable {\r\n const endpointUrl = `${this.unblockUserUrl}/${userId}`;\r\n\r\n return this.http.put(endpointUrl, null, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUnblockUserEndpoint(userId));\r\n }));\r\n }\r\n\r\n getDeleteUserEndpoint(userId: string): Observable {\r\n const endpointUrl = `${this.usersUrl}/${userId}`;\r\n\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDeleteUserEndpoint(userId));\r\n }));\r\n }\r\n\r\n\r\n\r\n\r\n\r\n getRoleEndpoint(roleId: string): Observable {\r\n const endpointUrl = `${this.rolesUrl}/${roleId}`;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getRoleEndpoint(roleId));\r\n }));\r\n }\r\n\r\n\r\n getRoleByRoleNameEndpoint(roleName: string): Observable {\r\n const endpointUrl = `${this.roleByRoleNameUrl}/${roleName}`;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getRoleByRoleNameEndpoint(roleName));\r\n }));\r\n }\r\n\r\n\r\n\r\n getRolesEndpoint(page?: number, pageSize?: number): Observable {\r\n const endpointUrl = page && pageSize ? `${this.rolesUrl}/${page}/${pageSize}` : this.rolesUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getRolesEndpoint(page, pageSize));\r\n }));\r\n }\r\n\r\n getNewRoleEndpoint(roleObject: any): Observable {\r\n\r\n return this.http.post(this.rolesUrl, JSON.stringify(roleObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewRoleEndpoint(roleObject));\r\n }));\r\n }\r\n\r\n getUpdateRoleEndpoint(roleObject: any, roleId: string): Observable {\r\n const endpointUrl = `${this.rolesUrl}/${roleId}`;\r\n\r\n return this.http.put(endpointUrl, JSON.stringify(roleObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateRoleEndpoint(roleObject, roleId));\r\n }));\r\n }\r\n\r\n getDeleteRoleEndpoint(roleId: string): Observable {\r\n const endpointUrl = `${this.rolesUrl}/${roleId}`;\r\n\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDeleteRoleEndpoint(roleId));\r\n }));\r\n }\r\n\r\n\r\n getPermissionsEndpoint(): Observable {\r\n\r\n return this.http.get(this.permissionsUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getPermissionsEndpoint());\r\n }));\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, Subject, forkJoin } from 'rxjs';\r\nimport { mergeMap, tap } from 'rxjs/operators';\r\n\r\nimport { AccountEndpoint } from './account-endpoint.service';\r\nimport { AuthService } from './auth.service';\r\nimport { User } from '../models/user.model';\r\nimport { Role } from '../models/role.model';\r\nimport { Permission, PermissionNames, PermissionValues } from '../models/permission.model';\r\nimport { UserEdit } from '../models/user-edit.model';\r\n\r\nexport type RolesChangedOperation = 'add' | 'delete' | 'modify';\r\nexport interface RolesChangedEventArg { roles: Role[] | string[]; operation: RolesChangedOperation; }\r\n\r\n@Injectable()\r\nexport class AccountService {\r\n public static readonly roleAddedOperation: RolesChangedOperation = 'add';\r\n public static readonly roleDeletedOperation: RolesChangedOperation = 'delete';\r\n public static readonly roleModifiedOperation: RolesChangedOperation = 'modify';\r\n\r\n private _rolesChanged = new Subject();\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private accountEndpoint: AccountEndpoint) {\r\n\r\n }\r\n getUser(userId?: string) {\r\n return this.accountEndpoint.getUserEndpoint(userId);\r\n }\r\n\r\n getUserAndRoles(userId?: string) {\r\n\r\n return forkJoin(\r\n this.accountEndpoint.getUserEndpoint(userId),\r\n this.accountEndpoint.getRolesEndpoint());\r\n }\r\n\r\n getUsers(page?: number, pageSize?: number) {\r\n\r\n return this.accountEndpoint.getUsersEndpoint(page, pageSize);\r\n }\r\n\r\n getUsersAndRoles(page?: number, pageSize?: number) {\r\n\r\n return forkJoin(\r\n this.accountEndpoint.getUsersEndpoint(page, pageSize),\r\n this.accountEndpoint.getRolesEndpoint());\r\n }\r\n\r\n\r\n updateUser(user: UserEdit) {\r\n if (user.id) {\r\n return this.accountEndpoint.getUpdateUserEndpoint(user, user.id);\r\n } else {\r\n return this.accountEndpoint.getUserByUserNameEndpoint(user.userName).pipe(\r\n mergeMap(foundUser => {\r\n user.id = foundUser.id;\r\n return this.accountEndpoint.getUpdateUserEndpoint(user, user.id);\r\n }));\r\n }\r\n }\r\n\r\n newUser(user: UserEdit) {\r\n return this.accountEndpoint.getNewUserEndpoint(user);\r\n }\r\n getUserPreferences() {\r\n return this.accountEndpoint.getUserPreferencesEndpoint();\r\n }\r\n\r\n updateUserPreferences(configuration: string) {\r\n return this.accountEndpoint.getUpdateUserPreferencesEndpoint(configuration);\r\n }\r\n\r\n\r\n deleteUser(userOrUserId: string | User): Observable {\r\n\r\n if (typeof userOrUserId === 'string' || userOrUserId instanceof String) {\r\n return this.accountEndpoint.getDeleteUserEndpoint(userOrUserId as string).pipe(\r\n tap(data => this.onRolesUserCountChanged(data.roles)));\r\n } else {\r\n\r\n if (userOrUserId.id) {\r\n return this.deleteUser(userOrUserId.id);\r\n } else {\r\n return this.accountEndpoint.getUserByUserNameEndpoint(userOrUserId.userName).pipe(\r\n mergeMap(user => this.deleteUser(user.id)));\r\n }\r\n }\r\n }\r\n\r\n\r\n unblockUser(userId: string) {\r\n return this.accountEndpoint.getUnblockUserEndpoint(userId);\r\n }\r\n\r\n\r\n userHasPermission(permissionValue: PermissionValues): boolean {\r\n return this.permissions.some(p => p == permissionValue);\r\n }\r\n\r\n\r\n refreshLoggedInUser() {\r\n return this.accountEndpoint.refreshLogin();\r\n }\r\n\r\n getRoles(page?: number, pageSize?: number) {\r\n\r\n return this.accountEndpoint.getRolesEndpoint(page, pageSize);\r\n }\r\n\r\n\r\n getRolesAndPermissions(page?: number, pageSize?: number) {\r\n\r\n return forkJoin(\r\n this.accountEndpoint.getRolesEndpoint(page, pageSize),\r\n this.accountEndpoint.getPermissionsEndpoint());\r\n }\r\n\r\n\r\n updateRole(role: Role) {\r\n if (role.id) {\r\n return this.accountEndpoint.getUpdateRoleEndpoint(role, role.id).pipe(\r\n tap(data => this.onRolesChanged([role], AccountService.roleModifiedOperation)));\r\n } else {\r\n return this.accountEndpoint.getRoleByRoleNameEndpoint(role.name).pipe(\r\n mergeMap(foundRole => {\r\n role.id = foundRole.id;\r\n return this.accountEndpoint.getUpdateRoleEndpoint(role, role.id);\r\n }),\r\n tap(data => this.onRolesChanged([role], AccountService.roleModifiedOperation)));\r\n }\r\n }\r\n\r\n\r\n newRole(role: Role) {\r\n return this.accountEndpoint.getNewRoleEndpoint(role).pipe(\r\n tap(data => this.onRolesChanged([role], AccountService.roleAddedOperation)));\r\n }\r\n\r\n\r\n deleteRole(roleOrRoleId: string | Role): Observable {\r\n\r\n if (typeof roleOrRoleId === 'string' || roleOrRoleId instanceof String) {\r\n return this.accountEndpoint.getDeleteRoleEndpoint(roleOrRoleId as string).pipe(\r\n tap(data => this.onRolesChanged([data], AccountService.roleDeletedOperation)));\r\n } else {\r\n\r\n if (roleOrRoleId.id) {\r\n return this.deleteRole(roleOrRoleId.id);\r\n } else {\r\n return this.accountEndpoint.getRoleByRoleNameEndpoint(roleOrRoleId.name).pipe(\r\n mergeMap(role => this.deleteRole(role.id)));\r\n }\r\n }\r\n }\r\n\r\n getPermissions() {\r\n\r\n return this.accountEndpoint.getPermissionsEndpoint();\r\n }\r\n\r\n\r\n private onRolesChanged(roles: Role[] | string[], op: RolesChangedOperation) {\r\n this._rolesChanged.next({ roles, operation: op });\r\n }\r\n\r\n\r\n onRolesUserCountChanged(roles: Role[] | string[]) {\r\n return this.onRolesChanged(roles, AccountService.roleModifiedOperation);\r\n }\r\n\r\n\r\n getRolesChangedEvent(): Observable {\r\n return this._rolesChanged.asObservable();\r\n }\r\n\r\n\r\n\r\n get permissions(): PermissionValues[] {\r\n return this.authService.userPermissions;\r\n }\r\n\r\n get currentUser() {\r\n return this.authService.currentUser;\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpResponseBase } from '@angular/common/http';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\nimport { Utilities } from '../services/utilities';\r\n\r\n\r\n\r\n@Injectable()\r\nexport class AlertService {\r\n private messages = new Subject();\r\n private dialogs = new Subject();\r\n\r\n private loadingMessageTimeoutId: any;\r\n\r\n\r\n\r\n showDialog(message: string);\r\n showDialog(message: string, type: DialogType, okCallback: (val?: any) => any);\r\n showDialog(message: string, type: DialogType, okCallback?: (val?: any) => any, cancelCallback?: () => any, okLabel?: string, cancelLabel?: string, defaultValue?: string);\r\n showDialog(message: string, type?: DialogType, okCallback?: (val?: any) => any, cancelCallback?: () => any, okLabel?: string, cancelLabel?: string, defaultValue?: string) {\r\n\r\n if (!type) {\r\n type = DialogType.alert;\r\n }\r\n\r\n this.dialogs.next({ message, type, okCallback, cancelCallback, okLabel, cancelLabel, defaultValue });\r\n }\r\n\r\n\r\n\r\n showMessage(summary: string);\r\n showMessage(summary: string, detail: string, severity: MessageSeverity);\r\n showMessage(summaryAndDetails: string[], summaryAndDetailsSeparator: string, severity: MessageSeverity);\r\n showMessage(response: HttpResponseBase, ignoreValue_useNull: string, severity: MessageSeverity);\r\n showMessage(data: any, separatorOrDetail?: string, severity?: MessageSeverity) {\r\n\r\n if (!severity) {\r\n severity = MessageSeverity.default;\r\n }\r\n\r\n if (data instanceof HttpResponseBase) {\r\n data = Utilities.getHttpResponseMessages(data);\r\n separatorOrDetail = Utilities.captionAndMessageSeparator;\r\n }\r\n\r\n if (data instanceof Array) {\r\n for (const message of data) {\r\n const msgObject = Utilities.splitInTwo(message, separatorOrDetail);\r\n\r\n this.showMessageHelper(msgObject.firstPart, msgObject.secondPart, severity, false);\r\n }\r\n } else {\r\n this.showMessageHelper(data, separatorOrDetail, severity, false);\r\n }\r\n }\r\n\r\n\r\n showStickyMessage(summary: string);\r\n showStickyMessage(summary: string, detail: string, severity: MessageSeverity, error?: any);\r\n showStickyMessage(summary: string, detail: string, severity: MessageSeverity, error?: any, onRemove?: () => any);\r\n showStickyMessage(summaryAndDetails: string[], summaryAndDetailsSeparator: string, severity: MessageSeverity);\r\n showStickyMessage(response: HttpResponseBase, ignoreValue_useNull: string, severity: MessageSeverity);\r\n showStickyMessage(data: string | string[] | HttpResponseBase, separatorOrDetail?: string, severity?: MessageSeverity, error?: any, onRemove?: () => any) {\r\n\r\n if (!severity) {\r\n severity = MessageSeverity.default;\r\n }\r\n\r\n if (data instanceof HttpResponseBase) {\r\n data = Utilities.getHttpResponseMessages(data);\r\n separatorOrDetail = Utilities.captionAndMessageSeparator;\r\n }\r\n\r\n\r\n if (data instanceof Array) {\r\n for (const message of data) {\r\n const msgObject = Utilities.splitInTwo(message, separatorOrDetail);\r\n\r\n this.showMessageHelper(msgObject.firstPart, msgObject.secondPart, severity, true);\r\n }\r\n } else {\r\n\r\n if (error) {\r\n\r\n const msg = `Severity: \"${MessageSeverity[severity]}\", Summary: \"${data}\", Detail: \"${separatorOrDetail}\", Error: \"${Utilities.safeStringify(error)}\"`;\r\n\r\n switch (severity) {\r\n case MessageSeverity.default:\r\n this.logInfo(msg);\r\n break;\r\n case MessageSeverity.info:\r\n this.logInfo(msg);\r\n break;\r\n case MessageSeverity.success:\r\n this.logMessage(msg);\r\n break;\r\n case MessageSeverity.error:\r\n this.logError(msg);\r\n break;\r\n case MessageSeverity.warn:\r\n this.logWarning(msg);\r\n break;\r\n case MessageSeverity.wait:\r\n this.logTrace(msg);\r\n break;\r\n }\r\n }\r\n\r\n this.showMessageHelper(data, separatorOrDetail, severity, true, onRemove);\r\n }\r\n }\r\n\r\n private showMessageHelper(summary: string, detail: string, severity: MessageSeverity, isSticky: boolean, onRemove?: () => any) {\r\n\r\n const alertCommand: AlertCommand = {\r\n operation: isSticky ? 'add_sticky' : 'add',\r\n message: { severity, summary, detail },\r\n onRemove\r\n };\r\n\r\n this.messages.next(alertCommand);\r\n }\r\n\r\n resetStickyMessage() {\r\n this.messages.next({ operation: 'clear' });\r\n }\r\n\r\n startLoadingMessage(message = 'Loading...', caption = '') {\r\n clearTimeout(this.loadingMessageTimeoutId);\r\n\r\n this.loadingMessageTimeoutId = setTimeout(() => {\r\n this.showStickyMessage(caption, message, MessageSeverity.wait);\r\n }, 1000);\r\n }\r\n\r\n stopLoadingMessage() {\r\n clearTimeout(this.loadingMessageTimeoutId);\r\n this.resetStickyMessage();\r\n }\r\n\r\n\r\n\r\n logDebug(msg) {\r\n console.debug(msg);\r\n }\r\n\r\n logError(msg) {\r\n console.error(msg);\r\n }\r\n\r\n logInfo(msg) {\r\n console.info(msg);\r\n }\r\n\r\n logMessage(msg) {\r\n console.log(msg);\r\n }\r\n\r\n logTrace(msg) {\r\n console.trace(msg);\r\n }\r\n\r\n logWarning(msg) {\r\n console.warn(msg);\r\n }\r\n\r\n getDialogEvent(): Observable {\r\n return this.dialogs.asObservable();\r\n }\r\n\r\n getMessageEvent(): Observable {\r\n return this.messages.asObservable();\r\n }\r\n}\r\n\r\n\r\n// ******************** Dialog ********************//\r\nexport class AlertDialog {\r\n constructor(\r\n public message: string,\r\n public type: DialogType,\r\n public okCallback: (val?: any) => any,\r\n public cancelCallback: () => any,\r\n public defaultValue: string,\r\n public okLabel: string,\r\n public cancelLabel: string) {\r\n\r\n }\r\n}\r\n\r\nexport enum DialogType {\r\n alert,\r\n confirm,\r\n prompt\r\n}\r\n// ******************** End ********************//\r\n\r\n\r\n// ******************** Growls ********************//\r\nexport class AlertCommand {\r\n constructor(\r\n public operation: 'clear' | 'add' | 'add_sticky',\r\n public message?: AlertMessage,\r\n public onRemove?: () => any) { }\r\n}\r\n\r\nexport class AlertMessage {\r\n constructor(\r\n public severity: MessageSeverity,\r\n public summary: string,\r\n public detail: string) { }\r\n}\r\n\r\nexport enum MessageSeverity {\r\n default,\r\n info,\r\n success,\r\n error,\r\n warn,\r\n wait\r\n}\r\n// ******************** End ********************//\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { animate, state, style, transition, trigger } from '@angular/animations';\r\n\r\n\r\n\r\nexport const fadeInOut = trigger('fadeInOut', [\r\n transition(':enter', [style({ opacity: 0 }), animate('0.4s ease-in', style({ opacity: 1 }))]),\r\n transition(':leave', [animate('0.4s 10ms ease-out', style({ opacity: 0 }))])\r\n]);\r\n\r\n\r\n\r\nexport function flyInOut(duration: number = 0.2) {\r\n return trigger('flyInOut', [\r\n state('in', style({ opacity: 1, transform: 'translateX(0)' })),\r\n transition('void => *', [style({ opacity: 0, transform: 'translateX(-100%)' }), animate(`${duration}s ease-in`)]),\r\n transition('* => void', [animate(`${duration}s 10ms ease-out`, style({ opacity: 0, transform: 'translateX(100%)' }))])\r\n ]);\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Router, NavigationEnd, PRIMARY_OUTLET } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { filter, map, flatMap } from 'rxjs/operators';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\nimport { Utilities } from './utilities';\r\n\r\n\r\n@Injectable()\r\nexport class AppTitleService {\r\n\r\n sub: Subscription;\r\n appName: string;\r\n\r\n constructor(private titleService: Title, private router: Router) {\r\n this.sub = this.router.events.pipe(\r\n filter(event => event instanceof NavigationEnd),\r\n map(_ => this.router.routerState.root),\r\n map(route => {\r\n while (route.firstChild) {\r\n route = route.firstChild;\r\n }\r\n\r\n return route;\r\n }),\r\n flatMap(route => route.data))\r\n .subscribe(data => {\r\n let title = data.title;\r\n\r\n if (title) {\r\n const fragment = this.router.url.split('#')[1];\r\n\r\n if (fragment) {\r\n title += ' | ' + Utilities.toTitleCase(fragment);\r\n }\r\n }\r\n\r\n if (title && this.appName) {\r\n title += ' - ' + this.appName;\r\n } else if (this.appName) {\r\n title = this.appName;\r\n }\r\n\r\n if (title) {\r\n this.titleService.setTitle(title);\r\n }\r\n });\r\n }\r\n\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { TranslateService, TranslateLoader } from '@ngx-translate/core';\r\nimport { Observable, Subject, of } from 'rxjs';\r\n\r\n\r\n\r\n@Injectable()\r\nexport class AppTranslationService {\r\n\r\n private onLanguageChanged = new Subject();\r\n languageChanged$ = this.onLanguageChanged.asObservable();\r\n\r\n constructor(private translate: TranslateService) {\r\n //this.addLanguages(['en', 'fr', 'de', 'pt', 'ar', 'ko']);\r\n this.addLanguages(['en'])\r\n this.setDefaultLanguage('en');\r\n }\r\n\r\n addLanguages(lang: string[]) {\r\n this.translate.addLangs(lang);\r\n }\r\n\r\n setDefaultLanguage(lang: string) {\r\n this.translate.setDefaultLang(lang);\r\n }\r\n\r\n getDefaultLanguage() {\r\n return this.translate.defaultLang;\r\n }\r\n\r\n getBrowserLanguage() {\r\n return this.translate.getBrowserLang();\r\n }\r\n\r\n getCurrentLanguage() {\r\n return this.translate.currentLang;\r\n }\r\n\r\n getLoadedLanguages() {\r\n return this.translate.langs;\r\n }\r\n\r\n useBrowserLanguage(): string | void {\r\n const browserLang = this.getBrowserLanguage();\r\n\r\n if (browserLang.match(/en|fr|de|pt|ar|ko/)) {\r\n this.changeLanguage(browserLang);\r\n return browserLang;\r\n }\r\n }\r\n\r\n useDefaultLangage() {\r\n return this.changeLanguage(null);\r\n }\r\n\r\n changeLanguage(language: string) {\r\n if (!language) {\r\n language = this.getDefaultLanguage();\r\n }\r\n\r\n if (language != this.translate.currentLang) {\r\n setTimeout(() => {\r\n this.translate.use(language);\r\n this.onLanguageChanged.next(language);\r\n });\r\n }\r\n\r\n return language;\r\n }\r\n\r\n\r\n getTranslation(key: string | Array, interpolateParams?: Object): string | any {\r\n return this.translate.instant(key, interpolateParams);\r\n }\r\n\r\n\r\n getTranslationAsync(key: string | Array, interpolateParams?: Object): Observable {\r\n return this.translate.get(key, interpolateParams);\r\n }\r\n\r\n}\r\n\r\n\r\nexport class TranslateLanguageLoader implements TranslateLoader {\r\n\r\n public getTranslation(lang: string): any {\r\n\r\n // Note Dynamic require(variable) will not work. Require is always at compile time\r\n\r\n switch (lang) {\r\n case 'en':\r\n return of(require('../assets/locale/en.json'));\r\n case 'fr':\r\n return of(require('../assets/locale/fr.json'));\r\n case 'de':\r\n return of(require('../assets/locale/de.json'));\r\n case 'pt':\r\n return of(require('../assets/locale/pt.json'));\r\n case 'ar':\r\n return of(require('../assets/locale/ar.json'));\r\n case 'ko':\r\n return of(require('../assets/locale/ko.json'));\r\n default:\r\n }\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { CanActivate, Router, ActivatedRouteSnapshot, RouterStateSnapshot, CanActivateChild, NavigationExtras, CanLoad, Route } from '@angular/router';\r\nimport { AuthService } from './auth.service';\r\n\r\n\r\n@Injectable()\r\nexport class AuthGuard implements CanActivate, CanActivateChild, CanLoad {\r\n constructor(private authService: AuthService, private router: Router) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\r\n\r\n const url: string = state.url;\r\n return this.checkLogin(url);\r\n }\r\n\r\n canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {\r\n return this.canActivate(route, state);\r\n }\r\n\r\n canLoad(route: Route): boolean {\r\n\r\n const url = `/${route.path}`;\r\n return this.checkLogin(url);\r\n }\r\n\r\n checkLogin(url: string): boolean {\r\n\r\n if (this.authService.isLoggedIn) {\r\n return true;\r\n }\r\n\r\n this.authService.loginRedirectUrl = url;\r\n this.router.navigate(['/login']);\r\n\r\n return false;\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { OAuthStorage } from 'angular-oauth2-oidc';\r\n\r\nimport { LocalStoreManager } from '../services/local-store-manager.service';\r\n\r\n@Injectable()\r\nexport class AuthStorage implements OAuthStorage {\r\n\r\n constructor(private localStorage: LocalStoreManager) {\r\n }\r\n\r\n static RememberMe = false;\r\n private dbKeyPrefix = 'AUTH:';\r\n\r\n getItem(key: string): string {\r\n return this.localStorage.getData(this.dbKeyPrefix + key);\r\n }\r\n\r\n removeItem(key: string): void {\r\n this.localStorage.deleteData(this.dbKeyPrefix + key);\r\n }\r\n\r\n setItem(key: string, data: string): void {\r\n if (AuthStorage.RememberMe) {\r\n this.localStorage.savePermanentData(data, this.dbKeyPrefix + key);\r\n } else {\r\n this.localStorage.saveSyncedSessionData(data, this.dbKeyPrefix + key);\r\n }\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Router, NavigationExtras } from '@angular/router';\r\nimport { Observable, Subject, from, throwError } from 'rxjs';\r\nimport { map, mergeMap } from 'rxjs/operators';\r\nimport { OAuthService } from 'angular-oauth2-oidc';\r\n\r\nimport { LocalStoreManager } from './local-store-manager.service';\r\nimport { AuthStorage } from './auth-storage';\r\nimport { ConfigurationService } from './configuration.service';\r\nimport { DBkeys } from './db-keys';\r\nimport { JwtHelper } from './jwt-helper';\r\nimport { Utilities } from './utilities';\r\nimport { AccessToken } from '../models/access-token.model';\r\nimport { User } from '../models/user.model';\r\nimport { PermissionValues } from '../models/permission.model';\r\n\r\n@Injectable()\r\nexport class AuthService {\r\n private readonly _discoveryDocUrl: string = '/.well-known/openid-configuration';\r\n\r\n private get discoveryDocUrl() { return this.configurations.tokenUrl + this._discoveryDocUrl; }\r\n public get baseUrl() { return this.configurations.baseUrl; }\r\n public get loginUrl() { return this.configurations.loginUrl; }\r\n public get homeUrl() { return this.configurations.homeUrl; }\r\n\r\n public loginRedirectUrl: string;\r\n public logoutRedirectUrl: string;\r\n\r\n public reLoginDelegate: () => void;\r\n\r\n private previousIsLoggedInCheck = false;\r\n private _loginStatus = new Subject();\r\n\r\n constructor(\r\n private router: Router,\r\n private oauthService: OAuthService,\r\n private configurations: ConfigurationService,\r\n private localStorage: LocalStoreManager) {\r\n\r\n this.initializeLoginStatus();\r\n }\r\n\r\n private initializeLoginStatus() {\r\n this.localStorage.getInitEvent().subscribe(() => {\r\n this.reevaluateLoginStatus();\r\n });\r\n }\r\n\r\n gotoPage(page: string, preserveParams = true) {\r\n\r\n const navigationExtras: NavigationExtras = {\r\n queryParamsHandling: preserveParams ? 'merge' : '', preserveFragment: preserveParams\r\n };\r\n\r\n this.router.navigate([page], navigationExtras);\r\n }\r\n\r\n gotoHomePage() {\r\n this.router.navigate([this.homeUrl]);\r\n }\r\n\r\n redirectLoginUser() {\r\n const redirect = this.loginRedirectUrl && this.loginRedirectUrl != '/' && this.loginRedirectUrl != ConfigurationService.defaultHomeUrl ? this.loginRedirectUrl : this.homeUrl;\r\n this.loginRedirectUrl = null;\r\n\r\n const urlParamsAndFragment = Utilities.splitInTwo(redirect, '#');\r\n const urlAndParams = Utilities.splitInTwo(urlParamsAndFragment.firstPart, '?');\r\n\r\n const navigationExtras: NavigationExtras = {\r\n fragment: urlParamsAndFragment.secondPart,\r\n queryParams: Utilities.getQueryParamsFromString(urlAndParams.secondPart),\r\n queryParamsHandling: 'merge'\r\n };\r\n\r\n this.router.navigate([urlAndParams.firstPart], navigationExtras);\r\n }\r\n\r\n redirectLogoutUser() {\r\n const redirect = this.logoutRedirectUrl ? this.logoutRedirectUrl : this.loginUrl;\r\n this.logoutRedirectUrl = null;\r\n\r\n this.router.navigate([redirect]);\r\n }\r\n\r\n redirectForLogin() {\r\n this.loginRedirectUrl = this.router.url;\r\n this.router.navigate([this.loginUrl]);\r\n }\r\n\r\n reLogin() {\r\n if (this.reLoginDelegate) {\r\n this.reLoginDelegate();\r\n } else {\r\n this.redirectForLogin();\r\n }\r\n }\r\n\r\n refreshLogin(): Observable {\r\n if (this.oauthService.discoveryDocumentLoaded) {\r\n return from(this.oauthService.refreshToken()).pipe(\r\n map(() => this.processLoginResponse(this.oauthService.getAccessToken(), this.rememberMe)));\r\n } else {\r\n this.configureOauthService(this.rememberMe);\r\n return from(this.oauthService.loadDiscoveryDocument(this.discoveryDocUrl)).pipe(mergeMap(() => this.refreshLogin()));\r\n }\r\n }\r\n\r\n login(userName: string, password: string, rememberMe?: boolean) {\r\n if (this.isLoggedIn) {\r\n this.logout();\r\n }\r\n\r\n this.configureOauthService(rememberMe);\r\n\r\n return from(this.oauthService.loadDiscoveryDocument(this.discoveryDocUrl)).pipe(mergeMap(() => {\r\n return from(this.oauthService.fetchTokenUsingPasswordFlow(userName, password)).pipe(\r\n map(() => this.processLoginResponse(this.oauthService.getAccessToken(), rememberMe))\r\n );\r\n }));\r\n }\r\n\r\n private configureOauthService(rememberMe?: boolean) {\r\n this.oauthService.issuer = this.baseUrl;\r\n this.oauthService.clientId = 'OnexAngularApp_spa';\r\n this.oauthService.scope = 'openid email phone profile offline_access roles OnexAngularApp_api';\r\n this.oauthService.skipSubjectCheck = true;\r\n this.oauthService.dummyClientSecret = 'not_used';\r\n this.oauthService.requireHttps = false;\r\n\r\n AuthStorage.RememberMe = rememberMe;\r\n }\r\n\r\n\r\n private processLoginResponse(accessToken: string, rememberMe: boolean) {\r\n\r\n if (accessToken == null) {\r\n throw new Error('accessToken cannot be null');\r\n }\r\n\r\n const jwtHelper = new JwtHelper();\r\n const decodedAccessToken = jwtHelper.decodeToken(accessToken) as AccessToken;\r\n\r\n const permissions: PermissionValues[] = Array.isArray(decodedAccessToken.permission) ? decodedAccessToken.permission : [decodedAccessToken.permission];\r\n\r\n if (!this.isLoggedIn) {\r\n this.configurations.import(decodedAccessToken.configuration);\r\n }\r\n\r\n const user = new User(\r\n decodedAccessToken.sub,\r\n decodedAccessToken.name,\r\n decodedAccessToken.fullname,\r\n decodedAccessToken.email,\r\n decodedAccessToken.jobtitle,\r\n decodedAccessToken.phone_number, \r\n Array.isArray(decodedAccessToken.role) ? decodedAccessToken.role : [decodedAccessToken.role], decodedAccessToken.officeName,\r\n decodedAccessToken.departmentName);\r\n user.isEnabled = true;\r\n\r\n this.saveUserDetails(user, permissions, rememberMe);\r\n\r\n this.reevaluateLoginStatus(user);\r\n\r\n return user;\r\n }\r\n\r\n private saveUserDetails(user: User, permissions: PermissionValues[], rememberMe: boolean) {\r\n if (rememberMe) {\r\n this.localStorage.savePermanentData(permissions, DBkeys.USER_PERMISSIONS);\r\n this.localStorage.savePermanentData(user, DBkeys.CURRENT_USER);\r\n } else {\r\n this.localStorage.saveSyncedSessionData(permissions, DBkeys.USER_PERMISSIONS);\r\n this.localStorage.saveSyncedSessionData(user, DBkeys.CURRENT_USER);\r\n }\r\n\r\n this.localStorage.savePermanentData(rememberMe, DBkeys.REMEMBER_ME);\r\n }\r\n\r\n logout(): void {\r\n this.localStorage.deleteData(DBkeys.USER_PERMISSIONS);\r\n this.localStorage.deleteData(DBkeys.CURRENT_USER);\r\n this.localStorage.deleteData(\"User_Office\");\r\n this.localStorage.deleteData(\"User_Department\");\r\n this.localStorage.deleteData(\"BaLoginData\");\r\n\r\n \r\n\r\n this.configurations.clearLocalChanges();\r\n this.oauthService.logOut(true);\r\n\r\n this.reevaluateLoginStatus();\r\n }\r\n\r\n private reevaluateLoginStatus(currentUser?: User) {\r\n const user = currentUser || this.localStorage.getDataObject(DBkeys.CURRENT_USER);\r\n const isLoggedIn = user != null;\r\n\r\n if (this.previousIsLoggedInCheck != isLoggedIn) {\r\n setTimeout(() => {\r\n this._loginStatus.next(isLoggedIn);\r\n });\r\n }\r\n\r\n this.previousIsLoggedInCheck = isLoggedIn;\r\n }\r\n\r\n getLoginStatusEvent(): Observable {\r\n return this._loginStatus.asObservable();\r\n }\r\n\r\n get currentUser(): User {\r\n\r\n const user = this.localStorage.getDataObject(DBkeys.CURRENT_USER);\r\n this.reevaluateLoginStatus(user);\r\n\r\n return user;\r\n }\r\n\r\n get userPermissions(): PermissionValues[] {\r\n return this.localStorage.getDataObject(DBkeys.USER_PERMISSIONS) || [];\r\n }\r\n\r\n get accessToken(): string {\r\n return this.oauthService.getAccessToken();\r\n }\r\n\r\n get accessTokenExpiryDate(): Date {\r\n return new Date(this.oauthService.getAccessTokenExpiration());\r\n }\r\n\r\n get isSessionExpired(): boolean {\r\n if (this.accessTokenExpiryDate == null) {\r\n return true;\r\n }\r\n\r\n return this.accessTokenExpiryDate.valueOf() <= new Date().valueOf();\r\n }\r\n\r\n get refreshToken(): string {\r\n return this.oauthService.getRefreshToken();\r\n }\r\n\r\n get isLoggedIn(): boolean {\r\n return this.currentUser != null;\r\n }\r\n\r\n get rememberMe(): boolean {\r\n return this.localStorage.getDataObject(DBkeys.REMEMBER_ME) == true;\r\n }\r\n}\r\n","import { Injectable, Inject, OnDestroy } from '@angular/core';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport CONSTANTS from '../constants';\r\nimport { WINDOW_TOKEN, Window } from './window.services';\r\nimport { ReplaySubject } from 'rxjs';\r\nimport { ICheckoutInstance, CheckoutOptions, Env, ICheckoutOptions } from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CheckoutService implements OnDestroy {\r\n private config: any;\r\n private openInPopup = true;\r\n private isScriptLoaded = false;\r\n private isScriptLoading = false;\r\n private receivedCheckoutJsInstance!: ICheckoutInstance;\r\n readonly checkoutJsContainerId = CONSTANTS.IDS.CHECKOUT_ELEMENT + (new Date()).getTime();\r\n\r\n private readonly checkoutJsInstanceSource$ = new ReplaySubject(1);\r\n readonly checkoutJsInstance$ = this.checkoutJsInstanceSource$.asObservable();\r\n\r\n constructor(\r\n @Inject(WINDOW_TOKEN) private readonly window: Window,\r\n @Inject(DOCUMENT) private readonly document: any) {\r\n }\r\n\r\n init(config: any, options?: ICheckoutOptions): void {\r\n options = CheckoutOptions.from(options!);\r\n\r\n const merchantId = config && config.merchant && config.merchant.mid;\r\n\r\n if (merchantId) {\r\n const prevMerchantId = this.config && this.config.merchant && this.config.merchant.mid;\r\n this.config = config;\r\n this.openInPopup = options.openInPopup!;\r\n\r\n if (options.checkoutJsInstance) {\r\n this.receivedCheckoutJsInstance = options.checkoutJsInstance;\r\n this.checkoutJsInstanceSource$.next(options.checkoutJsInstance);\r\n }\r\n\r\n if ((options.checkoutJsInstance || this.isScriptLoaded) && merchantId === prevMerchantId) {\r\n this.initializeCheckout();\r\n }\r\n else if (!this.isScriptLoading || (prevMerchantId && merchantId !== prevMerchantId)) {\r\n this.loadCheckoutScript(merchantId, options.env!);\r\n }\r\n\r\n } else {\r\n console.error(CONSTANTS.ERRORS.MERCHANT_ID_NOT_FOUND);\r\n }\r\n }\r\n\r\n private loadCheckoutScript(merchantId: string, env: Env): void {\r\n this.isScriptLoaded = false;\r\n this.isScriptLoading = true;\r\n const scriptElement = this.document.createElement('script');\r\n scriptElement.async = true;\r\n scriptElement.src = CONSTANTS.HOSTS[env] + CONSTANTS.LINKS.CHECKOUT_JS_URL.concat(merchantId);\r\n scriptElement.type = 'application/javascript';\r\n scriptElement.onload = this.setupCheckoutJs;\r\n scriptElement.onError = () => {\r\n this.isScriptLoading = false;\r\n };\r\n this.document.body.appendChild(scriptElement);\r\n }\r\n\r\n private setupCheckoutJs = (): void => {\r\n const checkoutJsInstance = this.getCheckoutJsObj();\r\n\r\n if (checkoutJsInstance && checkoutJsInstance.onLoad) {\r\n checkoutJsInstance.onLoad(() => {\r\n this.isScriptLoaded = true;\r\n this.isScriptLoading = false;\r\n this.initializeCheckout();\r\n });\r\n }\r\n }\r\n\r\n private initializeCheckout = (): void => {\r\n const checkoutJsInstance = this.getCheckoutJsObj();\r\n\r\n if (checkoutJsInstance && checkoutJsInstance.init && checkoutJsInstance.invoke) {\r\n checkoutJsInstance\r\n .init({\r\n ...this.config,\r\n root: this.openInPopup ? '' : `#${this.checkoutJsContainerId}`\r\n })\r\n .then(_ => {\r\n this.checkoutJsInstanceSource$.next(checkoutJsInstance);\r\n })\r\n .catch((error) => {\r\n console.error(CONSTANTS.ERRORS.INIT, error);\r\n });\r\n } else {\r\n console.error(CONSTANTS.ERRORS.INVALID_CHECKOUT_JS_INSTANCE);\r\n }\r\n }\r\n\r\n private getCheckoutJsObj(): ICheckoutInstance | null {\r\n const window = this.window;\r\n\r\n if (this.receivedCheckoutJsInstance) {\r\n return this.receivedCheckoutJsInstance;\r\n }\r\n\r\n if (window && window.Paytm && window.Paytm.CheckoutJS) {\r\n return window.Paytm.CheckoutJS;\r\n }\r\n\r\n console.warn(CONSTANTS.ERRORS.CHECKOUT_NOT_AVAILABLE);\r\n return null;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.checkoutJsInstanceSource$.complete();\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\nimport { AppTranslationService } from './app-translation.service';\r\nimport { ThemeManager } from './theme-manager';\r\nimport { LocalStoreManager } from './local-store-manager.service';\r\nimport { DBkeys } from './db-keys';\r\nimport { Utilities } from './utilities';\r\nimport { environment } from '../../environments/environment';\r\n\r\ninterface UserConfiguration {\r\n language: string;\r\n homeUrl: string;\r\n themeId: number;\r\n showDashboardStatistics: boolean;\r\n showDashboardNotifications: boolean;\r\n showDashboardTodo: boolean;\r\n showDashboardBanner: boolean;\r\n}\r\n\r\n@Injectable()\r\nexport class ConfigurationService {\r\n\r\n constructor(\r\n private localStorage: LocalStoreManager,\r\n private translationService: AppTranslationService,\r\n private themeManager: ThemeManager) {\r\n\r\n this.loadLocalChanges();\r\n }\r\n\r\n set language(value: string) {\r\n this._language = value;\r\n this.saveToLocalStore(value, DBkeys.LANGUAGE);\r\n this.translationService.changeLanguage(value);\r\n }\r\n get language() {\r\n return this._language || ConfigurationService.defaultLanguage;\r\n }\r\n\r\n\r\n set themeId(value: number) {\r\n value = +value;\r\n this._themeId = value;\r\n this.saveToLocalStore(value, DBkeys.THEME_ID);\r\n this.themeManager.installTheme(this.themeManager.getThemeByID(value));\r\n }\r\n get themeId() {\r\n return this._themeId || ConfigurationService.defaultThemeId;\r\n }\r\n\r\n\r\n set homeUrl(value: string) {\r\n this._homeUrl = value;\r\n this.saveToLocalStore(value, DBkeys.HOME_URL);\r\n }\r\n get homeUrl() {\r\n return this._homeUrl || ConfigurationService.defaultHomeUrl;\r\n }\r\n\r\n\r\n set showDashboardStatistics(value: boolean) {\r\n this._showDashboardStatistics = value;\r\n this.saveToLocalStore(value, DBkeys.SHOW_DASHBOARD_STATISTICS);\r\n }\r\n get showDashboardStatistics() {\r\n return this._showDashboardStatistics != null ? this._showDashboardStatistics : ConfigurationService.defaultShowDashboardStatistics;\r\n }\r\n\r\n\r\n set showDashboardNotifications(value: boolean) {\r\n this._showDashboardNotifications = value;\r\n this.saveToLocalStore(value, DBkeys.SHOW_DASHBOARD_NOTIFICATIONS);\r\n }\r\n get showDashboardNotifications() {\r\n return this._showDashboardNotifications != null ? this._showDashboardNotifications : ConfigurationService.defaultShowDashboardNotifications;\r\n }\r\n\r\n\r\n set showDashboardTodo(value: boolean) {\r\n this._showDashboardTodo = value;\r\n this.saveToLocalStore(value, DBkeys.SHOW_DASHBOARD_TODO);\r\n }\r\n get showDashboardTodo() {\r\n return this._showDashboardTodo != null ? this._showDashboardTodo : ConfigurationService.defaultShowDashboardTodo;\r\n }\r\n\r\n\r\n set showDashboardBanner(value: boolean) {\r\n this._showDashboardBanner = value;\r\n this.saveToLocalStore(value, DBkeys.SHOW_DASHBOARD_BANNER);\r\n }\r\n get showDashboardBanner() {\r\n return this._showDashboardBanner != null ? this._showDashboardBanner : ConfigurationService.defaultShowDashboardBanner;\r\n }\r\n\r\n public static readonly appVersion: string = '3.0.0';\r\n\r\n // ***Specify default configurations here***\r\n public static readonly defaultLanguage: string = 'en';\r\n public static readonly defaultHomeUrl: string = '/';\r\n public static readonly defaultThemeId: number = 1;\r\n public static readonly defaultShowDashboardStatistics: boolean = true;\r\n public static readonly defaultShowDashboardNotifications: boolean = true;\r\n public static readonly defaultShowDashboardTodo: boolean = false;\r\n public static readonly defaultShowDashboardBanner: boolean = true;\r\n\r\n public baseUrl = environment.baseUrl || Utilities.baseUrl();\r\n public tokenUrl = environment.tokenUrl || environment.baseUrl || Utilities.baseUrl();\r\n public loginUrl = environment.loginUrl;\r\n public fallbackBaseUrl = 'http://quickapp.ebenmonney.com';\r\n // ***End of defaults***\r\n\r\n private _language: string = null;\r\n private _homeUrl: string = null;\r\n private _themeId: number = null;\r\n private _showDashboardStatistics: boolean = null;\r\n private _showDashboardNotifications: boolean = null;\r\n private _showDashboardTodo: boolean = null;\r\n private _showDashboardBanner: boolean = null;\r\n\r\n private onConfigurationImported: Subject = new Subject();\r\n configurationImported$ = this.onConfigurationImported.asObservable();\r\n\r\n\r\n\r\n private loadLocalChanges() {\r\n\r\n if (this.localStorage.exists(DBkeys.LANGUAGE)) {\r\n this._language = this.localStorage.getDataObject(DBkeys.LANGUAGE);\r\n this.translationService.changeLanguage(this._language);\r\n } else {\r\n this.resetLanguage();\r\n }\r\n\r\n\r\n if (this.localStorage.exists(DBkeys.THEME_ID)) {\r\n this._themeId = this.localStorage.getDataObject(DBkeys.THEME_ID);\r\n this.themeManager.installTheme(this.themeManager.getThemeByID(this._themeId));\r\n } else {\r\n this.resetTheme();\r\n }\r\n\r\n\r\n if (this.localStorage.exists(DBkeys.HOME_URL)) {\r\n this._homeUrl = this.localStorage.getDataObject(DBkeys.HOME_URL);\r\n }\r\n\r\n if (this.localStorage.exists(DBkeys.SHOW_DASHBOARD_STATISTICS)) {\r\n this._showDashboardStatistics = this.localStorage.getDataObject(DBkeys.SHOW_DASHBOARD_STATISTICS);\r\n }\r\n\r\n if (this.localStorage.exists(DBkeys.SHOW_DASHBOARD_NOTIFICATIONS)) {\r\n this._showDashboardNotifications = this.localStorage.getDataObject(DBkeys.SHOW_DASHBOARD_NOTIFICATIONS);\r\n }\r\n\r\n if (this.localStorage.exists(DBkeys.SHOW_DASHBOARD_TODO)) {\r\n this._showDashboardTodo = this.localStorage.getDataObject(DBkeys.SHOW_DASHBOARD_TODO);\r\n }\r\n\r\n if (this.localStorage.exists(DBkeys.SHOW_DASHBOARD_BANNER)) {\r\n this._showDashboardBanner = this.localStorage.getDataObject(DBkeys.SHOW_DASHBOARD_BANNER);\r\n }\r\n }\r\n\r\n\r\n private saveToLocalStore(data: any, key: string) {\r\n setTimeout(() => this.localStorage.savePermanentData(data, key));\r\n }\r\n\r\n\r\n public import(jsonValue: string) {\r\n\r\n this.clearLocalChanges();\r\n\r\n if (jsonValue) {\r\n const importValue: UserConfiguration = Utilities.JsonTryParse(jsonValue);\r\n\r\n if (importValue.language != null) {\r\n this.language = importValue.language;\r\n }\r\n\r\n if (importValue.themeId != null) {\r\n this.themeId = +importValue.themeId;\r\n }\r\n\r\n if (importValue.homeUrl != null) {\r\n this.homeUrl = importValue.homeUrl;\r\n }\r\n\r\n if (importValue.showDashboardStatistics != null) {\r\n this.showDashboardStatistics = importValue.showDashboardStatistics;\r\n }\r\n\r\n if (importValue.showDashboardNotifications != null) {\r\n this.showDashboardNotifications = importValue.showDashboardNotifications;\r\n }\r\n\r\n if (importValue.showDashboardTodo != null) {\r\n this.showDashboardTodo = importValue.showDashboardTodo;\r\n }\r\n\r\n if (importValue.showDashboardBanner != null) {\r\n this.showDashboardBanner = importValue.showDashboardBanner;\r\n }\r\n }\r\n\r\n this.onConfigurationImported.next();\r\n }\r\n\r\n\r\n public export(changesOnly = true): string {\r\n\r\n const exportValue: UserConfiguration = {\r\n language: changesOnly ? this._language : this.language,\r\n themeId: changesOnly ? this._themeId : this.themeId,\r\n homeUrl: changesOnly ? this._homeUrl : this.homeUrl,\r\n showDashboardStatistics: changesOnly ? this._showDashboardStatistics : this.showDashboardStatistics,\r\n showDashboardNotifications: changesOnly ? this._showDashboardNotifications : this.showDashboardNotifications,\r\n showDashboardTodo: changesOnly ? this._showDashboardTodo : this.showDashboardTodo,\r\n showDashboardBanner: changesOnly ? this._showDashboardBanner : this.showDashboardBanner\r\n };\r\n\r\n return JSON.stringify(exportValue);\r\n }\r\n\r\n\r\n public clearLocalChanges() {\r\n this._language = null;\r\n this._themeId = null;\r\n this._homeUrl = null;\r\n this._showDashboardStatistics = null;\r\n this._showDashboardNotifications = null;\r\n this._showDashboardTodo = null;\r\n this._showDashboardBanner = null;\r\n\r\n this.localStorage.deleteData(DBkeys.LANGUAGE);\r\n this.localStorage.deleteData(DBkeys.THEME_ID);\r\n this.localStorage.deleteData(DBkeys.HOME_URL);\r\n this.localStorage.deleteData(DBkeys.SHOW_DASHBOARD_STATISTICS);\r\n this.localStorage.deleteData(DBkeys.SHOW_DASHBOARD_NOTIFICATIONS);\r\n this.localStorage.deleteData(DBkeys.SHOW_DASHBOARD_TODO);\r\n this.localStorage.deleteData(DBkeys.SHOW_DASHBOARD_BANNER);\r\n\r\n this.resetLanguage();\r\n this.resetTheme();\r\n }\r\n\r\n\r\n private resetLanguage() {\r\n const language = this.translationService.useBrowserLanguage();\r\n\r\n if (language) {\r\n this._language = language;\r\n } else {\r\n this._language = this.translationService.useDefaultLangage();\r\n }\r\n }\r\n\r\n private resetTheme() {\r\n this.themeManager.installTheme();\r\n this._themeId = null;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Workbook } from 'exceljs';\r\nimport { FillPatterns } from 'exceljs'\r\nimport * as fs from 'file-saver';\r\nimport { DatePipe } from '@angular/common'\r\nimport { element } from 'protractor';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { async } from 'rxjs/internal/scheduler/async';\r\nimport { TransactionService } from './transaction.service';\r\nimport { AlertService } from './alert.service';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CustomExcelService {\r\n public data: any[];\r\n public title: string;\r\n public header: any[];\r\n public Widths: number[];\r\n public Sheetname: string;\r\n public blobdata: Blob;\r\n public fromdate: string;\r\n public customername: string;\r\n public customercode: string;\r\n constructor(public datePipe: DatePipe, public transaction: TransactionService, public alertService: AlertService) {\r\n }\r\n async generateExcel(ret: string = '') {\r\n\r\n\r\n let workbook = new Workbook();\r\n\r\n let worksheet = workbook.addWorksheet(this.Sheetname);\r\n\r\n\r\n let titleRow = worksheet.addRow([]);\r\n titleRow.getCell(1).value = 'Onex.'\r\n titleRow.getCell(2).value = 'Daily Shipment Data'\r\n worksheet.mergeCells('B1:C1')\r\n titleRow.getCell(4).value = 'Date From 1st Of ' + this.datePipe.transform(new Date(), 'MMMM ,y')\r\n let nameRow = worksheet.addRow(['M/s ' + this.customername]);\r\n worksheet.mergeCells('A2:B2')\r\n nameRow.getCell(3).value = this.customercode;\r\n\r\n\r\n //Add Row and formatting\r\n\r\n //titleRow.font = {\r\n // name: 'Comic Sans MS', color: { argb: '#FFFFFF' }, family: 4, size: 16, underline: 'double', bold: true\r\n //}\r\n //titleRow.fill = { type: 'pattern', pattern: 'solid', bgColor: { argb: '#000000'.toUpperCase() }, fgColor: { argb: '#ffffff'.toUpperCase() } }\r\n\r\n titleRow.eachCell(function (cell, colNumber) {\r\n titleRow.getCell(colNumber).font = {\r\n name: 'Arial', size: 16, bold: true\r\n }\r\n });\r\n nameRow.eachCell(function (cell, colNumber) {\r\n nameRow.getCell(colNumber).font = {\r\n name: 'Arial', size: 16, bold: true\r\n }\r\n });\r\n\r\n // worksheet.addRow([]);\r\n // let subTitleRow = worksheet.addRow(['Date : ' + this.datePipe.transform(new Date(), 'medium')])\r\n //Add Image\r\n var colnum = 0\r\n this.header.forEach(function (element) { colnum = element.length });\r\n var colomnname = this.GetColumnName(colnum - 1) + '2'\r\n var range = 'A1:' + colomnname\r\n //worksheet.mergeCells(range);\r\n\r\n //Blank Row \r\n //worksheet.addRow([]);\r\n //Add Header Row\r\n let headerRow = worksheet.addRow(this.header);\r\n\r\n // Cell Style : Fill and Border\r\n headerRow.eachCell((cell, number) => {\r\n cell.fill = {\r\n type: 'pattern',\r\n pattern: 'solid',\r\n fgColor: { argb: 'FF0000' },\r\n bgColor: { argb: 'FFFFFF' }\r\n }\r\n cell.font = { name: 'Arial', size: 14, bold: true, color: { argb: 'FFFFFF' } }\r\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } }\r\n })\r\n //worksheet.addRows(this.data);\r\n // Add Data and Conditional Formatting\r\n this.data.forEach(d => {\r\n let row = worksheet.addRow(d);\r\n row.font = { name: 'Arial', size: 12 }\r\n row.getCell(1)\r\n row.eachCell((cell, number) => {\r\n if (number == 1) {\r\n let cvalue = cell.value;\r\n cell.value = { \r\n text: cvalue.toString(),\r\n hyperlink :'https://www.one-x.in/default.aspx?Awbno=' + cvalue.toString() ,\r\n };\r\n //cell.hyperlink = '=HYPERLINK(\"https://www.one-x.in/default.aspx?Awbno=' + cvalue.toString() + '\",' + '\"' + cvalue.toString() + '\")&char(13)';\r\n }\r\n cell.border =\r\n { top: { style: 'hair' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } }\r\n });\r\n });\r\n\r\n // let qty = row.getCell(5);\r\n // let color = 'FF99FF99';\r\n // if (+qty.value < 500) {\r\n // color = 'FF9999'\r\n // }\r\n // qty.fill = {\r\n // type: 'pattern',\r\n // pattern: 'solid',\r\n // fgColor: { argb: color }\r\n // }\r\n //}\r\n //);\r\n\r\n worksheet.getColumn(1).width = 15;\r\n worksheet.getColumn(3).width = 10;\r\n worksheet.getColumn(4).width = 10;\r\n worksheet.addRow([]);\r\n if (!isNullOrUndefined(this.Widths)) {\r\n if (this.Widths.length > 0) {\r\n this.Widths.forEach(function (item, index) { worksheet.getColumn(index + 1).width = item });\r\n }\r\n }\r\n //Footer Row\r\n let footerRow = worksheet.addRow(['This is system generated excel sheet.']);\r\n footerRow.getCell(1).fill = {\r\n type: 'pattern',\r\n pattern: 'solid',\r\n fgColor: { argb: 'FFCCFFE5' }\r\n };\r\n footerRow.getCell(1).border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } }\r\n //Merge Cells\r\n worksheet.mergeCells(`A${footerRow.number}:F${footerRow.number}`);\r\n //Generate Excel File with given name\r\n\r\n if (ret == \"R\") {\r\n let excel = workbook.xlsx.writeBuffer().then((data) => {\r\n \r\n return new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n //fs.saveAs(blob, this.Sheetname+'.xlsx');\r\n })\r\n return excel;\r\n }\r\n else {\r\n workbook.xlsx.writeBuffer().then((data) => {\r\n let blob = new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n fs.saveAs(blob, this.Sheetname + '.xlsx');\r\n })\r\n }\r\n }\r\n convertBlobToBase64 = (blob) => new Promise((resolve, reject) => {\r\n const reader = new FileReader;\r\n reader.onerror = reject;\r\n reader.onload = () => {\r\n resolve(reader.result);\r\n };\r\n reader.readAsDataURL(blob);\r\n });\r\n GetColumnName(columnNumber: number) {\r\n let columnName = [];\r\n while (columnNumber > 0) {\r\n // Find remainder\r\n let rem = columnNumber % 26;\r\n\r\n // If remainder is 0, then a\r\n // 'Z' must be there in output\r\n if (rem == 0) {\r\n columnName.push(\"Z\");\r\n columnNumber = Math.floor(columnNumber / 26) - 1;\r\n }\r\n else // If remainder is non-zero\r\n {\r\n columnName.push(String.fromCharCode((rem - 1) + 'A'.charCodeAt(0)));\r\n columnNumber = Math.floor(columnNumber / 26);\r\n }\r\n }\r\n\r\n // Reverse the string and print result\r\n return columnName.reverse().join(\"\")\r\n\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class DBkeys {\r\n\r\n public static readonly CURRENT_USER = 'current_user';\r\n public static readonly USER_PERMISSIONS = 'user_permissions';\r\n\r\n public static readonly REMEMBER_ME = 'remember_me';\r\n\r\n public static readonly LANGUAGE = 'language';\r\n public static readonly HOME_URL = 'home_url';\r\n public static readonly THEME_ID = 'themeId';\r\n public static readonly SHOW_DASHBOARD_STATISTICS = 'show_dashboard_statistics';\r\n public static readonly SHOW_DASHBOARD_NOTIFICATIONS = 'show_dashboard_notifications';\r\n public static readonly SHOW_DASHBOARD_TODO = 'show_dashboard_todo';\r\n public static readonly SHOW_DASHBOARD_BANNER = 'show_dashboard_banner';\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Observable, Subject, from, throwError } from 'rxjs';\r\nimport { mergeMap, switchMap, catchError } from 'rxjs/operators';\r\n\r\nimport { AuthService } from './auth.service';\r\nimport { CONTENT_ATTR } from '@angular/compiler';\r\n\r\n@Injectable()\r\nexport class EndpointBase {\r\n\r\n private taskPauser: Subject;\r\n private isRefreshingLogin: boolean;\r\n\r\n constructor(\r\n protected http: HttpClient,\r\n private authService: AuthService) {\r\n\r\n }\r\n\r\n protected get requestHeaders(): { headers: HttpHeaders | { [header: string]: string | string[]; } } {\r\n const headers = new HttpHeaders({\r\n Authorization: 'Bearer ' + this.authService.accessToken,\r\n 'Content-Type':'application/json',\r\n Accept: 'application/json, text/plain,application/x-www-form-urlencoded,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,*/*'\r\n });\r\n\r\n return { headers };\r\n }\r\n protected get requestHeadersex(): { headers: HttpHeaders | { [header: string]: string | string[]; } } {\r\n const headers = new HttpHeaders({\r\n Authorization: 'Bearer ' + this.authService.accessToken,\r\n 'Content-Type': 'application/json',\r\n Accept: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'\r\n });\r\n\r\n return { headers };\r\n }\r\n protected get TRrequestHeaders(): { headers: HttpHeaders | { [header: string]: string | string[]; } } {\r\n const headers = new HttpHeaders({\r\n Authorization: 'Bearer ' + this.authService.accessToken,\r\n 'Content-Type': 'text/plain',\r\n Accept: 'application/json, text/plain,application/x-www-form-urlencoded */*'\r\n });\r\n\r\n return { headers };\r\n }\r\n public refreshLogin() {\r\n return this.authService.refreshLogin().pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.refreshLogin());\r\n }));\r\n }\r\n\r\n protected handleError(error, continuation: () => Observable) {\r\n if (error.status == 401) {\r\n if (this.isRefreshingLogin) {\r\n return this.pauseTask(continuation);\r\n }\r\n\r\n this.isRefreshingLogin = true;\r\n\r\n return from(this.authService.refreshLogin()).pipe(\r\n mergeMap(() => {\r\n this.isRefreshingLogin = false;\r\n this.resumeTasks(true);\r\n\r\n return continuation();\r\n }),\r\n catchError(refreshLoginError => {\r\n this.isRefreshingLogin = false;\r\n this.resumeTasks(false);\r\n this.authService.reLogin();\r\n\r\n if (refreshLoginError.status == 401 || (refreshLoginError.error && refreshLoginError.error.error == 'invalid_grant')) {\r\n return throwError('session expired');\r\n } else {\r\n return throwError(refreshLoginError || 'server error');\r\n }\r\n }));\r\n }\r\n\r\n if (error.error && error.error.error == 'invalid_grant') {\r\n this.authService.reLogin();\r\n\r\n return throwError((error.error && error.error.error_description) ? `session expired (${error.error.error_description})` : 'session expired');\r\n } else {\r\n return throwError(error);\r\n }\r\n }\r\n\r\n\r\n\r\n private pauseTask(continuation: () => Observable) {\r\n if (!this.taskPauser) {\r\n this.taskPauser = new Subject();\r\n }\r\n\r\n return this.taskPauser.pipe(switchMap(continueOp => {\r\n return continueOp ? continuation() : throwError('session expired');\r\n }));\r\n }\r\n\r\n\r\n private resumeTasks(continueOp: boolean) {\r\n setTimeout(() => {\r\n if (this.taskPauser) {\r\n this.taskPauser.next(continueOp);\r\n this.taskPauser.complete();\r\n this.taskPauser = null;\r\n }\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Workbook } from 'exceljs';\r\nimport {FillPatterns} from 'exceljs'\r\nimport * as fs from 'file-saver';\r\nimport { DatePipe } from '@angular/common'\r\nimport { element } from 'protractor';\r\nimport { isNullOrUndefined } from '@swimlane/ngx-datatable';\r\nimport { async } from 'rxjs/internal/scheduler/async';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ExcelService {\r\n public data: any[];\r\n public title: string;\r\n public header: any[];\r\n public Widths: number[];\r\n public Sheetname: string;\r\n public blobdata: Blob;\r\n\r\n constructor(private datePipe: DatePipe) {\r\n }\r\n generateExcel(ret:string ='') {\r\n\r\n \r\n let workbook = new Workbook();\r\n\r\n let worksheet = workbook.addWorksheet(this.Sheetname);\r\n let titleRow = worksheet.addRow([this.title]);\r\n //Add Row and formatting\r\n \r\n //titleRow.font = {\r\n // name: 'Comic Sans MS', color: { argb: '#FFFFFF' }, family: 4, size: 16, underline: 'double', bold: true\r\n //}\r\n titleRow.fill = { type: 'pattern', pattern: 'solid', bgColor: { argb: '#000000'.toUpperCase() }, fgColor: { argb:'#ffffff'.toUpperCase() }}\r\n \r\n titleRow.eachCell(function (cell, colNumber) {\r\n titleRow.getCell(colNumber).font = { \r\n name: 'Arial', size: 16, bold: true, color: {argb:'FFFFFF'}\r\n }\r\n });\r\n \r\n \r\n // worksheet.addRow([]);\r\n // let subTitleRow = worksheet.addRow(['Date : ' + this.datePipe.transform(new Date(), 'medium')])\r\n //Add Image\r\n var colnum = 0\r\n this.header.forEach(function (element) { colnum = element.length });\r\n var colomnname = this.GetColumnName(colnum-1)+'2'\r\n var range = 'A1:' + colomnname\r\n //worksheet.mergeCells(range);\r\n\r\n //Blank Row \r\n //worksheet.addRow([]);\r\n //Add Header Row\r\n let headerRow = worksheet.addRow(this.header);\r\n\r\n // Cell Style : Fill and Border\r\n headerRow.eachCell((cell, number) => {\r\n cell.fill = {\r\n type: 'pattern',\r\n pattern: 'solid',\r\n fgColor: { argb: 'FF0000' },\r\n bgColor: { argb: 'FFFFFF' }\r\n }\r\n cell.font = { name: 'Arial', size: 14, bold: true, color: { argb: 'FFFFFF' } }\r\n cell.border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } }\r\n })\r\n //worksheet.addRows(this.data);\r\n // Add Data and Conditional Formatting\r\n this.data.forEach(d => {\r\n let row = worksheet.addRow(d);\r\n row.font = { name: 'Arial', size: 12 }\r\n row.eachCell((cell, number) => {\r\n cell.border =\r\n { top: { style: 'hair' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } }\r\n });\r\n });\r\n \r\n // let qty = row.getCell(5);\r\n // let color = 'FF99FF99';\r\n // if (+qty.value < 500) {\r\n // color = 'FF9999'\r\n // }\r\n // qty.fill = {\r\n // type: 'pattern',\r\n // pattern: 'solid',\r\n // fgColor: { argb: color }\r\n // }\r\n //}\r\n //);\r\n \r\n worksheet.getColumn(1).width = 15;\r\n worksheet.getColumn(3).width = 10;\r\n worksheet.getColumn(4).width = 10;\r\n worksheet.addRow([]);\r\n if (!isNullOrUndefined(this.Widths)) {\r\n if (this.Widths.length > 0) {\r\n this.Widths.forEach(function (item, index) { worksheet.getColumn(index + 1).width = item });\r\n }\r\n }\r\n //Footer Row\r\n let footerRow = worksheet.addRow(['This is system generated excel sheet.']);\r\n footerRow.getCell(1).fill = {\r\n type: 'pattern',\r\n pattern: 'solid',\r\n fgColor: { argb: 'FFCCFFE5' }\r\n };\r\n footerRow.getCell(1).border = { top: { style: 'thin' }, left: { style: 'thin' }, bottom: { style: 'thin' }, right: { style: 'thin' } }\r\n //Merge Cells\r\n worksheet.mergeCells(`A${footerRow.number}:F${footerRow.number}`); \r\n \r\n workbook.xlsx.writeBuffer().then((data) => {\r\n let blob =new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n fs.saveAs(blob, this.Sheetname+'.xlsx');\r\n })\r\n \r\n }\r\n \r\n GetColumnName(columnNumber: number) {\r\n let columnName = [];\r\n while (columnNumber > 0) {\r\n // Find remainder\r\n let rem = columnNumber % 26;\r\n\r\n // If remainder is 0, then a\r\n // 'Z' must be there in output\r\n if (rem == 0) {\r\n columnName.push(\"Z\");\r\n columnNumber = Math.floor(columnNumber / 26) - 1;\r\n }\r\n else // If remainder is non-zero\r\n {\r\n columnName.push(String.fromCharCode((rem - 1) + 'A'.charCodeAt(0)));\r\n columnNumber = Math.floor(columnNumber / 26);\r\n }\r\n }\r\n\r\n // Reverse the string and print result\r\n return columnName.reverse().join(\"\") \r\n\r\n }\r\n\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\n/**\r\n * Helper class to decode and find JWT expiration.\r\n */\r\nimport { Injectable } from '@angular/core';\r\n\r\n\r\n@Injectable()\r\nexport class JwtHelper {\r\n\r\n public urlBase64Decode(str: string): string {\r\n let output = str.replace(/-/g, '+').replace(/_/g, '/');\r\n switch (output.length % 4) {\r\n case 0: { break; }\r\n case 2: { output += '=='; break; }\r\n case 3: { output += '='; break; }\r\n default: {\r\n throw new Error('Illegal base64url string!');\r\n }\r\n }\r\n return this.b64DecodeUnicode(output);\r\n }\r\n\r\n // https://developer.mozilla.org/en/docs/Web/API/WindowBase64/Base64_encoding_and_decoding#The_Unicode_Problem\r\n private b64DecodeUnicode(str: any) {\r\n return decodeURIComponent(Array.prototype.map.call(atob(str), (c: any) => {\r\n return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);\r\n }).join(''));\r\n }\r\n\r\n public decodeToken(token: string): any {\r\n const parts = token.split('.');\r\n\r\n if (parts.length !== 3) {\r\n throw new Error('JWT must have 3 parts');\r\n }\r\n\r\n const decoded = this.urlBase64Decode(parts[1]);\r\n if (!decoded) {\r\n throw new Error('Cannot decode the token');\r\n }\r\n\r\n return JSON.parse(decoded);\r\n }\r\n\r\n public getTokenExpirationDate(token: string): Date {\r\n let decoded: any;\r\n decoded = this.decodeToken(token);\r\n\r\n if (!decoded.hasOwnProperty('exp')) {\r\n return null;\r\n }\r\n\r\n const date = new Date(0); // The 0 here is the key, which sets the date to the epoch\r\n date.setUTCSeconds(decoded.exp);\r\n\r\n return date;\r\n }\r\n\r\n public isTokenExpired(token: string, offsetSeconds?: number): boolean {\r\n const date = this.getTokenExpirationDate(token);\r\n offsetSeconds = offsetSeconds || 0;\r\n\r\n if (date == null) {\r\n return false;\r\n }\r\n\r\n // Token expired?\r\n return !(date.valueOf() > (new Date().valueOf() + (offsetSeconds * 1000)));\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\nimport { Utilities } from './utilities';\r\n\r\n@Injectable()\r\n/**\r\n* Provides a wrapper for accessing the web storage API and synchronizing session storage across tabs/windows.\r\n*/\r\nexport class LocalStoreManager {\r\n private static syncListenerInitialised = false;\r\n\r\n public static readonly DBKEY_USER_DATA = 'user_data';\r\n private static readonly DBKEY_SYNC_KEYS = 'sync_keys';\r\n private static readonly DBKEY_OFFICE_KEYS = 'Office_keys';\r\n\r\n private syncKeys: string[] = [];\r\n private initEvent = new Subject();\r\n\r\n private reservedKeys: string[] =\r\n [\r\n 'sync_keys',\r\n 'addToSyncKeys',\r\n 'removeFromSyncKeys',\r\n 'getSessionStorage',\r\n 'setSessionStorage',\r\n 'addToSessionStorage',\r\n 'removeFromSessionStorage',\r\n 'clearAllSessionsStorage'\r\n ];\r\n\r\n\r\n public initialiseStorageSyncListener() {\r\n if (LocalStoreManager.syncListenerInitialised == true) {\r\n return;\r\n }\r\n\r\n LocalStoreManager.syncListenerInitialised = true;\r\n window.addEventListener('storage', this.sessionStorageTransferHandler, false);\r\n this.syncSessionStorage();\r\n }\r\n\r\n public deinitialiseStorageSyncListener() {\r\n window.removeEventListener('storage', this.sessionStorageTransferHandler, false);\r\n LocalStoreManager.syncListenerInitialised = false;\r\n }\r\n\r\n public clearAllStorage() {\r\n this.clearAllSessionsStorage();\r\n this.clearLocalStorage();\r\n }\r\n\r\n public clearAllSessionsStorage() {\r\n this.clearInstanceSessionStorage();\r\n localStorage.removeItem(LocalStoreManager.DBKEY_SYNC_KEYS);\r\n\r\n localStorage.setItem('clearAllSessionsStorage', '_dummy');\r\n localStorage.removeItem('clearAllSessionsStorage');\r\n }\r\n\r\n public clearInstanceSessionStorage() {\r\n sessionStorage.clear();\r\n this.syncKeys = [];\r\n }\r\n\r\n public clearLocalStorage() {\r\n localStorage.clear();\r\n }\r\n\r\n public saveSessionData(data: any, key = LocalStoreManager.DBKEY_USER_DATA) {\r\n this.testForInvalidKeys(key);\r\n\r\n this.removeFromSyncKeys(key);\r\n localStorage.removeItem(key);\r\n this.sessionStorageSetItem(key, data);\r\n }\r\n\r\n public saveSyncedSessionData(data: any, key = LocalStoreManager.DBKEY_USER_DATA) {\r\n this.testForInvalidKeys(key);\r\n\r\n localStorage.removeItem(key);\r\n this.addToSessionStorage(data, key);\r\n }\r\n\r\n public savePermanentData(data: any, key = LocalStoreManager.DBKEY_USER_DATA) {\r\n this.testForInvalidKeys(key);\r\n\r\n this.removeFromSessionStorage(key);\r\n this.localStorageSetItem(key, data);\r\n }\r\n\r\n public moveDataToSessionStorage(key = LocalStoreManager.DBKEY_USER_DATA) {\r\n this.testForInvalidKeys(key);\r\n\r\n const data = this.getData(key);\r\n\r\n if (data == null) {\r\n return;\r\n }\r\n\r\n this.saveSessionData(data, key);\r\n }\r\n\r\n public moveDataToSyncedSessionStorage(key = LocalStoreManager.DBKEY_USER_DATA) {\r\n this.testForInvalidKeys(key);\r\n\r\n const data = this.getData(key);\r\n\r\n if (data == null) {\r\n return;\r\n }\r\n\r\n this.saveSyncedSessionData(data, key);\r\n }\r\n\r\n public moveDataToPermanentStorage(key = LocalStoreManager.DBKEY_USER_DATA) {\r\n this.testForInvalidKeys(key);\r\n\r\n const data = this.getData(key);\r\n\r\n if (data == null) {\r\n return;\r\n }\r\n\r\n this.savePermanentData(data, key);\r\n }\r\n\r\n public exists(key = LocalStoreManager.DBKEY_USER_DATA) {\r\n let data = sessionStorage.getItem(key);\r\n\r\n if (data == null) {\r\n data = localStorage.getItem(key);\r\n }\r\n\r\n return data != null;\r\n }\r\n\r\n public getData(key = LocalStoreManager.DBKEY_USER_DATA) {\r\n this.testForInvalidKeys(key);\r\n\r\n let data = this.sessionStorageGetItem(key);\r\n\r\n if (data == null) {\r\n data = this.localStorageGetItem(key);\r\n }\r\n\r\n return data;\r\n }\r\n\r\n public getDataObject(key = LocalStoreManager.DBKEY_USER_DATA, isDateType = false): T {\r\n let data = this.getData(key);\r\n\r\n if (data != null) {\r\n if (isDateType) {\r\n data = new Date(data);\r\n }\r\n return data as T;\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n public deleteData(key = LocalStoreManager.DBKEY_USER_DATA) {\r\n this.testForInvalidKeys(key);\r\n\r\n this.removeFromSessionStorage(key);\r\n localStorage.removeItem(key);\r\n }\r\n\r\n public getInitEvent(): Observable<{}> {\r\n return this.initEvent.asObservable();\r\n }\r\n\r\n private sessionStorageTransferHandler = (event: StorageEvent) => {\r\n if (!event.newValue) {\r\n return;\r\n }\r\n\r\n if (event.key == 'getSessionStorage') {\r\n if (sessionStorage.length) {\r\n this.localStorageSetItem('setSessionStorage', sessionStorage);\r\n localStorage.removeItem('setSessionStorage');\r\n }\r\n } else if (event.key == 'setSessionStorage') {\r\n\r\n if (!this.syncKeys.length) {\r\n this.loadSyncKeys();\r\n }\r\n const data = JSON.parse(event.newValue);\r\n // console.info(\"Set => Key: Transfer setSessionStorage\" + \", data: \" + JSON.stringify(data));\r\n\r\n for (const key in data) {\r\n\r\n if (this.syncKeysContains(key)) {\r\n this.sessionStorageSetItem(key, JSON.parse(data[key]));\r\n }\r\n }\r\n\r\n this.onInit();\r\n } else if (event.key == 'addToSessionStorage') {\r\n\r\n const data = JSON.parse(event.newValue);\r\n\r\n // console.warn(\"Set => Key: Transfer addToSessionStorage\" + \", data: \" + JSON.stringify(data));\r\n\r\n this.addToSessionStorageHelper(data.data, data.key);\r\n } else if (event.key == 'removeFromSessionStorage') {\r\n\r\n this.removeFromSessionStorageHelper(event.newValue);\r\n } else if (event.key == 'clearAllSessionsStorage' && sessionStorage.length) {\r\n this.clearInstanceSessionStorage();\r\n } else if (event.key == 'addToSyncKeys') {\r\n this.addToSyncKeysHelper(event.newValue);\r\n } else if (event.key == 'removeFromSyncKeys') {\r\n this.removeFromSyncKeysHelper(event.newValue);\r\n }\r\n }\r\n\r\n private syncSessionStorage() {\r\n localStorage.setItem('getSessionStorage', '_dummy');\r\n localStorage.removeItem('getSessionStorage');\r\n }\r\n\r\n private addToSessionStorage(data: any, key: string) {\r\n this.addToSessionStorageHelper(data, key);\r\n this.addToSyncKeysBackup(key);\r\n\r\n this.localStorageSetItem('addToSessionStorage', { key, data });\r\n localStorage.removeItem('addToSessionStorage');\r\n }\r\n\r\n private addToSessionStorageHelper(data: any, key: string) {\r\n this.addToSyncKeysHelper(key);\r\n this.sessionStorageSetItem(key, data);\r\n }\r\n\r\n private removeFromSessionStorage(keyToRemove: string) {\r\n this.removeFromSessionStorageHelper(keyToRemove);\r\n this.removeFromSyncKeysBackup(keyToRemove);\r\n\r\n localStorage.setItem('removeFromSessionStorage', keyToRemove);\r\n localStorage.removeItem('removeFromSessionStorage');\r\n }\r\n\r\n private removeFromSessionStorageHelper(keyToRemove: string) {\r\n\r\n sessionStorage.removeItem(keyToRemove);\r\n this.removeFromSyncKeysHelper(keyToRemove);\r\n }\r\n\r\n private testForInvalidKeys(key: string) {\r\n if (!key) {\r\n throw new Error('key cannot be empty');\r\n }\r\n\r\n if (this.reservedKeys.some(x => x == key)) {\r\n throw new Error(`The storage key \"${key}\" is reserved and cannot be used. Please use a different key`);\r\n }\r\n }\r\n\r\n private syncKeysContains(key: string) {\r\n\r\n return this.syncKeys.some(x => x == key);\r\n }\r\n\r\n private loadSyncKeys() {\r\n if (this.syncKeys.length) {\r\n return;\r\n }\r\n\r\n this.syncKeys = this.getSyncKeysFromStorage();\r\n }\r\n\r\n private getSyncKeysFromStorage(defaultValue: string[] = []): string[] {\r\n const data = this.localStorageGetItem(LocalStoreManager.DBKEY_SYNC_KEYS);\r\n\r\n if (data == null) {\r\n return defaultValue;\r\n } else {\r\n return data as string[];\r\n }\r\n }\r\n\r\n private addToSyncKeys(key: string) {\r\n this.addToSyncKeysHelper(key);\r\n this.addToSyncKeysBackup(key);\r\n\r\n localStorage.setItem('addToSyncKeys', key);\r\n localStorage.removeItem('addToSyncKeys');\r\n }\r\n\r\n private addToSyncKeysBackup(key: string) {\r\n const storedSyncKeys = this.getSyncKeysFromStorage();\r\n\r\n if (!storedSyncKeys.some(x => x == key)) {\r\n storedSyncKeys.push(key);\r\n this.localStorageSetItem(LocalStoreManager.DBKEY_SYNC_KEYS, storedSyncKeys);\r\n }\r\n }\r\n\r\n private removeFromSyncKeysBackup(key: string) {\r\n const storedSyncKeys = this.getSyncKeysFromStorage();\r\n\r\n const index = storedSyncKeys.indexOf(key);\r\n\r\n if (index > -1) {\r\n storedSyncKeys.splice(index, 1);\r\n this.localStorageSetItem(LocalStoreManager.DBKEY_SYNC_KEYS, storedSyncKeys);\r\n }\r\n }\r\n\r\n private addToSyncKeysHelper(key: string) {\r\n if (!this.syncKeysContains(key)) {\r\n this.syncKeys.push(key);\r\n }\r\n }\r\n\r\n private removeFromSyncKeys(key: string) {\r\n this.removeFromSyncKeysHelper(key);\r\n this.removeFromSyncKeysBackup(key);\r\n\r\n localStorage.setItem('removeFromSyncKeys', key);\r\n localStorage.removeItem('removeFromSyncKeys');\r\n }\r\n\r\n private removeFromSyncKeysHelper(key: string) {\r\n const index = this.syncKeys.indexOf(key);\r\n\r\n if (index > -1) {\r\n this.syncKeys.splice(index, 1);\r\n }\r\n }\r\n\r\n private localStorageSetItem(key: string, data: any) {\r\n localStorage.setItem(key, JSON.stringify(data));\r\n }\r\n\r\n private sessionStorageSetItem(key: string, data: any) {\r\n sessionStorage.setItem(key, JSON.stringify(data));\r\n }\r\n\r\n private localStorageGetItem(key: string) {\r\n return Utilities.JsonTryParse(localStorage.getItem(key));\r\n }\r\n\r\n private sessionStorageGetItem(key: string) {\r\n return Utilities.JsonTryParse(sessionStorage.getItem(key));\r\n }\r\n\r\n private onInit() {\r\n setTimeout(() => {\r\n this.initEvent.next();\r\n this.initEvent.complete();\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { AuthService } from './auth.service';\r\nimport { EndpointBase } from './endpoint-base.service';\r\nimport { ConfigurationService } from './configuration.service';\r\nimport { DeliveryCommMaster } from '../components/delivery-comm-master/delivery-comm-master.component';\r\nimport { parseJSON } from 'jquery';\r\nimport { CommRequest } from '../models/comm-request.model';\r\n\r\n@Injectable()\r\nexport class MastersEndPoint extends EndpointBase {\r\n constructor(private configurations: ConfigurationService, http: HttpClient, authService: AuthService) {\r\n super(http, authService);\r\n console.log(\"Conturwqgsjglwo\");\r\n }\r\n private readonly _statesUrl: string = '/api/master/states';\r\n private readonly _stratesByNameUrl: string = '/api/master/states/statename';\r\n private readonly _citysurl: string = '/api/master/cities';\r\n private readonly _citysurlByName: string = '/api/master/cities/cityname';\r\n private readonly _stateslisturl: string = '/api/master/states/statelist';\r\n private readonly _citieslisturl: string = '/api/master/cities/citylist';\r\n private readonly _custlisturl: string = '/api/master/customer/custlist';\r\n private readonly _ProductUrl: string ='/api/master/products';\r\n private readonly _ProductUrlBycode: string = '/api/master/products/productcode';\r\n private readonly _ProductlistUrl: string = '/api/master/products/productlist';\r\n private readonly _ItemUrl: string = '/api/master/items'\r\n private readonly _pinsurl: string = '/api/master/pincodes'\r\n private readonly _pinsurlByPincode: string = '/api/master/pincodes/pincode'\r\n private readonly _officeurl: string = '/api/master/offices'\r\n private readonly _pinsurlByofficecode: string = '/api/master/offices/officecode'\r\n private readonly _Uploadfile: string = '/api/master/offices/uploadimage'\r\n private readonly _AwbseriesURl: string = '/api/master/awbseries';\r\n private readonly _VendoreURl: string = '/api/master/vendores';\r\n private readonly _BaDaMasterURl: string = '/api/master/badamasters';\r\n private readonly _BookCommUrl: string = '/api/master/bookcommmaster';\r\n private readonly _AddressURL: string = '/api/master/addresss';\r\n private readonly _helplistURL: string = '/api/master/helplist';\r\n private readonly _custurl: string = '/api/master/customermaster';\r\n private readonly _getofficefromuser: string = '/api/master/getoffice/user';\r\n private readonly _getDelvcommURL: string = '/api/master/deliverycomm'\r\n private readonly _PostCommonDataUrl: string = '/api/master/commondata'\r\n private readonly _PostCommonDataSetUrl: string = '/api/master/commondataset'\r\n private readonly _PostDatasaveUrl: string = '/api/master/commonsavedata'\r\n\r\n private readonly _PostCustRate: string = '/api/master/custratemaster'\r\n private readonly _PostCustotherRate: string = '/api/master/custotherratemaster'\r\n private readonly _postcustregion: string = '/api/master/custregion'\r\n private readonly _postvendrate: string = '/api/master/vendrate'\r\n\r\n \r\n //Sandeep 26-March-2022\r\n private readonly _Quotecusturl: string = '/api/master/Quotecustomermaster';\r\n private readonly _postQuotecustregion: string = '/api/master/Quotecustregion'\r\n private readonly _PostQuoteCustRate: string = '/api/master/custQuoteratemaster'\r\n private readonly _PostQuoteCustotherRate: string = '/api/master/custQuoteotherratemaster'\r\n private readonly _PostkartQuoteCustotherRate: string = '/api/master/kartQuoteratemaster'\r\n\r\n private readonly _PostSaveSticket: string ='/api/master/stickergen'\r\n\r\n //End\r\n\r\n //Sandeep 26-March-2022\r\n get PostSaveSticket() { return this.configurations.baseUrl + this._PostSaveSticket;}\r\n get QuoteCustomerUrl() { return this.configurations.baseUrl + this._Quotecusturl; }\r\n get postQuotecustregion() { return this.configurations.baseUrl + this._postQuotecustregion }\r\n get postQuotecustrate() { return this.configurations.baseUrl + this._PostQuoteCustRate }\r\n get postkartQuotecustrate() { return this.configurations.baseUrl + this._PostkartQuoteCustotherRate }\r\n\r\n get postQuotecustotherrate() { return this.configurations.baseUrl + this._PostQuoteCustotherRate }\r\n get postVendRate() { return this.configurations.baseUrl + this._postvendrate}\r\n //end\r\n \r\n get postcustrate() { return this.configurations.baseUrl + this._PostCustRate }\r\n get postcustotherrate() { return this.configurations.baseUrl + this._PostCustotherRate }\r\n get postcustregion() { return this.configurations.baseUrl + this._postcustregion }\r\n\r\n get PostCommonDataUrl() { return this.configurations.baseUrl + this._PostCommonDataUrl }\r\n get PostCommonDataDatasetUrl() { return this.configurations.baseUrl + this._PostCommonDataSetUrl }\r\n\r\n get helplistURL() { return this.configurations.baseUrl + this._helplistURL}\r\n get AddressURl() {return this.configurations.baseUrl+this._AddressURL}\r\n get BookCommUrl() { return this.configurations.baseUrl + this._BookCommUrl}\r\n get BaDaMasterURl() { return this.configurations.baseUrl + this._BaDaMasterURl}\r\n get DelvcommUrl() { return this.configurations.baseUrl + this._getDelvcommURL }\r\n get VendoreUrl() { return this.configurations.baseUrl + this._VendoreURl}\r\n get AwbseriesURl() { return this.configurations.baseUrl + this._AwbseriesURl }\r\n\r\n get ItemUrl() { return this.configurations.baseUrl + this._ItemUrl }\r\n\r\n get ProductUrl() { return this.configurations.baseUrl + this._ProductUrl }\r\n get ProductUrlByCode() { return this.configurations.baseUrl + this._ProductUrlBycode }\r\n get ProductListurl() { return this.configurations.baseUrl + this._ProductlistUrl}\r\n\r\n get pinsurl() { return this.configurations.baseUrl + this._pinsurl;}\r\n get pinsurlByPincode() { return this.configurations.baseUrl + this._pinsurlByPincode; }\r\n\r\n get officeurl() { return this.configurations.baseUrl + this._officeurl; }\r\n get officeurlbycode() { return this.configurations.baseUrl + this.officeurlbycode; }\r\n\r\n get statesUrl() { return this.configurations.baseUrl + this._statesUrl; }\r\n get stratesByNameUrl() { return this.configurations.baseUrl + this._stratesByNameUrl; }\r\n get citysUrl() { return this.configurations.baseUrl + this._citysurl; }\r\n get citysurlByName() { return this.configurations.baseUrl + this._citysurlByName; }\r\n get stateslistUrl() { return this.configurations.baseUrl + this._stateslisturl; }\r\n get citieslistUrl() { return this.configurations.baseUrl + this._citieslisturl; }\r\n get custlistUrl() { return this.configurations.baseUrl + this._custlisturl; }\r\n\r\n get uploadfileurl() { return this.configurations.baseUrl + this._Uploadfile;}\r\n get CustomerUrl() { return this.configurations.baseUrl + this._custurl; }\r\n get GetofficefromuserUrl() { return this.configurations.baseUrl + this._getofficefromuser; }\r\n get GetPostCommonDataSaveUrl() { return this.configurations.baseUrl + this._PostDatasaveUrl;}\r\n\r\n getStatesEndpoint(stateid?: string): Observable {\r\n const endpointUrl = stateid ? `${this.statesUrl}/${stateid}` : this.statesUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getStatesEndpoint());\r\n }));\r\n }\r\n getStatesListEndpoint(): Observable {\r\n const endpointUrl = this.stateslistUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getStatesListEndpoint());\r\n }));\r\n }\r\n getProductListEndpoint(Type:string): Observable {\r\n const endpointUrl = this.ProductListurl+'/'+'{'+Type+'}';\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getProductListEndpoint(Type));\r\n }));\r\n }\r\n getcityListEndpoint(): Observable {\r\n const endpointUrl = this.citieslistUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getcityListEndpoint());\r\n }));\r\n }\r\n gethelpListEndpoint(master:string): Observable {\r\n const endpointUrl = this.helplistURL + '/{' + master+ '}';\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.gethelpListEndpoint(master));\r\n }));\r\n }\r\n getUserByStateNameEndpoint(statename?: string): Observable {\r\n const endpointUrl = statename ? `${this.stratesByNameUrl}/${statename}` : this.stratesByNameUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUserByStateNameEndpoint());\r\n }));\r\n }\r\n getNewStateEndpoint(stateObject: any): Observable {\r\n\r\n return this.http.post(this.statesUrl, JSON.stringify(stateObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewStateEndpoint(stateObject));\r\n }));\r\n }\r\n getUpdateStateEndpoint(stateObject: any): Observable {\r\n\r\n return this.http.put(this.stratesByNameUrl + \"/{\" + stateObject.stateName+\"}\", JSON.stringify(stateObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateStateEndpoint(stateObject));\r\n }));\r\n }\r\n getDeleteStateEndpoint(statename?:string): Observable {\r\n const endpointUrl = `${this.statesUrl+'/delete'}/${statename}`\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDeleteStateEndpoint(statename));\r\n }));\r\n }\r\n searchEndpoint(term: string): Observable {\r\n const endpointUrl = term ? `${this.stratesByNameUrl + '/term'}/${term}` : this.stratesByNameUrl +'/term';\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.searchEndpoint(term));\r\n }));\r\n }\r\n getCityEndpoint(citymasterid?: string): Observable {\r\n const endpointUrl = citymasterid ? `${this.citysUrl}/${citymasterid}` : this.citysUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getCityEndpoint());\r\n }));\r\n }\r\n getCityBycityname(cityname?: string): Observable {\r\n const endpointUrl = cityname ? `${this.citysurlByName}/${cityname}` : this.citysUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getCityBycityname());\r\n }));\r\n }\r\n getNewCityEndpoint(cityobject: any): Observable {\r\n\r\n return this.http.post(this.citysUrl, JSON.stringify(cityobject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewStateEndpoint(cityobject));\r\n }));\r\n }\r\n getUpdateCityEndpoint(cityobject: any): Observable {\r\n return this.http.put(this.citysUrl, JSON.stringify(cityobject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateStateEndpoint(cityobject));\r\n }));\r\n }\r\n getPincodeEndpoint(pinid?: string): Observable {\r\n const endpointUrl = pinid ? `${this.pinsurl}/${pinid}` : this.pinsurl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getPincodeEndpoint());\r\n }));\r\n }\r\n getpincodeBypincode(pincode?: string): Observable {\r\n const endpointUrl = pincode ? `${this.pinsurlByPincode}/${pincode}` : this.pinsurlByPincode;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getpincodeBypincode());\r\n }));\r\n }\r\n getNewPincodeEndpoint(pinobject: any): Observable {\r\n\r\n return this.http.post(this.pinsurl, JSON.stringify(pinobject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewPincodeEndpoint(pinobject));\r\n }));\r\n }\r\n getUpdatePincodeEndpoint(pinobject: any): Observable {\r\n\r\n return this.http.put(this.pinsurlByPincode, JSON.stringify(pinobject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdatePincodeEndpoint(pinobject));\r\n }));\r\n }\r\n getDeletePincodeEndpoint(pincode?: string): Observable {\r\n const endpointUrl = `${this.pinsurl + '/delete'}/${pincode}`\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDeletePincodeEndpoint(pincode));\r\n }));\r\n }\r\n getOfficeEndpoint(officeid?: string): Observable {\r\n const endpointUrl = officeid ? `${this.officeurl}/${officeid}` : this.officeurl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getOfficeEndpoint());\r\n }));\r\n }\r\n getofficebycode(officecode?: string): Observable {\r\n const endpointUrl = officecode ? `${this.officeurlbycode}/${officecode}` : this.officeurlbycode;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getofficebycode());\r\n }));\r\n }\r\n getNewofficeEndpoint(officeobject: any): Observable {\r\n \r\n return this.http.post(this.officeurl, JSON.stringify(officeobject),this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewofficeEndpoint(officeobject));\r\n }));\r\n }\r\n getUpdateofficeEndpoint(officeobject: any): Observable {\r\n\r\n return this.http.put(this.officeurlbycode, JSON.stringify(officeobject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUpdateofficeEndpoint(officeobject));\r\n }));\r\n }\r\n getDeleteofficeEndpoint(officecode?: string): Observable {\r\n const endpointUrl = `${this.officeurl + '/delete'}/${officecode}`\r\n return this.http.delete(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getDeleteofficeEndpoint(officecode));\r\n }));\r\n }\r\n getUploadFIleendpoint(file: any): Observable {\r\n let input = new FormData();\r\n input.append(\"filesData\", file,file.Name);\r\n return this.http.post(this.uploadfileurl,input, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getUploadFIleendpoint(input));\r\n }));\r\n }\r\n\r\n getProductsEndpoint(ProductId?: string): Observable {\r\n const endpointUrl = ProductId ? `${this.ProductUrl}/${ProductId}` : this.ProductUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getProductsEndpoint());\r\n }));\r\n }\r\n getProductsCodeEndpoint(ProductCode?: string): Observable {\r\n const endpointUrl = ProductCode ? `${this.ProductUrlByCode}/${ProductCode}` : this.ProductUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getProductsCodeEndpoint());\r\n }));\r\n }\r\n getNewProductEndpoint(ProductObject: any): Observable {\r\n\r\n return this.http.post(this.ProductUrl, JSON.stringify(ProductObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewStateEndpoint(ProductObject));\r\n }));\r\n }\r\n\r\n getAwbSeriesEndpoint(AwbSeriesid?: string): Observable {\r\n const endpointUrl = AwbSeriesid ? `${this.AwbseriesURl}/${AwbSeriesid}`: this.AwbseriesURl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getAwbSeriesEndpoint());\r\n }));\r\n }\r\n getNewAwbseriesEndpoint(AwbseriesObject: any): Observable {\r\n\r\n return this.http.post(this.AwbseriesURl, JSON.stringify(AwbseriesObject), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewAwbseriesEndpoint(AwbseriesObject));\r\n }));\r\n }\r\n getItemEndpoint(ItemId?: string): Observable {\r\n const endpointUrl = ItemId ? `${this.ItemUrl}/${ItemId}` : this.ItemUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getAwbSeriesEndpoint());\r\n }));\r\n }\r\n getNewItemEndpoint(itemdata: any): Observable {\r\n\r\n return this.http.post(this.ItemUrl, JSON.stringify(itemdata), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewItemEndpoint(itemdata));\r\n }));\r\n }\r\n getVendoreEndpoint(vendId?: string): Observable {\r\n const endpointUrl = vendId ? `${this.VendoreUrl}/${vendId}` : this.VendoreUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getVendoreEndpoint());\r\n }));\r\n }\r\n \r\n getNewVendoreEndpoint(vendoredata: any): Observable {\r\n\r\n return this.http.post(this.VendoreUrl, JSON.stringify(vendoredata), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewVendoreEndpoint(vendoredata));\r\n }));\r\n }\r\n\r\n getBadaEndpoint(vendId?: string): Observable {\r\n const endpointUrl = vendId ? `${this.BaDaMasterURl}/${vendId}` : this.BaDaMasterURl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getBadaEndpoint());\r\n }));\r\n }\r\n getBadaCodeEndpoint(bacode?: string): Observable {\r\n const endpointUrl = bacode ? `${this.BaDaMasterURl}/bacode/${bacode}` : this.BaDaMasterURl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getBadaEndpoint(bacode));\r\n }));\r\n }\r\n //'getoffice/user/{usercode}'\r\n getOfficefromuserEndpoint(bacode?: string): Observable {\r\n const endpointUrl = `${this.GetofficefromuserUrl}/${bacode}`;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getOfficefromuserEndpoint(bacode));\r\n }));\r\n }\r\n getApproveBadaEndpoint(vendId: string): Observable {\r\n const endpointUrl = `${this.BaDaMasterURl}/${vendId}` \r\n\r\n return this.http.post(endpointUrl,\"{}\", this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getApproveBadaEndpoint(vendId));\r\n }));\r\n }\r\n getNewBadaEndpoint(vendoredata: any): Observable {\r\n\r\n return this.http.post(this.BaDaMasterURl, JSON.stringify(vendoredata), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewBadaEndpoint(vendoredata));\r\n }));\r\n }\r\n getUpdateBadaEndpoint(vendoredata: any): Observable {\r\n\r\n return this.http.put(this.BaDaMasterURl, JSON.stringify(vendoredata), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewBadaEndpoint(vendoredata));\r\n }));\r\n }\r\n\r\n getBooCommEndpoint(): Observable {\r\n const endpointUrl = this.BookCommUrl;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getBooCommEndpoint());\r\n }));\r\n }\r\n\r\n getNewBooCommEndpoint(BookcommData:any): Observable {\r\n const endpointUrl = this.BookCommUrl;\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(BookcommData), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewBooCommEndpoint(BookcommData));\r\n }));\r\n }\r\n getNewAddressEndpoint(address: any): Observable {\r\n const endpointUrl = this.AddressURl;\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(address), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getNewAddressEndpoint(address));\r\n }));\r\n }\r\n\r\n PostSaveCustomer(customer: any): Observable {\r\n const endpointUrl = this.CustomerUrl;\r\n return this.http.post(endpointUrl, JSON.stringify(customer), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostSaveCustomer(customer));\r\n }));\r\n }\r\n GetCustomer(): Observable {\r\n const endpointUrl = this.CustomerUrl;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetCustomer());\r\n }));\r\n }\r\n\r\n getAddressEndpoint(addresforid: string): Observable {\r\n const endpointUrl = `${this.AddressURl}/${addresforid}` \r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getAddressEndpoint(addresforid));\r\n }));\r\n }\r\n getcustListEndpoint(officeid): Observable {\r\n const endpointUrl = this.custlistUrl + \"?officeid=\" + officeid;\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.getcustListEndpoint(officeid));\r\n }));\r\n }\r\n GetDeliveryCommEndpoint(Officename:string): Observable {\r\n const endpointUrl = this.DelvcommUrl + \"?officename=\" + Officename\r\n\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDeliveryCommEndpoint(Officename));\r\n }));\r\n }\r\n PostDeliveryCommEndpoint(delcomm: DeliveryCommMaster): Observable {\r\n const endpointUrl = this.DelvcommUrl\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(delcomm), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostDeliveryCommEndpoint(delcomm));\r\n }));\r\n }\r\n PostCommonDataEndpoint(CommonReq: CommRequest): Observable {\r\n const endpointUrl = this.PostCommonDataUrl\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(CommonReq), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostCommonDataEndpoint(CommonReq));\r\n }));\r\n }\r\n PostCommonDataSetEndpoint(CommonReq: CommRequest): Observable {\r\n const endpointUrl = this.PostCommonDataDatasetUrl;\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(CommonReq), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostCommonDataSetEndpoint(CommonReq));\r\n }));\r\n }\r\n PostCommonDataSave(CommonReq: CommRequest): Observable {\r\n const endpointUrl = this.GetPostCommonDataSaveUrl;\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(CommonReq), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostCommonDataSave(CommonReq));\r\n }));\r\n }\r\n PostCustrateEndpoint(Data:any): Observable {\r\n const endpointUrl = this.postcustrate\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(Data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostCustrateEndpoint(Data));\r\n }));\r\n }\r\n PostCustotherrateEndpoint(Data: any): Observable {\r\n const endpointUrl = this.postcustotherrate\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(Data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostCustotherrateEndpoint(Data));\r\n }));\r\n }\r\n PostCustRegion(Data: any): Observable {\r\n const endpointUrl = this.postcustregion\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(Data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostCustRegion(Data));\r\n }));\r\n }\r\n\r\n PostSaveQuoteCustomer(customer: any): Observable {\r\n const endpointUrl = this.QuoteCustomerUrl;\r\n return this.http.post(endpointUrl, JSON.stringify(customer), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostSaveQuoteCustomer(customer));\r\n }));\r\n }\r\n\r\n\r\n GetQuoteCustomer(): Observable {\r\n const endpointUrl = this.QuoteCustomerUrl;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetQuoteCustomer());\r\n }));\r\n }\r\n\r\n PostQuoteCustRegion(Data: any): Observable {\r\n const endpointUrl = this.postQuotecustregion\r\n return this.http.post(endpointUrl, JSON.stringify(Data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostQuoteCustRegion(Data));\r\n }));\r\n }\r\n\r\n PostQuoteCustrateEndpoint(Data: any): Observable {\r\n const endpointUrl = this.postQuotecustrate\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(Data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostQuoteCustrateEndpoint(Data));\r\n }));\r\n }\r\n PostKartQuoteCustrateEndpoint(Data: any): Observable {\r\n const endpointUrl = this.postkartQuotecustrate;\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(Data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostKartQuoteCustrateEndpoint(Data));\r\n }));\r\n }\r\n PostQuoteCustotherrateEndpoint(Data: any): Observable {\r\n const endpointUrl = this.postQuotecustotherrate\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(Data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostQuoteCustotherrateEndpoint(Data));\r\n }));\r\n }\r\n PostSaveStickerEndpoint(Data: any): Observable {\r\n const endpointUrl = this.PostSaveSticket\r\n\r\n return this.http.post(endpointUrl, JSON.stringify(Data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostQuoteCustotherrateEndpoint(Data));\r\n }));\r\n }\r\n PostSaveVendrate(Data: any): Observable {\r\n const endpointUrl = this.postVendRate\r\n return this.http.post(endpointUrl, JSON.stringify(Data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostQuoteCustotherrateEndpoint(Data));\r\n }));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject, forkJoin } from 'rxjs';\r\nimport { map, mergeMap, tap } from 'rxjs/operators';\r\nimport {MastersEndPoint} from './masters-end-point.service';\r\nimport { AuthService } from './auth.service';\r\nimport { StateMaster } from '../models/statemaster.model';\r\nimport { Citymaster } from '../models/citymaster.model';\r\nimport { Pincodemaster } from '../models/pincodemaster.model';\r\nimport { officemasterComponent } from '../components/officemaster/officemaster.component';\r\nimport { Officemaster } from '../models/officemaster.model';\r\nimport { ProductMaster } from '../models/productmaster.model';\r\nimport { AwbseriesMaster } from '../components/awbseriesmaster/awbseriesmaster.component';\r\nimport { ItemMaster } from '../components/itemmaster/itemmaster.component';\r\nimport { VendorMaster } from '../components/vendermaster/vendermaster.component';\r\nimport { BADAMaster } from '../components/badamaster/badamaster.component';\r\nimport { BookingCommision } from '../components/bookingcommision/bookingcommision.component';\r\nimport { Address } from '../components/controls/addressmaster.component';\r\nimport { CustomerName } from '../components/custromer-master/custromer-master.component'\r\nimport { DeliveryCommMaster } from '../components/delivery-comm-master/delivery-comm-master.component';\r\nimport { CommRequest } from '../models/comm-request.model';\r\nimport { data } from 'jquery';\r\nexport type MasterChangeoperation = 'add' | 'delete' | 'modify';\r\nexport interface MasterChangedEventArg { roles: StateMaster[] | string[]; operation: MasterChangeoperation; }\r\n\r\n@Injectable()\r\nexport class Masters {\r\n constructor(\r\n private authService: AuthService,\r\n private masterendpoint: MastersEndPoint)\r\n {\r\n\r\n }\r\n getStates(stateid?:string) {\r\n\r\n return this.masterendpoint.getStatesEndpoint(stateid);\r\n }\r\n getstateslist() {\r\n return this.masterendpoint.getStatesListEndpoint();\r\n }\r\n getcitylist() {\r\n return this.masterendpoint.getcityListEndpoint();\r\n }\r\n newState(states:StateMaster) {\r\n return this.masterendpoint.getNewStateEndpoint(states);\r\n }\r\n UpdateState(states: StateMaster) {\r\n return this.masterendpoint.getUpdateStateEndpoint(states)\r\n }\r\n DeleteState(statename?: string | StateMaster): Observable {\r\n\r\n if (typeof statename === 'string' || statename instanceof String) {\r\n return this.masterendpoint.getDeleteStateEndpoint(statename as string)\r\n } \r\n }\r\n search(term: string) {\r\n return this.masterendpoint.searchEndpoint(term)\r\n }\r\n getcities(cityid?: string) {\r\n\r\n return this.masterendpoint.getCityEndpoint(cityid);\r\n }\r\n newCity(states: Citymaster) {\r\n return this.masterendpoint.getNewCityEndpoint(states);\r\n }\r\n Updatecity(states: Citymaster) {\r\n return this.masterendpoint.getUpdateCityEndpoint(states)\r\n }\r\n getpincodes(pinid?: string) {\r\n\r\n return this.masterendpoint.getPincodeEndpoint(pinid);\r\n }\r\n newpincode(pincode: Pincodemaster) {\r\n return this.masterendpoint.getNewPincodeEndpoint(pincode);\r\n }\r\n Updatepincode(pincode: Pincodemaster) {\r\n return this.masterendpoint.getUpdatePincodeEndpoint(pincode)\r\n }\r\n getoffices(officeid?: string) {\r\n\r\n return this.masterendpoint.getOfficeEndpoint(officeid);\r\n }\r\n newoffice(office: Officemaster) {\r\n return this.masterendpoint.getNewofficeEndpoint(office);\r\n }\r\n uploadFile(file:any) {\r\n return this.masterendpoint.getUploadFIleendpoint(file);\r\n }\r\n Updateoffice(office: Officemaster) {\r\n return this.masterendpoint.getUpdateofficeEndpoint(office)\r\n }\r\n getproduct(productId?: string) {\r\n\r\n return this.masterendpoint.getProductsEndpoint(productId);\r\n }\r\n getproductByCOde(Productcode?: string) {\r\n\r\n return this.masterendpoint.getProductsCodeEndpoint(Productcode);\r\n }\r\n NewProduct(Product: ProductMaster) {\r\n\r\n return this.masterendpoint.getNewProductEndpoint(Product);\r\n }\r\n ProductList(Type:string) {\r\n return this.masterendpoint.getProductListEndpoint(Type);\r\n }\r\n GetAwbseries(Awbseriesid?:string)\r\n {\r\n return this.masterendpoint.getAwbSeriesEndpoint(Awbseriesid);\r\n }\r\n NewAwbseries(awbseries: AwbseriesMaster) {\r\n return this.masterendpoint.getNewAwbseriesEndpoint(awbseries);\r\n }\r\n GetItemMaster(Itemid?: string) {\r\n return this.masterendpoint.getItemEndpoint(Itemid);\r\n }\r\n NewItem(itemdata:ItemMaster) {\r\n return this.masterendpoint.getNewItemEndpoint(itemdata);\r\n }\r\n GetVendoreMaster(vendid?: string) {\r\n return this.masterendpoint.getVendoreEndpoint(vendid);\r\n }\r\n NewVendore(vednore: VendorMaster) {\r\n return this.masterendpoint.getNewVendoreEndpoint(vednore);\r\n }\r\n getbadamaster(vendid?: string) {\r\n return this.masterendpoint.getBadaEndpoint(vendid);\r\n }\r\n updatebada(badabmaster: BADAMaster) {\r\n return this.masterendpoint.getUpdateBadaEndpoint(badabmaster);\r\n }\r\n approvebada(vendid: string) {\r\n return this.masterendpoint.getApproveBadaEndpoint(vendid);\r\n }\r\n newbadamaster(badabmaster:BADAMaster) {\r\n return this.masterendpoint.getNewBadaEndpoint(badabmaster);\r\n }\r\n newbookcomm (bookcomm: BookingCommision) {\r\n return this.masterendpoint.getNewBooCommEndpoint(bookcomm);\r\n }\r\n getbookcomm() {\r\n return this.masterendpoint.getBooCommEndpoint();\r\n }\r\n newAddress(addres: Address) {\r\n return this.masterendpoint.getNewAddressEndpoint

(addres);\r\n }\r\n getAddress(addresforid:string) {\r\n return this.masterendpoint.getAddressEndpoint(addresforid);\r\n }\r\n getHelplist(master: string) {\r\n return this.masterendpoint.gethelpListEndpoint(master);\r\n }\r\n getBadacode(bacode: string) {\r\n return this.masterendpoint.getBadaCodeEndpoint(bacode);\r\n }\r\n getOfficefromuser(bacode: string) {\r\n return this.masterendpoint.getOfficefromuserEndpoint(bacode);\r\n }\r\n\r\n GetPincodeByPincode(pincode: string) {\r\n return this.masterendpoint.getpincodeBypincode(pincode);\r\n }\r\n postsaveCustomer(customer: CustomerName) {\r\n return this.masterendpoint.PostSaveCustomer (customer);\r\n }\r\n getCustomer() {\r\n return this.masterendpoint.GetCustomer()\r\n }\r\n getcustlist(officeid:string) {\r\n return this.masterendpoint.getcustListEndpoint(officeid);\r\n }\r\n Getdelvcomm(Officename:string) {\r\n return this.masterendpoint.GetDeliveryCommEndpoint(Officename);\r\n }\r\n Postdelvcomm(delv: DeliveryCommMaster) {\r\n return this.masterendpoint.PostDeliveryCommEndpoint(delv);\r\n }\r\n Postcommondata(CommReq: CommRequest) {\r\n return this.masterendpoint.PostCommonDataEndpoint(CommReq);\r\n }\r\n Postcommondataset(CommReq: CommRequest) {\r\n return this.masterendpoint.PostCommonDataSetEndpoint(CommReq);\r\n }\r\n \r\n PostCustrate(Data: any) {\r\n return this.masterendpoint.PostCustrateEndpoint(Data);\r\n }\r\n PostCustotherrate(Data: any) {\r\n return this.masterendpoint.PostCustotherrateEndpoint(Data);\r\n }\r\n PostcustRegion(Data: any) {\r\n return this.masterendpoint.PostCustRegion(Data);\r\n }\r\n\r\npostsaveQuoteCustomer(customer: CustomerName) {\r\n return this.masterendpoint.PostSaveQuoteCustomer(customer);\r\n }\r\n getQuoteCustomer() {\r\n return this.masterendpoint.GetQuoteCustomer()\r\n }\r\n\r\n PostQuotecustRegion(Data: any) {\r\n return this.masterendpoint.PostQuoteCustRegion(Data);\r\n }\r\n\r\n PostQuoteCustrate(Data: any) {\r\n return this.masterendpoint.PostQuoteCustrateEndpoint(Data);\r\n }\r\n PostkartQuoteCustrate(Data: any) {\r\n return this.masterendpoint.PostKartQuoteCustrateEndpoint(Data);\r\n }\r\n PostQuoteCustotherrate(Data: any) {\r\n return this.masterendpoint.PostQuoteCustotherrateEndpoint(Data);\r\n }\r\n PostSaveSticker(Data: any) {\r\n return this.masterendpoint.PostSaveStickerEndpoint(Data);\r\n }\r\n PostSavevendRate(Data: any) {\r\n return this.masterendpoint.PostSaveVendrate(Data);\r\n }\r\n PostSaveCommonData(data: CommRequest) {\r\n return this.masterendpoint.PostCommonDataSave(data);\r\n }\r\n}\r\n\r\n\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpResponse } from '@angular/common/http';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n\r\n\r\n\r\n@Injectable()\r\nexport class NotificationEndpoint {\r\n\r\n private demoNotifications = [\r\n {\r\n id: 1,\r\n header: '20 New Products were added to your inventory by \"administrator\"',\r\n body: '20 new \"BMW M6\" were added to your stock by \"administrator\" on 5/28/2017 4:54:13 PM',\r\n isRead: true,\r\n isPinned: true,\r\n date: '2017-05-28T16:29:13.5877958'\r\n },\r\n {\r\n id: 2,\r\n header: '1 Product running low',\r\n body: 'You are running low on \"Nissan Patrol\". 2 Items remaining',\r\n isRead: false,\r\n isPinned: false,\r\n date: '2017-05-28T19:54:42.4144502'\r\n },\r\n {\r\n id: 3,\r\n header: 'Tomorrow is half day',\r\n body: 'Guys, tomorrow we close by midday. Please check in your sales before noon. Thanx. Alex.',\r\n isRead: false,\r\n isPinned: false,\r\n date: '2017-05-30T11:13:42.4144502'\r\n }\r\n ];\r\n\r\n\r\n\r\n getNotificationEndpoint(notificationId: number): Observable {\r\n\r\n const notification = this.demoNotifications.find(val => val.id == notificationId);\r\n let response: HttpResponse;\r\n\r\n if (notification) {\r\n response = this.createResponse(notification, 200);\r\n } else {\r\n response = this.createResponse(null, 404);\r\n }\r\n\r\n return of(response.body);\r\n }\r\n\r\n\r\n\r\n getNotificationsEndpoint(page: number, pageSize: number): Observable {\r\n\r\n const notifications = this.demoNotifications;\r\n const response = this.createResponse(this.demoNotifications, 200);\r\n\r\n return of(response.body);\r\n }\r\n\r\n\r\n\r\n getUnreadNotificationsEndpoint(userId?: string): Observable {\r\n\r\n const unreadNotifications = this.demoNotifications.filter(val => !val.isRead);\r\n const response = this.createResponse(unreadNotifications, 200);\r\n\r\n return of(response.body);\r\n }\r\n\r\n\r\n\r\n getNewNotificationsEndpoint(lastNotificationDate?: Date): Observable {\r\n\r\n const unreadNotifications = this.demoNotifications;\r\n const response = this.createResponse(unreadNotifications, 200);\r\n\r\n return of(response.body);\r\n }\r\n\r\n\r\n\r\n getPinUnpinNotificationEndpoint(notificationId: number, isPinned?: boolean, ): Observable {\r\n\r\n const notification = this.demoNotifications.find(val => val.id == notificationId);\r\n let response: HttpResponse;\r\n\r\n if (notification) {\r\n response = this.createResponse(null, 204);\r\n\r\n if (isPinned == null) {\r\n isPinned = !notification.isPinned;\r\n }\r\n\r\n notification.isPinned = isPinned;\r\n notification.isRead = true;\r\n } else {\r\n response = this.createResponse(null, 404);\r\n }\r\n\r\n\r\n return of(response.body);\r\n }\r\n\r\n\r\n\r\n getReadUnreadNotificationEndpoint(notificationIds: number[], isRead: boolean, ): Observable {\r\n\r\n for (const notificationId of notificationIds) {\r\n\r\n const notification = this.demoNotifications.find(val => val.id == notificationId);\r\n\r\n if (notification) {\r\n notification.isRead = isRead;\r\n }\r\n }\r\n\r\n const response = this.createResponse(null, 204);\r\n return of(response.body);\r\n }\r\n\r\n\r\n\r\n getDeleteNotificationEndpoint(notificationId: number): Observable {\r\n\r\n const notification = this.demoNotifications.find(val => val.id == notificationId);\r\n let response: HttpResponse;\r\n\r\n if (notification) {\r\n this.demoNotifications = this.demoNotifications.filter(val => val.id != notificationId);\r\n response = this.createResponse(notification, 200);\r\n } else {\r\n response = this.createResponse(null, 404);\r\n }\r\n\r\n return of(response.body);\r\n }\r\n\r\n\r\n\r\n private createResponse(body, status: number) {\r\n return new HttpResponse({ body, status });\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, interval } from 'rxjs';\r\nimport { map, flatMap, startWith } from 'rxjs/operators';\r\n\r\nimport { AuthService } from './auth.service';\r\nimport { NotificationEndpoint } from './notification-endpoint.service';\r\nimport { Notification } from '../models/notification.model';\r\n\r\n@Injectable()\r\nexport class NotificationService {\r\n\r\n private lastNotificationDate: Date;\r\n private _recentNotifications: Notification[];\r\n\r\n get currentUser() {\r\n return this.authService.currentUser;\r\n }\r\n\r\n get recentNotifications() {\r\n return this._recentNotifications;\r\n }\r\n\r\n set recentNotifications(notifications: Notification[]) {\r\n this._recentNotifications = notifications;\r\n }\r\n\r\n\r\n\r\n constructor(private notificationEndpoint: NotificationEndpoint, private authService: AuthService) {\r\n\r\n }\r\n\r\n\r\n getNotification(notificationId?: number) {\r\n\r\n return this.notificationEndpoint.getNotificationEndpoint(notificationId).pipe(\r\n map(response => Notification.Create(response)));\r\n }\r\n\r\n\r\n getNotifications(page: number, pageSize: number) {\r\n\r\n return this.notificationEndpoint.getNotificationsEndpoint(page, pageSize).pipe(\r\n map(response => {\r\n return this.getNotificationsFromResponse(response);\r\n }));\r\n }\r\n\r\n\r\n getUnreadNotifications(userId?: string) {\r\n\r\n return this.notificationEndpoint.getUnreadNotificationsEndpoint(userId).pipe(\r\n map(response => this.getNotificationsFromResponse(response)));\r\n }\r\n\r\n\r\n getNewNotifications() {\r\n return this.notificationEndpoint.getNewNotificationsEndpoint(this.lastNotificationDate).pipe(\r\n map(response => this.processNewNotificationsFromResponse(response)));\r\n }\r\n\r\n\r\n getNewNotificationsPeriodically() {\r\n return interval(10000).pipe(\r\n startWith(0),\r\n flatMap(() => {\r\n return this.notificationEndpoint.getNewNotificationsEndpoint(this.lastNotificationDate).pipe(\r\n map(response => this.processNewNotificationsFromResponse(response)));\r\n }));\r\n }\r\n\r\n\r\n\r\n\r\n pinUnpinNotification(notificationOrNotificationId: number | Notification, isPinned?: boolean): Observable {\r\n\r\n if (typeof notificationOrNotificationId === 'number' || notificationOrNotificationId instanceof Number) {\r\n return this.notificationEndpoint.getPinUnpinNotificationEndpoint(notificationOrNotificationId as number, isPinned);\r\n } else {\r\n return this.pinUnpinNotification(notificationOrNotificationId.id);\r\n }\r\n }\r\n\r\n\r\n readUnreadNotification(notificationIds: number[], isRead: boolean): Observable {\r\n\r\n return this.notificationEndpoint.getReadUnreadNotificationEndpoint(notificationIds, isRead);\r\n }\r\n\r\n\r\n\r\n\r\n deleteNotification(notificationOrNotificationId: number | Notification): Observable {\r\n\r\n if (typeof notificationOrNotificationId === 'number' || notificationOrNotificationId instanceof Number) { // Todo: Test me if its check is valid\r\n return this.notificationEndpoint.getDeleteNotificationEndpoint(notificationOrNotificationId as number).pipe(\r\n map(response => {\r\n this.recentNotifications = this.recentNotifications.filter(n => n.id != notificationOrNotificationId);\r\n return Notification.Create(response);\r\n }));\r\n } else {\r\n return this.deleteNotification(notificationOrNotificationId.id);\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n private processNewNotificationsFromResponse(response) {\r\n const notifications = this.getNotificationsFromResponse(response);\r\n\r\n for (const n of notifications) {\r\n if (n.date > this.lastNotificationDate) {\r\n this.lastNotificationDate = n.date;\r\n }\r\n }\r\n\r\n return notifications;\r\n }\r\n\r\n\r\n private getNotificationsFromResponse(response) {\r\n const notifications: Notification[] = [];\r\n\r\n for (const i in response) {\r\n notifications[i] = Notification.Create(response[i]);\r\n }\r\n\r\n notifications.sort((a, b) => b.date.valueOf() - a.date.valueOf());\r\n notifications.sort((a, b) => (a.isPinned === b.isPinned) ? 0 : a.isPinned ? -1 : 1);\r\n\r\n this.recentNotifications = notifications;\r\n\r\n return notifications;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AuthService } from './auth.service';\r\nimport { TallyendpointService } from './tallyendpoint.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TallyService {\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private tallyEndpoint: TallyendpointService) {\r\n }\r\n PostTallyVoucher(Data: any) {\r\n return this.tallyEndpoint.PostTallyVoucher(Data);\r\n }\r\n GetTallyLedger() {\r\n return this.tallyEndpoint.GetTallyLedger();\r\n }\r\n GetTallyCostCenter() {\r\n return this.tallyEndpoint.GetTallyCostCenter();\r\n }\r\n GetTallyVoucherType() {\r\n return this.tallyEndpoint.GetTallyVoucherType();\r\n }\r\n PostTallyLedgerReport(Data: any) {\r\n return this.tallyEndpoint.PostTallyLedgerReport(Data);\r\n\r\n }\r\n PostDeleteVoucher(vno: string, vdate: string, vtype: string,vid:string) {\r\n return this.tallyEndpoint.PostDeleteTallyVoucher(vno, vdate, vtype,vid);\r\n }\r\n PostPaytmToken(data: any) {\r\n return this.tallyEndpoint.PostPaytmToken(data);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { AuthService } from './auth.service';\r\nimport { ConfigurationService } from './configuration.service';\r\nimport { EndpointBase } from './endpoint-base.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TallyendpointService extends EndpointBase {\r\n\r\n constructor(private configurations: ConfigurationService, http: HttpClient, authService: AuthService) {\r\n super(http, authService);\r\n }\r\n private readonly _tallyledger: string = '/api/tally/gettallyledger';\r\n private readonly _tallyvouchertype: string = '/api/tally/gettallyvouchertype';\r\n private readonly _tallycostcenter: string = '/api/tally/gettallycostcenter';\r\n private readonly _tallyvoucher: string = '/api/tally/posttallyvoucher';\r\n private readonly _tallyledgerReport: string = '/api/tally/gettallyledgerreport';\r\n\r\n\r\n get TallyLedger() { return this.configurations.baseUrl + this._tallyledger }\r\n get TallyVoucherType() { return this.configurations.baseUrl + this._tallyvouchertype }\r\n get TallyCostCenter() {return this.configurations.baseUrl+this._tallycostcenter }\r\n get TallyVoucher() { return this.configurations.baseUrl + this._tallyvoucher }\r\n get TallyLedgerReport() { return this.configurations.baseUrl + this._tallyledgerReport }\r\n\r\n\r\n GetTallyLedger(): Observable {\r\n const endpointUrl = this.TallyLedger\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetTallyLedger())\r\n }));\r\n }\r\n GetTallyVoucherType(): Observable {\r\n const endpointUrl = this.TallyVoucherType\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetTallyVoucherType())\r\n }));\r\n }\r\n GetTallyCostCenter(): Observable {\r\n const endpointUrl = this.TallyCostCenter\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetTallyCostCenter())\r\n }));\r\n }\r\n PostTallyVoucher(Data:any): Observable {\r\n const endpointUrl = this.TallyVoucher\r\n return this.http.post(endpointUrl, JSON.stringify(Data).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostTallyVoucher(Data))\r\n }));\r\n }\r\n PostTallyLedgerReport(Data: any): Observable {\r\n const endpointUrl = this.TallyLedgerReport\r\n return this.http.post(endpointUrl, JSON.stringify(Data).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostTallyLedgerReport(Data))\r\n }));\r\n }\r\n private readonly _deletevoucher: string = '/api/tally/deletetallyvoucher';\r\n get DeleteVoucher() { return this.configurations.baseUrl + this._deletevoucher }\r\n PostDeleteTallyVoucher(vno: string,vdate:string,vtype:string,vid:string): Observable {\r\n const endpointUrl = this.DeleteVoucher + '?voucherno=' + vno + '&voucherDate=' + vdate + '&vouchertype=' + vtype + '&masterid=' + vid\r\n var person = {\r\n firstname: \"Voucher\",\r\n lastname: \"Delete\"\r\n }; \r\n return this.http.post(endpointUrl, JSON.stringify(person).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostDeleteTallyVoucher(vno,vdate,vtype,vid))\r\n }));\r\n }\r\n private readonly _paytmtoken: string = '/api/tally/paytmtxntoken';\r\n get PaytmToken() { return this.configurations.baseUrl + this._paytmtoken }\r\n PostPaytmToken(data:any): Observable {\r\n const endpointUrl = this.PaytmToken;\r\n \r\n return this.http.post(endpointUrl, JSON.stringify(data).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostPaytmToken(data))\r\n }));\r\n }\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { AppTheme } from '../models/app-theme.model';\r\n\r\n@Injectable()\r\nexport class ThemeManager {\r\n themes: Array = [\r\n {\r\n id: 1,\r\n name: 'Default',\r\n href: 'bootstrap.css',\r\n isDefault: true,\r\n background: '#007bff',\r\n color: '#fff'\r\n },\r\n {\r\n id: 2,\r\n name: 'Cosmo',\r\n href: 'cosmo.css',\r\n background: '#2780E3',\r\n color: '#373a3c'\r\n },\r\n {\r\n id: 3,\r\n name: 'Lumen',\r\n href: 'lumen.css',\r\n background: '#158CBA',\r\n color: '#f0f0f0'\r\n },\r\n {\r\n id: 4,\r\n name: 'Cerulean',\r\n href: 'cerulean.css',\r\n background: '#2FA4E7',\r\n color: '#e9ecef'\r\n },\r\n {\r\n id: 5,\r\n name: 'Minty',\r\n href: 'minty.css',\r\n background: '#78C2AD',\r\n color: '#F3969A'\r\n },\r\n {\r\n id: 6,\r\n name: 'Sketchy',\r\n href: 'sketchy.css',\r\n background: '#333',\r\n color: 'white'\r\n },\r\n {\r\n id: 7,\r\n name: 'Slate',\r\n href: 'slate.css',\r\n background: '#3A3F44',\r\n color: '#7A8288',\r\n isDark: true\r\n },\r\n {\r\n id: 8,\r\n name: 'Flatly',\r\n href: 'flatly.css',\r\n background: '#2C3E50',\r\n color: '#18BC9C'\r\n },\r\n {\r\n id: 9,\r\n name: 'Pulse',\r\n href: 'pulse.css',\r\n background: '#593196',\r\n color: '#A991D4'\r\n },\r\n {\r\n id: 10,\r\n name: 'Spacelab',\r\n href: 'spacelab.css',\r\n background: '#446E9B',\r\n color: '#999'\r\n },\r\n {\r\n id: 11,\r\n name: 'United',\r\n href: 'united.css',\r\n background: '#E95420',\r\n color: '#fff'\r\n },\r\n {\r\n id: 12,\r\n name: 'Journal',\r\n href: 'journal.css',\r\n background: '#EB6864',\r\n color: '#aaa'\r\n },\r\n {\r\n id: 13,\r\n name: 'Superhero',\r\n href: 'superhero.css',\r\n background: '#DF691A',\r\n color: '#2B3E50',\r\n isDark: true\r\n },\r\n {\r\n id: 14,\r\n name: 'Solar',\r\n href: 'solar.css',\r\n background: '#B58900',\r\n color: '#002B36',\r\n isDark: true\r\n }\r\n ];\r\n\r\n public installTheme(theme?: AppTheme) {\r\n if (theme == null || theme.isDefault) {\r\n this.removeStyle('theme');\r\n } else {\r\n this.setStyle('theme', `assets/themes/${theme.href}`);\r\n }\r\n }\r\n\r\n public getDefaultTheme(): AppTheme {\r\n return this.themes.find(theme => theme.isDefault);\r\n }\r\n\r\n public getThemeByID(id: number): AppTheme {\r\n return this.themes.find(theme => theme.id === id);\r\n }\r\n\r\n private setStyle(key: string, href: string) {\r\n this.getLinkElementForKey(key).setAttribute('href', href);\r\n }\r\n\r\n private removeStyle(key: string) {\r\n const existingLinkElement = this.getExistingLinkElementByKey(key);\r\n if (existingLinkElement) {\r\n document.head.removeChild(existingLinkElement);\r\n }\r\n }\r\n\r\n private getLinkElementForKey(key: string) {\r\n return this.getExistingLinkElementByKey(key) || this.createLinkElementWithKey(key);\r\n }\r\n\r\n private getExistingLinkElementByKey(key: string) {\r\n return document.head.querySelector(`link[rel=\"stylesheet\"].${this.getClassNameForKey(key)}`);\r\n }\r\n\r\n private createLinkElementWithKey(key: string) {\r\n const linkEl = document.createElement('link');\r\n linkEl.setAttribute('rel', 'stylesheet');\r\n linkEl.classList.add(this.getClassNameForKey(key));\r\n document.head.appendChild(linkEl);\r\n return linkEl;\r\n }\r\n\r\n private getClassNameForKey(key: string) {\r\n return `style-manager-${key}`;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject, forkJoin } from 'rxjs';\r\nimport { map, mergeMap, tap } from 'rxjs/operators';\r\nimport { Bookmail, TransactionendpointService } from './transactionendpoint.service';\r\nimport { AuthService } from './auth.service';\r\nimport { StateMaster } from '../models/statemaster.model';\r\nimport { Citymaster } from '../models/citymaster.model';\r\nimport { Pincodemaster } from '../models/pincodemaster.model';\r\nimport { officemasterComponent } from '../components/officemaster/officemaster.component';\r\nimport { Officemaster } from '../models/officemaster.model';\r\nimport { ProductMaster } from '../models/productmaster.model';\r\nimport { AwbseriesMaster } from '../components/awbseriesmaster/awbseriesmaster.component';\r\nimport { ItemMaster } from '../components/itemmaster/itemmaster.component';\r\nimport { VendorMaster } from '../components/vendermaster/vendermaster.component';\r\nimport { BADAMaster } from '../components/badamaster/badamaster.component';\r\nimport { BookingCommision } from '../components/bookingcommision/bookingcommision.component';\r\nimport { Address } from '../components/controls/addressmaster.component';\r\nimport { AwbConnection } from '../components/inscan/inscan.component';\r\n\r\nexport type MasterChangeoperation = 'add' | 'delete' | 'modify';\r\nexport interface MasterChangedEventArg { roles: StateMaster[] | string[]; operation: MasterChangeoperation; }\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TransactionService {\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private transactionendpoint: TransactionendpointService) {\r\n }\r\n postTransaction(Process?: string,dataobj?:any) {\r\n\r\n return this.transactionendpoint.PostTransactionEndpoint(Process,dataobj);\r\n }\r\n postGenawbno(producttype: string, productname: string, officeid: string, customecode: string) {\r\n return this.transactionendpoint.PostGenawbEndpoint(producttype, productname, officeid, customecode);\r\n }\r\n getorgcity(bookoffice: string) {\r\n return this.transactionendpoint.GetorgcityEndpoint(bookoffice);\r\n }\r\n getconsaddress(mobilenumber: string) {\r\n return this.transactionendpoint.GetConsAddressEndpoint(mobilenumber);\r\n }\r\n getconraddress(mobilenumber: string) {\r\n return this.transactionendpoint.GetConrAddressEndpoint(mobilenumber);\r\n }\r\n getAwbbookingDetail(awbno: string) {\r\n return this.transactionendpoint.GetAwbBookingEndPoint(awbno);\r\n }\r\n POSTawbscan(processname: string,awbdata:any) {\r\n return this.transactionendpoint.GetAwbScanEndPoint(processname,awbdata);\r\n }\r\n POSTawbinoutscan(processname: string, awbdata: any) {\r\n return this.transactionendpoint.GetAwbinoutscanprocess(processname, awbdata);\r\n }\r\n GetInoutForAwb(officename: string, Awbno: string, Process: string) {\r\n return this.transactionendpoint.GetInoutForAwbEndpoint(officename, Awbno, Process)\r\n }\r\n Getgendrs(drsno: string) {\r\n return this.transactionendpoint.GetAwbDRS(drsno);\r\n }\r\n Getgendrsweb(drsno: string) {\r\n return this.transactionendpoint.GetAwbDRSweb(drsno);\r\n }\r\n PostPodProcess(process: string, awbdata: any) {\r\n return this.transactionendpoint.PostPodProcess(process, awbdata);\r\n }\r\n GetTariff(BookingOffice: string, awbValue: string, Product: string, awbmode: string,\r\n booktype: string, Weight: string, pincode: string, fovrisk: string) {\r\n return this.transactionendpoint.GetTariff(BookingOffice, awbValue, Product, awbmode, booktype, Weight, pincode, fovrisk);\r\n\r\n }\r\n GetAwbBookingDetail(awbno?: string, FromDate?: string, ToDate?: string) {\r\n return this.transactionendpoint.GetAwbBookingDetail(awbno, FromDate, ToDate)\r\n }\r\n Getmanifestprint(manifestno: string) {\r\n return this.transactionendpoint.GetManifestPrint(manifestno);\r\n }\r\n GetManiFestList(manifestno:string,fromdate?:string,Todate?:string) {\r\n return this.transactionendpoint.GetmanifestList(manifestno, fromdate, Todate);\r\n }\r\n GetMpsList(awbno: string) {\r\n return this.transactionendpoint.GetMPStList(awbno);\r\n }\r\n /*Start Sandeep*/\r\n Getdashboardlist(office: string) {\r\n\r\n return this.transactionendpoint.GetdaShboardlist(office);\r\n }\r\n Getdashboarddetails(office: string, Isflag: string) {\r\n\r\n return this.transactionendpoint.Getdashboarddetails(office, Isflag);\r\n }\r\n //Sandeep Chauhan 01-01-2021\r\n GetOnlinepaytmdetails(office: string) {\r\n return this.transactionendpoint.GetOnlinepaytmdetails(office);\r\n }\r\n GetOnlinepaytmCustomerdetails(OrderNo: string) {\r\n return this.transactionendpoint.GetOnlinepaytmCustomerdetails(OrderNo);\r\n }\r\n GetOnlineItemdetails(OrderNo: string) {\r\n return this.transactionendpoint.GetOnlineItemdetails(OrderNo);\r\n }\r\n Getdivineblessings(office: string, Isflag: string) {\r\n return this.transactionendpoint.Getdivineblessings(office, Isflag);\r\n }\r\n GetBookingvsScans(Isflag: string,istea:string) {\r\n return this.transactionendpoint.GetBookingvsScans(Isflag,istea);\r\n }\r\n GetBookingvsScanCount(Isflag: string, istea: string) {\r\n return this.transactionendpoint.GetBookingvsScanCount(Isflag, istea);\r\n }\r\n GetAwbmr(Awbno: string) {\r\n return this.transactionendpoint.GetAwbMrData(Awbno);\r\n }\r\n SaveAwbMr(awbno: string, frieghtamount: string, GstAmount: string, ReciveAmount: string, Gstno: string, Paymode: string)\r\n {\r\n return this.transactionendpoint.PostAwbmrData(awbno, frieghtamount, GstAmount, ReciveAmount, Gstno, Paymode);\r\n }\r\n GetDrsno(awbno: string, offiname: string) {\r\n return this.transactionendpoint.GetDRSno(awbno, offiname);\r\n }\r\n PostBookEmail(Data: Bookmail) {\r\n return this.transactionendpoint.PostEmail(Data);\r\n }\r\n PostAwbBagging(BagType: any, BagNo: any, SerialNo: any, baggingtype: any, BagWeight: any, awbdata: any) {\r\n return this.transactionendpoint.POSTAWBBagging(BagType, BagNo, SerialNo, baggingtype, BagWeight, awbdata);\r\n }\r\n getAwbdebagingSummery(awbno: string) {\r\n return this.transactionendpoint.GetdebagingSummeryEndPoint(awbno);\r\n }\r\n getAwbdebagingdetails(awbno: string, bagno: string) {\r\n return this.transactionendpoint.GetdebagingdetailsEndPoint(awbno, bagno);\r\n }\r\n PostAwbDBagging(shortrec: string, awbdata: any) {\r\n return this.transactionendpoint.POSTAWDBagging(shortrec, awbdata);\r\n }\r\n PostLoadMovement(loaddata: any) {\r\n return this.transactionendpoint.PostLoadMovement(loaddata);\r\n }\r\n PostACNUpdate(acndata: any) {\r\n return this.transactionendpoint.PostACNUpdate(acndata);\r\n }\r\n PostBillData(billdata: any) {\r\n return this.transactionendpoint.POstBillData(billdata);\r\n }\r\n GetAcnDetail(gpno: any) {\r\n return this.transactionendpoint.GetAcnDetail(gpno);\r\n }\r\n GetWPImage(imageid: string) {\r\n return this.transactionendpoint.GetWPImage(imageid);\r\n }\r\n PostWpImage(billdata: any) {\r\n return this.transactionendpoint.PostWpData(billdata);\r\n }\r\n PostReverseBooking(Revdata: any) {\r\n return this.transactionendpoint.PostReverseBooking(Revdata);\r\n }\r\n Post_ReverseBooking(action, pickupcharge, remark, requestno) {\r\n return this.transactionendpoint.PostUpdateReverseBooking(action, pickupcharge, remark, requestno);\r\n }\r\n PostWpMessage(Message: string, mobileno: string) {\r\n return this.transactionendpoint.PostSendWpMessage(Message, mobileno);\r\n }\r\n PostSaveDelvBill(Data:any) {\r\n return this.transactionendpoint.PostSaveDelvBill(Data);\r\n }\r\n PostrecalBill(Data: any) {\r\n return this.transactionendpoint.PostRecalBill(Data);\r\n }\r\n PostSavePickupDetail(Data: any) {\r\n return this.transactionendpoint.PostSavePickupDetail(Data);\r\n }\r\n GetYieldReport(fromdt: string, todt: string) {\r\n return this.transactionendpoint.GetYiedReport(fromdt,todt)\r\n }\r\n}\r\n /*End Sandeep*/\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { AuthService } from './auth.service';\r\nimport { EndpointBase } from './endpoint-base.service';\r\nimport { ConfigurationService } from './configuration.service';\r\nimport { param } from 'jquery';\r\nimport { error } from 'console';\r\nimport { AwbConnection } from '../components/inscan/inscan.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TransactionendpointService extends EndpointBase {\r\n\r\n constructor(private configurations: ConfigurationService, private authServicen: AuthService, http: HttpClient, authService: AuthService) {\r\n super(http, authService);\r\n }\r\n private readonly _processUrl: string = '/api/transaction/process/booking';\r\n private readonly _Genawbno: string = '/api/transaction/genawbno';\r\n private readonly _Getorgcity: string = '/api/transaction/getorigincity';\r\n private readonly _GetConsAddress: string = '/api/transaction/getconsaddress';\r\n private readonly _GetConrAddress: string = '/api/transaction/getconraddress';\r\n private readonly _GetAwbbookingDetail: string = '/api/transaction/getawbbookingdata';\r\n private readonly _GetScanprocess: string = '/api/transaction/process/action/scan';\r\n private readonly _GetinoutScanprocess: string = \"/api/transaction/process/action/scan/inout\";\r\n private readonly _CheckInout: string = '/api/transaction/checkinout';\r\n private readonly _gendrs: string = '/api/transaction/getawbdrs';\r\n private readonly _gendrsweb: string = '/api/getwebsite/getawbdrs';\r\n\r\n private readonly _TariffUrl = '/api/transaction/process/action/tariff/calculation';\r\n private readonly _Podurl = \"/api/transaction/process/action/pod\";\r\n private readonly _BookingDetailUrl = \"/api/transaction/process/action/getawbbookingdetail\"; //detailofawb\r\n private readonly _manifestprintrul = \"/api/transaction/printmenifest\"\r\n private readonly _getmanifesturl = \"/api/transaction/process/getmanifest\";\r\n private readonly _getMPSUrl = \"/api/transaction/process/getMPS\"\r\n private readonly _getdivineblessings = '/api/transaction/process/Get_divineblessings';\r\n private readonly _getawbmr = '/api/transaction/process/GetAwbMr';\r\n private readonly _Saveawbmr = '/api/transaction/process/SaveAwbMr';\r\n private readonly _Getdrsno = '/api/transaction/process/getdrsnumber';\r\n private readonly _loadMovemnt = '/api/transaction/process/action/loadmovent';\r\n private readonly _updateacn = '/api/transaction/process/action/updateacn';\r\n private readonly _updatepod = '/api/transaction/process/action/getwpimage';\r\n private readonly _insertPickup = '/api/transaction/process/action/savePickupdetail';\r\n \r\n //Sandeep Chauhan 08-01-2022\r\n\r\n //Sandeep Chauhan 08-01-2021 \r\n \r\n /*Start Sandeep*/\r\n private readonly _getdashboard = '/api/transaction/process/getDashboardCount';\r\n private readonly _getDashboarddetails = '/api/transaction/process/getDashboarddetails';\r\n //Sandeep Chauhan 01-01-2022\r\n private readonly _getOnlinepaytmdetails = '/api/transaction/process/GetOnlinepaytmdetails';\r\n private readonly _getOnlinepaytmCustomerdetails = '/api/transaction/process/GetOnlinepaytmCustomerdetails';\r\n private readonly _getOnlineItemdetails = '/api/transaction/process/GetOnlineItemdetails';\r\n private readonly _getBookingvsScans = '/api/transaction/process/Usp_getBookingvsScan';\r\n private readonly _getBookingvsScanCount = '/api/transaction/process/Usp_getBookingvsScanCount';\r\n private readonly _postbookmail = '/api/transaction/process/PostBookingEmail';\r\n private readonly _postreverse = '/api/transaction/process/action/savereversepickup';\r\n\r\n \r\n /*end Sandeep*/\r\n get postbookmail() { return this.configurations.baseUrl + this._postbookmail}\r\n get processUrl() { return this.configurations.baseUrl + this._processUrl };\r\n get Orgcityurl() { return this.configurations.baseUrl + this._Getorgcity };\r\n get Genawburl() { return this.configurations.baseUrl + this._Genawbno };\r\n get GetConsAddUrl() { return this.configurations.baseUrl + this._GetConsAddress };\r\n get GetConrAddUrl() { return this.configurations.baseUrl + this._GetConrAddress };\r\n get GetAwbbookingDetailUrl() { return this.configurations.baseUrl + this._GetAwbbookingDetail };\r\n get GetScanProcesslUrl() { return this.configurations.baseUrl + this._GetScanprocess };\r\n get GetinouScanProcesslUrl() { return this.configurations.baseUrl + this._GetinoutScanprocess };\r\n get GetinoutForawb() { return this.configurations.baseUrl + this._CheckInout };\r\n get Getgendrsurl() { return this.configurations.baseUrl + this._gendrs };\r\n get Getgendrsurlweb() { return this.configurations.baseUrl + this._gendrsweb };\r\n\r\n get GetTariffUrl() { return this.configurations.baseUrl + this._TariffUrl };\r\n get GetPodUrl() { return this.configurations.baseUrl + this._Podurl };\r\n get Get_awbbookingDetailurl() { return this.configurations.baseUrl + this._BookingDetailUrl };\r\n get GetManifestprinturl() { return this.configurations.baseUrl + this._manifestprintrul };\r\n get GetManifestListUrl() { return this.configurations.baseUrl + this._getmanifesturl };\r\n get GetMPSListUrl() { return this.configurations.baseUrl + this._getMPSUrl };\r\n get GetDrsnumberUrl() { return this.configurations.baseUrl + this._Getdrsno };\r\n get _Getdivineblessings() { return this.configurations.baseUrl + this._getdivineblessings };\r\n get GetLoadMovementUrl() { return this.configurations.baseUrl + this._loadMovemnt };\r\n\r\n\r\n /*Start Sandeep*/\r\n get GetdashboardUrl() { return this.configurations.baseUrl + this._getdashboard }\r\n get GetdashboarddetailsUrl() { return this.configurations.baseUrl + this._getDashboarddetails }\r\n //Sandeep Chauhan 01-01-2022 \r\n get _GetOnlinepaytmdetailsUrl() { return this.configurations.baseUrl + this._getOnlinepaytmdetails }\r\n get _GetOnlinepaytmCustomerdetailsUrl() { return this.configurations.baseUrl + this._getOnlinepaytmCustomerdetails }\r\n get _GetOnlineItemdetails() { return this.configurations.baseUrl + this._getOnlineItemdetails }\r\n get _GetBookingvsScans() { return this.configurations.baseUrl + this._getBookingvsScans }\r\n get _GetBookingvsScanCount() { return this.configurations.baseUrl + this._getBookingvsScanCount }\r\n get _GetAwbMr() { return this.configurations.baseUrl + this._getawbmr };\r\n get _SaveAwbMr() { return this.configurations.baseUrl + this._Saveawbmr };\r\n get UpdateAcnUrl() { return this.configurations.baseUrl + this._updateacn };\r\n get UpdatePODUrl() { return this.configurations.baseUrl + this._updatepod };\r\n get RevereseBook() { return this.configurations.baseUrl + this._postreverse };\r\n get SavePickupdetail() { return this.configurations.baseUrl + this._insertPickup };\r\n\r\n\r\n /*end Sandeep*/\r\n\r\n\r\n PostTransactionEndpoint(processname?:string,dataobj?:any): Observable {\r\n const endpointUrl = this.processUrl\r\n return this.http.post(endpointUrl, JSON.stringify(dataobj).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostTransactionEndpoint(processname, dataobj));\r\n }));\r\n }\r\n PostGenawbEndpoint(producttype: string, productname: string, officeid: string, customecode: string): Observable {\r\n const endpointUrl = this.Genawburl;\r\n var reqbody = new tmpclass();\r\n reqbody.customecode = customecode;\r\n reqbody.officeid = officeid;\r\n reqbody.productname = productname;\r\n reqbody.producttype = producttype;\r\n return this.http.post(endpointUrl,JSON.stringify(reqbody), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostGenawbEndpoint(producttype, productname, officeid, customecode));\r\n }));\r\n }\r\n GetInoutForAwbEndpoint(officename:string,Awbno:string,Process: string): Observable {\r\n const endpointUrl = this.GetinoutForawb + \"?bookoffice=\" + btoa(officename) + \"&awbno=\" + Awbno + \"&Process=\"+Process\r\n return this.http.get(endpointUrl, this.TRrequestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetInoutForAwbEndpoint(officename, Awbno, Process))\r\n }));\r\n }\r\n\r\n GetorgcityEndpoint(bookoffice: string): Observable {\r\n const endpointUrl = `${this.Orgcityurl}/${bookoffice}`;\r\n return this.http.get(endpointUrl, this.TRrequestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetorgcityEndpoint(bookoffice))\r\n }));\r\n\r\n }\r\n GetConsAddressEndpoint(mobileno:string): Observable {\r\n const endpointUrl = `${this.GetConsAddUrl}/${mobileno}`;\r\n return this.http.get(endpointUrl, this.TRrequestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetConsAddressEndpoint(mobileno))\r\n }));\r\n\r\n }\r\n GetConrAddressEndpoint(mobileno: string): Observable {\r\n const endpointUrl = `${this.GetConrAddUrl}/${mobileno}`;\r\n return this.http.get(endpointUrl, this.TRrequestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetConrAddressEndpoint(mobileno))\r\n }));\r\n }\r\n GetAwbBookingEndPoint(awbno: string): Observable {\r\n const endpointUrl = `${this.GetAwbbookingDetailUrl}/${awbno}`;\r\n return this.http.get(endpointUrl, this.TRrequestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAwbBookingEndPoint(awbno))\r\n }));\r\n }\r\n GetAwbScanEndPoint(processname: string,awbdata:any): Observable {\r\n const endpointUrl = this.GetScanProcesslUrl;\r\n return this.http.post(endpointUrl,JSON.stringify(awbdata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAwbScanEndPoint(processname,awbdata))\r\n }));\r\n }\r\n GetAwbinoutscanprocess(processname: string, awbdata: any): Observable {\r\n const endpointUrl = `${this.GetinouScanProcesslUrl}/${processname}`;\r\n return this.http.post(endpointUrl, JSON.stringify(awbdata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAwbinoutscanprocess(processname, awbdata))\r\n }));\r\n }\r\n GetAcnDetail(gpno:any): Observable {\r\n const endpointUrl = `${this.configurations.baseUrl}/api/transaction/process/action/geteditacn/${gpno}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAcnDetail(gpno))\r\n }));\r\n }\r\n ;\r\n PostPodProcess(processname: string, awbdata: any): Observable {\r\n const endpointUrl = `${this.GetPodUrl}/${processname}`;\r\n return this.http.post(endpointUrl, JSON.stringify(awbdata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostPodProcess(processname, awbdata))\r\n }));\r\n }\r\n GetAwbDRS(drsno: string): Observable {\r\n const endpointUrl = `${this.Getgendrsurl}/${drsno}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAwbDRS(drsno))\r\n }));\r\n }\r\n GetAwbDRSweb(drsno: string): Observable {\r\n const endpointUrl = `${this.Getgendrsurlweb}/${drsno}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAwbDRSweb(drsno))\r\n }));\r\n }\r\n GetTariff(BookingOffice: string, awbValue: string, Product: string, awbmode: string,\r\n booktype:string, Weight:string, pincode:string, fovrisk:string): Observable {\r\n const endpointUrl = this.GetTariffUrl + \"?BookingOffice=\" + btoa(BookingOffice) + \"&awbValue=\" + awbValue +\r\n \"&Product=\" + Product + \"&awbmode=\" + awbmode + \"&booktype=\" + booktype + \"&Weight=\" + Weight + \"&pincode=\" +pincode.substring(0,6)+\"&fovrisk=\" + fovrisk\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetTariff(BookingOffice, awbValue, Product, awbmode,booktype,Weight, pincode, fovrisk))\r\n }));\r\n }\r\n GetAwbBookingDetail(awbno?: string, FromDate?:String, ToDate?: string): Observable {\r\n const endpointUrl = this.Get_awbbookingDetailurl + \"?awbno=\" + awbno + \"&fromdate=\" + FromDate +\r\n \"&Todate=\" + ToDate \r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAwbBookingDetail(awbno, FromDate, ToDate))\r\n }));\r\n }\r\n GetManifestPrint(manifestno: string): Observable {\r\n const endpointUrl = `${this.GetManifestprinturl}/${manifestno}`;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetManifestPrint(manifestno))\r\n }));\r\n \r\n }\r\n GetmanifestList(manifestno: string, fromdate?: string, Todate?: string): Observable {\r\n const endpointUrl = this.GetManifestListUrl + \"?manifestno=\" + manifestno + \"&fromdate=\" + fromdate +\r\n \"&Todate=\" + Todate ;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetmanifestList(manifestno, fromdate, Todate ))\r\n }));\r\n\r\n }\r\n GetMPStList(awbno:string): Observable {\r\n const endpointUrl = this.GetMPSListUrl + \"?awbno=\" + awbno;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetMPStList(awbno))\r\n }));\r\n\r\n }\r\n/* start Sandeep*/\r\n GetdaShboardlist(office: string): Observable {\r\n const endpointUrl = this.GetdashboardUrl + \"?office=\" + office;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetdaShboardlist(office))\r\n }));\r\n\r\n }\r\n Getdashboarddetails(office: string, Isflag: string): Observable {\r\n const endpointUrl = this.GetdashboarddetailsUrl + \"?office=\" + office + \"&Isflag=\" + Isflag;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.Getdashboarddetails(office, Isflag))\r\n }));\r\n\r\n }\r\n //Sandeep Chauhan 01-01-2021\r\n GetOnlinepaytmdetails(office: string): Observable {\r\n const endpointUrl = this._GetOnlinepaytmdetailsUrl + \"?office=\" + office;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetOnlinepaytmdetails(office))\r\n }));\r\n }\r\n GetOnlinepaytmCustomerdetails(OrderNo: string): Observable {\r\n const endpointUrl = this._GetOnlinepaytmCustomerdetailsUrl + \"?OrderNo=\" + OrderNo;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetOnlinepaytmCustomerdetails(OrderNo))\r\n }));\r\n }\r\n GetOnlineItemdetails(OrderNo: string): Observable {\r\n const endpointUrl = this._GetOnlineItemdetails + \"?OrderNo=\" + OrderNo;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetOnlineItemdetails(OrderNo))\r\n }));\r\n }\r\n Getdivineblessings(office: string, Isflag: string): Observable {\r\n const endpointUrl = this._Getdivineblessings + \"?office=\" + office + \"&Isflag=\" + Isflag;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.Getdivineblessings(office, Isflag))\r\n }));\r\n }\r\n GetBookingvsScans(Isflag: string,teabook:string): Observable {\r\n const endpointUrl = this._GetBookingvsScans + \"?Isflag=\" + Isflag + \"&isteabook=\" + teabook;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetBookingvsScans(Isflag,teabook))\r\n }));\r\n }\r\n\r\n GetBookingvsScanCount(Isflag: string, teabook: string): Observable {\r\n const endpointUrl = this._GetBookingvsScanCount + \"?Isflag=\" + Isflag+ \"&isteabook=\" + teabook;;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetBookingvsScanCount(Isflag, teabook))\r\n }));\r\n }\r\n GetAwbMrData(Awbno: string): Observable {\r\n const endpointUrl = this._GetAwbMr + \"?awbno=\" + Awbno;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetAwbMrData(Awbno))\r\n }));\r\n }\r\n PostAwbmrData(awbno: string, frieghtamount: string, GstAmount: string, ReciveAmount: string, Gstno: string, Paymode: string): Observable {\r\n const endpointUrl = this._SaveAwbMr + \"?awbno=\" + awbno + '&frieghtamount=' + frieghtamount +\r\n '&GstAmount=' + GstAmount + '&ReciveAmount=' + ReciveAmount +\r\n '&Gstno=' + Gstno + '&Paymode=' + Paymode;\r\n return this.http.post(endpointUrl,\"\", this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostAwbmrData(awbno, frieghtamount, GstAmount, ReciveAmount, Gstno, Paymode))\r\n }));\r\n }\r\n GetDRSno(Awbno: string,officename:string): Observable {\r\n const endpointUrl = this.GetDrsnumberUrl + \"?awbno=\" + Awbno + \"&Officename=\" + officename;\r\n return this.http.get(endpointUrl, this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetDRSno(Awbno, officename))\r\n }));\r\n }\r\n PostEmail(data: Bookmail): Observable {\r\n const endpointUrl = this.postbookmail \r\n return this.http.post(endpointUrl,JSON.stringify(data), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostEmail(data))\r\n }));\r\n }\r\n private readonly _POSTAWBBaggingProcess: string = \"/api/transaction/process/action/scan/Insertbagging\";\r\n private readonly _GetdebagingSummery: string = '/api/transaction/getdebagingSummery';\r\n private readonly _Getdebagingdetails: string = '/api/transaction/getdebagingdetails';\r\n private readonly _POSTAWDBaggingProcess: string = \"/api/transaction/process/action/scan/InsertDbagging\";\r\n private readonly _PostBill: string = \"/api/transaction/process/action/savebill\";\r\n /*end Sandeep*/\r\n\r\n\r\n //28082022 Sandeep \r\n get POSTAWBBaggingProcesslUrl() { return this.configurations.baseUrl + this._POSTAWBBaggingProcess };\r\n get GetdebagingSummeryUrl() { return this.configurations.baseUrl + this._GetdebagingSummery };\r\n get GetdebagingdetailsUrl() { return this.configurations.baseUrl + this._Getdebagingdetails };\r\n get POSTAWDBaggingProcesslUrl() { return this.configurations.baseUrl + this._POSTAWDBaggingProcess };\r\n get PostBillUrl() { return this.configurations.baseUrl + this._PostBill };\r\n /*end Sandeep* \r\n\r\n /*Start Sandeep 27082022*/\r\n POSTAWBBagging(BagType: any, BagNo: any, SerialNo: any, baggingtype: any, BagWeight: any, awbdata: any): Observable {\r\n const endpointUrl = `${this.POSTAWBBaggingProcesslUrl + \"?BagType=\" + BagType + \"&BagNo=\" + BagNo + \"&SerialNo=\" + SerialNo + \"&baggingtype=\" + baggingtype + \"&BagWeight=\" + BagWeight}`;\r\n return this.http.post(endpointUrl, JSON.stringify(awbdata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.POSTAWBBagging(BagType, BagNo, SerialNo, baggingtype, BagWeight, awbdata))\r\n }));\r\n }\r\n GetdebagingSummeryEndPoint(awbno: string): Observable {\r\n const endpointUrl = `${this.GetdebagingSummeryUrl}/${awbno}`;\r\n return this.http.get(endpointUrl, this.TRrequestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetdebagingSummeryEndPoint(awbno))\r\n }));\r\n }\r\n GetdebagingdetailsEndPoint(awbno: string, bagno: string): Observable {\r\n const endpointUrl = `${this.GetdebagingdetailsUrl + \"?awbno=\" + awbno + \"&bagno=\" + bagno}`;\r\n return this.http.get(endpointUrl, this.TRrequestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetdebagingdetailsEndPoint(awbno, bagno))\r\n }));\r\n }\r\n POSTAWDBagging(shortrec: any, awbdata: any): Observable {\r\n const endpointUrl = `${this.POSTAWDBaggingProcesslUrl + \"?shortrec=\" + shortrec}`;\r\n return this.http.post(endpointUrl, JSON.stringify(awbdata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.POSTAWDBagging(shortrec, awbdata))\r\n }));\r\n }\r\n PostLoadMovement(loaddata: any): Observable {\r\n const endpointUrl = this.GetLoadMovementUrl ;\r\n return this.http.post(endpointUrl, JSON.stringify(loaddata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostLoadMovement(loaddata))\r\n }));\r\n }\r\n PostACNUpdate(acndata: any): Observable {\r\n const endpointUrl = this.UpdateAcnUrl;\r\n return this.http.post(endpointUrl, JSON.stringify(acndata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostACNUpdate(acndata))\r\n }));\r\n }\r\n POstBillData(billdata: any): Observable {\r\n const endpointUrl = this.PostBillUrl;\r\n return this.http.post(endpointUrl, JSON.stringify(billdata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.POstBillData(billdata))\r\n }));\r\n }\r\n GetWPImage(imageid: string): Observable {\r\n const endpointUrl = `${this.UpdatePODUrl}/${imageid}`;\r\n return this.http.get(endpointUrl, this.TRrequestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetWPImage(imageid))\r\n }));\r\n }\r\n private readonly _postwpPod = '/api/transaction/process/action/postwppod'\r\n get postwppod() { return this.configurations.baseUrl + this._postwpPod };\r\n PostWpData(billdata: any): Observable {\r\n const endpointUrl = this.postwppod;\r\n return this.http.post(endpointUrl, JSON.stringify(billdata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostWpData(billdata))\r\n }));\r\n }\r\n\r\n PostReverseBooking(revdata: any): Observable {\r\n const endpointUrl = this.RevereseBook;\r\n return this.http.post(endpointUrl, JSON.stringify(revdata).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostReverseBooking(revdata))\r\n }));\r\n }\r\n private readonly _updatereverse = '/api/transaction/process/action/updaterevesepikup'\r\n get updatereverse() { return this.configurations.baseUrl + this._updatereverse };\r\n\r\n PostUpdateReverseBooking(action:string, pickupcharge:string, remark:string, requestno:string): Observable {\r\n const endpointUrl = this.updatereverse + \"?_action=\" + action +\r\n \"&pickupcharge=\" + pickupcharge + \"&remark=\" + remark + \"&requestno=\" + requestno;\r\n var tmpobj = new tmpclass()\r\n tmpobj.customecode = \"\"; \r\n return this.http.post(endpointUrl, JSON.stringify(tmpobj).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostUpdateReverseBooking(action, pickupcharge, remark, requestno))\r\n }));\r\n }\r\n private readonly _sendwpmessage = '/api/transaction/process/action/sendwptextmessage'\r\n get sendwpmessage() { return this.configurations.baseUrl + this._sendwpmessage };\r\n\r\n PostSendWpMessage(Message:string , mobileno: string): Observable {\r\n const endpointUrl = this.sendwpmessage + \"?tMessage=\" + Message +\r\n \"&Mobileno=\" + mobileno;\r\n var tmpobj = new tmpclass()\r\n tmpobj.customecode = \"\";\r\n return this.http.post(endpointUrl, JSON.stringify(tmpobj).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostSendWpMessage(Message, mobileno))\r\n }));\r\n }\r\n private readonly _savedelvbill = '/api/transaction/process/action/savedelvbill'\r\n get savedelvbill() { return this.configurations.baseUrl + this._savedelvbill };\r\n\r\n PostSaveDelvBill(Data:any): Observable {\r\n const endpointUrl = this.savedelvbill;\r\n return this.http.post(endpointUrl, JSON.stringify(Data).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostSaveDelvBill(Data))\r\n }));\r\n }\r\n\r\n private readonly _recalbill = '/api/transaction/process/action/recalbill'\r\n get recalBill() { return this.configurations.baseUrl + this._recalbill };\r\n\r\n PostRecalBill(Data: any): Observable {\r\n const endpointUrl = this.recalBill;\r\n return this.http.post(endpointUrl, JSON.stringify(Data).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostSaveDelvBill(Data))\r\n }));\r\n }\r\n PostSavePickupDetail(Data: any): Observable {\r\n const endpointUrl = this.SavePickupdetail;\r\n return this.http.post(endpointUrl, JSON.stringify(Data).toString(), this.requestHeaders).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.PostSavePickupDetail(Data))\r\n }));\r\n }\r\n private readonly _yieldreport = '/api/transaction/process/action/getsalesyield/'\r\n get yieldreport() { return this.configurations.baseUrl + this._yieldreport };\r\n GetYiedReport(fromdt: string, todt: string): Observable {\r\n var headersex = new HttpHeaders({\r\n Authorization: 'Bearer ' + this.authServicen.accessToken,\r\n 'Content-Type': 'application/json',\r\n Accept: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'\r\n });\r\n const endpointUrl = this.yieldreport + fromdt + \"/\" + todt;\r\n return this.http.request(\"GET\", endpointUrl, { body: null, headers: headersex, responseType:'blob' }).pipe(\r\n catchError(error => {\r\n return this.handleError(error, () => this.GetYiedReport(fromdt,todt))\r\n }));\r\n }\r\n\r\n\r\n /*End */\r\n\r\n /* End Sandeep*/\r\n}\r\nexport class tmpclass {\r\n producttype: string\r\n productname: string\r\n officeid: string\r\n customecode:string\r\n}\r\nexport class Bookmail {\r\n customercode: string\r\n message: string\r\n ExcelData: any;\r\n}\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpResponseBase, HttpResponse, HttpErrorResponse } from '@angular/common/http';\r\n\r\n@Injectable()\r\nexport class Utilities {\r\n public static readonly captionAndMessageSeparator = ':';\r\n public static readonly noNetworkMessageCaption = 'No Network';\r\n public static readonly noNetworkMessageDetail = 'The server cannot be reached';\r\n public static readonly accessDeniedMessageCaption = 'Access Denied!';\r\n public static readonly accessDeniedMessageDetail = '';\r\n public static readonly notFoundMessageCaption = 'Not Found';\r\n public static readonly notFoundMessageDetail = 'The target resource cannot be found';\r\n\r\n public static cookies =\r\n {\r\n getItem: (sKey) => {\r\n return decodeURIComponent(document.cookie.replace(new RegExp('(?:(?:^|.*;)\\\\s*' + encodeURIComponent(sKey).replace(/[\\-\\.\\+\\*]/g, '\\\\$&') + '\\\\s*\\\\=\\\\s*([^;]*).*$)|^.*$'), '$1')) || null;\r\n },\r\n setItem: (sKey, sValue, vEnd, sPath, sDomain, bSecure) => {\r\n if (!sKey || /^(?:expires|max\\-age|path|domain|secure)$/i.test(sKey)) {\r\n return false;\r\n }\r\n\r\n let sExpires = '';\r\n\r\n if (vEnd) {\r\n switch (vEnd.constructor) {\r\n case Number:\r\n sExpires = vEnd === Infinity ? '; expires=Fri, 31 Dec 9999 23:59:59 GMT' : '; max-age=' + vEnd;\r\n break;\r\n case String:\r\n sExpires = '; expires=' + vEnd;\r\n break;\r\n case Date:\r\n sExpires = '; expires=' + vEnd.toUTCString();\r\n break;\r\n }\r\n }\r\n\r\n document.cookie = encodeURIComponent(sKey) + '=' + encodeURIComponent(sValue) + sExpires + (sDomain ? '; domain=' + sDomain : '') + (sPath ? '; path=' + sPath : '') + (bSecure ? '; secure' : '');\r\n return true;\r\n },\r\n removeItem: (sKey, sPath, sDomain) => {\r\n if (!sKey) {\r\n return false;\r\n }\r\n document.cookie = encodeURIComponent(sKey) + '=; expires=Thu, 01 Jan 1970 00:00:00 GMT' + (sDomain ? '; domain=' + sDomain : '') + (sPath ? '; path=' + sPath : '');\r\n return true;\r\n },\r\n hasItem: (sKey) => {\r\n return (new RegExp('(?:^|;\\\\s*)' + encodeURIComponent(sKey).replace(/[\\-\\.\\+\\*]/g, '\\\\$&') + '\\\\s*\\\\=')).test(document.cookie);\r\n },\r\n keys: () => {\r\n const aKeys = document.cookie.replace(/((?:^|\\s*;)[^\\=]+)(?=;|$)|^\\s*|\\s*(?:\\=[^;]*)?(?:\\1|$)/g, '').split(/\\s*(?:\\=[^;]*)?;\\s*/);\r\n for (let nIdx = 0; nIdx < aKeys.length; nIdx++) { aKeys[nIdx] = decodeURIComponent(aKeys[nIdx]); }\r\n return aKeys;\r\n }\r\n };\r\n\r\n public static getHttpResponseMessages(data: HttpResponseBase | any): string[] {\r\n const responses: string[] = [];\r\n\r\n if (data instanceof HttpResponseBase) {\r\n if (this.checkNoNetwork(data)) {\r\n responses.push(`${this.noNetworkMessageCaption}${this.captionAndMessageSeparator} ${this.noNetworkMessageDetail}`);\r\n } else {\r\n const responseObject = this.getResponseBody(data);\r\n\r\n if (responseObject && (typeof responseObject === 'object' || responseObject instanceof Object)) {\r\n\r\n for (const key in responseObject) {\r\n if (key) {\r\n responses.push(`${key}${this.captionAndMessageSeparator} ${responseObject[key]}`);\r\n } else if (responseObject[key]) {\r\n responses.push(responseObject[key].toString());\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (!responses.length) {\r\n if ((data as any).body) {\r\n responses.push(`body: ${(data as any).body}`);\r\n }\r\n\r\n if ((data as any).error) {\r\n responses.push(`error: ${(data as any).error}`);\r\n }\r\n }\r\n }\r\n\r\n if (!responses.length) {\r\n if (this.getResponseBody(data)) {\r\n responses.push(this.getResponseBody(data).toString());\r\n } else {\r\n responses.push(data.toString());\r\n }\r\n }\r\n\r\n if (this.checkAccessDenied(data)) {\r\n responses.splice(0, 0, `${this.accessDeniedMessageCaption}${this.captionAndMessageSeparator} ${this.accessDeniedMessageDetail}`);\r\n }\r\n\r\n if (this.checkNotFound(data)) {\r\n let message = `${this.notFoundMessageCaption}${this.captionAndMessageSeparator} ${this.notFoundMessageDetail}`;\r\n if (data.url) {\r\n message += `. ${data.url}`;\r\n }\r\n\r\n responses.splice(0, 0, message);\r\n }\r\n\r\n return responses;\r\n }\r\n\r\n public static getHttpResponseMessage(data: HttpResponseBase | any): string {\r\n const httpMessage =\r\n Utilities.findHttpResponseMessage(Utilities.noNetworkMessageCaption, data) ||\r\n Utilities.findHttpResponseMessage(Utilities.notFoundMessageCaption, data) ||\r\n Utilities.findHttpResponseMessage('error_description', data) ||\r\n Utilities.findHttpResponseMessage('error', data) ||\r\n Utilities.getHttpResponseMessages(data).join();\r\n\r\n return httpMessage;\r\n }\r\n\r\n public static findHttpResponseMessage(messageToFind: string, data: HttpResponse | any, seachInCaptionOnly = true, includeCaptionInResult = false): string {\r\n const searchString = messageToFind.toLowerCase();\r\n const httpMessages = this.getHttpResponseMessages(data);\r\n\r\n for (const message of httpMessages) {\r\n const fullMessage = Utilities.splitInTwo(message, this.captionAndMessageSeparator);\r\n\r\n if (fullMessage.firstPart && fullMessage.firstPart.toLowerCase().indexOf(searchString) != -1) {\r\n return includeCaptionInResult ? message : fullMessage.secondPart || fullMessage.firstPart;\r\n }\r\n }\r\n\r\n if (!seachInCaptionOnly) {\r\n for (const message of httpMessages) {\r\n\r\n if (message.toLowerCase().indexOf(searchString) != -1) {\r\n if (includeCaptionInResult) {\r\n return message;\r\n } else {\r\n const fullMessage = Utilities.splitInTwo(message, this.captionAndMessageSeparator);\r\n return fullMessage.secondPart || fullMessage.firstPart;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return null;\r\n }\r\n\r\n public static getResponseBody(response: HttpResponseBase) {\r\n if (response instanceof HttpResponse) {\r\n return response.body;\r\n }\r\n\r\n if (response instanceof HttpErrorResponse) {\r\n return response.error || response.message || response.statusText;\r\n }\r\n }\r\n\r\n public static checkNoNetwork(response: HttpResponseBase) {\r\n if (response instanceof HttpResponseBase) {\r\n return response.status == 0;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public static checkAccessDenied(response: HttpResponseBase) {\r\n if (response instanceof HttpResponseBase) {\r\n return response.status == 403;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public static checkNotFound(response: HttpResponseBase) {\r\n if (response instanceof HttpResponseBase) {\r\n return response.status == 404;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public static checkIsLocalHost(url: string, base?: string) {\r\n if (url) {\r\n const location = new URL(url, base);\r\n return location.hostname === 'localhost' || location.hostname === '127.0.0.1';\r\n }\r\n\r\n return false;\r\n }\r\n\r\n public static getQueryParamsFromString(paramString: string) {\r\n\r\n if (!paramString) {\r\n return null;\r\n }\r\n\r\n const params: { [key: string]: string } = {};\r\n\r\n for (const param of paramString.split('&')) {\r\n const keyValue = Utilities.splitInTwo(param, '=');\r\n params[keyValue.firstPart] = keyValue.secondPart;\r\n }\r\n\r\n return params;\r\n }\r\n\r\n public static splitInTwo(text: string, separator: string): { firstPart: string, secondPart: string } {\r\n const separatorIndex = text.indexOf(separator);\r\n\r\n if (separatorIndex == -1) {\r\n return { firstPart: text, secondPart: null };\r\n }\r\n\r\n const part1 = text.substr(0, separatorIndex).trim();\r\n const part2 = text.substr(separatorIndex + 1).trim();\r\n\r\n return { firstPart: part1, secondPart: part2 };\r\n }\r\n\r\n public static safeStringify(object) {\r\n\r\n let result: string;\r\n\r\n try {\r\n result = JSON.stringify(object);\r\n return result;\r\n } catch (error) {\r\n\r\n }\r\n\r\n const simpleObject = {};\r\n\r\n for (const prop in object) {\r\n if (!object.hasOwnProperty(prop)) {\r\n continue;\r\n }\r\n if (typeof (object[prop]) == 'object') {\r\n continue;\r\n }\r\n if (typeof (object[prop]) == 'function') {\r\n continue;\r\n }\r\n simpleObject[prop] = object[prop];\r\n }\r\n\r\n result = '[***Sanitized Object***]: ' + JSON.stringify(simpleObject);\r\n\r\n return result;\r\n }\r\n\r\n public static JsonTryParse(value: string) {\r\n try {\r\n return JSON.parse(value);\r\n } catch (e) {\r\n if (value === 'undefined') {\r\n return void 0;\r\n }\r\n return value;\r\n }\r\n }\r\n\r\n public static TestIsObjectEmpty(obj: any) {\r\n for (const prop in obj) {\r\n if (obj.hasOwnProperty(prop)) {\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n public static TestIsUndefined(value: any) {\r\n return typeof value === 'undefined';\r\n // return value === undefined;\r\n }\r\n\r\n public static TestIsString(value: any) {\r\n return typeof value === 'string' || value instanceof String;\r\n }\r\n\r\n public static capitalizeFirstLetter(text: string) {\r\n if (text) {\r\n return text.charAt(0).toUpperCase() + text.slice(1);\r\n } else {\r\n return text;\r\n }\r\n }\r\n\r\n public static toTitleCase(text: string) {\r\n return text.replace(/\\w\\S*/g, (subString) => {\r\n return subString.charAt(0).toUpperCase() + subString.substr(1).toLowerCase();\r\n });\r\n }\r\n\r\n public static toLowerCase(items: string);\r\n public static toLowerCase(items: string[]);\r\n public static toLowerCase(items: any): string | string[] {\r\n\r\n if (items instanceof Array) {\r\n const loweredRoles: string[] = [];\r\n\r\n for (let i = 0; i < items.length; i++) {\r\n loweredRoles[i] = items[i].toLowerCase();\r\n }\r\n\r\n return loweredRoles;\r\n } else if (typeof items === 'string' || items instanceof String) {\r\n return items.toLowerCase();\r\n }\r\n }\r\n\r\n public static uniqueId() {\r\n return this.randomNumber(1000000, 9000000).toString();\r\n }\r\n\r\n public static randomNumber(min: number, max: number) {\r\n return Math.floor(Math.random() * (max - min + 1) + min);\r\n }\r\n\r\n public static baseUrl() {\r\n let base = '';\r\n\r\n if (window.location.origin) {\r\n base = window.location.origin;\r\n } else {\r\n base = window.location.protocol + '//' + window.location.hostname + (window.location.port ? ':' + window.location.port : '');\r\n }\r\n\r\n return base.replace(/\\/$/, '');\r\n }\r\n\r\n public static printDateOnly(date: Date) {\r\n\r\n date = new Date(date);\r\n\r\n const dayNames = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');\r\n const monthNames = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');\r\n\r\n const dayOfWeek = date.getDay();\r\n const dayOfMonth = date.getDate();\r\n let sup = '';\r\n const month = date.getMonth();\r\n const year = date.getFullYear();\r\n\r\n if (dayOfMonth == 1 || dayOfMonth == 21 || dayOfMonth == 31) {\r\n sup = 'st';\r\n } else if (dayOfMonth == 2 || dayOfMonth == 22) {\r\n sup = 'nd';\r\n } else if (dayOfMonth == 3 || dayOfMonth == 23) {\r\n sup = 'rd';\r\n } else {\r\n sup = 'th';\r\n }\r\n\r\n const dateString = dayNames[dayOfWeek] + ', ' + dayOfMonth + sup + ' ' + monthNames[month] + ' ' + year;\r\n\r\n return dateString;\r\n }\r\n\r\n public static printTimeOnly(date: Date) {\r\n\r\n date = new Date(date);\r\n\r\n let period = '';\r\n let minute = date.getMinutes().toString();\r\n let hour = date.getHours();\r\n\r\n period = hour < 12 ? 'AM' : 'PM';\r\n\r\n if (hour == 0) {\r\n hour = 12;\r\n }\r\n if (hour > 12) {\r\n hour = hour - 12;\r\n }\r\n\r\n if (minute.length == 1) {\r\n minute = '0' + minute;\r\n }\r\n\r\n const timeString = hour + ':' + minute + ' ' + period;\r\n\r\n\r\n return timeString;\r\n }\r\n\r\n public static printDate(date: Date, separator = 'at') {\r\n return `${Utilities.printDateOnly(date)} ${separator} ${Utilities.printTimeOnly(date)}`;\r\n }\r\n\r\n public static printFriendlyDate(date: Date, separator = '-') {\r\n const today = new Date(); today.setHours(0, 0, 0, 0);\r\n const yesterday = new Date(today); yesterday.setDate(yesterday.getDate() - 1);\r\n const test = new Date(date.getFullYear(), date.getMonth(), date.getDate());\r\n\r\n if (test.toDateString() == today.toDateString()) {\r\n return `Today ${separator} ${Utilities.printTimeOnly(date)}`;\r\n }\r\n if (test.toDateString() == yesterday.toDateString()) {\r\n return `Yesterday ${separator} ${Utilities.printTimeOnly(date)}`;\r\n } else {\r\n return Utilities.printDate(date, separator);\r\n }\r\n }\r\n\r\n public static printShortDate(date: Date, separator = '/', dateTimeSeparator = '-') {\r\n\r\n let day = date.getDate().toString();\r\n let month = (date.getMonth() + 1).toString();\r\n const year = date.getFullYear();\r\n\r\n if (day.length == 1) {\r\n day = '0' + day;\r\n }\r\n\r\n if (month.length == 1) {\r\n month = '0' + month;\r\n }\r\n\r\n return `${month}${separator}${day}${separator}${year} ${dateTimeSeparator} ${Utilities.printTimeOnly(date)}`;\r\n }\r\n\r\n public static parseDate(date) {\r\n\r\n if (date) {\r\n\r\n if (date instanceof Date) {\r\n return date;\r\n }\r\n\r\n if (typeof date === 'string' || date instanceof String) {\r\n if (date.search(/[a-su-z+]/i) == -1) {\r\n date = date + 'Z';\r\n }\r\n\r\n return new Date(date);\r\n }\r\n\r\n if (typeof date === 'number' || date instanceof Number) {\r\n return new Date(date as any);\r\n }\r\n }\r\n }\r\n\r\n public static printDuration(start: Date, end: Date) {\r\n\r\n start = new Date(start);\r\n end = new Date(end);\r\n\r\n // get total seconds between the times\r\n let delta = Math.abs(start.valueOf() - end.valueOf()) / 1000;\r\n\r\n // calculate (and subtract) whole days\r\n const days = Math.floor(delta / 86400);\r\n delta -= days * 86400;\r\n\r\n // calculate (and subtract) whole hours\r\n const hours = Math.floor(delta / 3600) % 24;\r\n delta -= hours * 3600;\r\n\r\n // calculate (and subtract) whole minutes\r\n const minutes = Math.floor(delta / 60) % 60;\r\n delta -= minutes * 60;\r\n\r\n // what's left is seconds\r\n const seconds = delta % 60; // in theory the modulus is not required\r\n\r\n\r\n let printedDays = '';\r\n\r\n if (days) {\r\n printedDays = `${days} days`;\r\n }\r\n\r\n if (hours) {\r\n printedDays += printedDays ? `, ${hours} hours` : `${hours} hours`;\r\n }\r\n\r\n if (minutes) {\r\n printedDays += printedDays ? `, ${minutes} minutes` : `${minutes} minutes`;\r\n }\r\n\r\n if (seconds) {\r\n printedDays += printedDays ? ` and ${seconds} seconds` : `${seconds} seconds`;\r\n }\r\n\r\n\r\n if (!printedDays) {\r\n printedDays = '0';\r\n }\r\n\r\n return printedDays;\r\n }\r\n\r\n public static getAge(birthDate, otherDate) {\r\n birthDate = new Date(birthDate);\r\n otherDate = new Date(otherDate);\r\n\r\n let years = (otherDate.getFullYear() - birthDate.getFullYear());\r\n\r\n if (otherDate.getMonth() < birthDate.getMonth() ||\r\n otherDate.getMonth() == birthDate.getMonth() && otherDate.getDate() < birthDate.getDate()) {\r\n years--;\r\n }\r\n\r\n return years;\r\n }\r\n\r\n public static searchArray(searchTerm: string, caseSensitive: boolean, ...values: any[]) {\r\n if (!searchTerm) {\r\n return true;\r\n }\r\n\r\n let filter = searchTerm.trim();\r\n let data = values.join();\r\n\r\n if (!caseSensitive) {\r\n filter = filter.toLowerCase();\r\n data = data.toLowerCase();\r\n }\r\n\r\n return data.indexOf(filter) != -1;\r\n }\r\n\r\n public static moveArrayItem(array: any[], oldIndex, newIndex) {\r\n\r\n if (oldIndex < 0) {\r\n return;\r\n }\r\n\r\n if (newIndex < 0) {\r\n newIndex += array.length;\r\n }\r\n\r\n if (newIndex >= array.length) {\r\n let k = newIndex - array.length;\r\n while ((k--) + 1) {\r\n array.push(undefined);\r\n }\r\n }\r\n\r\n array.splice(newIndex, 0, array.splice(oldIndex, 1)[0]);\r\n }\r\n\r\n public static expandCamelCase(text: string) {\r\n\r\n if (!text) {\r\n return text;\r\n }\r\n\r\n return text.replace(/([A-Z][a-z]+)/g, ' $1')\r\n .replace(/([A-Z][A-Z]+)/g, ' $1')\r\n .replace(/([^A-Za-z ]+)/g, ' $1');\r\n }\r\n\r\n public static testIsAbsoluteUrl(url: string) {\r\n\r\n const r = new RegExp('^(?:[a-z]+:)?//', 'i');\r\n return r.test(url);\r\n }\r\n\r\n public static convertToAbsoluteUrl(url: string) {\r\n\r\n return Utilities.testIsAbsoluteUrl(url) ? url : '//' + url;\r\n }\r\n\r\n public static removeNulls(obj) {\r\n const isArray = obj instanceof Array;\r\n\r\n for (const k in obj) {\r\n if (obj[k] === null) {\r\n isArray ? obj.splice(k, 1) : delete obj[k];\r\n } else if (typeof obj[k] == 'object') {\r\n Utilities.removeNulls(obj[k]);\r\n }\r\n\r\n if (isArray && obj.length == k) {\r\n Utilities.removeNulls(obj);\r\n }\r\n }\r\n\r\n return obj;\r\n }\r\n\r\n public static debounce(func: (...args) => any, wait: number, immediate?: boolean) {\r\n let timeout;\r\n\r\n return function() {\r\n const context = this;\r\n const args_ = arguments;\r\n\r\n const later = function() {\r\n timeout = null;\r\n if (!immediate) {\r\n func.apply(context, args_);\r\n }\r\n };\r\n\r\n const callNow = immediate && !timeout;\r\n\r\n clearTimeout(timeout);\r\n timeout = setTimeout(later, wait);\r\n\r\n if (callNow) {\r\n func.apply(context, args_);\r\n }\r\n };\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\nimport { ICheckoutInstance } from '../models';\r\n\r\nexport interface Window {\r\n Paytm?: {\r\n CheckoutJS?: ICheckoutInstance\r\n };\r\n}\r\n\r\nexport const WINDOW_TOKEN = new InjectionToken('Window', {\r\n providedIn: 'root',\r\n factory: () => window as Window\r\n});\r\n","// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\n// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: true,\r\n baseUrl: null, // Change this to the address of your backend API if different from frontend address\r\n tokenUrl: null, // For IdentityServer/Authorization Server API. You can set to null if same as baseUrl\r\n loginUrl: '/login'\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import 'hammerjs';\r\n// =============================\r\n// Email: info@ebenmonney.com\r\n// www.ebenmonney.com/templates\r\n// =============================\r\n\r\nimport { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\n\r\nconst providers = [\r\n { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }\r\n];\r\n\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic(providers).bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"sourceRoot":"webpack:///"}