{"version":3,"sources":["./$_lazy_route_resources|lazy|groupOptions: {}|namespace object","./src/app/add-client/add-client.component.html","./src/app/add-client/add-client.component.ts","./src/app/airbill-details/airbill-details.component.ts","./src/app/airbill-details/airbill-details.component.html","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/avoidable-cost/avoidable-cost.component.ts","./src/app/avoidable-cost/avoidable-cost.component.html","./src/app/carrier-invoices/carrier-invoices.component.ts","./src/app/carrier-invoices/carrier-invoices.component.html","./src/app/cost-package-chart/cost-package-chart.component.ts","./src/app/cost-package-chart/cost-package-chart.component.html","./src/app/cost-pound-chart/cost-pound-chart.component.ts","./src/app/cost-pound-chart/cost-pound-chart.component.html","./src/app/count-weight-chart/count-weight-chart.component.ts","./src/app/count-weight-chart/count-weight-chart.component.html","./src/app/dashboard-footer/dashboard-footer.component.ts","./src/app/dashboard-footer/dashboard-footer.component.html","./src/app/dashboard-header/dashboard-header.component.ts","./src/app/dashboard-header/dashboard-header.component.html","./src/app/dashboard-menu/dashboard-menu.component.html","./src/app/dashboard-menu/dashboard-menu.component.ts","./src/app/dashboard-stats/dashboard-stats.component.html","./src/app/dashboard-stats/dashboard-stats.component.ts","./src/app/forgot-password/forgot-password.component.html","./src/app/forgot-password/forgot-password.component.ts","./src/app/helpers/app-common-functions.ts","./src/app/helpers/auth.interceptor.ts","./src/app/helpers/constants.ts","./src/app/helpers/interfaces.ts","./src/app/helpers/network.interceptor.ts","./src/app/login/login.component.html","./src/app/login/login.component.ts","./src/app/monthly-invoices/monthly-invoices.component.ts","./src/app/monthly-invoices/monthly-invoices.component.html","./src/app/net-trans-chart/net-trans-chart.component.ts","./src/app/net-trans-chart/net-trans-chart.component.html","./src/app/package-search/package-search.component.ts","./src/app/package-search/package-search.component.html","./src/app/packages-weight-chart/packages-weight-chart.component.ts","./src/app/packages-weight-chart/packages-weight-chart.component.html","./src/app/performance-by-service-chart/performance-by-service-chart.component.ts","./src/app/performance-by-service-chart/performance-by-service-chart.component.html","./src/app/performance/performance.component.ts","./src/app/performance/performance.component.html","./src/app/refunds-by-month-chart/refunds-by-month-chart.component.ts","./src/app/refunds-by-month-chart/refunds-by-month-chart.component.html","./src/app/refunds-total-chart/refunds-total-chart.component.ts","./src/app/refunds-total-chart/refunds-total-chart.component.html","./src/app/report-download/report-download.component.ts","./src/app/report-download/report-download.component.html","./src/app/reset-password/reset-password.component.html","./src/app/reset-password/reset-password.component.ts","./src/app/services/api.service.service.ts","./src/app/services/auth.service.ts","./src/app/services/loader.service.ts","./src/app/services/session.service.ts","./src/app/services/token-storage.service.ts","./src/app/services/user.service.ts","./src/app/surcharge-month-chart/surcharge-month-chart.component.ts","./src/app/surcharge-month-chart/surcharge-month-chart.component.html","./src/app/surcharge-type-chart/surcharge-type-chart.component.ts","./src/app/surcharge-type-chart/surcharge-type-chart.component.html","./src/app/total-freight-month-chart/total-freight-month-chart.component.ts","./src/app/total-freight-month-chart/total-freight-month-chart.component.html","./src/app/total-net-month-chart/total-net-month-chart.component.ts","./src/app/total-net-month-chart/total-net-month-chart.component.html","./src/app/total-weight-month-chart/total-weight-month-chart.component.ts","./src/app/total-weight-month-chart/total-weight-month-chart.component.html","./src/app/tracking-exceptions-chart/tracking-exceptions-chart.component.ts","./src/app/tracking-exceptions-chart/tracking-exceptions-chart.component.html","./src/app/trends/trends.component.ts","./src/app/trends/trends.component.html","./src/app/user-profile/user-profile.component.html","./src/app/user-profile/user-profile.component.ts","./src/environments/environment.ts","./src/main.ts","./node_modules/moment/locale|sync|/^/.*$"],"names":[],"mappings":"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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0B","file":"main.a913f9414090e1375180.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(() => {\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 = () => ([]);\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 98255;\nmodule.exports = webpackEmptyAsyncContext;","
\n\n Add User \n Personal Info\n
\n \n \n First Name\n \n \n First Name is required!\n \n \n \n \n Last Name\n \n LastName\n is required\n \n \n \n
\n
\n \n Email Address\n \n Email\n is required\n \n \n \n Password\n \n Password\n is required\n \n \n
\n
\n \n Company Name\n \n \n \n Client Id\n \n Client Id\n is required\n \n \n
\n Address Info\n
\n \n Address\n \n \n \n \n City\n \n \n
\n
\n \n State\n \n \n \n \n Zip Code\n \n \n
\n
\n \n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-add-client',\n templateUrl: './add-client.component.html',\n styleUrls: ['./add-client.component.css']\n})\nexport class AddClientComponent implements OnInit {\n form: UserInfo = {\n Address: '',\n City: '',\n ClientId: 0,\n CompanyName: '',\n Email: '',\n FirstName: '',\n LastName: '',\n Occupation: '',\n Password: '',\n ResetToken: '',\n State: '',\n TokenAdded: '',\n UserName: '',\n Zip: '',\n UserType: 'USER'\n };\n\n constructor(private userService: UserService, private apiService: ApiService, private notification: MatSnackBar ) { }\n\n ngOnInit(): void {\n \n }\n\n onSubmit(): void {\n this.apiService.makeStandardApiCall('user/AddUserProfile', this.form).subscribe(\n data => {\n if (data.StatusCode == null || data.StatusCode == undefined ){\n this.notification.open('Error Adding User!', 'Dismiss', {\n duration: 3000\n });\n } else {\n this.notification.open('User Added!', 'Dismiss', {\n duration: 3000\n });\n this.form = {\n Address: '',\n City: '',\n ClientId: 0,\n CompanyName: '',\n Email: '',\n FirstName: '',\n LastName: '',\n Occupation: '',\n Password: '',\n ResetToken: '',\n State: '',\n TokenAdded: '',\n UserName: '',\n Zip: '',\n UserType: 'USER'\n };\n }\n \n },\n \n );;\n }\n}\n","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { Airbill, AirbillRequest } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport jsPDF from 'jspdf';\nimport html2canvas from 'html2canvas';\n\n@Component({\n selector: 'app-airbill-details',\n templateUrl: './airbill-details.component.html',\n styleUrls: ['./airbill-details.component.css']\n})\n\nexport class AirbillDetailsComponent implements OnInit {\n airbillId: number | undefined;\n constructor(private apiService: ApiService, private route: ActivatedRoute) { }\n airbill!: Airbill;\n airbillRequest!: AirbillRequest;\n \n @ViewChild('packageInfo')\n htmlData!: ElementRef;\n \n ngOnInit(): void {\n const routeParams = this.route.snapshot.paramMap;\n this.airbillId = Number(routeParams.get('airbillId'));\n this.airbillRequest = {\n AirbillId: this.airbillId\n }\n this.apiService.makeStandardApiCall('values/GetAirbill', this.airbillRequest).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.airbill = JSON.parse(data.Value);\n }\n }\n );\n }\n\n public openPDF():void {\n const DATA = document.getElementById('packageInfo') as HTMLElement;\n \n html2canvas(DATA).then(canvas => {\n \n let fileWidth = 208;\n let fileHeight = canvas.height * fileWidth / canvas.width;\n \n const FILEURI = canvas.toDataURL('image/png')\n let PDF = new jsPDF('p', 'mm', 'a4');\n let position = 0;\n PDF.addImage(FILEURI, 'PNG', 0, position, fileWidth, fileHeight)\n \n PDF.save('TrackingDetail_' + this.airbill?.AirbillNumber + '.pdf');\n }); \n }\n}\n","
\n \n
\n \n Package Information\n \n
\n \n Airbill Id\n \n \n \n \n Tracking Number\n \n \n
\n
\n \n Account Number\n \n \n \n \n Invoice Number\n \n \n
\n
\n \n Service Name\n \n \n \n \n Reference Number\n \n \n
\n
\n \n Signed By\n \n \n\n \n Delivery Date\n \n \n
\n
\n \n Pickup Date\n \n \n\n \n Deadline Date\n \n \n
\n
\n \n Actual Weight\n \n \n\n \n Billed Weight\n \n \n
\n
\n \n Zone\n \n \n\n \n Total Charge\n \n \n
\n
","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\n\nimport { LoginComponent } from './login/login.component';\nimport { DashboardStatsComponent } from './dashboard-stats/dashboard-stats.component';\nimport { AvoidableCostComponent } from './avoidable-cost/avoidable-cost.component';\nimport { UserProfileComponent } from './user-profile/user-profile.component';\nimport { ReportDownloadComponent } from './report-download/report-download.component';\nimport { MonthlyInvoicesComponent } from './monthly-invoices/monthly-invoices.component';\nimport { TrendsComponent } from './trends/trends.component';\nimport { PerformanceComponent } from './performance/performance.component';\nimport { PackageSearchComponent } from './package-search/package-search.component';\nimport { CarrierInvoicesComponent } from './carrier-invoices/carrier-invoices.component';\nimport { AirbillDetailsComponent } from './airbill-details/airbill-details.component';\nimport { NetTransChartComponent } from './net-trans-chart/net-trans-chart.component';\nimport { SurchargeTypeChartComponent } from './surcharge-type-chart/surcharge-type-chart.component';\nimport { CountWeightChartComponent } from './count-weight-chart/count-weight-chart.component';\nimport { PackagesWeightChartComponent } from './packages-weight-chart/packages-weight-chart.component';\nimport { CostPoundChartComponent } from './cost-pound-chart/cost-pound-chart.component';\nimport { CostPackageChartComponent } from './cost-package-chart/cost-package-chart.component';\nimport { SurchargeMonthChartComponent } from './surcharge-month-chart/surcharge-month-chart.component';\nimport { TotalFreightMonthChartComponent } from './total-freight-month-chart/total-freight-month-chart.component';\nimport { TotalNetMonthChartComponent } from './total-net-month-chart/total-net-month-chart.component';\nimport { TotalWeightMonthChartComponent } from './total-weight-month-chart/total-weight-month-chart.component';\nimport { PerformanceByServiceChartComponent } from './performance-by-service-chart/performance-by-service-chart.component';\nimport { RefundsByMonthChartComponent } from './refunds-by-month-chart/refunds-by-month-chart.component';\nimport { RefundsTotalChartComponent } from './refunds-total-chart/refunds-total-chart.component';\nimport { TrackingExceptionsChartComponent } from './tracking-exceptions-chart/tracking-exceptions-chart.component';\nimport { ForgotPasswordComponent } from './forgot-password/forgot-password.component';\nimport { ResetPasswordComponent } from './reset-password/reset-password.component';\nimport { AddClientComponent } from './add-client/add-client.component';\n\nconst routes: Routes = [\n { path: 'dashboard', component: DashboardStatsComponent },\n { path: 'login', component: LoginComponent },\n { path: 'avoidable', component: AvoidableCostComponent },\n { path: 'profile', component: UserProfileComponent },\n { path: 'reportDownload', component: ReportDownloadComponent },\n { path: 'invoices', component: MonthlyInvoicesComponent },\n { path: 'trends', component: TrendsComponent },\n { path: 'performance', component: PerformanceComponent },\n { path: 'search', component: PackageSearchComponent }, \n { path: 'carrierInvoice', component: CarrierInvoicesComponent }, \n { path: 'airbillDetails/:airbillId', component: AirbillDetailsComponent }, \n { path: 'nettransbyservice', component: NetTransChartComponent },\n { path: 'surchargebytype', component: SurchargeTypeChartComponent },\n { path: 'countbyweightgroup', component: CountWeightChartComponent },\n { path: 'packagesbyzone', component: PackagesWeightChartComponent },\n { path: 'costbypound', component: CostPoundChartComponent },\n { path: 'costbypackage', component: CostPackageChartComponent },\n { path: 'surchargebymonth', component: SurchargeMonthChartComponent },\n { path: 'totalfreightbymonth', component: TotalFreightMonthChartComponent },\n { path: 'totalweightbymonth', component: TotalWeightMonthChartComponent },\n { path: 'totalnetbymonth', component: TotalNetMonthChartComponent },\n { path: 'refundsbymonth', component: RefundsByMonthChartComponent },\n { path: 'refundstotal', component: RefundsTotalChartComponent },\n { path: 'performancebyservice', component: PerformanceByServiceChartComponent },\n { path: 'trackingexceptions', component: TrackingExceptionsChartComponent },\n { path: 'forgotpassword', component: ForgotPasswordComponent },\n { path: 'addnew', component: AddClientComponent },\n { path: 'resetpassword/:token', component: ResetPasswordComponent }, \n { path: '', redirectTo: 'login', pathMatch: 'full' }\n];\n\n@NgModule({\n imports: [RouterModule.forRoot(routes)],\n exports: [RouterModule]\n})\n\nexport class AppRoutingModule { }","import { Component } from '@angular/core';\nimport { LoadingService } from './services/loader.service';\n\n@Component({\n selector: 'app-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.css']\n})\nexport class AppComponent {\n title = 'Lamprey Aquarium Dashboard';\n loading$ = this.loader.loading$;\n constructor(public loader: LoadingService) {}\n}\n","\n\n\n\n\n\n\n","import { HashLocationStrategy, LocationStrategy } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { MatNativeDateModule } from '@angular/material/core';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { FormsModule } from '@angular/forms';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatTableModule } from '@angular/material/table';\nimport { HttpClientModule } from '@angular/common/http';\nimport { AppRoutingModule } from './app-routing.module';\nimport { AppComponent } from './app.component';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { DashboardStatsComponent } from './dashboard-stats/dashboard-stats.component';\nimport { LoginComponent } from './login/login.component';\nimport { DashboardMenuComponent } from './dashboard-menu/dashboard-menu.component';\nimport { DashboardHeaderComponent } from './dashboard-header/dashboard-header.component';\nimport { DashboardFooterComponent } from './dashboard-footer/dashboard-footer.component';\nimport { AuthInterceptorProviders } from './helpers/auth.interceptor';\nimport { NetworkInterceptorProviders } from './helpers/network.interceptor';\nimport { AvoidableCostComponent } from './avoidable-cost/avoidable-cost.component';\nimport { UserProfileComponent } from './user-profile/user-profile.component';\nimport { MAT_SNACK_BAR_DEFAULT_OPTIONS, MatSnackBarModule} from '@angular/material/snack-bar';\nimport { ChartsModule } from 'ng2-charts';\nimport { GoogleMapsModule } from '@angular/google-maps'\nimport { Ng2LoadingSpinnerModule } from 'ng2-loading-spinner'\nimport { FlexLayoutModule } from '@angular/flex-layout';\nimport { ReportDownloadComponent } from './report-download/report-download.component';\nimport { TrendsComponent } from './trends/trends.component';\nimport { MonthlyInvoicesComponent } from './monthly-invoices/monthly-invoices.component';\nimport { PerformanceComponent } from './performance/performance.component';\nimport { PackageSearchComponent } from './package-search/package-search.component';\nimport { CarrierInvoicesComponent } from './carrier-invoices/carrier-invoices.component';\nimport { AirbillDetailsComponent } from './airbill-details/airbill-details.component';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { NetTransChartComponent } from './net-trans-chart/net-trans-chart.component';\nimport { SurchargeTypeChartComponent } from './surcharge-type-chart/surcharge-type-chart.component';\nimport { CountWeightChartComponent } from './count-weight-chart/count-weight-chart.component';\nimport { PackagesWeightChartComponent } from './packages-weight-chart/packages-weight-chart.component';\nimport { CostPoundChartComponent } from './cost-pound-chart/cost-pound-chart.component';\nimport { CostPackageChartComponent } from './cost-package-chart/cost-package-chart.component';\nimport { SurchargeMonthChartComponent } from './surcharge-month-chart/surcharge-month-chart.component';\nimport { TotalFreightMonthChartComponent } from './total-freight-month-chart/total-freight-month-chart.component';\nimport { TotalWeightMonthChartComponent } from './total-weight-month-chart/total-weight-month-chart.component';\nimport { TotalNetMonthChartComponent } from './total-net-month-chart/total-net-month-chart.component';\nimport { RefundsByMonthChartComponent } from './refunds-by-month-chart/refunds-by-month-chart.component';\nimport { RefundsTotalChartComponent } from './refunds-total-chart/refunds-total-chart.component';\nimport { PerformanceByServiceChartComponent } from './performance-by-service-chart/performance-by-service-chart.component';\nimport { TrackingExceptionsChartComponent } from './tracking-exceptions-chart/tracking-exceptions-chart.component';\nimport { ForgotPasswordComponent } from './forgot-password/forgot-password.component';\nimport { ResetPasswordComponent } from './reset-password/reset-password.component';\nimport { AddClientComponent } from './add-client/add-client.component';\n\n@NgModule({\n declarations: [\n AppComponent,\n DashboardStatsComponent,\n LoginComponent,\n DashboardMenuComponent,\n DashboardHeaderComponent,\n DashboardFooterComponent,\n AvoidableCostComponent,\n UserProfileComponent,\n ReportDownloadComponent,\n TrendsComponent,\n MonthlyInvoicesComponent,\n PerformanceComponent,\n PackageSearchComponent,\n CarrierInvoicesComponent,\n AirbillDetailsComponent,\n NetTransChartComponent,\n SurchargeTypeChartComponent,\n CountWeightChartComponent,\n PackagesWeightChartComponent,\n CostPoundChartComponent,\n CostPackageChartComponent,\n SurchargeMonthChartComponent,\n TotalFreightMonthChartComponent,\n TotalWeightMonthChartComponent,\n TotalNetMonthChartComponent,\n RefundsByMonthChartComponent,\n RefundsTotalChartComponent,\n PerformanceByServiceChartComponent,\n TrackingExceptionsChartComponent,\n ForgotPasswordComponent,\n ResetPasswordComponent,\n AddClientComponent\n ],\n imports: [\n BrowserModule,\n AppRoutingModule,\n BrowserAnimationsModule,\n FormsModule,\n HttpClientModule,\n MatSliderModule,\n MatInputModule,\n MatToolbarModule,\n MatTooltipModule,\n MatSidenavModule,\n MatButtonModule,\n MatIconModule,\n MatRadioModule,\n MatDividerModule,\n MatDatepickerModule,\n MatNativeDateModule,\n MatSelectModule,\n MatProgressSpinnerModule,\n MatTableModule,\n MatCardModule,\n MatSnackBarModule,\n ChartsModule,\n GoogleMapsModule,\n FlexLayoutModule,\n MatPaginatorModule,\n MatSortModule,\n MatFormFieldModule,\n Ng2LoadingSpinnerModule.forRoot({})\n ],\n providers: [AuthInterceptorProviders, NetworkInterceptorProviders, {provide: MAT_SNACK_BAR_DEFAULT_OPTIONS, useValue: {duration: 2500, location: top}}, {provide: LocationStrategy, useClass: HashLocationStrategy}],\n bootstrap: [AppComponent]\n})\nexport class AppModule { }\n","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { Router } from '@angular/router';\nimport * as fileSaver from 'file-saver';\nimport { AvoidableCharges, AvoidableChargesByWeek, ChartDataModel, StandardApiRequest, UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\nimport { ChartData, ChartDataSets, ChartOptions, ChartType } from 'chart.js';\nimport { Color, BaseChartDirective, Label } from 'ng2-charts';\nimport { appConstants } from '../helpers/constants';\nimport { MatSort } from '@angular/material/sort';\nimport { MatTableDataSource } from '@angular/material/table';\n\nexport interface AvoidableElement {\n Description: string;\n Amount: number;\n Percentage: number;\n ReportLink: string;\n}\n\n@Component({\n selector: 'app-avoidable-cost',\n templateUrl: './avoidable-cost.component.html',\n styleUrls: ['./avoidable-cost.component.css']\n})\n\nexport class AvoidableCostComponent implements OnInit {\n displayedColumns: string[] = ['Info', 'Description', 'Amount', 'ChargeCount', 'avoid-report'];\n totalAvoidable!: number | 0;\n totalPotential!: number | 0;\n totalAvoidableTable: MatTableDataSource = new MatTableDataSource();\n avoidableCostsByWeek!: AvoidableChargesByWeek[];\n \n defaultScale = appConstants.fun.getChartScale('Week', 'Amount in Dollars');\n\n costChartUpdate: boolean = false;\n costChartData: ChartDataSets[] = [];\n costChartLabels: Label[] = [];\n costChartOptions: any = {\n responsive: true,\n scales: this.defaultScale,\n isLoading: true,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n\n public costChartColors: Color[] = [\n { // blue\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(102,163,255,1)', // Data drive this\n pointBackgroundColor: 'rgba(102,163,255,1)',\n pointBorderColor: 'rgba(102,163,255,.8)',\n },\n { // purple\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(94, 91, 219, 01)', // Data drive this\n pointBackgroundColor: 'rgba(94, 91, 219, 1)',\n pointBorderColor: 'rgba(102,163,255,.8)',\n },\n { // grey\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(148,159,177,1)',\n pointBackgroundColor: 'rgba(148,159,177,1)',\n pointBorderColor: '#fff',\n pointHoverBackgroundColor: '#fff',\n pointHoverBorderColor: 'rgba(148,159,177,0.8)'\n },\n { // dark grey\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(77,83,96,1)',\n pointBackgroundColor: 'rgba(77,83,96,1)',\n pointBorderColor: '#fff',\n pointHoverBackgroundColor: '#fff',\n pointHoverBorderColor: 'rgba(77,83,96,1)'\n },\n { // red\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'red',\n pointBackgroundColor: 'rgba(148,159,177,1)',\n pointBorderColor: '#fff',\n pointHoverBackgroundColor: '#fff',\n pointHoverBorderColor: 'rgba(148,159,177,0.8)'\n },\n { // green\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(84, 213, 21, 1)',\n pointBackgroundColor: 'rgba(84, 213, 21, .8)',\n pointBorderColor: '#fff',\n pointHoverBackgroundColor: '#fff',\n pointHoverBorderColor: 'rgba(148,159,177,0.8)'\n }\n ];\n costChartLegend: boolean = true;\n costChartType: any = appConstants.CHARTS.TYPES.LINE_CHART;\n\n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 0, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n costsUpdating: boolean = true;\n\n constructor(private apiService: ApiService, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.avoidableCostForm.ClientId = this.userInfo.ClientId;\n this.sessionService.reportForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.avoidableCostForm;\n this.updateCosts();\n }\n\n @ViewChild(MatSort)\n sort!: MatSort;\n\n updateCosts(): void {\n this.sessionService.avoidableCostForm = this.form;\n this.costsUpdating = true;\n this.apiService.makeStandardApiCall('values/GetAvoidableCharges', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.totalAvoidable = 0;\n this.totalAvoidableTable = new MatTableDataSource(JSON.parse(data.Value));\n this.totalAvoidableTable.data.forEach(element => {\n this.totalAvoidable += element.Amount;\n });\n this.totalAvoidableTable.sort = this.sort;\n }\n this.costsUpdating = false;\n }\n );\n this.costChartUpdate = true;\n this.apiService.makeStandardApiCall('values/GetAvoidableChargesByWeek', this.form).subscribe(\n (data: any) => {\n this.avoidableCostsByWeek = JSON.parse(data.Value);\n this.costChartData = [];\n if (this.avoidableCostsByWeek.length > 0){\n let labels: Label[] = [];\n let firstValue: boolean = true;\n let currentDesc: string = '';\n let currentData: any = { data: [], label: '' };\n\n this.avoidableCostsByWeek.forEach(element => {\n if (currentDesc == '') {\n currentData.label = element.Description;\n currentDesc = element.Description;\n }\n if (currentDesc != element.Description){\n this.costChartData.push(currentData);\n currentDesc = element.Description;\n currentData = { data: [], label: element.Description };\n firstValue = false;\n }\n if (firstValue) {\n labels.push(element.WeekDate + '-' + element.YearDate);\n }\n currentData.data.push(element.Amount);\n });\n this.costChartData.push(currentData);\n this.costChartLabels = labels;\n this.costChartOptions.isLoading = false;\n this.costChartOptions.tooltips.callbacks;\n }\n this.costChartUpdate = false;\n }\n )\n }\n\n\n goToReport(reportId: number, reportName: string): void {\n this.sessionService.reportForm.ReportId = reportId;\n this.sessionService.reportForm.StartDate = this.form.StartDate;\n this.sessionService.reportForm.EndDate = this.form.EndDate;\n this.sessionService.reportForm.CarrierId = 0;\n this.costsUpdating = true;\n //if (reportId === 10) {\n // this.sessionService.reportForm.CarrierId = 2;\n //}\n this.apiService.downloadReportFile(this.sessionService.reportForm).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n if (reportId == 10)\n fileSaver.saveAs(blob, reportName + '.xls');\n else\n fileSaver.saveAs(blob, reportName + '.xlsx');\n this.costsUpdating = false;\n }), (error: any) => this.costsUpdating = false, console.log('Error downloading the file'), //when you use stricter type checking\n () => console.info('File downloaded successfully');\n const navigationDetails: string[] = ['reportDownload'];\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n
\n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n\n \n \n
\n info\n Total Avoidable Costs {{ totalAvoidable | currency }} {{element.Description}} Amount {{element.Amount | currency}} Count {{element.ChargeCount}} Report
\n
\n
\n
\n \n Avoidable Cost by Week\n \n
\n \n \n
\n
\n
\n\n
\n
","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort } from '@angular/material/sort';\nimport { MatTableDataSource } from '@angular/material/table';\nimport * as fileSaver from 'file-saver';\n\nimport { CarrierInvoice, ClientInvoice, ClientInvoiceRequest, DownloadClientInvoiceRequest, UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-carrier-invoices',\n templateUrl: './carrier-invoices.component.html',\n styleUrls: ['./carrier-invoices.component.css']\n})\nexport class CarrierInvoicesComponent implements OnInit {\n constructor(private apiService: ApiService, private userService: UserService) { }\n\n displayedColumns: string[] = ['AccountNumber', 'InvoiceNumber', 'InvoiceDate', 'InvoiceAmount', 'invoice-action'];\n\n @ViewChild(MatSort)\n sort!: MatSort;\n \n userInfo!: UserInfo;\n clientInvoices!: MatTableDataSource;\n clientInvoiceRequest!: ClientInvoiceRequest;\n fileDownloading: boolean = false;\n\n @ViewChild('paginator')\n paginator!: MatPaginator;\n \n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n\n this.clientInvoiceRequest = {\n ClientId: this.userInfo.ClientId,\n PageIndex: 1,\n PageSize: 10000,\n RepId: 0,\n SortColumn: 'InvoiceID',\n SortOrder: 'DESC'\n }\n\n this.apiService.makeStandardApiCall('values/GetCarrierInvoices', this.clientInvoiceRequest).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.clientInvoices = new MatTableDataSource(JSON.parse(data.Value));\n this.clientInvoices.paginator = this.paginator;\n this.clientInvoices.sort = this.sort;\n }\n }\n );\n }\n\n downloadInvoice(InvoiceNumber: number, FileName: string): void {\n this.fileDownloading = true;\n const downloadRequest: DownloadClientInvoiceRequest = {\n ClientInvoiceID: InvoiceNumber\n }\n this.apiService.downloadCarrierInvoiceFile(downloadRequest).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n let reportName = 'CarrierInvoice';\n fileSaver.saveAs(blob, FileName);\n this.fileDownloading = false;\n }), (error: any) => this.fileDownloading = false, console.log('Error downloading the file'), //when you use stricter type checking\n () => console.info('File downloaded successfully');\n }\n}\n","
\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Account Number {{element.AccountNumber}} Invoice Number {{element.InvoiceNumber}} Invoice Date {{element.InvoiceDate | date}} Invoice Total {{element.InvoiceAmount | currency}} Action
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, UserInfo, CostByMonth } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-cost-package-chart',\n templateUrl: './cost-package-chart.component.html',\n styleUrls: ['./cost-package-chart.component.css']\n})\nexport class CostPackageChartComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n displayedColumns: string[] = ['month', 'year', 'net-charge'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n \n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n costPerPoundScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars/lb.')\n totalWeightScale = appConstants.fun.getChartScale('Month', 'Weight in Pounds')\n\n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n costPackageLoading: boolean = true;\n \n // [COST PER PACKAGE BY MONTH]\n costPerPackageChartData: Array = [{ data: [] }];\n costPerPackageChartLabels: Array = [];\n costPerPackageChartOptions: any = {\n responsive: true,\n scales: this.defaultScale,\n isLoading: true,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n costPerPackageChartLegend: boolean = false;\n costPerPackageChartType: any = appConstants.CHARTS.TYPES.LINE_CHART;\n //costPerPackageChartColors: Array = [appConstants.OPTIONS.CHARTS.DEFAULT.LINE_CHART_DEFAULT_COLOR];\n public costPerPackageChartColors: Array = [{}];\n \n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.trendsForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.trendsForm;\n\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.trendsForm = this.form;\n \n this.costPackageLoading = true;\n this.apiService.makeStandardApiCall('values/GetCostPerPackageByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'Cost');\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value))\n // Set values to chart\n this.costPerPackageChartLabels = chartData.labels;\n this.costPerPackageChartData[0].data = chartData.values;\n this.costPerPackageChartOptions.isLoading = false;\n this.costPerPackageChartOptions.tooltips.callbacks;\n this.costPerPackageChartColors = [\n {\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(102,163,255,1)', // Data drive this\n pointBackgroundColor: 'rgba(102,163,255,1)',\n pointBorderColor: 'rgba(102,163,255,0)',\n }\n ];\n this.costPackageLoading = false;\n }\n );\n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetCostPackageDownload', this.form).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'CostPerPackage.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n COST PER PACKAGE\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
Month {{element.Month }} Year {{element.Year }} Cost {{element.Cost | currency}}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, UserInfo, CostByMonth } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-cost-pound-chart',\n templateUrl: './cost-pound-chart.component.html',\n styleUrls: ['./cost-pound-chart.component.css']\n})\nexport class CostPoundChartComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n displayedColumns: string[] = ['month', 'year', 'net-charge'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n\n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n costPerPoundScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars/lb.')\n totalWeightScale = appConstants.fun.getChartScale('Month', 'Weight in Pounds')\n\n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n \n costPoundLoading: boolean = true;\n\n\n // [COST PER POUND BY MONTH]\n public costPerPoundChartOptions: any = {\n responsive: true,\n scales: this.costPerPoundScale,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n costPerPoundChartLabels: string[] = [];\n costPerPoundChartType: any = appConstants.CHARTS.TYPES.VERTICAL_BAR;\n costPerPoundChartLegend: boolean = false;\n costPerPoundChartData: any[] = [{ data: null }];\n public costPerPoundChartColors: Array = [{}];\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.trendsForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.trendsForm;\n\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.trendsForm = this.form;\n \n this.costPoundLoading = true;\n this.apiService.makeStandardApiCall('values/GetCostPerPoundByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'Cost');\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value));\n\n // Set values to chart\n this.costPerPoundChartLabels = chartData.labels;\n this.costPerPoundChartData = chartData.values;\n this.costPerPoundChartOptions.isLoading = false;\n this.costPerPoundChartOptions.tooltips.callbacks;\n this.costPerPoundChartColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n this.costPoundLoading = false;\n }\n );\n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetCostPoundDownload', this.form).subscribe((response: any) => {\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'CostPerPound.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n COST PER POUND\n \n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
Month {{element.Month }} Year {{element.Year }} Cost {{element.Cost | currency}}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport { ChartDataSets, ChartType } from 'chart.js';\nimport * as fileSaver from 'file-saver';\nimport { Label } from 'ng2-charts';\nimport { PackageCountByZone, StandardApiRequest, Carrier, Account, UserInfo, PackageCountByWeight } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-count-weight-chart',\n templateUrl: './count-weight-chart.component.html',\n styleUrls: ['./count-weight-chart.component.css']\n})\nexport class CountWeightChartComponent implements OnInit {\n\n displayedColumns: string[] = ['service-zone', 'service-group', 'package-count'];\n packageByWeightTable: MatTableDataSource = new MatTableDataSource();\n \n weightChartOptions: any = {\n scaleShowVerticalLines: false,\n responsive: true,\n scales: {\n yAxes: [{\n ticks: {\n beginAtZero: true\n },\n scaleLabel: {\n display: true,\n labelString: 'Package Count'\n }\n }],\n xAxes: [{\n ticks: {\n \n },\n scaleLabel: {\n display: true,\n labelString: 'Weight'\n }\n }]\n }\n };\n weightChartLabels: string[] = [];\n weightChartType: ChartType = 'bar';\n weightChartLegend: boolean = true;\n weightChartData: ChartDataSets[] = [];\n weightChartLoading: boolean = true;\n\n packageCountLoading: boolean = true;\n packageCountByWeight: PackageCountByWeight[] = []\n \n basicOptions: any;\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n userInfo!: UserInfo;\n apiData: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n };\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n ngAfterViewInit() {\n\n\n }\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.dashboardStatForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.dashboardStatForm;\n\n this.apiData.ClientId = this.userInfo.ClientId;\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n onSubmit(): void {\n this.updateDashboardComponents();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.apiData = {\n AccountId: this.form.AccountId,\n CarrierId: this.form.CarrierId,\n ClientId: this.userInfo.ClientId,\n StartDate: this.form.StartDate,\n EndDate: this.form.EndDate,\n IsPageLoad: false\n };\n\n this.sessionService.dashboardStatForm = this.form;\n\n this.packageCountLoading = true;\n this.apiService.makeStandardApiCall('values/GetPackageCountByWeight', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.packageCountByWeight = JSON.parse(data.Value);\n this.packageByWeightTable = new MatTableDataSource(JSON.parse(data.Value))\n \n const labels: string[] = [];\n const fedexData: any = [];\n const upsData: any = [];\n\n // Temporary hold data\n this.packageCountByWeight.forEach(item => {\n if ((this.form.CarrierId === 2) && (item.CarrierId !== 2)) {\n return;\n }\n if ((this.form.CarrierId === 1) && (item.CarrierId !== 1)) {\n return;\n }\n\n if (labels.indexOf(item.WeightBucketName) === -1) {\n\n labels.push(item.WeightBucketName);\n }\n\n if (item.CarrierId === 1) {\n fedexData[item.WeightBucketName] = item.PackageCount;\n }\n\n if (item.CarrierId === 2) {\n upsData[item.WeightBucketName] = item.PackageCount;\n }\n });\n\n const fedexChartData: any = {\n data: [],\n label: ['FEDEX'],\n };\n\n const upsChartData: any = {\n data: [],\n label: ['UPS'],\n };\n\n // Organise data for chart\n labels.forEach((item) => {\n if (fedexData[item]) {\n fedexChartData.data.push(fedexData[item]);\n } else {\n fedexChartData.data.push(0);\n }\n\n if (upsData[item]) {\n upsChartData.data.push(upsData[item]);\n } else {\n upsChartData.data.push(0);\n }\n });\n\n // Finally set chart data\n this.weightChartLabels = labels;\n\n // Empty data before pushing\n this.weightChartData = [];\n\n // Add labels according to labels\n switch (this.form.CarrierId) {\n case 0:\n this.weightChartData.push(fedexChartData);\n this.weightChartData.push(upsChartData);\n break;\n case 1:\n this.weightChartData.push(fedexChartData);\n break;\n case 2:\n this.weightChartData.push(upsChartData);\n break;\n }\n this.packageCountLoading = false;\n }\n }\n );\n\n }\n\n downloadSearch(): void {\n this.apiService.downloadPackageCountByWeight(this.apiData).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'PackagesByWeight.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n \n PACKAGE COUNT BY WEIGHT GROUP\n \n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n
Carrier {{element.CarrierName }} Weight Bucket {{element.WeightBucketName }} Net Charge {{element.PackageCount}}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-dashboard-footer',\n templateUrl: './dashboard-footer.component.html',\n styleUrls: ['./dashboard-footer.component.css']\n})\nexport class DashboardFooterComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n currentYearLong(): number {\n return new Date().getFullYear();\n }\n}\n","\n\n","import { Component, OnInit } from '@angular/core';\nimport { TokenStorageService } from '../services/token-storage.service'\n\n@Component({\n selector: 'app-dashboard-header',\n templateUrl: './dashboard-header.component.html',\n styleUrls: ['./dashboard-header.component.css']\n})\nexport class DashboardHeaderComponent implements OnInit {\n\n constructor( private tokenStorage: TokenStorageService) { }\n\n ngOnInit(): void {\n }\n\n}\n","\n\n\n","\n\n\n\n \n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n\n \n \n
\n \n \n \n \n
\n\n \n
\n \n
\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { UserInfo } from '../helpers/interfaces';\nimport { TokenStorageService } from '../services/token-storage.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-dashboard-menu',\n templateUrl: './dashboard-menu.component.html',\n styleUrls: ['./dashboard-menu.component.css']\n})\nexport class DashboardMenuComponent implements OnInit {\n \n constructor(private router: Router, private tokenStorage: TokenStorageService, private userService: UserService) {\n this.tokenStorage.LoginStatus.subscribe(value => {\n this.isLoggedIn = tokenStorage.isLoggedIn;\n });\n }\n \n isLoggedIn!: boolean | false;\n showMenu!: boolean | false;\n userInfo!: UserInfo;\n\n ngOnInit(): void {\n this.isLoggedIn = this.tokenStorage.isLoggedIn;\n this.userInfo = this.userService.userInfo;\n }\n\n toggleShowMenu(): void {\n this.showMenu = !this.showMenu;\n }\n \n goToLink(link: string): void {\n const navigationDetails: string[] = [link];\n this.router.navigate(navigationDetails);\n }\n \n logout(): void {\n this.tokenStorage.signOut();\n const navigationDetails: string[] = ['/'];\n this.router.navigate(navigationDetails);\n }\n}\n","
\r\n \r\n FILTERS\r\n \r\n Start Date\r\n \r\n \r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n \r\n \r\n Carrier\r\n \r\n \r\n {{car.CarrierName}}\r\n \r\n \r\n \r\n \r\n Account\r\n \r\n \r\n {{acc.AccountNumber}}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n Total Net Charge\r\n
\r\n
\r\n

\r\n {{dashboardStats.NetSpend_Amount | currency}}\r\n

\r\n
\r\n
\r\n Packages\r\n
\r\n
\r\n

\r\n {{dashboardStats.NetSpend_Count | number:'1.0':'en-US' }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n Total Surcharges\r\n
\r\n
\r\n

\r\n {{dashboardStats.Surcharges_Amount | currency}}\r\n

\r\n
\r\n
\r\n Surcharges\r\n
\r\n
\r\n

\r\n {{dashboardStats.Surcharges_Count | number:'1.0':'en-US' }}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n Transportation Charge\r\n
\r\n
\r\n

\r\n {{dashboardStats.FreightSpend_Amount | currency}}\r\n

\r\n
\r\n
\r\n Effective Discount\r\n
\r\n
\r\n

\r\n UPS: {{dashboardStats.FreightSpend_UPSEffectiveDiscount}}% Fedex:\r\n {{dashboardStats.FreightSpend_FedexEffectiveDiscount}}%\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n Avg Zone\r\n
\r\n
\r\n

\r\n {{dashboardStats.AverageZone_Amount | number : '1.2-2'}}\r\n

\r\n
\r\n
\r\n Average Cost Per Package\r\n
\r\n
\r\n

\r\n {{dashboardStats.WeightCostPerPackage | currency}}\r\n

\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n NET TRANSPORTATION BY SERVICE\r\n \r\n bar_chart\r\n \r\n
\r\n \r\n \r\n {{tT}}\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n SURCHARGES BY TYPE\r\n bar_chart\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n PACKAGE COUNT BY WEIGHT GROUP\r\n bar_chart\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n LAYERED PACKAGES BY ZONE\r\n bar_chart\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n PACKAGES BY STATE\r\n \r\n \r\n \r\n {{season}}\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
","import { AfterViewInit, Component, ContentChild, ElementRef, OnInit, ViewChild } from '@angular/core';\nimport { TokenStorageService } from '../services/token-storage.service';\nimport { ChartType, ChartOptions, ChartDataSets } from 'chart.js';\n\nimport { ApiService } from '../services/api.service.service';\nimport { Account, Carrier, DashboardStats, NetCharge, PackagesByStatesFrom, PackagesByStatesTo, PackageCountByWeight, PackageCountByZone, StandardApiRequest, SurchargeByType, UserInfo } from '../helpers/interfaces';\nimport { UserService } from '../services/user.service';\n\nimport { MultiDataSet, Label } from 'ng2-charts';\nimport { MatRadioChange } from '@angular/material/radio';\nimport { ThemePalette } from '@angular/material/core';\nimport { ProgressSpinnerMode } from '@angular/material/progress-spinner';\nimport { SessionService } from '../services/session.service';\nimport { Router } from '@angular/router';\n\ndeclare var google: any;\n\n@Component({\n selector: 'app-dashboard-stats',\n templateUrl: './dashboard-stats.component.html',\n styleUrls: ['./dashboard-stats.component.css']\n})\nexport class DashboardStatsComponent implements OnInit, AfterViewInit {\n\n @ViewChild('geoMapRef', { static: false })\n geoMapRef!: ElementRef;\n\n color: ThemePalette = 'primary';\n mode: ProgressSpinnerMode = 'determinate';\n\n map: string[] = ['Origin Location', 'Destination Location'];\n maplabels: string = '';\n\n transTypes: string[] = ['Dollar Amount', 'Package Count'];\n transLabels: string = '';\n \n marked = false;\n\n surchargeOptions: ChartOptions = {\n responsive: true,\n\n };\n\n netChargeOptions: ChartOptions = {\n responsive: true,\n scales: {\n xAxes: [{\n scaleLabel: {\n display: true,\n labelString: 'Amount in dollars'\n }\n }]\n }, tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems, data) {\n return ' $' + tooltipItems.xLabel;\n }\n }\n }\n }\n\n netChargeLabels: Label[] = [];\n netChargeType: ChartType = 'horizontalBar';\n netChargeLegend = false;\n netChargePlugins = [];\n netChargeColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n netChargeChartData: ChartDataSets[] = [\n ];\n\n surchargeLabels: Label[] = [];\n surchargeData: MultiDataSet = [\n [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n ];\n doughnutChartType: ChartType = 'doughnut';\n\n basicOptions: any;\n constructor(private apiService: ApiService, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n userInfo!: UserInfo;\n apiData: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n };\n dashboardStats: DashboardStats = {\n StartDate: this.form.StartDate,\n EndDate: this.form.EndDate,\n AverageZone_Profit: 0,\n AverageZone_Amount: 0,\n FreightSpend_FedexEffectiveDiscount: 0,\n FreightSpend_UPSEffectiveDiscount: 0,\n FreightSpend_Profit: 0,\n FreightSpend_Count: 0,\n FreightSpend_Amount: 0,\n Surcharges_Profit: 0,\n Surcharges_Count: 0,\n Surcharges_Amount: 0,\n NetSpend_Profit: 0,\n NetSpend_Count: 0,\n NetSpend_Amount: 0,\n AccountId: 0,\n CarrierId: 0,\n WeightCostPerPackage: 0\n\n };\n surchargesByType: SurchargeByType[] = []\n packageCountByWeight: PackageCountByWeight[] = []\n packageCountByZone: PackageCountByZone[] = []\n packagesByStatesTo: PackagesByStatesTo[] = []\n packagesByStatesFrom: PackagesByStatesFrom[] = []\n netChargeData!: NetCharge[] | [];\n\n weightChartOptions: any = {\n scaleShowVerticalLines: false,\n responsive: true,\n scales: {\n yAxes: [{\n ticks: {\n beginAtZero: true\n },\n scaleLabel: {\n display: true,\n labelString: 'Package Count'\n }\n }],\n xAxes: [{\n ticks: {\n \n },\n scaleLabel: {\n display: true,\n labelString: 'Weight'\n }\n }]\n }\n };\n weightChartLabels: string[] = [];\n weightChartType: ChartType = 'bar';\n weightChartLegend: boolean = true;\n weightChartData: ChartDataSets[] = [];\n weightChartLoading: boolean = true;\n\n layeredPackagesByZonebarChartOptions: any = {\n scaleShowVerticalLines: false,\n responsive: true,\n loading: true,\n scales: {\n yAxes: [{\n ticks: {\n beginAtZero: true\n },\n scaleLabel: {\n display: true,\n labelString: 'Package Count'\n }\n }],\n xAxes: [{\n ticks: {\n \n },\n scaleLabel: {\n display: true,\n labelString: 'Zone'\n }\n }]\n }\n };\n layeredPackagesByZonebarChartLabels: string[] = [];\n layeredPackagesByZonebarChartType: ChartType = 'bar';\n layeredPackagesByZonebarChartLegend: boolean = true;\n\n layeredPackagesByZonebarChartData: any[] = [];\n layeredPackagesByZonebarChartColors: Array = [ // TODO get colors from common area\n { backgroundColor: 'rgb(255, 161, 181)' },\n { backgroundColor: 'rgb(134, 199, 243)' },\n { backgroundColor: 'rgb(255, 226, 154)' },\n { backgroundColor: 'rgb(147, 217, 217)' },\n { backgroundColor: 'rgb(147, 145, 118)' },\n { backgroundColor: 'rgb(107, 51, 34)' },\n { backgroundColor: 'rgb(145, 150, 43)' },\n { backgroundColor: 'rgb(27, 67, 71)' },\n { backgroundColor: 'rgb(38, 38, 37)' },\n { backgroundColor: 'rgb(94, 201, 174)' }\n ];\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n surchargesLoading: boolean = true;\n netChargeLoading: boolean = true;\n packageCountLoading: boolean = true;\n layeredPackageLoading: boolean = true;\n mapLoading: boolean = true;\n statsLoading: boolean = true;\n\n ngAfterViewInit() {\n\n\n }\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.dashboardStatForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.dashboardStatForm;\n \n this.apiData.ClientId = this.userInfo.ClientId;\n this.map = ['Origin Location', 'Destination Location'];\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n this.transLabels = \"Dollar Amount\"\n }\n\n onSubmit(): void {\n this.updateDashboardComponents();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.apiData = {\n AccountId: this.form.AccountId,\n CarrierId: this.form.CarrierId,\n ClientId: this.userInfo.ClientId,\n StartDate: this.form.StartDate,\n EndDate: this.form.EndDate,\n IsPageLoad: false\n };\n\n this.sessionService.dashboardStatForm = this.form;\n\n this.statsLoading = true;\n this.apiService.makeStandardApiCall('values/GetDashboardStats', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.dashboardStats = JSON.parse(data.Value);\n this.statsLoading = false;\n }\n }\n );\n \n this.getNetByDollar();\n\n this.getSurchargeByDollar();\n\n this.packageCountLoading = true;\n this.apiService.makeStandardApiCall('values/GetPackageCountByWeight', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.packageCountByWeight = JSON.parse(data.Value);\n const labels: string[] = [];\n const fedexData: any = [];\n const upsData: any = [];\n\n // Temporary hold data\n this.packageCountByWeight.forEach(item => {\n if ((this.form.CarrierId === 2) && (item.CarrierId !== 2)) {\n return;\n }\n if ((this.form.CarrierId === 1) && (item.CarrierId !== 1)) {\n return;\n }\n\n if (labels.indexOf(item.WeightBucketName) === -1) {\n\n labels.push(item.WeightBucketName);\n }\n\n if (item.CarrierId === 1) {\n fedexData[item.WeightBucketName] = item.PackageCount;\n }\n\n if (item.CarrierId === 2) {\n upsData[item.WeightBucketName] = item.PackageCount;\n }\n });\n\n const fedexChartData: any = {\n data: [],\n label: ['FEDEX'],\n };\n\n const upsChartData: any = {\n data: [],\n label: ['UPS'],\n };\n\n // Organise data for chart\n labels.forEach((item) => {\n if (fedexData[item]) {\n fedexChartData.data.push(fedexData[item]);\n } else {\n fedexChartData.data.push(0);\n }\n\n if (upsData[item]) {\n upsChartData.data.push(upsData[item]);\n } else {\n upsChartData.data.push(0);\n }\n });\n\n // Finally set chart data\n this.weightChartLabels = labels;\n\n // Empty data before pushing\n this.weightChartData = [];\n\n // Add labels according to labels\n switch (this.form.CarrierId) {\n case 0:\n this.weightChartData.push(fedexChartData);\n this.weightChartData.push(upsChartData);\n break;\n case 1:\n this.weightChartData.push(fedexChartData);\n break;\n case 2:\n this.weightChartData.push(upsChartData);\n break;\n }\n this.packageCountLoading = false;\n }\n }\n );\n this.layeredPackageLoading = true;\n this.apiService.makeStandardApiCall('values/GetLayeredPackagesByZone', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.packageCountByZone = JSON.parse(data.Value);\n const paresdArr: { data: number[], label: string }[] = [];\n const chartLabel: Label = [];\n this.packageCountByZone.forEach(\n (result) => {\n // Flag for element found in object\n let found = false;\n\n // Iterate parsed data and append data accordingly\n paresdArr.forEach((item) => {\n if (item.label === result.ServiceGroupName) {\n found = true;\n }\n });\n\n // If not found create new entry\n if (!found) {\n paresdArr.push({ data: [], label: result.ServiceGroupName });\n }\n\n }\n );\n\n this.packageCountByZone.forEach(\n (result) => {\n if ((chartLabel.indexOf(result.ZoneSN.toString()) === -1)) {\n chartLabel.push(result.ZoneSN.toString());\n }\n }\n );\n\n chartLabel.forEach((chartItem) => {\n paresdArr.forEach((groupItem) => {\n let found = false;\n let value = 0;\n this.packageCountByZone.forEach(\n (result) => {\n // Flag for element found in object\n let found = false;\n\n // Iterate parsed data and append data accordingly\n\n if (groupItem.label === result.ServiceGroupName && chartItem === result.ZoneSN.toString()) {\n value = result.PackageCount;\n found = true;\n }\n\n\n }\n\n );\n\n groupItem.data.push(value);\n\n });\n });\n\n // Add chart labels\n\n // If no data from api set default data to display empty chart\n if (paresdArr.length === 0) {\n paresdArr.push({ data: [], label: 'No data' });\n }\n\n //// Construct labels\n //for (let i = 1; i <= paresdArr[0].data.length; i++) {\n //\tchartLabel.push(i.toString());\n //}\n\n this.layeredPackagesByZonebarChartLabels = chartLabel;\n this.layeredPackagesByZonebarChartData = paresdArr;\n this.layeredPackagesByZonebarChartOptions.loading = false;\n }\n this.layeredPackageLoading = false;\n }\n );\n\n this.maplabels = 'Destination Location';\n this.getPackagesByStateTo();\n }\n\n getNetByDollar(): void {\n this.netChargeLoading = true;\n this.netChargeOptions = {\n responsive: true,\n scales: {\n xAxes: [{\n scaleLabel: {\n display: true,\n labelString: 'Amount in dollars'\n }\n }]\n }, tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems, data) {\n return ' $' + tooltipItems.xLabel;\n }\n }\n }\n }\n this.apiService.makeStandardApiCall('values/GetNetChargeByServices', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.netChargeData = JSON.parse(data.Value);\n // Temp variables\n const labelsTemp: Label[] = [];\n const valuesTemp: any = [];\n\n // Populate\n this.netChargeData.forEach(x => {\n labelsTemp.push(x.ServiceGroupName);\n valuesTemp.push(x.NetFreight);\n });\n\n // Set values to chart\n this.netChargeLabels = labelsTemp;\n this.netChargeChartData[0].data = valuesTemp;\n }\n this.netChargeLoading = false;\n }\n );\n }\n\n getNetByCount(): void {\n this.netChargeLoading = true;\n this.netChargeOptions = {\n responsive: true,\n scales: {\n xAxes: [{\n scaleLabel: {\n display: true,\n labelString: 'Package Count'\n }\n }]\n }, tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems, data) {\n return ' $' + tooltipItems.xLabel;\n }\n }\n }\n }\n this.apiService.makeStandardApiCall('values/GetNetChargeByServices', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.netChargeData = JSON.parse(data.Value);\n // Temp variables\n const labelsTemp: Label[] = [];\n const valuesTemp: any = [];\n\n // Populate\n this.netChargeData.forEach(x => {\n labelsTemp.push(x.ServiceGroupName);\n valuesTemp.push(x.PackageCount);\n });\n\n // Set values to chart\n this.netChargeLabels = labelsTemp;\n this.netChargeChartData[0].data = valuesTemp;\n }\n this.netChargeLoading = false;\n }\n );\n }\n\n getSurchargeByDollar(): void {\n this.surchargesLoading = true;\n this.apiService.makeStandardApiCall('values/GetSurchargeByTypes', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.surchargesByType = JSON.parse(data.Value);\n const surchargeLabelsTemp: Label[] = [];\n const surchargeDataTemp: MultiDataSet = [\n []\n ];\n this.surchargesByType.forEach(element => {\n surchargeLabelsTemp.push(element.ServiceGroupName);\n surchargeDataTemp[0].push(element.NetCharge);\n });\n this.surchargeLabels = surchargeLabelsTemp;\n this.surchargeData = surchargeDataTemp;\n }\n this.surchargesLoading = false;\n }\n );\n }\n\n getSurchargeByCount(): void {\n this.surchargesLoading = true;\n this.apiService.makeStandardApiCall('values/GetSurchargeByTypes', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.surchargesByType = JSON.parse(data.Value);\n const surchargeLabelsTemp: Label[] = [];\n const surchargeDataTemp: MultiDataSet = [\n []\n ];\n this.surchargesByType.forEach(element => {\n surchargeLabelsTemp.push(element.ServiceGroupName);\n surchargeDataTemp[0].push(element.NetCharge);\n });\n this.surchargeLabels = surchargeLabelsTemp;\n this.surchargeData = surchargeDataTemp;\n }\n this.surchargesLoading = false;\n }\n );\n }\n\n getPackagesByStateTo(): void {\n this.mapLoading = true;\n this.apiService.makeStandardApiCall('values/GetPackagesByStatesTo', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.packagesByStatesTo = JSON.parse(data.Value);\n\n // Parse data\n const mapData: (string | number)[][] = [];\n mapData.push(['state', 'Packages']);\n this.packagesByStatesTo.forEach(function (item) {\n if (item.RecipState !== null)\n mapData.push([item.RecipState.toUpperCase(), item.Packages]);\n });\n\n // Init geo chart\n this.initGeoChart(mapData);\n\n }\n this.mapLoading = false;\n }\n );\n }\n\n getPackagesByStateFrom(): void {\n this.mapLoading = true;\n this.apiService.makeStandardApiCall('values/GetPackagesByStatesFrom', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.packagesByStatesFrom = JSON.parse(data.Value);\n\n // Parse data\n const mapData: (string | number)[][] = [];\n mapData.push(['state', 'Packages']);\n this.packagesByStatesFrom.forEach(function (item) {\n if (item.ShipperState !== null)\n mapData.push([item.ShipperState.toUpperCase(), item.Packages]);\n });\n\n // Init geo chart\n this.initGeoChart(mapData);\n\n }\n this.mapLoading = false;\n }\n );\n }\n /**\n * Load geo chart api\n */\n loadGeoApi() {\n // Load google charts\n google.charts.load('current', {\n 'packages': ['geochart'],\n // Note: you will need to get a mapsApiKey for your project.\n // See: https://developers.google.com/chart/interactive/docs/basic_load_libs#load-settings\n 'mapsApiKey': 'AIzaSyD-9tSrke72PouQMnMX-a7eZSW0jkFMBWY'\n });\n }\n\n /**\n * Initialize geo chart\n * @param res Raw data for packages by states\n */\n initGeoChart(data: any) {\n const ele = this.geoMapRef.nativeElement;\n google.charts.setOnLoadCallback(function () {\n const sourceData = google.visualization.arrayToDataTable(data);\n const options = {\n region: 'US',\n resolution: 'provinces',\n colorAxis: { colors: ['#cbd6d0', '#49bc7a'] },\n };\n const chart = new google.visualization.GeoChart(ele);\n chart.draw(sourceData, options);\n });\n }\n\n toggleVisibility(event: MatRadioChange) {\n this.marked = event.source.checked;\n if (event.source.value == 'Destination Location') {\n this.getPackagesByStateTo();\n }\n else {\n this.getPackagesByStateFrom();\n }\n }\n\n toggleTransType(event: MatRadioChange) {\n this.marked = event.source.checked;\n if (event.source.value == 'Dollar Amount') {\n this.getNetByDollar();\n }\n else {\n this.getNetByCount();\n }\n }\n\n goToLink(link: string): void {\n const navigationDetails: string[] = [link];\n this.router.navigate(navigationDetails);\n }\n}\n","\n\n\n\n
\n

Forgot Password

\n
\n
\n
\n

\n Enter your email to reset your password:\n

\n
\n
\n\n Email\n \n \n Email is required!\n \n\n
\n\n
\n
\n \n
\n
\n\n","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { Router } from '@angular/router';\nimport { AuthService } from '../services/auth.service';\n\n@Component({\n selector: 'app-forgot-password',\n templateUrl: './forgot-password.component.html',\n styleUrls: ['./forgot-password.component.css']\n})\nexport class ForgotPasswordComponent implements OnInit {\n\n constructor(private authService: AuthService, private notification: MatSnackBar, private router: Router) { }\n\n attemptingLogin: boolean = false;\n\n form: any = {\n username: null\n };\n\n ngOnInit(): void {\n }\n\n onSubmit(): void {\n const { username } = this.form;\n this.attemptingLogin = true;\n this.authService.forgotpassword(this.form.username).subscribe(\n data => {\n if (data.StatusCode == 500 ){\n this.notification.open(\"An error occurred, please try again later.\");\n } else {this.notification.open(\"An error occurred, please try again later.\");\n this.notification.open(\"If there is a valid email on file please check it for the link to reset.\");\n this.router.navigate(['/']);\n }\n this.attemptingLogin = false;\n },\n err => {\n this.notification.open(\"An error occurred, please try again later.\");\n this.attemptingLogin = false;\n }\n );\n }\n}\n","import { ChartDataModel } from \"./interfaces\";\n\nexport class AppCommonFunctions {\n static getChartScale(xName: string = '', yName: string = '', beginAtZero = true): object {\n\t\treturn {\n\t\t\tyAxes: [{\n\t\t\t\tticks: {\n\t\t\t\t\tbeginAtZero: beginAtZero\n\t\t\t\t},\n\t\t\t\tscaleLabel: {\n\t\t\t\t\tdisplay: yName ? true : false,\n\t\t\t\t\tlabelString: yName\n\t\t\t\t}\n\t\t\t}],\n\t\t\txAxes: [{\n\t\t\t\tscaleLabel: {\n\t\t\t\t\tdisplay: xName ? true : false,\n\t\t\t\t\tlabelString: xName\n\t\t\t\t}\n\t\t\t}]\n\t\t};\n\t}\n static parseChartDataFromApi(res: any[], column: string): ChartDataModel {\n\t\tconst obj = new ChartDataModel();\n\t\tres.forEach(x => {\n\t\t\tobj.labels.push(x.Month.substring(0, 3) + '-' + x.Year.substring(2));\n\t\t\tobj.values.push(x[column]);\n\t\t});\n\t\treturn obj;\n\t}\n}\n","import { HTTP_INTERCEPTORS, HttpEvent } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\n\nimport { TokenStorageService } from '../services/token-storage.service';\nimport { Observable } from 'rxjs';\n\nconst TOKEN_HEADER_KEY = 'Authorization'; // for Spring Boot back-end\n\n@Injectable()\nexport class AuthInterceptor implements HttpInterceptor {\n constructor(private token: TokenStorageService) { }\n\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\n let authReq = req;\n const token = this.token.getToken();\n if (token != null) {\n authReq = req.clone({ headers: req.headers.set(TOKEN_HEADER_KEY, 'Bearer ' + token) });\n }\n \n return next.handle(authReq);\n }\n}\n\nexport const AuthInterceptorProviders = [\n { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true }\n];","import {AppCommonFunctions} from './app-common-functions';\n\nexport const appConstants = {\n\tfun: AppCommonFunctions,\n\tfrequencies: [ // TODO DELETE\n\t\t{value: '1', viewValue: 'Week'},\n\t\t{value: '2', viewValue: 'Month'},\n\t\t{value: '3', viewValue: 'Year'}\n\t],\n\tcarriers: [\n\t\t{value: '0', viewValue: 'All'},\n\t\t{value: '1', viewValue: 'FEDEX'},\n\t\t{value: '2', viewValue: 'UPS'}\n\t],\n\tcarriers_limited: [\n\t\t{value: '1', viewValue: 'FEDEX'},\n\t\t{value: '2', viewValue: 'UPS'}\n\t],\n\tCarriers: {\n\t\tFEDEX: 1,\n\t\tUPS: 2,\n\t},\n\tOPTIONS: {\n\t\tCHARTS: {\n\t\t\tDEFAULT: {\n\t\t\t\tLINE_CHART_DEFAULT_COLOR: {\n\t\t\t\t\tbackgroundColor: 'rgba(255,255,255,0)',\n\t\t\t\t\tborderColor: 'rgba(255,100,133,1)',\n\t\t\t\t\tpointBackgroundColor: 'rgba(148,159,177,1)',\n\t\t\t\t\tpointBorderColor: '#fff',\n\t\t\t\t\tpointHoverBackgroundColor: '#fff',\n\t\t\t\t\tpointHoverBorderColor: 'rgba(148,159,177,0.8)'\n\t\t\t\t},\n\t\t\t\tBar_CHART_DEFAULT_COLOR: {\n\t\t\t\t\tbackgroundColor: 'rgba(54, 163, 247,0)',\n\t\t\t\t\tborderColor: 'rgba(54, 163, 247,0)',\n\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tBarOPTIONS: {\n\t\tCHARTS: {\n\t\t\tDEFAULT: {\n\t\t\t\tLINE_CHART_DEFAULT_COLOR: {\n\t\t\t\t\tbackgroundColor: 'rgba(100,200,255,0)',\n\t\t\t\t\tborderColor: 'rgba(130,103,230,1)',\n\t\t\t\t\tpointBackgroundColor: 'rgba(148,159,177,1)',\n\t\t\t\t\tpointBorderColor: '#fff',\n\t\t\t\t\tpointHoverBackgroundColor: '#fff',\n\t\t\t\t\tpointHoverBorderColor: 'rgba(148,159,177,0.8)'\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\tCHARTS: {\n\t\tTYPES: {\n\t\t\tHORIZONTAL_BAR: 'horizontalBar',\n\t\t\tVERTICAL_BAR: 'bar',\n LINE_CHART: 'line',\n PIE_CHART: 'pie'\n\t\t}\n\t},\n\tFREQUENCIES: {\n\t\tWEEK: '1',\n\t\tMONTH: '2',\n\t\tYEAR: '3'\n\t},\n\tCARRIERS: {\n\t\tALL: '0',\n\t\tFEDEX: '1',\n\t\tUPS: '2'\n\t},\n\tUSER_TYPE: {\n\t\tADMIN: 'ADMIN',\n\t\tUSER: 'USER',\n\t},\n\tCONFIG: {\n\t\tDATA_TABLE: {\n\t\t\tPAGE_LIMIT: 50\n\t\t}\n\t},\n};","import { number } from \"echarts\"\n\nexport interface UserInfo {\n ClientId: number;\n FirstName: string;\n LastName: string;\n Email: string;\n ResetToken: string;\n TokenAdded: string;\n UserName: string;\n CompanyName: string;\n Password: string;\n Occupation: string;\n Address: string;\n City: string;\n State: string;\n Zip: string;\n UserType: string;\n}\n\nexport interface ApiResponse {\n StatusCode: number,\n Value: any,\n Formatters: any,\n ContentTypes: any,\n DeclaredType: any\n}\n\nexport interface StandardApiRequest {\n AccountId: number,\n CarrierId: number,\n StartDate: Date,\n EndDate: Date,\n IsPageLoad: boolean,\n ClientId: number\n}\n\nexport interface SearchApiRequest {\n AccountId: number,\n CarrierId: number,\n StartDate: Date,\n EndDate: Date,\n SearchFieldId: number,\n SearchValue: string,\n ClientId: number\n}\n\nexport interface ReportApiRequest {\n AccountId: number,\n CarrierId: number,\n StartDate: Date,\n EndDate: Date,\n IsPageLoad: boolean,\n ClientId: number,\n ReportId: number\n}\n\nexport interface Report {\n ReportId: number,\n ReportName: string\n}\n\nexport interface DashboardStats {\n StartDate: Date,\n EndDate: Date,\n AverageZone_Profit: number,\n AverageZone_Amount: number,\n FreightSpend_FedexEffectiveDiscount: number,\n FreightSpend_UPSEffectiveDiscount: number,\n FreightSpend_Profit: number,\n FreightSpend_Count: number,\n FreightSpend_Amount: number,\n Surcharges_Profit: number,\n Surcharges_Count: number,\n Surcharges_Amount: number,\n NetSpend_Profit: number,\n NetSpend_Count: number,\n NetSpend_Amount: number,\n AccountId: number,\n CarrierId: number,\n WeightCostPerPackage: number,\n}\n\nexport interface NetCharge {\n ServiceGroupID: number\n ServiceGroupName: string\n PackageCount: number\n NetFreight: number\n NetCharge: number\n Incentive: number\n RatedWeight: number\n EffectiveDiscount: number\n}\n\nexport interface SurchargeByType {\n ServiceGroupName: string\n NetCharge: number\n}\n\nexport interface PackageCountByWeight {\n CarrierId: number,\n CarrierName: string,\n WeightBucketName: string,\n WeightBucketId: number,\n PackageCount: number\n}\n\nexport interface PackageCountByZone {\n ZoneSN: number,\n ServiceGroupName: string,\n ServiceGroupId: number,\n PackageCount: number,\n NetCharge: number\n}\n\nexport interface PackagesByStatesTo {\n RecipState: string,\n RecipCountry: string,\n Packages: number\n}\n\nexport interface PackagesByStatesFrom {\n ShipperState: string,\n ShipperCountry: string,\n Packages: number\n}\n\nexport interface Carrier {\n CarrierId: number,\n CarrierName: string\n}\n\nexport interface Account {\n AccountId: number,\n AccountNumber: string\n}\n\nexport interface SearchField {\n SearchFieldId: number,\n SearchFieldDesc: string\n}\n\nexport class ChartDataModel {\n public labels: string[] = [];\n public values: any = [];\n}\n\nexport interface RefundTotalByDisputeType {\n CarrierId: number,\n DisputeType: string,\n RefundTotal: number\n}\n\nexport interface Airbill {\n InvoiceID: number,\n AccountNumber: string,\n InvoiceNumber: string,\n HasTracking: boolean,\n AirbillID: number,\n AirbillNumber: string,\n ChargeTypeID: number,\n ShipperName: string,\n ShipperCompany: string,\n ShipperAddress: string,\n ShipperAddress2: string,\n ShipperAddress3: string,\n ShipperCity: string,\n ShipperState: string,\n ShipperZip: string,\n ShipperCountry: string,\n RecipName: string,\n RecipCompany: string,\n RecipAddress: string,\n RecipAddress2: string,\n RecipAddress3: string,\n RecipCity: string,\n RecipState: string,\n RecipZip: string,\n RecipCountry: string,\n RegionCode: string,\n PaymentTypeID: number,\n ReferenceNumber: string,\n SignedBy: string,\n PickupRecordNumber: string,\n PickupDate: Date,\n ServiceID: number,\n AreaID: number,\n Zone: string,\n FirstAttempt: Date,\n DeliveryDate: Date,\n ResidentialDelivery: boolean,\n SaturdayDelivery: boolean,\n Weight: number,\n WeightUnits: string,\n DimensionalWeightIndicator: boolean,\n Oversize1Indicator: boolean,\n Oversize2Indicator: boolean,\n CODIndicator: boolean,\n AdditionalHandlingIndicator: boolean,\n ExtendedDestinationIndicator: boolean,\n InvalidAccountChargeIndicator: boolean,\n DeliveryAreaSurchargeIndicator: boolean,\n ChargebackSurchargeIndicator: boolean,\n PackageTypeID: number,\n Pieces: number,\n TransportationCharge: number,\n Discount: number,\n FuelSurcharge: number,\n ResidentialCharge: number,\n SaturdayCharge: number,\n AddressCorrectionCharge: number,\n DeclaredValueCharge: number,\n InaccessibleDangerousGoodsCharge: number,\n AccessibleDangerousGoodsCharge: number,\n DeliveryAreaSurcharge: number,\n ExtraServiceCharge: number,\n IncentiveAmount: number,\n TotalCharge: number,\n BalanceDue: number,\n StatusID: number,\n TransitStatusID: number,\n Deadline: Date,\n ServiceFailureID: number,\n ReturnService: boolean,\n ContentsDescription: string,\n Accepted: boolean,\n LastTracked: Date,\n Generated: Date,\n GeneratedFromRecordID: number,\n PublishedRate: number,\n CarrierServiceName: string,\n DamagedDelivery: boolean,\n GSRDaysInTransit: number,\n AddressID: number,\n MultiPack: boolean,\n DiscountPerformancePricing: number,\n EarnedDiscount: number,\n GraceDiscount: number,\n VolumeDiscount: number,\n AutomationBonusDiscount: number,\n DropOffDiscount: number,\n Discount1: number,\n RatedWeight: string;\n EnteredWeightUnits: string,\n BilledWeightUnits: string,\n PublicRate: number,\n BASISVALUE: number,\n BASISCURRENCYCODE: string,\n WeightBucketID: number,\n ZipTypeID: number,\n GroundServiceCode: string,\n BundleNumber: string,\n NetFreightCharge: number,\n MultiweightIndicator: boolean,\n DirectionID: number,\n ChargeCategoryCodeId: number,\n}\n\nexport interface TrackingException {\n ScanCodeReason: string,\n ExceptionCount: number\n}\n\nexport interface PerformanceByService {\n ServiceGroupName: string,\n TotalPackage: number,\n RawLate: number,\n OntimePercentage: number\n}\n\nexport interface PerformanceStats {\n TotalPackage: number,\n RawLate: number,\n OntimePercentage: number,\n TotalRefunds: number,\n NonInvoicedRefunds : number\n}\n\nexport interface ClientInvoice {\n NUMBER: number,\n ClientInvoiceID: number,\n InvoiceDate: Date,\n AmountDue: number,\n AmountPaid: number,\n AmountUnpaid: number,\n ClientID: number,\n RefundFee: number,\n Adjustments: number,\n AdjustmentDesc: string,\n MiscCharges: number,\n MiscChargeDesc: string,\n PastDue: number,\n ClientName: string,\n CompanyName: string,\n RepID: number,\n CommissionAmount: number,\n PaymentAllocationsCount: number,\n}\n\nexport interface CarrierInvoice\n\t{\n\t\tNUMBER: number,\n\t\tInvoiceID: number,\n\t\tInvoiceDate: Date,\n\t\tInvoiceNumber: string,\n\t\tInvoiceAmount: number,\n\t\tAccountID: number,\n\t\tClientID: number,\n\t\tAccountName: string,\n\t\tAccountNumber: string \n }\n\nexport interface ClientInvoiceRequest {\n ClientId: number,\n PageIndex: number,\n PageSize: number,\n SortColumn: string,\n SortOrder: string,\n RepId: number\n}\n\nexport interface DownloadClientInvoiceRequest {\n ClientInvoiceID: number\n}\n\nexport interface AirbillRequest {\n AirbillId: number\n}\n\nexport interface AvoidableCharges {\n Description: string,\n ClientName: string,\n ChargeCount: number,\n Amount: number,\n ReportId: number,\n Info: string\n}\n\nexport interface AvoidableChargesByWeek {\n Description: string,\n ClientName: string,\n ChargeCount: number,\n Amount: number,\n WeekDate: number,\n YearDate: string\n}\n\nexport interface TrackingDataResponse\n {\n ScanTime: Date,\n EventDescription: string,\n City: string,\n State: string,\n Zip: string,\n SignedBy: string,\n DeliveryDate: Date\n }\n\nexport interface TotalNetCharge\n{\n Year: string,\n Month: string,\n NetCharge: number\n}\n\nexport interface TotalWeight\n{\n Year: string,\n Month: string,\n Weight: number\n}\n\nexport interface SurchargeTotal\n{\n Year: string,\n Month: string,\n TotalSurcharge: number\n}\nexport interface CostByMonth\n{\n Year: string,\n Month: string,\n Cost: number\n}\n\nexport interface RefundsByMonth\n{\n Year: string,\n Month: string,\n TotalRefunds: number\n}\n\nexport interface Interfaces {\n}\n","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HTTP_INTERCEPTORS } from \"@angular/common/http\";\nimport { Injectable } from \"@angular/core\";\nimport { Observable, of, throwError } from \"rxjs\";\nimport { LoadingService } from \"../services/loader.service\";\nimport { finalize, catchError } from 'rxjs/operators';\nimport { Router } from \"@angular/router\";\nimport { TokenStorageService } from \"../services/token-storage.service\";\nimport { MatSnackBar } from '@angular/material/snack-bar';\n\n@Injectable()\nexport class NetworkInterceptor implements HttpInterceptor {\n constructor(private loader: LoadingService, private notification: MatSnackBar, private router: Router, private tokenStorage: TokenStorageService) {}\n\n intercept(\nrequest: HttpRequest,\nnext: HttpHandler\n): Observable> {\n this.loader.show();\n return next.handle(request).pipe(\n catchError((error) => {\n let handled: boolean = false;\n console.error(error);\n if (error instanceof HttpErrorResponse) {\n if (error.error instanceof ErrorEvent) {\n console.error(\"Error Event\");\n } else {\n console.log(`error status : ${error.status} ${error.statusText}`);\n switch (error.status) {\n case 401: //login\n this.tokenStorage.signOut();\n this.router.navigateByUrl(\"/login\");\n this.notification.open('Your session has timed out. Please log back in.');\n console.log(`redirect to login`);\n handled = true;\n break;\n case 403: //forbidden\n this.router.navigateByUrl(\"/login\");\n console.log(`redirect to login`);\n handled = true;\n break;\n }\n }\n }\n else {\n console.error(\"Other Errors\");\n }\n \n if (handled) {\n console.log('return back ');\n return of(error);\n } else {\n console.log('throw error back to to the subscriber');\n return throwError(error);\n }\n }), \n finalize(() => {\n this.loader.hide();\n })\n );\n }\n}\nexport const NetworkInterceptorProviders = [\n { provide: HTTP_INTERCEPTORS, useClass: NetworkInterceptor, multi: true }\n ];","\r\n\r\n\r\n\r\n
\r\n

Account Login

\r\n
\r\n
\r\n \r\n Email\r\n \r\n \r\n Username is required!\r\n \r\n \r\n
\r\n
\r\n \r\n Password\r\n \r\n \r\n Password is required\r\n \r\n Password must be at least 4 characters\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n Login failed: {{ errorMessage }}\r\n \r\n
\r\n
\r\n
\r\n \r\n Forgot Password?\r\n \r\n \r\n
\r\n
\r\n \r\n","import { Component, OnInit } from '@angular/core';\nimport { AuthService } from '../services/auth.service';\nimport { TokenStorageService } from '../services/token-storage.service';\nimport { Router } from '@angular/router';\nimport { UserService } from '../services/user.service';\nimport { MatSnackBar } from '@angular/material/snack-bar';\n\n@Component({\n selector: 'app-login',\n templateUrl: './login.component.html',\n styleUrls: ['./login.component.css']\n})\nexport class LoginComponent implements OnInit {\n form: any = {\n username: null,\n password: null\n };\n isLoggedIn = false;\n isLoginFailed = false;\n errorMessage = '';\n roles: string[] = [];\n attemptingLogin: boolean = false;\n\n constructor(private authService: AuthService, private tokenStorage: TokenStorageService, private router: Router, private userService: UserService, private notification: MatSnackBar) { }\n\n ngOnInit(): void {\n if (this.tokenStorage.getToken()) {\n this.isLoggedIn = true;\n this.roles = this.tokenStorage.getUser().roles;\n this.router.navigate(['/dashboard']);\n }\n }\n\n onSubmit(): void {\n const { username, password } = this.form;\n this.attemptingLogin = true;\n this.authService.login(username, password).subscribe(\n data => {\n if (data.StatusCode == 401 ){\n this.errorMessage = \"There was an issue logging in. Please check your username/password combination and try again\";\n this.isLoginFailed = true; \n this.attemptingLogin = false;\n } else {\n this.tokenStorage.saveToken(data.Value);\n this.isLoginFailed = false;\n this.isLoggedIn = true;\n this.attemptingLogin = false;\n this.userService.getUserInfo(username);\n }\n \n },\n err => {\n this.errorMessage = err.error.message;\n this.isLoginFailed = true;\n this.attemptingLogin = false;\n }\n );\n }\n\n reloadPage(): void {\n window.location.reload();\n }\n}","import { Component, OnInit, ViewChild } from '@angular/core';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatSort } from '@angular/material/sort';\nimport { MatTableDataSource } from '@angular/material/table';\nimport * as fileSaver from 'file-saver';\nimport { ClientInvoice, ClientInvoiceRequest, DownloadClientInvoiceRequest, UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-monthly-invoices',\n templateUrl: './monthly-invoices.component.html',\n styleUrls: ['./monthly-invoices.component.css']\n})\nexport class MonthlyInvoicesComponent implements OnInit {\n\n constructor(private apiService: ApiService, private userService: UserService) { }\n\n displayedColumns: string[] = ['ClientInvoiceID', 'InvoiceDate', 'AmountDue', 'AmountPaid', 'AmountUnpaid', 'invoice-action'];\n\n userInfo!: UserInfo;\n clientInvoices!: MatTableDataSource;\n clientInvoiceRequest!: ClientInvoiceRequest;\n fileDownloading: boolean = false;\n\n @ViewChild('paginator')\n paginator!: MatPaginator;\n \n @ViewChild(MatSort)\n sort!: MatSort;\n \n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n\n this.clientInvoiceRequest = {\n ClientId: this.userInfo.ClientId,\n PageIndex: 1,\n PageSize: 10000,\n RepId: 0,\n SortColumn: 'ClientInvoiceID',\n SortOrder: 'DESC'\n }\n\n this.apiService.makeStandardApiCall('values/GetClientInvoices', this.clientInvoiceRequest).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.clientInvoices = new MatTableDataSource(JSON.parse(data.Value));\n this.clientInvoices.paginator = this.paginator;\n this.clientInvoices.sort = this.sort;\n }\n }\n );\n }\n\n downloadInvoice(InvoiceNumber: number): void {\n this.fileDownloading = true;\n const downloadRequest: DownloadClientInvoiceRequest = {\n ClientInvoiceID: InvoiceNumber\n }\n this.apiService.downloadClientInvoiceFile(downloadRequest).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n let reportName = 'ClientInvoice';\n fileSaver.saveAs(blob, reportName + '.xlsx');\n this.fileDownloading = false;\n }), (error: any) => this.fileDownloading = false, console.log('Error downloading the file'), //when you use stricter type checking\n () => console.info('File downloaded successfully');\n }\n}\n","
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n
Invoice Number {{element.ClientInvoiceID}} Invoice Date {{element.InvoiceDate | date}} Invoice Total {{element.AmountDue | currency}} Amount Paid {{element.AmountPaid | currency}} Amount Unpaid {{element.AmountUnpaid | currency}} Action
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatRadioChange } from '@angular/material/radio';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport { ChartOptions, ChartType, ChartDataSets } from 'chart.js';\nimport * as fileSaver from 'file-saver';\nimport { Label, MultiDataSet } from 'ng2-charts';\nimport { StandardApiRequest, NetCharge, Carrier, Account, UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-net-trans-chart',\n templateUrl: './net-trans-chart.component.html',\n styleUrls: ['./net-trans-chart.component.css']\n})\nexport class NetTransChartComponent implements OnInit {\n displayedColumns: string[] = ['service-group', 'net-charge'];\n netChargeTable: MatTableDataSource = new MatTableDataSource();\n netChargeOptions: ChartOptions = {\n responsive: true,\n scales: {\n xAxes: [{\n scaleLabel: {\n display: true,\n labelString: 'Amount in dollars'\n }\n }]\n }, tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems, data) {\n return ' $' + tooltipItems.xLabel;\n }\n }\n }\n }\n\n netChargeLabels: Label[] = [];\n netChargeType: ChartType = 'horizontalBar';\n netChargeLegend = false;\n netChargePlugins = [];\n netChargeColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n netChargeChartData: ChartDataSets[] = [\n ];\n\n\n\n basicOptions: any;\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n userInfo!: UserInfo;\n apiData: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n };\n\n netChargeData!: NetCharge[] | [];\n\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n netChargeLoading: boolean = true;\n\n ngAfterViewInit() {\n\n\n }\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.dashboardStatForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.dashboardStatForm;\n\n this.apiData.ClientId = this.userInfo.ClientId;\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n onSubmit(): void {\n this.updateDashboardComponents();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.apiData = {\n AccountId: this.form.AccountId,\n CarrierId: this.form.CarrierId,\n ClientId: this.userInfo.ClientId,\n StartDate: this.form.StartDate,\n EndDate: this.form.EndDate,\n IsPageLoad: false\n };\n\n this.sessionService.dashboardStatForm = this.form;\n\n this.netChargeLoading = true;\n this.apiService.makeStandardApiCall('values/GetNetChargeByServices', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.netChargeData = JSON.parse(data.Value);\n this.netChargeTable = new MatTableDataSource(JSON.parse(data.Value))\n // Temp variables\n const labelsTemp: Label[] = [];\n const valuesTemp: any = [];\n\n // Populate\n this.netChargeData.forEach(x => {\n labelsTemp.push(x.ServiceGroupName);\n valuesTemp.push(x.NetFreight);\n });\n\n // Set values to chart\n this.netChargeLabels = labelsTemp;\n this.netChargeChartData[0].data = valuesTemp;\n }\n this.netChargeLoading = false;\n }\n );\n\n }\n\n downloadNetCharge(): void {\n this.apiService.downloadNetTransportation(this.apiData).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'NetCharge.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n \n NET TRANSPORTATION BY SERVICE\n \n
\n\n \n \n
\n\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Service Group {{element.ServiceGroupName}} Net Charge {{element.NetFreight | currency}}
\n \n
\n
\n
\n \n
","import { AfterViewInit, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\nimport { MatPaginator } from '@angular/material/paginator';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Account, Airbill, Carrier, SearchApiRequest, SearchField, StandardApiRequest, TrackingDataResponse, UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\nimport jsPDF from 'jspdf';\nimport html2canvas from 'html2canvas';\nimport { MatSort } from '@angular/material/sort';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport * as fileSaver from 'file-saver';\n\n@Component({\n selector: 'app-package-search',\n templateUrl: './package-search.component.html',\n styleUrls: ['./package-search.component.css']\n})\n\nexport class PackageSearchComponent implements OnInit, AfterViewInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private sessionService: SessionService, private userService: UserService) { }\n\n userInfo!: UserInfo;\n formErrors: boolean = false;\n displayedColumns: string[] = ['airbill', 'AirbillNumber', 'tracking-detail', 'CarrierServiceName', 'TotalCharge', 'IncentiveAmount', 'AccountNumber', 'InvoiceNumber', 'ShipperCompany', 'ShipperName', 'ShipperAddress', 'ShipperCity', 'ShipperState', 'ShipperZip', 'ShipperCountry', 'RecipCompany', 'RecipName', 'RecipAddress', 'RecipCity', 'RecipState', 'RecipZip', 'RecipCountry', 'ReferenceNumber', 'PickupRecordNumber', 'PickupDate', 'SignedBy', 'DeliveryDate', 'Deadline', 'Weight', 'WeightUnits'];\n displayedTrackingColumns: string[] = ['airbill', 'tracking-number', 'service', 'acount', 'invoice'];\n currentAirbill: Airbill | undefined;\n\n paginator!: MatPaginator;\n @ViewChild('paginator') set MatPaginator(mp: MatPaginator) {\n this.paginator = mp;\n this.setDataSourceAttributes();\n }\n \n @ViewChild('trackingPaginator')\n trackingPaginator!: MatPaginator;\n\n @ViewChild('trackingGrid')\n htmlData!: ElementRef;\n\n @ViewChild(MatSort)\n sort!: MatSort;\n\n dateToday: Date = new Date();\n form: SearchApiRequest = {\n StartDate: new Date(new Date(Date.now() - 365 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n SearchFieldId: 0,\n SearchValue: ''\n }\n\n Packages: MatTableDataSource = new MatTableDataSource();\n Tracking!: MatTableDataSource;\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n SearchFields: SearchField[] = []\n errorMessage: string = \"\";\n currentlySearching: boolean = false;\n showTracking: boolean = false;\n hasPackages: boolean = false;\n\n setDataSourceAttributes(): void {\n this.Packages.paginator = this.paginator;\n this.Packages.sort = this.sort;\n }\n\n ngAfterViewInit() {\n\n }\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.searchForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.searchForm;\n\n this.SearchFields = this.sessionService.SearchFields;\n if (this.SearchFields.length === 0) {\n //get search fields from database\n this.apiService.makeStandardApiGet('values/GetSearchFields').subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const searchFields: SearchField[] = JSON.parse(data.Value);\n this.SearchFields = [];\n searchFields.forEach(element => {\n this.SearchFields.push(element);\n });\n this.sessionService.SearchFields = this.SearchFields;\n }\n }\n );\n }\n\n \n\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n searchPackages(): void {\n this.formErrors = false;\n this.errorMessage = '';\n if (this.form.SearchFieldId === 0) {\n this.formErrors = true;\n this.errorMessage += \"Field to Search must be selected.\\n\";\n }\n if (this.form.SearchValue === undefined || this.form.SearchValue.length === 0) {\n this.formErrors = true;\n this.errorMessage += \"Search Value must be entered.\\n\";\n }\n \n if (!this.formErrors) {\n this.currentlySearching = true;\n this.showTracking = false;\n this.hasPackages = false;\n this.apiService.makeStandardApiCall('values/SearchPackages', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.Packages = new MatTableDataSource(JSON.parse(data.Value));\n this.Packages.paginator = this.paginator;\n this.Packages.sort = this.sort;\n this.hasPackages = true;\n this.currentlySearching = false;\n }\n }\n );\n }\n }\n\n viewAirbill(airbill: Airbill): void {\n this.currentAirbill = airbill;\n }\n\n displayTracking(airbill: Airbill): void {\n const airbillRequest = {\n AirbillId: airbill\n }\n this.currentlySearching = true;\n this.apiService.makeStandardApiCall('values/GetTrackingData', airbillRequest).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.Tracking = new MatTableDataSource(JSON.parse(data.Value));\n this.Tracking.paginator = this.trackingPaginator;\n this.currentlySearching = false;\n this.showTracking = true;\n }\n }\n );\n }\n\n hideTracking(): void {\n this.showTracking = false;\n }\n\n public openPDF():void {\n const DATA = document.getElementById('trackingGrid') as HTMLElement;\n \n html2canvas(DATA).then(canvas => {\n \n let fileWidth = 208;\n let fileHeight = canvas.height * fileWidth / canvas.width;\n \n const FILEURI = canvas.toDataURL('image/png')\n let PDF = new jsPDF('p', 'mm', 'a4');\n let position = 0;\n PDF.addImage(FILEURI, 'PNG', 0, position, fileWidth, fileHeight)\n \n PDF.save('TrackingDetail_' + this.currentAirbill?.AirbillNumber + '.pdf');\n }); \n }\n\n downloadSearch(): void {\n this.formErrors = false;\n this.errorMessage = '';\n if (this.form.SearchFieldId === 0) {\n this.formErrors = true;\n this.errorMessage += \"Field to Search must be selected.\\n\";\n }\n if (this.form.SearchValue === undefined || this.form.SearchValue.length === 0) {\n this.formErrors = true;\n this.errorMessage += \"Search Value must be entered.\\n\";\n }\n \n if (!this.formErrors) {\n this.currentlySearching = false;\n this.apiService.downloadSearchResultsFile(this.form).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'SearchResults.xlsx');\n this.currentlySearching = false;\n }), (error: any) => this.currentlySearching = false, //when you use stricter type checking\n () => this.notification.open('File downloaded successfully');\n }\n }\n\n downloadTracking(airbillNumber: string | undefined): void {\n this.currentlySearching = false;\n this.apiService.downloadTrackingResultsFile(this.Tracking.data).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, airbillNumber + '_TrackingData.xlsx');\n this.currentlySearching = false;\n }), (error: any) => this.currentlySearching = false, //when you use stricter type checking\n () => this.notification.open('File downloaded successfully');\n}\n}\n","
\n \n FILTERS\n
\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n
\n \n Field to Search\n \n \n {{sf.SearchFieldDesc}}\n \n \n \n \n Search Value\n \n\n \n
\n \n
\n
\n \n
\n
\n
\n \n {{ errorMessage }}\n \n
\n
\n
\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n \n\n
\n Details\n Tracking Number {{element.AirbillNumber}} Tracking Info Service {{element.CarrierServiceName}} Cost {{element.TotalCharge | currency}} Incentive {{element.IncentiveAmount | currency}} Account {{element.AccountNumber}} Invoice {{element.InvoiceNumber}} Shipper Company {{element.ShipperCompany}} Shipper Name {{element.ShipperName}} Shipper Address {{element.ShipperAddress}} Shipper City {{element.ShipperCity}} Shipper State {{element.ShipperState}} Shipper Zip {{element.ShipperZip}} Shipper Country {{element.ShipperCountry}} Recipient Company {{element.RecipCompany}} Recipient Name {{element.RecipName}} Recipient Address {{element.RecipAddress}} Recipient City {{element.RecipCity}} Recipient State {{element.RecipState}} Recipient Zip {{element.RecipZip}} Recipient Country {{element.RecipCountry}} Reference Number {{element.ReferenceNumber}} Pickup Record Number {{element.PickupRecordNumber}} Sent {{element.PickupDate | date: 'short'}} Signed By {{element.SignedBy}} Delivery {{element.DeliveryDate | date: 'short'}} Deadline {{element.Deadline | date: 'short'}} Weight {{element.Weight}} Weight Units {{element.WeightUnits}}
\n \n \n
\n \n
\n \n \n \n
\n
\n \n Delivery Date: {{currentAirbill?.DeliveryDate | date: 'short'}}\n \n Signed By: {{currentAirbill?.SignedBy}}\n \n \n\n \n \n
\n \n\n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n\n \n \n\n
Scan Time \n {{element.ScanTime | date: 'short'}} Scan Desc {{element.EventDescription}} City {{element.City}} State {{element.State}} Zip {{element.Zip}}
\n \n \n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport { ChartOptions, ChartType } from 'chart.js';\nimport * as fileSaver from 'file-saver';\nimport { Label, MultiDataSet } from 'ng2-charts';\nimport { SurchargeByType, StandardApiRequest, Carrier, Account, PackageCountByZone, UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-packages-weight-chart',\n templateUrl: './packages-weight-chart.component.html',\n styleUrls: ['./packages-weight-chart.component.css']\n})\nexport class PackagesWeightChartComponent implements OnInit {\n\n displayedColumns: string[] = ['service-zone', 'service-group', 'package-count', 'net-charge'];\n packageZoneTable: MatTableDataSource = new MatTableDataSource();\n \n layeredPackagesByZonebarChartOptions: any = {\n scaleShowVerticalLines: false,\n responsive: true,\n loading: true,\n scales: {\n yAxes: [{\n ticks: {\n beginAtZero: true\n },\n scaleLabel: {\n display: true,\n labelString: 'Package Count'\n }\n }],\n xAxes: [{\n ticks: {\n \n },\n scaleLabel: {\n display: true,\n labelString: 'Zone'\n }\n }]\n }\n };\n layeredPackagesByZonebarChartLabels: string[] = [];\n layeredPackagesByZonebarChartType: ChartType = 'bar';\n layeredPackagesByZonebarChartLegend: boolean = true;\n\n layeredPackagesByZonebarChartData: any[] = [];\n layeredPackagesByZonebarChartColors: Array = [ // TODO get colors from common area\n { backgroundColor: 'rgb(255, 161, 181)' },\n { backgroundColor: 'rgb(134, 199, 243)' },\n { backgroundColor: 'rgb(255, 226, 154)' },\n { backgroundColor: 'rgb(147, 217, 217)' },\n { backgroundColor: 'rgb(147, 145, 118)' },\n { backgroundColor: 'rgb(107, 51, 34)' },\n { backgroundColor: 'rgb(145, 150, 43)' },\n { backgroundColor: 'rgb(27, 67, 71)' },\n { backgroundColor: 'rgb(38, 38, 37)' },\n { backgroundColor: 'rgb(94, 201, 174)' }\n ];\n\n layeredPackageLoading: boolean = true;\n packageCountByZone: PackageCountByZone[] = []\n \n basicOptions: any;\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n userInfo!: UserInfo;\n apiData: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n };\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n ngAfterViewInit() {\n\n\n }\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.dashboardStatForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.dashboardStatForm;\n\n this.apiData.ClientId = this.userInfo.ClientId;\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n onSubmit(): void {\n this.updateDashboardComponents();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.apiData = {\n AccountId: this.form.AccountId,\n CarrierId: this.form.CarrierId,\n ClientId: this.userInfo.ClientId,\n StartDate: this.form.StartDate,\n EndDate: this.form.EndDate,\n IsPageLoad: false\n };\n\n this.sessionService.dashboardStatForm = this.form;\n\n this.layeredPackageLoading = true;\n this.apiService.makeStandardApiCall('values/GetLayeredPackagesByZone', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.packageCountByZone = JSON.parse(data.Value);\n this.packageZoneTable = new MatTableDataSource(JSON.parse(data.Value))\n const paresdArr: { data: number[], label: string }[] = [];\n const chartLabel: Label = [];\n this.packageCountByZone.forEach(\n (result) => {\n // Flag for element found in object\n let found = false;\n\n // Iterate parsed data and append data accordingly\n paresdArr.forEach((item) => {\n if (item.label === result.ServiceGroupName) {\n found = true;\n }\n });\n\n // If not found create new entry\n if (!found) {\n paresdArr.push({ data: [], label: result.ServiceGroupName });\n }\n\n }\n );\n\n this.packageCountByZone.forEach(\n (result) => {\n if ((chartLabel.indexOf(result.ZoneSN.toString()) === -1)) {\n chartLabel.push(result.ZoneSN.toString());\n }\n }\n );\n\n chartLabel.forEach((chartItem) => {\n paresdArr.forEach((groupItem) => {\n let found = false;\n let value = 0;\n this.packageCountByZone.forEach(\n (result) => {\n // Flag for element found in object\n let found = false;\n\n // Iterate parsed data and append data accordingly\n\n if (groupItem.label === result.ServiceGroupName && chartItem === result.ZoneSN.toString()) {\n value = result.PackageCount;\n found = true;\n }\n\n\n }\n\n );\n\n groupItem.data.push(value);\n\n });\n });\n\n // Add chart labels\n\n // If no data from api set default data to display empty chart\n if (paresdArr.length === 0) {\n paresdArr.push({ data: [], label: 'No data' });\n }\n\n //// Construct labels\n //for (let i = 1; i <= paresdArr[0].data.length; i++) {\n //\tchartLabel.push(i.toString());\n //}\n\n this.layeredPackagesByZonebarChartLabels = chartLabel;\n this.layeredPackagesByZonebarChartData = paresdArr;\n this.layeredPackagesByZonebarChartOptions.loading = false;\n }\n this.layeredPackageLoading = false;\n }\n );\n\n }\n\n downloadSearch(): void {\n this.apiService.downloadLayeredPackageByZone(this.apiData).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'PackagesByZone.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n \n LAYERED PACKAGES BY ZONE\n \n
\n \n \n
\n\n
\n
\n
\n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Zone {{element.ZoneSN }} Service Group Name {{ element.ServiceGroupName }} Package Count {{ element.PackageCount }} Net Charge {{ element.NetCharge | currency }}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { ChartOptions } from 'chart.js';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, RefundTotalByDisputeType, PerformanceByService, TrackingException, UserInfo, SurchargeTotal } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-performance-by-service-chart',\n templateUrl: './performance-by-service-chart.component.html',\n styleUrls: ['./performance-by-service-chart.component.css']\n})\nexport class PerformanceByServiceChartComponent implements OnInit {\n constructor(private apiService: ApiService, private notification: MatSnackBar, private sessionService: SessionService, private userService: UserService) { }\n\n displayedColumns: string[] = ['month', 'year'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n \n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n\n servicePerformance: any = {\n option: {\n responsive: true,\n isLoading: false,\n scales: {\n xAxes: [{\n ticks: {\n beginAtZero: true\n },\n scaleLabel: {\n display: true,\n labelString: 'Percentage On-Time'\n }\n }]\n },\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: any, xLabel: any; }, data: any) {\n return tooltipItems.xLabel + ' %';\n }\n }\n },\n\n },\n label: null,\n type: appConstants.CHARTS.TYPES.HORIZONTAL_BAR,\n\n legend: false,\n data: [{\n data: []\n }],\n\n\n };\n\n servicePerformanceChartColors: Array = [{}];\n servicePerformanceLoading: boolean = true;\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.performanceForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.performanceForm;\n \n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.performanceForm = this.form;\n \n this.servicePerformanceLoading = true;\n this.apiService.makeStandardApiCall('values/GetPerformanceByService', this.form).subscribe(\n (data: any) => {\n const labelsTemp: Array = [];\n const valuesTemp: Array = [];\n const returnData: Array = JSON.parse(data.Value);\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value));\n // Populate\n returnData.forEach(element => {\n labelsTemp.push(element.ServiceGroupName);\n\t\t\t\t\tvaluesTemp.push(element.OntimePercentage);\n });\n\n\t\t\t\t// Set values to chart\n\t\t\t\tthis.servicePerformance.label = labelsTemp;\n\t\t\t\tthis.servicePerformance.data[0].data = valuesTemp;\n this.servicePerformance.option.tooltips.callbacks;\n this.servicePerformanceChartColors = [\n\t\t\t\t\t{\n\t\t\t\t\t\tbackgroundColor: 'rgb(102,163,255,1)'\n\t\t\t\t\t}\n\t\t\t\t];\n this.servicePerformanceLoading = false\n }\n );\n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetPerformanceByServiceDownload', this.form).subscribe((response: any) => { //when you use stricter type checking\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'PerformanceByService.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n ON TIME PERFORMANCE BY SERVICE\n \n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n
Service Group Name {{element.ServiceGroupName }} \tPercentage On Time {{element.OntimePercentage }}%
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ChartOptions } from 'chart.js';\nimport { appConstants } from '../helpers/constants';\nimport { Account, Carrier, PerformanceByService, PerformanceStats, RefundTotalByDisputeType, StandardApiRequest, TrackingException, UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-performance',\n templateUrl: './performance.component.html',\n styleUrls: ['./performance.component.css']\n})\nexport class PerformanceComponent implements OnInit {\n\n constructor(private apiService: ApiService, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 0, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n\n performanceStats: PerformanceStats = {\n NonInvoicedRefunds: 0,\n OntimePercentage: 0,\n RawLate: 0,\n TotalPackage: 0,\n TotalRefunds: 0\n };\n\n // [Total NET-CHARGE]\n totalRefundsByMonthData: Array = [{ data: [] }];\n totalRefundsByMonthLabels: Array = [];\n totalRefundsByMonthOptions: any = {\n responsive: true,\n scales: this.defaultScale,\n isLoading: true,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n totalRefundsByMonthLegend: boolean = false;\n totalRefundsByMonthType: any = appConstants.CHARTS.TYPES.LINE_CHART;\n\n public totalRefundsByMonthColors: Array = [{}];\n totalRefundsLoading = true;\n\n // Refund total chart variables\n refundTotalChartLabels: Array = [];\n refundTotalChartData: number[] = [];\n refundTotalChartType: any = appConstants.CHARTS.TYPES.PIE_CHART;\n refundTotalChartOptions: ChartOptions = {\n responsive: true,\n\n };\n refundTotalChartColors: Array = [ // TODO get colors from common area\n { backgroundColor: ['rgb(255, 161, 181)', 'rgb(134, 199, 243)', 'rgb(255, 226, 154)', 'rgb(147, 217, 217)', 'rgb(147, 145, 118)', 'rgb(107, 51, 34)', 'rgb(145, 150, 43)', 'rgb(27, 67, 71)', 'rgb(38, 38, 37)', 'rgb(94, 201, 174)'] }\n ];\n refundTotalLoading: boolean = true;\n\n servicePerformance: any = {\n option: {\n responsive: true,\n isLoading: false,\n scales: {\n xAxes: [{\n ticks: {\n beginAtZero: true\n },\n scaleLabel: {\n display: true,\n labelString: 'Percentage On-Time'\n }\n }]\n },\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: any, xLabel: any; }, data: any) {\n return tooltipItems.xLabel + ' %';\n }\n }\n },\n\n },\n label: null,\n type: appConstants.CHARTS.TYPES.HORIZONTAL_BAR,\n\n legend: false,\n data: [{\n data: []\n }],\n\n\n };\n\n servicePerformanceChartColors: Array = [{}];\n servicePerformanceLoading: boolean = true;\n\n trackingException: any = {\n option: {\n scaleShowVerticalLines: false,\n responsive: true,\n isLoading: true,\n scales: {\n xAxes: [{\n ticks: {\n beginAtZero: true\n },\n scaleLabel: {\n display: true,\n labelString: 'Total Shipments'\n }\n }]\n }\n },\n label: null,\n type: appConstants.CHARTS.TYPES.HORIZONTAL_BAR,\n legend: false,\n data: [{ data: [] }]\n };\n\n public trackingExceptionChartColors: Array = [{}];\n trackingExceptionsLoading: boolean = true;\n statsLoading: boolean = true;\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.performanceForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.performanceForm;\n \n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.performanceForm = this.form;\n\n this.statsLoading = true;\n this.apiService.makeStandardApiCall('values/GetPerformanceStats', this.form).subscribe(\n (data: any) => {\n this.performanceStats = JSON.parse(data.Value);\n this.statsLoading = false;\n }\n );\n\n this.totalRefundsLoading = true;\n this.apiService.makeStandardApiCall('values/GetRefundByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'TotalRefunds');\n\n // Set values to chart\n this.totalRefundsByMonthLabels = chartData.labels;\n this.totalRefundsByMonthData[0].data = chartData.values;\n this.totalRefundsByMonthOptions.isLoading = false;\n this.totalRefundsByMonthOptions.tooltips.callbacks;\n this.totalRefundsByMonthColors = [\n {\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(102,163,255,1)', // Data drive this\n pointBackgroundColor: 'rgba(102,163,255,1)',\n pointBorderColor: 'rgba(102,163,255,0)',\n }\n ];\n this.totalRefundsLoading = false;\n }\n );\n\n this.refundTotalLoading = true;\n this.apiService.makeStandardApiCall('values/GetRefundTotal', this.form).subscribe(\n (data: any) => {\n // Temp variables\n const labelsTemp: Array = [];\n const valuesTemp: Array = [];\n const returnData: Array = JSON.parse(data.Value);\n // Populate\n returnData.forEach(element => {\n if ((this.form.CarrierId === appConstants.Carriers.FEDEX) && (element.CarrierId !== appConstants.Carriers.FEDEX)) {\n return;\n }\n if ((this.form.CarrierId === appConstants.Carriers.UPS) && (element.CarrierId !== appConstants.Carriers.UPS)) {\n return;\n }\n labelsTemp.push(element.DisputeType);\n valuesTemp.push(element.RefundTotal);\n });\n\n // Set values to chart\n this.refundTotalChartLabels = labelsTemp;\n this.refundTotalChartData = valuesTemp;\n\n this.refundTotalLoading = false;\n }\n );\n\n this.servicePerformanceLoading = true;\n this.apiService.makeStandardApiCall('values/GetPerformanceByService', this.form).subscribe(\n (data: any) => {\n const labelsTemp: Array = [];\n const valuesTemp: Array = [];\n const returnData: Array = JSON.parse(data.Value);\n // Populate\n returnData.forEach(element => {\n labelsTemp.push(element.ServiceGroupName);\n\t\t\t\t\tvaluesTemp.push(element.OntimePercentage);\n });\n\n\t\t\t\t// Set values to chart\n\t\t\t\tthis.servicePerformance.label = labelsTemp;\n\t\t\t\tthis.servicePerformance.data[0].data = valuesTemp;\n this.servicePerformance.option.tooltips.callbacks;\n this.servicePerformanceChartColors = [\n\t\t\t\t\t{\n\t\t\t\t\t\tbackgroundColor: 'rgb(102,163,255,1)'\n\t\t\t\t\t}\n\t\t\t\t];\n this.servicePerformanceLoading = false\n }\n );\n\n this.trackingExceptionsLoading = true;\n this.apiService.makeStandardApiCall('values/GetTrackingException', this.form).subscribe(\n (data: any) => {\n const labelsTemp: Array = [];\n const valuesTemp: Array = [];\n const returnData: Array = JSON.parse(data.Value);\n // Populate\n returnData.forEach(element => {\n labelsTemp.push(element.ScanCodeReason.trim());\n\t\t\t\t\tvaluesTemp.push(element.ExceptionCount);\n });\n\n\n // Set values to chart\n this.trackingException.label = labelsTemp;\n this.trackingException.data[0].data = valuesTemp;\n this.trackingException.isLoading = false;\n this.trackingExceptionChartColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n this.trackingExceptionsLoading = false;\n }\n );\n }\n\n goToLink(link: string): void {\n const navigationDetails: string[] = [link];\n this.router.navigate(navigationDetails);\n }\n}","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n
\n
\n\n
\n
\n \n
\n Total Packages\n
\n
\n

\n {{ performanceStats.TotalPackage | number}}\n

\n
\n
\n
\n
\n \n
\n Late Deliveries\n
\n
\n

\n {{ performanceStats.RawLate | number}}\n

\n
\n
\n
\n
\n \n
\n % On Time\n
\n
\n

\n {{ performanceStats.OntimePercentage | percent }}\n

\n
\n
\n
\n
\n \n
\n Total Refunds(Invoiced)\n
\n
\n

\n {{ performanceStats.TotalRefunds | currency}}\n

\n
\n
\n
\n
\n \n
\n Refunds Not Invoiced\n
\n
\n

\n {{ performanceStats.NonInvoicedRefunds | currency}}\n

\n
\n
\n
\n
\n\n
\n
\n \n TOTAL REFUNDS BY MONTHbar_chart\n
\n \n \n
\n
\n
\n
\n \n REFUND TOTALbar_chart\n \n
\n \n \n
\n
\n
\n
\n
\n
\n
\n \n ON TIME PERFORMANCE BY SERVICEbar_chart\n \n
\n \n \n
\n
\n
\n
\n
\n \n TRACKING EXCEPTIONSbar_chart\n
\n \n \n
\n
\n
\n
\n
\n","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { ChartOptions } from 'chart.js';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, RefundTotalByDisputeType, PerformanceByService, TrackingException, UserInfo, SurchargeTotal, RefundsByMonth } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-refunds-by-month-chart',\n templateUrl: './refunds-by-month-chart.component.html',\n styleUrls: ['./refunds-by-month-chart.component.css']\n})\nexport class RefundsByMonthChartComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private sessionService: SessionService, private userService: UserService) { }\n\n displayedColumns: string[] = ['month', 'year', 'net-charge'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n \n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n\n // [Total NET-CHARGE]\n totalRefundsByMonthData: Array = [{ data: [] }];\n totalRefundsByMonthLabels: Array = [];\n totalRefundsByMonthOptions: any = {\n responsive: true,\n scales: this.defaultScale,\n isLoading: true,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n totalRefundsByMonthLegend: boolean = false;\n totalRefundsByMonthType: any = appConstants.CHARTS.TYPES.LINE_CHART;\n\n public totalRefundsByMonthColors: Array = [{}];\n totalRefundsLoading = true;\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.performanceForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.performanceForm;\n \n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.performanceForm = this.form;\n this.totalRefundsLoading = true;\n this.apiService.makeStandardApiCall('values/GetRefundByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'TotalRefunds');\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value));\n // Set values to chart\n this.totalRefundsByMonthLabels = chartData.labels;\n this.totalRefundsByMonthData[0].data = chartData.values;\n this.totalRefundsByMonthOptions.isLoading = false;\n this.totalRefundsByMonthOptions.tooltips.callbacks;\n this.totalRefundsByMonthColors = [\n {\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(102,163,255,1)', // Data drive this\n pointBackgroundColor: 'rgba(102,163,255,1)',\n pointBorderColor: 'rgba(102,163,255,0)',\n }\n ];\n this.totalRefundsLoading = false;\n }\n );\n\n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetRefundsByMonthDownload', this.form).subscribe((response: any) => { //when you use stricter type checking\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'RefundTotalByDispute.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n TOTAL REFUNDS BY MONTH\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
Month {{element.Month }} Year {{element.Year }} Total Refunds {{element.TotalRefunds | currency}}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { ChartOptions } from 'chart.js';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, RefundTotalByDisputeType, PerformanceByService, TrackingException, UserInfo, SurchargeTotal } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-refunds-total-chart',\n templateUrl: './refunds-total-chart.component.html',\n styleUrls: ['./refunds-total-chart.component.css']\n})\nexport class RefundsTotalChartComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private sessionService: SessionService, private userService: UserService) { }\n\n displayedColumns: string[] = ['month', 'year'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n \n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n\n // Refund total chart variables\n refundTotalChartLabels: Array = [];\n refundTotalChartData: number[] = [];\n refundTotalChartType: any = appConstants.CHARTS.TYPES.PIE_CHART;\n refundTotalChartOptions: ChartOptions = {\n responsive: true,\n\n };\n refundTotalChartColors: Array = [ // TODO get colors from common area\n { backgroundColor: ['rgb(255, 161, 181)', 'rgb(134, 199, 243)', 'rgb(255, 226, 154)', 'rgb(147, 217, 217)', 'rgb(147, 145, 118)', 'rgb(107, 51, 34)', 'rgb(145, 150, 43)', 'rgb(27, 67, 71)', 'rgb(38, 38, 37)', 'rgb(94, 201, 174)'] }\n ];\n refundTotalLoading: boolean = true;\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.performanceForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.performanceForm;\n \n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.performanceForm = this.form;\n \n this.refundTotalLoading = true;\n this.apiService.makeStandardApiCall('values/GetRefundTotal', this.form).subscribe(\n (data: any) => {\n // Temp variables\n const labelsTemp: Array = [];\n const valuesTemp: Array = [];\n const returnData: Array = JSON.parse(data.Value);\n\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value));\n // Populate\n returnData.forEach(element => {\n if ((this.form.CarrierId === appConstants.Carriers.FEDEX) && (element.CarrierId !== appConstants.Carriers.FEDEX)) {\n return;\n }\n if ((this.form.CarrierId === appConstants.Carriers.UPS) && (element.CarrierId !== appConstants.Carriers.UPS)) {\n return;\n }\n labelsTemp.push(element.DisputeType);\n valuesTemp.push(element.RefundTotal);\n });\n\n // Set values to chart\n this.refundTotalChartLabels = labelsTemp;\n this.refundTotalChartData = valuesTemp;\n\n this.refundTotalLoading = false;\n }\n );\n\n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetRefundTotalByDisputeDownload', this.form).subscribe((response: any) => { //when you use stricter type checking\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'RefundsByType.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n REFUND TOTAL\n \n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n
Dispute Type {{element.DisputeType }} Total Refunds {{element.RefundTotal | currency }}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { Account, Carrier, Report, ReportApiRequest, StandardApiRequest, UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { UserService } from '../services/user.service';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport * as fileSaver from 'file-saver';\nimport { SessionService } from '../services/session.service';\n\n@Component({\n selector: 'app-report-download',\n templateUrl: './report-download.component.html',\n styleUrls: ['./report-download.component.css']\n})\n\nexport class ReportDownloadComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private sessionService: SessionService, private userService: UserService) { }\n dateToday: Date = new Date();\n form: ReportApiRequest = {\n StartDate: new Date(Date.now() - 7 * 24 * 60 * 60 * 1000),\n EndDate: this.dateToday,\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false,\n ReportId: 0\n }\n\n formErrors: boolean = false;\n errorMessage: string = '';\n fileDownloading: boolean = false;\n\n userInfo!: UserInfo;\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n Reports: Report[] = []\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.reportForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.reportForm;\n\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateAccountsList();\n this.updateReportList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateReportList(): void {\n this.apiService.makeStandardApiCall('values/GetReportsForDownload', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const reports: Report[] = JSON.parse(data.Value);\n this.Reports = [];\n reports.forEach(element => {\n this.Reports.push({ ReportId: element.ReportId, ReportName: element.ReportName });\n });\n }\n }\n );\n }\n\n downloadReport(): void {\n this.formErrors = false;\n this.errorMessage = '';\n if (this.form.ReportId === 0) {\n this.errorMessage = 'Report must be selected.\\n';\n this.formErrors = true;\n }\n // switch (this.form.ReportId) {\n // case 10:\n // if (this.form.CarrierId === 0){\n // this.errorMessage += 'Carrier must be selected.';\n // this.formErrors = true;\n // }\n // break;\n // }\n if (!this.formErrors) {\n this.sessionService.reportForm = this.form;\n this.errorMessage = '';\n this.formErrors = false;\n this.fileDownloading = true;\n this.apiService.downloadReportFile(this.form).subscribe((response: any) => { //when you use stricter type checking\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n let reportName = '';\n this.Reports.forEach(element => {\n if (element.ReportId === this.form.ReportId)\n reportName = element.ReportName;\n });\n switch (this.form.ReportId) {\n case 10:\n case 11:\n case 12:\n case 13:\n fileSaver.saveAs(blob, reportName + '.xls');\n break;\n default:\n fileSaver.saveAs(blob, reportName + '.xlsx');\n break;\n }\n this.fileDownloading = false;\n }, (error: any) => {\n this.fileDownloading = false;\n console.log('Error downloading the file');\n }, //when you use stricter type checking\n () => console.info('File downloaded successfully'));\n }\n\n }\n}\n","
\n\n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n \n Report\n \n \n {{rep.ReportName}}\n \n \n \n \n
\n \n
\n
\n \n {{ errorMessage }}\n \n
\n
\n
","\n\n
\n

Password Reset

\n
\n
\n \n New Password\n \n \n Password is required\n \n Password must be at least 4 characters\n \n \n \n
\n
\n \n Confirm New Password\n \n \n Confirm Password is required\n \n Password must be at least 4 characters\n \n \n \n
\n \n
\n \n Login failed: {{ errorMessage }}\n \n
\n
\n
\n \n
\n
\n ","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AuthService } from '../services/auth.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-reset-password',\n templateUrl: './reset-password.component.html',\n styleUrls: ['./reset-password.component.css']\n})\nexport class ResetPasswordComponent implements OnInit {\n\n form: any = {\n password2: null,\n password: null,\n username: null,\n };\n isLoggedIn = false;\n isLoginFailed = false;\n errorMessage = '';\n roles: string[] = [];\n attemptingLogin: boolean = false;\n\n constructor(private route: ActivatedRoute, private authService: AuthService, private router: Router, private userService: UserService, private notification: MatSnackBar) { }\n\n resetToken: string = '';\n\n ngOnInit(): void {\n const routeParams = this.route.snapshot.paramMap;\n this.resetToken = String(routeParams.get('token'));\n if (this.resetToken === undefined || this.resetToken.length === 0)\n {\n this.notification.open(\"Invalid request to update password.\");\n this.router.navigate(['/']);\n }\n this.authService.getUserByToken(this.resetToken).subscribe(data => {\n if (data.length === 0){\n this.form.notification(\"Invalid password reset token\");\n this.router.navigate(['/']);\n } else {\n this.form.username = data;\n }\n });\n }\n\n onSubmit(): void {\n const { username, password } = this.form;\n if (this.form.password === this.form.password2) {\n this.attemptingLogin = true;\n this.isLoginFailed = false;\n this.errorMessage = \"\";\n this.authService.resetPassowrd(username, password, this.resetToken).subscribe(\n data => {\n if (data.StatusCode == 403 ){\n this.notification.open(\"There was an issue updating your password, please try again.\");\n this.router.navigate(['/']);\n } else {\n this.notification.open(\"Password successfully updated.\");\n this.router.navigate(['/']);\n }\n \n },\n err => {\n this.errorMessage = err.error.message;\n this.isLoginFailed = true;\n this.attemptingLogin = false;\n }\n );\n }\n else {\n this.errorMessage = \"Password and Confirmation Password must match.\";\n this.isLoginFailed = true;\n this.attemptingLogin = false;\n }\n }\n\n reloadPage(): void {\n window.location.reload();\n }\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { StandardApiRequest, UserInfo } from '../helpers/interfaces';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApiService {\n //AUTH_API = 'https://localhost:44376/api/';\n AUTH_API = 'https://dashboardapi.lampreysystems.net/api/';\n httpOptions = {\n headers: new HttpHeaders({ 'Content-Type': 'application/json' })\n };\n\n constructor(private http: HttpClient) { }\n\n makeStandardApiCall(endPoint: string, jsonInfo: any): Observable {\n return this.http.post(this.AUTH_API + endPoint, jsonInfo, this.httpOptions);\n }\n\n makeStandardApiGet(endPoint: string): Observable {\n return this.http.get(this.AUTH_API + endPoint);\n }\n\n updateUser(jsonInfo: UserInfo): Observable {\n return this.http.post(this.AUTH_API + 'UpdateUserProfile', jsonInfo, this.httpOptions);\n }\n\n makeUserCase(username: string): Observable {\n return this.http.post(this.AUTH_API + 'user/GetUserProfile', {\n \"Username\": username\n }, this.httpOptions);\n }\n\n downloadReportFile(jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/GetReportDownload', jsonInfo, {responseType: 'blob'});\n }\n\n downloadClientInvoiceFile(jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/DownloadClientVoice', jsonInfo, {responseType: 'blob'});\n }\n downloadCarrierInvoiceFile(jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/DownloadCarrierInvoice', jsonInfo, {responseType: 'blob'});\n }\n \n downloadSearchResultsFile(jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/GetSearchResultDownload', jsonInfo, {responseType: 'blob'});\n }\n\n downloadTrackingResultsFile(jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/GetTrackingResultDownload', jsonInfo, {responseType: 'blob'});\n }\n \n downloadNetTransportation(jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/GetNetTransportationDownload', jsonInfo, {responseType: 'blob'});\n }\n\n downloadSurchargeType(jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/GetSurchargeTypeDownload', jsonInfo, {responseType: 'blob'});\n }\n\n downloadLayeredPackageByZone(jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/GetPackageByZoneDownload', jsonInfo, {responseType: 'blob'});\n }\n\n downloadPackageCountByWeight(jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/GetPackageByWeightDownload', jsonInfo, {responseType: 'blob'});\n }\n\n downloadFile(endpoint: string, jsonInfo: any): Observable {\n\t\treturn this.http.post(this.AUTH_API + 'values/' + endpoint, jsonInfo, {responseType: 'blob'});\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { ApiService } from './api.service.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthService {\n constructor(private http: HttpClient, private apiService: ApiService) { }\n\n login(username: string, password: string): Observable {\n return this.http.post(this.apiService.AUTH_API + 'user/Authenticate', {\n \"Username\": username,\n \"Password\": password\n }, this.apiService.httpOptions);\n }\n\n forgotpassword(username: string): Observable {\n return this.http.post(this.apiService.AUTH_API + 'user/ForgotPassword', {\n \"Username\": username\n }, this.apiService.httpOptions);\n }\n\n getUserByToken(token: string): Observable {\n return this.http.post(this.apiService.AUTH_API + 'user/UserByToken', {\n \"Token\": token\n }, this.apiService.httpOptions);\n }\n\n resetPassowrd(username: string, password: string, token: string): Observable {\n return this.http.post(this.apiService.AUTH_API + 'user/ResetPassword', {\n \"Username\": username,\n \"Password\": password,\n \"ResetToken\": token\n }, this.apiService.httpOptions);\n }\n}","import { Injectable } from \"@angular/core\";\nimport { BehaviorSubject } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LoadingService {\n private _loading = new BehaviorSubject(false);\n public readonly loading$ = this._loading.asObservable();\n\n constructor() {\n this._loading.next(false);\n }\n\n show() {\n this._loading.next(true);\n }\n\n hide() {\n this._loading.next(false);\n }\n}","import { Injectable } from '@angular/core';\nimport { ReportApiRequest, SearchApiRequest, SearchField, StandardApiRequest } from '../helpers/interfaces';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SessionService {\n\n constructor() { }\n dateToday: Date = new Date();\n\n reportForm: ReportApiRequest = {\n StartDate: new Date(Date.now() - 7 * 24 * 60 * 60 * 1000),\n EndDate: this.dateToday,\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false,\n ReportId: 0\n }\n\n dashboardStatForm: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n avoidableCostForm: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 0, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n performanceForm: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n trendsForm: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n searchForm: SearchApiRequest = {\n StartDate: new Date(new Date(Date.now() - 365 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n SearchFieldId: 0,\n SearchValue: ''\n }\n\n SearchFields: SearchField[] = []\n}\n","import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nconst TOKEN_KEY = 'auth-token';\nconst USER_KEY = 'auth-user';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TokenStorageService {\n constructor() { \n this.LoginStatus.subscribe((value) => {\n this.isLoggedIn = value\n });\n this.isLoggedIn = (this.getToken() != undefined)\n }\n\n isLoggedIn!: boolean | false;\n LoginStatus: Subject = new Subject();\n\n signOut(): void {\n window.sessionStorage.clear();\n this.LoginStatus.next(false);\n }\n\n toggleLoginStatus() {\n this.LoginStatus.next(!this.isLoggedIn);\n }\n public saveToken(token: string): void {\n window.sessionStorage.removeItem(TOKEN_KEY);\n window.sessionStorage.setItem(TOKEN_KEY, token);\n this.LoginStatus.next(true);\n }\n\n public getToken(): string | null {\n return window.sessionStorage.getItem(TOKEN_KEY);\n }\n\n public saveUser(user: any): void {\n window.sessionStorage.removeItem(USER_KEY);\n window.sessionStorage.setItem(USER_KEY, JSON.stringify(user));\n }\n\n public getUser(): any {\n const user = window.sessionStorage.getItem(USER_KEY);\n if (user) {\n return JSON.parse(user);\n }\n\n return {};\n }\n}","import { Injectable } from '@angular/core';\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { UserInfo } from '../helpers/interfaces';\nimport { ApiService } from './api.service.service';\nimport { Router } from '@angular/router';\nimport { MatSnackBar } from '@angular/material/snack-bar';\n\nconst USER_KEY = 'auth-user';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserService {\n constructor(private http: HttpClient, private apiService: ApiService, private notification: MatSnackBar, private router: Router) { \n const user = window.sessionStorage.getItem(USER_KEY);\n if (user) {\n this.userInfo = JSON.parse(user);\n }\n }\n\n public userInfo!: UserInfo;\n\n getUserInfo(username: string): void {\n this.apiService.makeUserCase(username).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.userInfo = JSON.parse(data.Value);\n this.saveUser(this.userInfo);\n this.notification.open('Login Successful!!');\n this.router.navigate(['/dashboard']);\n }\n }\n );\n }\n\n \n public saveUser(user: UserInfo): void {\n window.sessionStorage.removeItem(USER_KEY);\n window.sessionStorage.setItem(USER_KEY, JSON.stringify(user));\n }\n\n public getUser(): any {\n \n }\n}","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, UserInfo, SurchargeTotal } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-surcharge-month-chart',\n templateUrl: './surcharge-month-chart.component.html',\n styleUrls: ['./surcharge-month-chart.component.css']\n})\nexport class SurchargeMonthChartComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n displayedColumns: string[] = ['month', 'year', 'net-charge'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n \n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n costPerPoundScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars/lb.')\n totalWeightScale = appConstants.fun.getChartScale('Month', 'Weight in Pounds')\n\n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n netChargeLoading: boolean = true;\n weightLoading: boolean = true;\n freightLoading: boolean = true;\n surchargeLoading: boolean = true;\n costPackageLoading: boolean = true;\n costPoundLoading: boolean = true;\n\n \n // [SURCHARGE TOTAL MONTH]\n surchargeTotalChartData: Array = [{ data: [] }];\n surchargeTotalChartLabels: Array = [];\n surchargeTotalChartOptions: any = {\n responsive: true,\n scales: this.defaultScale,\n isLoading: true,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n surchargeTotalChartLegend: boolean = false;\n surchargeTotalChartType: any = appConstants.CHARTS.TYPES.LINE_CHART;\n //surchargeTotalChartColors: Array = [appConstants.OPTIONS.CHARTS.DEFAULT.LINE_CHART_DEFAULT_COLOR];\n public surchargeTotalChartColors: Array = [{}];\n \n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.trendsForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.trendsForm;\n\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.trendsForm = this.form;\n \n this.surchargeLoading = true;\n this.apiService.makeStandardApiCall('values/GetSurchargeTotalByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'TotalSurcharge');\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value));\n\n // Set values to chart\n this.surchargeTotalChartLabels = chartData.labels;\n this.surchargeTotalChartData[0].data = chartData.values;\n this.surchargeTotalChartOptions.isLoading = false;\n this.surchargeTotalChartOptions.tooltips.callbacks;\n this.surchargeTotalChartColors = [\n {\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(102,163,255,1)', // Data drive this\n pointBackgroundColor: 'rgba(102,163,255,1)',\n pointBorderColor: 'rgba(102,163,255,0)',\n }\n ];\n this.surchargeLoading = false;\n }\n );\n \n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetSurchargeMonthDownload', this.form).subscribe((response: any) => { //when you use stricter type checking\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'TotalSurchargeByMonth.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n SURCHARGE TOTAL\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
Month {{element.Month }} Year {{element.Year }} Total Surcharge {{element.TotalSurcharge | currency}}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport { ChartOptions, ChartType, ChartDataSets } from 'chart.js';\nimport * as fileSaver from 'file-saver';\nimport { Label, MultiDataSet } from 'ng2-charts';\nimport { NetCharge, StandardApiRequest, Carrier, Account, UserInfo, SurchargeByType } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-surcharge-type-chart',\n templateUrl: './surcharge-type-chart.component.html',\n styleUrls: ['./surcharge-type-chart.component.css']\n})\nexport class SurchargeTypeChartComponent implements OnInit {\n\n displayedColumns: string[] = ['service-group', 'net-charge'];\n surchargeTypeTable: MatTableDataSource = new MatTableDataSource();\n \n surchargeOptions: ChartOptions = {\n responsive: true\n };\n\n surchargeLabels: Label[] = [];\n surchargeData: MultiDataSet = [\n [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\n ];\n doughnutChartType: ChartType = 'doughnut';\n\n basicOptions: any;\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n userInfo!: UserInfo;\n apiData: StandardApiRequest = {\n StartDate: new Date(new Date(Date.now() - 14 * 24 * 60 * 60 * 1000)),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n };\n\n surchargesByType: SurchargeByType[] = []\n\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n surchargesLoading: boolean = true;\n\n ngAfterViewInit() {\n\n\n }\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.dashboardStatForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.dashboardStatForm;\n\n this.apiData.ClientId = this.userInfo.ClientId;\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n onSubmit(): void {\n this.updateDashboardComponents();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.apiData = {\n AccountId: this.form.AccountId,\n CarrierId: this.form.CarrierId,\n ClientId: this.userInfo.ClientId,\n StartDate: this.form.StartDate,\n EndDate: this.form.EndDate,\n IsPageLoad: false\n };\n\n this.sessionService.dashboardStatForm = this.form;\n\n this.surchargesLoading = true;\n this.apiService.makeStandardApiCall('values/GetSurchargeByTypes', this.apiData).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n this.surchargesByType = JSON.parse(data.Value);\n this.surchargeTypeTable = new MatTableDataSource(JSON.parse(data.Value))\n const surchargeLabelsTemp: Label[] = [];\n const surchargeDataTemp: MultiDataSet = [\n []\n ];\n this.surchargesByType.forEach(element => {\n surchargeLabelsTemp.push(element.ServiceGroupName);\n surchargeDataTemp[0].push(element.NetCharge);\n });\n this.surchargeLabels = surchargeLabelsTemp;\n this.surchargeData = surchargeDataTemp;\n }\n this.surchargesLoading = false;\n }\n );\n\n }\n\n downloadSearch(): void {\n this.apiService.downloadSurchargeType(this.apiData).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'SurchargeByType.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n \n
\n
\n \n \n SURCHARGES BY TYPE\n \n \n\n
\n\n \n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Service Group Name {{element.ServiceGroupName }} Net Charge {{element.NetCharge | currency}}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, UserInfo, TotalNetCharge } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-total-freight-month-chart',\n templateUrl: './total-freight-month-chart.component.html',\n styleUrls: ['./total-freight-month-chart.component.css']\n})\nexport class TotalFreightMonthChartComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n displayedColumns: string[] = ['month', 'year', 'net-charge'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n \n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n costPerPoundScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars/lb.')\n totalWeightScale = appConstants.fun.getChartScale('Month', 'Weight in Pounds')\n\n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n freightLoading: boolean = true;\n \n\n // [TOTAL FRIGHT CHARGE BY MONTH]\n totalFreightChargeChartOptions: any = {\n responsive: true,\n isLoading: true,\n scales: this.defaultScale,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n totalFreightChargeChartLabels: string[] = [];\n totalFreightChargeChartType: any = appConstants.CHARTS.TYPES.VERTICAL_BAR;\n totalFreightChargeChartLegend: boolean = false;\n totalFreightChargeChartData: Array = [{ data: null }];\n public totalFreightChargeChartColors = [{}];\n \n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.trendsForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.trendsForm;\n\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.trendsForm = this.form;\n this.freightLoading = true;\n this.apiService.makeStandardApiCall('values/GetTotalFreightChargesByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'NetCharge');\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value));\n \n // Set values to chart\n this.totalFreightChargeChartLabels = chartData.labels;\n this.totalFreightChargeChartData = chartData.values;\n this.totalFreightChargeChartOptions.isLoading = false;\n this.totalFreightChargeChartOptions.tooltips.callbacks;\n this.totalFreightChargeChartColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n this.freightLoading = false;\n }\n );\n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetTotalFreightChargeDownload', this.form).subscribe((response: any) => { //when you use stricter type checking\n // const blob = new Blob([response], { type: 'application/octet-stream' });\n // const url= window.URL.createObjectURL(blob);\n // window.open(url);\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'TotalFreightCharge.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n TOTAL FREIGHT CHARGE\n \n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
Month {{element.Month }} Year {{element.Year }} Net Charge {{element.NetCharge | currency}}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, UserInfo, SurchargeByType, TotalNetCharge } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-total-net-month-chart',\n templateUrl: './total-net-month-chart.component.html',\n styleUrls: ['./total-net-month-chart.component.css']\n})\nexport class TotalNetMonthChartComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n displayedColumns: string[] = ['month', 'year', 'net-charge'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n \n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n costPerPoundScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars/lb.')\n totalWeightScale = appConstants.fun.getChartScale('Month', 'Weight in Pounds')\n\n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n netChargeLoading: boolean = true;\n weightLoading: boolean = true;\n freightLoading: boolean = true;\n surchargeLoading: boolean = true;\n costPackageLoading: boolean = true;\n costPoundLoading: boolean = true;\n\n // [Total NET-CHARGE]\n totalNetChargeChartData: Array = [{ data: [] }];\n totalNetChargeChartLabels: Array = [];\n totalNetChargeChartOptions: any = {\n responsive: true,\n scales: this.defaultScale,\n isLoading: true,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n totalNetChargeChartLegend: boolean = false;\n totalNetChargeChartType: any = appConstants.CHARTS.TYPES.LINE_CHART;\n //totalNetChargeChartColors: Array = [appConstants.OPTIONS.CHARTS.DEFAULT.LINE_CHART_DEFAULT_COLOR];\n public totalNetChargeChartColors: Array = [{}];\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.trendsForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.trendsForm;\n\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.trendsForm = this.form;\n this.totalNetChargeChartOptions.isLoading = true;\n this.netChargeLoading = true;\n this.apiService.makeStandardApiCall('values/GetTotalNetCharge', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'NetCharge');\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value))\n // Set values to chart\n this.totalNetChargeChartLabels = chartData.labels;\n this.totalNetChargeChartData[0].data = chartData.values;\n this.totalNetChargeChartOptions.isLoading = false;\n this.totalNetChargeChartOptions.tooltips.callbacks;\n this.totalNetChargeChartColors = [\n {\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(102,163,255,1)', // Data drive this\n pointBackgroundColor: 'rgba(102,163,255,1)',\n pointBorderColor: 'rgba(102,163,255,0)',\n }\n ];\n this.netChargeLoading = false;\n }\n );\n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetTotalNetChargeDownload', this.form).subscribe((response: any) => { //when you use stricter type checking\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'TotalNetCharge.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n TOTAL NET CHARGE\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
Month {{element.Month }} Year {{element.Year }} Net Charge {{element.NetCharge | currency}}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { Router } from '@angular/router';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, UserInfo, TotalNetCharge, TotalWeight } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-total-weight-month-chart',\n templateUrl: './total-weight-month-chart.component.html',\n styleUrls: ['./total-weight-month-chart.component.css']\n})\nexport class TotalWeightMonthChartComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n costPerPoundScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars/lb.')\n totalWeightScale = appConstants.fun.getChartScale('Month', 'Weight in Pounds')\n\n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n \n weightLoading: boolean = true;\n \n\n displayedColumns: string[] = ['month', 'year', 'net-charge'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n\n // [Total Weight By Month]\n totalWeightChartOptions: any = {\n responsive: true,\n isLoading: true,\n scales: this.totalWeightScale,\n tooltips: {\n enabled: true,\n mode: 'single',\n\n callbacks: {\n label: function (tooltipItems: { yLabel: any; }, data: any) {\n return tooltipItems.yLabel;\n }\n }\n }\n\n };\n totalWeightChartLabels: string[] = [];\n totalWeightChartType: any = appConstants.CHARTS.TYPES.VERTICAL_BAR;\n totalWeightChartLegend: boolean = false;\n totalWeightChartData: Array = [{ data: null }];\n public totalWeightChartColors: Array = [{}];\n //totalWeightChartColors: Array = [appConstants.OPTIONS.CHARTS.DEFAULT.bar_CHART_DEFAULT_COLOR];\n\n\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.trendsForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.trendsForm;\n\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.trendsForm = this.form;\n \n this.weightLoading = true;\n this.apiService.makeStandardApiCall('values/GetTotalWeightByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'Weight');\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value))\n // Set values to chart\n this.totalWeightChartLabels = chartData.labels;\n this.totalWeightChartData = chartData.values;\n this.totalWeightChartOptions.isLoading = false;\n this.totalWeightChartOptions.tooltips.callbacks;\n this.totalWeightChartColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n this.weightLoading = false;\n }\n );\n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetTotalWeightDownload', this.form).subscribe((response: any) => { //when you use stricter type checking\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'TotalWeightByMonth.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n TOTAL WEIGHT (Lbs.)\n \n
\n \n \n
\n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
Month {{element.Month }} Year {{element.Year }} Weight {{element.Weight}}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { MatTableDataSource } from '@angular/material/table';\nimport { ChartOptions } from 'chart.js';\nimport * as fileSaver from 'file-saver';\nimport { appConstants } from '../helpers/constants';\nimport { StandardApiRequest, Carrier, Account, RefundTotalByDisputeType, PerformanceByService, TrackingException, UserInfo, SurchargeTotal } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-tracking-exceptions-chart',\n templateUrl: './tracking-exceptions-chart.component.html',\n styleUrls: ['./tracking-exceptions-chart.component.css']\n})\nexport class TrackingExceptionsChartComponent implements OnInit {\n\n constructor(private apiService: ApiService, private notification: MatSnackBar, private sessionService: SessionService, private userService: UserService) { }\n\n displayedColumns: string[] = ['month', 'year'];\n dataTable: MatTableDataSource = new MatTableDataSource();\n \n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n\n \n trackingException: any = {\n option: {\n scaleShowVerticalLines: false,\n responsive: true,\n isLoading: true,\n scales: {\n xAxes: [{\n ticks: {\n beginAtZero: true\n },\n scaleLabel: {\n display: true,\n labelString: 'Total Shipments'\n }\n }]\n }\n },\n label: null,\n type: appConstants.CHARTS.TYPES.HORIZONTAL_BAR,\n legend: false,\n data: [{ data: [] }]\n };\n\n public trackingExceptionChartColors: Array = [{}];\n trackingExceptionsLoading: boolean = true;\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.performanceForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.performanceForm;\n \n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.performanceForm = this.form;\n \n this.trackingExceptionsLoading = true;\n this.apiService.makeStandardApiCall('values/GetTrackingException', this.form).subscribe(\n (data: any) => {\n const labelsTemp: Array = [];\n const valuesTemp: Array = [];\n const returnData: Array = JSON.parse(data.Value);\n\n this.dataTable = new MatTableDataSource(JSON.parse(data.Value));\n\n // Populate\n returnData.forEach(element => {\n labelsTemp.push(element.ScanCodeReason.trim());\n\t\t\t\t\tvaluesTemp.push(element.ExceptionCount);\n });\n\n\n // Set values to chart\n this.trackingException.label = labelsTemp;\n this.trackingException.data[0].data = valuesTemp;\n this.trackingException.isLoading = false;\n this.trackingExceptionChartColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n this.trackingExceptionsLoading = false;\n }\n );\n }\n\n downloadSearch(): void {\n this.apiService.downloadFile('GetTrackingExceptionsDownload', this.form).subscribe((response: any) => { //when you use stricter type checking\n let blob: any = new Blob([response], { type: 'application/octet-stream' });\n const url = window.URL.createObjectURL(blob);\n fileSaver.saveAs(blob, 'TrackingExceptions.xlsx');\n }), (error: any) => \n () => this.notification.open('File downloaded successfully');\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n \n
\n
\n
\n
\n \n TRACKING EXCEPTIONS\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n
Scan Code Reason {{element.ScanCodeReason }} \tTotal Shipments {{ element.ExceptionCount }}
\n \n
\n
\n
\n \n
","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ChartOptions, ChartType } from 'chart.js';\nimport { appConstants } from '../helpers/constants';\nimport { Account, Carrier, ChartDataModel, StandardApiRequest, UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { SessionService } from '../services/session.service';\nimport { UserService } from '../services/user.service';\n\n@Component({\n selector: 'app-trends',\n templateUrl: './trends.component.html',\n styleUrls: ['./trends.component.css']\n})\n\nexport class TrendsComponent implements OnInit {\n\n constructor(private apiService: ApiService, private router: Router, private sessionService: SessionService, private userService: UserService) { }\n\n defaultScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars');\n costPerPoundScale = appConstants.fun.getChartScale('Month', 'Amount in Dollars/lb.')\n totalWeightScale = appConstants.fun.getChartScale('Month', 'Weight in Pounds')\n\n userInfo!: UserInfo;\n dateToday: Date = new Date();\n form: StandardApiRequest = {\n StartDate: new Date(this.dateToday.getFullYear(), 1, 1),\n EndDate: new Date(this.dateToday),\n CarrierId: 0,\n AccountId: 0,\n ClientId: 0,\n IsPageLoad: false\n }\n\n Carriers: Carrier[] = [{ CarrierId: 0, CarrierName: \"All\" }]\n Accounts: Account[] = [{ AccountId: 0, AccountNumber: \"All\" }]\n netChargeLoading: boolean = true;\n weightLoading: boolean = true;\n freightLoading: boolean = true;\n surchargeLoading: boolean = true;\n costPackageLoading: boolean = true;\n costPoundLoading: boolean = true;\n\n // [Total NET-CHARGE]\n totalNetChargeChartData: Array = [{ data: [] }];\n totalNetChargeChartLabels: Array = [];\n totalNetChargeChartOptions: any = {\n responsive: true,\n scales: this.defaultScale,\n isLoading: true,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n totalNetChargeChartLegend: boolean = false;\n totalNetChargeChartType: any = appConstants.CHARTS.TYPES.LINE_CHART;\n //totalNetChargeChartColors: Array = [appConstants.OPTIONS.CHARTS.DEFAULT.LINE_CHART_DEFAULT_COLOR];\n public totalNetChargeChartColors: Array = [{}];\n\n // [Total Weight By Month]\n totalWeightChartOptions: any = {\n responsive: true,\n isLoading: true,\n scales: this.totalWeightScale,\n tooltips: {\n enabled: true,\n mode: 'single',\n\n callbacks: {\n label: function (tooltipItems: { yLabel: any; }, data: any) {\n return tooltipItems.yLabel;\n }\n }\n }\n\n };\n totalWeightChartLabels: string[] = [];\n totalWeightChartType: any = appConstants.CHARTS.TYPES.VERTICAL_BAR;\n totalWeightChartLegend: boolean = false;\n totalWeightChartData: Array = [{ data: null }];\n public totalWeightChartColors: Array = [{}];\n //totalWeightChartColors: Array = [appConstants.OPTIONS.CHARTS.DEFAULT.bar_CHART_DEFAULT_COLOR];\n\n\n // [TOTAL FRIGHT CHARGE BY MONTH]\n totalFreightChargeChartOptions: any = {\n responsive: true,\n isLoading: true,\n scales: this.defaultScale,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n totalFreightChargeChartLabels: string[] = [];\n totalFreightChargeChartType: any = appConstants.CHARTS.TYPES.VERTICAL_BAR;\n totalFreightChargeChartLegend: boolean = false;\n totalFreightChargeChartData: Array = [{ data: null }];\n public totalFreightChargeChartColors = [{}];\n // [SURCHARGE TOTAL MONTH]\n surchargeTotalChartData: Array = [{ data: [] }];\n surchargeTotalChartLabels: Array = [];\n surchargeTotalChartOptions: any = {\n responsive: true,\n scales: this.defaultScale,\n isLoading: true,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n surchargeTotalChartLegend: boolean = false;\n surchargeTotalChartType: any = appConstants.CHARTS.TYPES.LINE_CHART;\n //surchargeTotalChartColors: Array = [appConstants.OPTIONS.CHARTS.DEFAULT.LINE_CHART_DEFAULT_COLOR];\n public surchargeTotalChartColors: Array = [{}];\n // [COST PER PACKAGE BY MONTH]\n costPerPackageChartData: Array = [{ data: [] }];\n costPerPackageChartLabels: Array = [];\n costPerPackageChartOptions: any = {\n responsive: true,\n scales: this.defaultScale,\n isLoading: true,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n costPerPackageChartLegend: boolean = false;\n costPerPackageChartType: any = appConstants.CHARTS.TYPES.LINE_CHART;\n //costPerPackageChartColors: Array = [appConstants.OPTIONS.CHARTS.DEFAULT.LINE_CHART_DEFAULT_COLOR];\n public costPerPackageChartColors: Array = [{}];\n // [COST PER POUND BY MONTH]\n public costPerPoundChartOptions: any = {\n responsive: true,\n scales: this.costPerPoundScale,\n tooltips: {\n enabled: true,\n mode: 'single',\n callbacks: {\n label: function (tooltipItems: { yLabel: string; }, data: any) {\n return ' $' + tooltipItems.yLabel;\n }\n }\n }\n };\n costPerPoundChartLabels: string[] = [];\n costPerPoundChartType: any = appConstants.CHARTS.TYPES.VERTICAL_BAR;\n costPerPoundChartLegend: boolean = false;\n costPerPoundChartData: any[] = [{ data: null }];\n public costPerPoundChartColors: Array = [{}];\n\n ngOnInit(): void {\n this.userInfo = this.userService.userInfo;\n this.sessionService.trendsForm.ClientId = this.userInfo.ClientId;\n this.form = this.sessionService.trendsForm;\n\n this.apiService.makeStandardApiCall('user/GetCarriersByClient', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const carriers: Carrier[] = JSON.parse(data.Value);\n this.Carriers = [];\n this.Carriers.push({ CarrierName: 'All', CarrierId: 0 });\n carriers.forEach(element => {\n this.Carriers.push(element);\n });\n }\n }\n );\n this.updateDashboardComponents();\n this.updateAccountsList();\n }\n\n updateAccountsList(): void {\n this.apiService.makeStandardApiCall('user/GetAccountsByClientCarrier', this.form).subscribe(\n (data: any) => {\n if (data.StatusCode != 401) {\n const accounts: Account[] = JSON.parse(data.Value);\n this.Accounts = [];\n this.Accounts.push({ AccountNumber: 'All', AccountId: 0 });\n accounts.forEach(element => {\n this.Accounts.push({ AccountNumber: element.AccountNumber.trim().toUpperCase(), AccountId: element.AccountId });\n });\n }\n }\n );\n }\n\n updateDashboardComponents(): void {\n this.sessionService.trendsForm = this.form;\n this.totalNetChargeChartOptions.isLoading = true;\n this.netChargeLoading = true;\n this.apiService.makeStandardApiCall('values/GetTotalNetCharge', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'NetCharge');\n\n // Set values to chart\n this.totalNetChargeChartLabels = chartData.labels;\n this.totalNetChargeChartData[0].data = chartData.values;\n this.totalNetChargeChartOptions.isLoading = false;\n this.totalNetChargeChartOptions.tooltips.callbacks;\n this.totalNetChargeChartColors = [\n {\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(102,163,255,1)', // Data drive this\n pointBackgroundColor: 'rgba(102,163,255,1)',\n pointBorderColor: 'rgba(102,163,255,0)',\n }\n ];\n this.netChargeLoading = false;\n }\n );\n\n this.weightLoading = true;\n this.apiService.makeStandardApiCall('values/GetTotalWeightByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'Weight');\n\n // Set values to chart\n this.totalWeightChartLabels = chartData.labels;\n this.totalWeightChartData = chartData.values;\n this.totalWeightChartOptions.isLoading = false;\n this.totalWeightChartOptions.tooltips.callbacks;\n this.totalWeightChartColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n this.weightLoading = false;\n }\n );\n this.freightLoading = true;\n this.apiService.makeStandardApiCall('values/GetTotalFreightChargesByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'NetCharge');\n\n // Set values to chart\n this.totalFreightChargeChartLabels = chartData.labels;\n this.totalFreightChargeChartData = chartData.values;\n this.totalFreightChargeChartOptions.isLoading = false;\n this.totalFreightChargeChartOptions.tooltips.callbacks;\n this.totalFreightChargeChartColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n this.freightLoading = false;\n }\n );\n this.surchargeLoading = true;\n this.apiService.makeStandardApiCall('values/GetSurchargeTotalByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'TotalSurcharge');\n\n // Set values to chart\n this.surchargeTotalChartLabels = chartData.labels;\n this.surchargeTotalChartData[0].data = chartData.values;\n this.surchargeTotalChartOptions.isLoading = false;\n this.surchargeTotalChartOptions.tooltips.callbacks;\n this.surchargeTotalChartColors = [\n {\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(102,163,255,1)', // Data drive this\n pointBackgroundColor: 'rgba(102,163,255,1)',\n pointBorderColor: 'rgba(102,163,255,0)',\n }\n ];\n this.surchargeLoading = false;\n }\n );\n this.costPackageLoading = true;\n this.apiService.makeStandardApiCall('values/GetCostPerPackageByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'Cost');\n\n // Set values to chart\n this.costPerPackageChartLabels = chartData.labels;\n this.costPerPackageChartData[0].data = chartData.values;\n this.costPerPackageChartOptions.isLoading = false;\n this.costPerPackageChartOptions.tooltips.callbacks;\n this.costPerPackageChartColors = [\n {\n backgroundColor: 'rgba(255,255,255,0)',\n borderColor: 'rgba(102,163,255,1)', // Data drive this\n pointBackgroundColor: 'rgba(102,163,255,1)',\n pointBorderColor: 'rgba(102,163,255,0)',\n }\n ];\n this.costPackageLoading = false;\n }\n );\n this.costPoundLoading = true;\n this.apiService.makeStandardApiCall('values/GetCostPerPoundByMonth', this.form).subscribe(\n (data: any) => {\n const chartData = appConstants.fun.parseChartDataFromApi(JSON.parse(data.Value), 'Cost');\n\n // Set values to chart\n this.costPerPoundChartLabels = chartData.labels;\n this.costPerPoundChartData = chartData.values;\n this.costPerPoundChartOptions.isLoading = false;\n this.costPerPoundChartOptions.tooltips.callbacks;\n this.costPerPoundChartColors = [\n {\n backgroundColor: 'rgb(102,163,255,1)',\n }\n ];\n this.costPoundLoading = false;\n }\n );\n }\n\n goToLink(link: string): void {\n const navigationDetails: string[] = [link];\n this.router.navigate(navigationDetails);\n }\n}\n","
\n \n FILTERS\n \n Start Date\n \n \n \n \n \n End Date\n \n \n \n \n \n Carrier\n \n \n {{car.CarrierName}}\n \n \n \n \n Account\n \n \n {{acc.AccountNumber}}\n \n \n \n
\n \n
\n
\n
\n
\n \n TOTAL NET CHARGEbar_chart\n
\n \n \n
\n
\n
\n
\n \n TOTAL WEIGHT (Lbs.)bar_chart\n \n
\n \n \n
\n
\n
\n
\n
\n
\n
\n \n TOTAL FREIGHT CHARGEbar_chart\n \n
\n \n \n
\n
\n
\n
\n
\n \n SURCHARGE TOTALbar_chart\n
\n \n \n
\n
\n
\n
\n
\n
\n \n COST PER PACKAGEbar_chart\n
\n \n \n
\n
\n
\n
\n \n COST PER POUNDbar_chart\n \n
\n \n \n
\n
\n
\n
\n
\n
","
\n \n User Information\n Personal Info\n
\n \n \n First Name\n \n \n First Name is required!\n \n \n \n \n Last Name\n \n LastName\n is required\n \n \n \n
\n
\n \n Email Address\n \n \n \n \n
\n
\n \n Company Name\n \n \n
\n Address Info\n
\n \n Address\n \n \n \n \n City\n \n \n
\n
\n \n State\n \n \n \n \n Zip Code\n \n \n
\n
\n \n
\n
\n
","import { Component, OnInit } from '@angular/core';\nimport { UserInfo } from '../helpers/interfaces';\nimport { ApiService } from '../services/api.service.service';\nimport { UserService } from '../services/user.service';\nimport { MatSnackBar } from '@angular/material/snack-bar';\n\n@Component({\n selector: 'app-user-profile',\n templateUrl: './user-profile.component.html',\n styleUrls: ['./user-profile.component.css']\n})\nexport class UserProfileComponent implements OnInit {\n form: UserInfo = {\n Address: '',\n City: '',\n ClientId: 0,\n CompanyName: '',\n Email: '',\n FirstName: '',\n LastName: '',\n Occupation: '',\n ResetToken: '',\n State: '',\n TokenAdded: '',\n UserName: '',\n Zip: '',\n Password: '',\n UserType: ''\n };\n\n constructor(private userService: UserService, private apiService: ApiService, private notification: MatSnackBar ) { }\n\n ngOnInit(): void {\n this.form = this.userService.userInfo;\n }\n\n onSubmit(): void {\n this.apiService.updateUser(this.form).subscribe(\n data => {\n if (data.StatusCode == 401 ){\n \n } else {\n this.userService.saveUser(this.form);\n this.notification.open('Profile Updated!', 'Dismiss', {\n duration: 3000\n });\n }\n \n },\n \n );;\n }\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic().bootstrapModule(AppModule)\n .catch(err => console.error(err));\n","var map = {\n\t\"./af\": 26431,\n\t\"./af.js\": 26431,\n\t\"./ar\": 81286,\n\t\"./ar-dz\": 1616,\n\t\"./ar-dz.js\": 1616,\n\t\"./ar-kw\": 9759,\n\t\"./ar-kw.js\": 9759,\n\t\"./ar-ly\": 43160,\n\t\"./ar-ly.js\": 43160,\n\t\"./ar-ma\": 62551,\n\t\"./ar-ma.js\": 62551,\n\t\"./ar-sa\": 79989,\n\t\"./ar-sa.js\": 79989,\n\t\"./ar-tn\": 6962,\n\t\"./ar-tn.js\": 6962,\n\t\"./ar.js\": 81286,\n\t\"./az\": 15887,\n\t\"./az.js\": 15887,\n\t\"./be\": 14572,\n\t\"./be.js\": 14572,\n\t\"./bg\": 3276,\n\t\"./bg.js\": 3276,\n\t\"./bm\": 93344,\n\t\"./bm.js\": 93344,\n\t\"./bn\": 58985,\n\t\"./bn-bd\": 83990,\n\t\"./bn-bd.js\": 83990,\n\t\"./bn.js\": 58985,\n\t\"./bo\": 94391,\n\t\"./bo.js\": 94391,\n\t\"./br\": 46728,\n\t\"./br.js\": 46728,\n\t\"./bs\": 5536,\n\t\"./bs.js\": 5536,\n\t\"./ca\": 41043,\n\t\"./ca.js\": 41043,\n\t\"./cs\": 70420,\n\t\"./cs.js\": 70420,\n\t\"./cv\": 33513,\n\t\"./cv.js\": 33513,\n\t\"./cy\": 6771,\n\t\"./cy.js\": 6771,\n\t\"./da\": 47978,\n\t\"./da.js\": 47978,\n\t\"./de\": 46061,\n\t\"./de-at\": 25204,\n\t\"./de-at.js\": 25204,\n\t\"./de-ch\": 2653,\n\t\"./de-ch.js\": 2653,\n\t\"./de.js\": 46061,\n\t\"./dv\": 85,\n\t\"./dv.js\": 85,\n\t\"./el\": 8579,\n\t\"./el.js\": 8579,\n\t\"./en-au\": 25724,\n\t\"./en-au.js\": 25724,\n\t\"./en-ca\": 10525,\n\t\"./en-ca.js\": 10525,\n\t\"./en-gb\": 52847,\n\t\"./en-gb.js\": 52847,\n\t\"./en-ie\": 67216,\n\t\"./en-ie.js\": 67216,\n\t\"./en-il\": 39305,\n\t\"./en-il.js\": 39305,\n\t\"./en-in\": 73364,\n\t\"./en-in.js\": 73364,\n\t\"./en-nz\": 79130,\n\t\"./en-nz.js\": 79130,\n\t\"./en-sg\": 11161,\n\t\"./en-sg.js\": 11161,\n\t\"./eo\": 50802,\n\t\"./eo.js\": 50802,\n\t\"./es\": 40328,\n\t\"./es-do\": 45551,\n\t\"./es-do.js\": 45551,\n\t\"./es-mx\": 75615,\n\t\"./es-mx.js\": 75615,\n\t\"./es-us\": 64790,\n\t\"./es-us.js\": 64790,\n\t\"./es.js\": 40328,\n\t\"./et\": 96389,\n\t\"./et.js\": 96389,\n\t\"./eu\": 52961,\n\t\"./eu.js\": 52961,\n\t\"./fa\": 26151,\n\t\"./fa.js\": 26151,\n\t\"./fi\": 7997,\n\t\"./fi.js\": 7997,\n\t\"./fil\": 58898,\n\t\"./fil.js\": 58898,\n\t\"./fo\": 37779,\n\t\"./fo.js\": 37779,\n\t\"./fr\": 28174,\n\t\"./fr-ca\": 3287,\n\t\"./fr-ca.js\": 3287,\n\t\"./fr-ch\": 38867,\n\t\"./fr-ch.js\": 38867,\n\t\"./fr.js\": 28174,\n\t\"./fy\": 50452,\n\t\"./fy.js\": 50452,\n\t\"./ga\": 45014,\n\t\"./ga.js\": 45014,\n\t\"./gd\": 74127,\n\t\"./gd.js\": 74127,\n\t\"./gl\": 72124,\n\t\"./gl.js\": 72124,\n\t\"./gom-deva\": 6444,\n\t\"./gom-deva.js\": 6444,\n\t\"./gom-latn\": 37953,\n\t\"./gom-latn.js\": 37953,\n\t\"./gu\": 76604,\n\t\"./gu.js\": 76604,\n\t\"./he\": 1222,\n\t\"./he.js\": 1222,\n\t\"./hi\": 74235,\n\t\"./hi.js\": 74235,\n\t\"./hr\": 622,\n\t\"./hr.js\": 622,\n\t\"./hu\": 37735,\n\t\"./hu.js\": 37735,\n\t\"./hy-am\": 90402,\n\t\"./hy-am.js\": 90402,\n\t\"./id\": 59187,\n\t\"./id.js\": 59187,\n\t\"./is\": 30536,\n\t\"./is.js\": 30536,\n\t\"./it\": 35007,\n\t\"./it-ch\": 94667,\n\t\"./it-ch.js\": 94667,\n\t\"./it.js\": 35007,\n\t\"./ja\": 62093,\n\t\"./ja.js\": 62093,\n\t\"./jv\": 80059,\n\t\"./jv.js\": 80059,\n\t\"./ka\": 66870,\n\t\"./ka.js\": 66870,\n\t\"./kk\": 80880,\n\t\"./kk.js\": 80880,\n\t\"./km\": 1083,\n\t\"./km.js\": 1083,\n\t\"./kn\": 68785,\n\t\"./kn.js\": 68785,\n\t\"./ko\": 21721,\n\t\"./ko.js\": 21721,\n\t\"./ku\": 37851,\n\t\"./ku.js\": 37851,\n\t\"./ky\": 1727,\n\t\"./ky.js\": 1727,\n\t\"./lb\": 40346,\n\t\"./lb.js\": 40346,\n\t\"./lo\": 93002,\n\t\"./lo.js\": 93002,\n\t\"./lt\": 64035,\n\t\"./lt.js\": 64035,\n\t\"./lv\": 56927,\n\t\"./lv.js\": 56927,\n\t\"./me\": 5634,\n\t\"./me.js\": 5634,\n\t\"./mi\": 94173,\n\t\"./mi.js\": 94173,\n\t\"./mk\": 86320,\n\t\"./mk.js\": 86320,\n\t\"./ml\": 11705,\n\t\"./ml.js\": 11705,\n\t\"./mn\": 31062,\n\t\"./mn.js\": 31062,\n\t\"./mr\": 92805,\n\t\"./mr.js\": 92805,\n\t\"./ms\": 11341,\n\t\"./ms-my\": 59900,\n\t\"./ms-my.js\": 59900,\n\t\"./ms.js\": 11341,\n\t\"./mt\": 37734,\n\t\"./mt.js\": 37734,\n\t\"./my\": 19034,\n\t\"./my.js\": 19034,\n\t\"./nb\": 9324,\n\t\"./nb.js\": 9324,\n\t\"./ne\": 46495,\n\t\"./ne.js\": 46495,\n\t\"./nl\": 70673,\n\t\"./nl-be\": 76272,\n\t\"./nl-be.js\": 76272,\n\t\"./nl.js\": 70673,\n\t\"./nn\": 72486,\n\t\"./nn.js\": 72486,\n\t\"./oc-lnc\": 46219,\n\t\"./oc-lnc.js\": 46219,\n\t\"./pa-in\": 2829,\n\t\"./pa-in.js\": 2829,\n\t\"./pl\": 78444,\n\t\"./pl.js\": 78444,\n\t\"./pt\": 53170,\n\t\"./pt-br\": 66117,\n\t\"./pt-br.js\": 66117,\n\t\"./pt.js\": 53170,\n\t\"./ro\": 96587,\n\t\"./ro.js\": 96587,\n\t\"./ru\": 39264,\n\t\"./ru.js\": 39264,\n\t\"./sd\": 42135,\n\t\"./sd.js\": 42135,\n\t\"./se\": 95366,\n\t\"./se.js\": 95366,\n\t\"./si\": 93379,\n\t\"./si.js\": 93379,\n\t\"./sk\": 46143,\n\t\"./sk.js\": 46143,\n\t\"./sl\": 196,\n\t\"./sl.js\": 196,\n\t\"./sq\": 21082,\n\t\"./sq.js\": 21082,\n\t\"./sr\": 91621,\n\t\"./sr-cyrl\": 98963,\n\t\"./sr-cyrl.js\": 98963,\n\t\"./sr.js\": 91621,\n\t\"./ss\": 41404,\n\t\"./ss.js\": 41404,\n\t\"./sv\": 55685,\n\t\"./sv.js\": 55685,\n\t\"./sw\": 3872,\n\t\"./sw.js\": 3872,\n\t\"./ta\": 54106,\n\t\"./ta.js\": 54106,\n\t\"./te\": 39204,\n\t\"./te.js\": 39204,\n\t\"./tet\": 83692,\n\t\"./tet.js\": 83692,\n\t\"./tg\": 86361,\n\t\"./tg.js\": 86361,\n\t\"./th\": 31735,\n\t\"./th.js\": 31735,\n\t\"./tk\": 1568,\n\t\"./tk.js\": 1568,\n\t\"./tl-ph\": 96129,\n\t\"./tl-ph.js\": 96129,\n\t\"./tlh\": 13759,\n\t\"./tlh.js\": 13759,\n\t\"./tr\": 81644,\n\t\"./tr.js\": 81644,\n\t\"./tzl\": 90875,\n\t\"./tzl.js\": 90875,\n\t\"./tzm\": 16878,\n\t\"./tzm-latn\": 11041,\n\t\"./tzm-latn.js\": 11041,\n\t\"./tzm.js\": 16878,\n\t\"./ug-cn\": 74357,\n\t\"./ug-cn.js\": 74357,\n\t\"./uk\": 74810,\n\t\"./uk.js\": 74810,\n\t\"./ur\": 86794,\n\t\"./ur.js\": 86794,\n\t\"./uz\": 28966,\n\t\"./uz-latn\": 77959,\n\t\"./uz-latn.js\": 77959,\n\t\"./uz.js\": 28966,\n\t\"./vi\": 35386,\n\t\"./vi.js\": 35386,\n\t\"./x-pseudo\": 23156,\n\t\"./x-pseudo.js\": 23156,\n\t\"./yo\": 68028,\n\t\"./yo.js\": 68028,\n\t\"./zh-cn\": 9330,\n\t\"./zh-cn.js\": 9330,\n\t\"./zh-hk\": 89380,\n\t\"./zh-hk.js\": 89380,\n\t\"./zh-mo\": 60874,\n\t\"./zh-mo.js\": 60874,\n\t\"./zh-tw\": 96508,\n\t\"./zh-tw.js\": 96508\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 = 46700;"],"sourceRoot":"webpack:///"}