├── .gitattributes ├── .github └── workflows │ └── main.yml ├── .gitignore ├── Images └── banner.png ├── LICENSE ├── README.md ├── WebGYM ├── AngularGYMDBScript.sql ├── GYM Project Angular 7 with ASPNET CORE.pdf ├── WebGYM.Concrete │ ├── DatabaseContext.cs │ ├── GenerateRecepitConcrete.cs │ ├── MemberRegistrationConcrete.cs │ ├── PaymentDetailsConcrete.cs │ ├── PeriodMasterConcrete.cs │ ├── PlanMasterConcrete.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── RenewalConcrete.cs │ ├── ReportsMaster.cs │ ├── RoleConcrete.cs │ ├── SchemeMasterConcrete.cs │ ├── UsersConcrete.cs │ ├── UsersInRolesConcrete.cs │ ├── WebGYM.Concrete.csproj │ ├── app.config │ └── packages.config ├── WebGYM.Interface │ ├── IGenerateRecepit.cs │ ├── IMemberRegistration.cs │ ├── IPaymentDetails.cs │ ├── IPeriodMaster.cs │ ├── IPlanMaster.cs │ ├── IRenewal.cs │ ├── IReports.cs │ ├── IRole.cs │ ├── ISchemeMaster.cs │ ├── IUsers.cs │ ├── IUsersInRoles.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ └── WebGYM.Interface.csproj ├── WebGYM.Models │ ├── AngularGYMDBScript.sql │ ├── DynamicExtensions.cs │ ├── GYM Project Angular 7 with ASPNET CORE.pdf │ ├── MemberRegistration.cs │ ├── PaymentDetails.cs │ ├── PeriodTB.cs │ ├── PlanMaster.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── QueryParameters.cs │ ├── QueryParametersExtensions.cs │ ├── Role.cs │ ├── SchemeMaster.cs │ ├── Users.cs │ ├── UsersInRoles.cs │ ├── WebGYM.Models.csproj │ └── packages.config ├── WebGYM.ViewModels │ ├── AmountRequestViewModel.cs │ ├── AssignRolesViewModel.cs │ ├── GenerateRecepitRequestModel.cs │ ├── GenerateRecepitViewModel.cs │ ├── LoginResponse.cs │ ├── LoginViewModel.cs │ ├── MemberDetailsReportViewModel.cs │ ├── MemberRegistrationGridModel.cs │ ├── MemberRegistrationViewModel.cs │ ├── MemberRequest.cs │ ├── MonthWiseReportViewModel.cs │ ├── MonthwiseRequestModel.cs │ ├── PaymentDetailsViewModel.cs │ ├── PlanMasterViewModel.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── RenewalReportRequestModel.cs │ ├── RenewalReportViewModel.cs │ ├── RenewalViewModel.cs │ ├── RoleViewModel.cs │ ├── SchemeMasterViewModel.cs │ ├── UsersViewModel.cs │ ├── WebGYM.ViewModels.csproj │ ├── YearWiseRequestModel.cs │ └── YearwiseReportViewModel.cs ├── WebGYM.sln ├── WebGYM │ ├── Common │ │ ├── CustomExceptionFilterAttribute.cs │ │ └── Generate.cs │ ├── Controllers │ │ ├── AllActivePlanMasterController.cs │ │ ├── AssignRolesController.cs │ │ ├── AuthenticateController.cs │ │ ├── CreateRoleController.cs │ │ ├── GenerateRecepitController.cs │ │ ├── GetMemberNoController.cs │ │ ├── GetTotalAmountController.cs │ │ ├── HomeController.cs │ │ ├── MemberDetailsReportController.cs │ │ ├── MonthwiseReportController.cs │ │ ├── PaymentController.cs │ │ ├── PeriodController.cs │ │ ├── PlanMasterController.cs │ │ ├── RegisterMemberController.cs │ │ ├── RemoveRoleController.cs │ │ ├── RenewalController.cs │ │ ├── RenewalDetailsController.cs │ │ ├── RenewalReportController.cs │ │ ├── SchemeController.cs │ │ ├── SchemeDropdownController.cs │ │ ├── UserController.cs │ │ └── YearwiseReportController.cs │ ├── Mappings │ │ └── MappingProfile.cs │ ├── Models │ │ ├── AppSettings.cs │ │ └── ErrorViewModel.cs │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── Startup.cs │ ├── Views │ │ ├── Home │ │ │ ├── About.cshtml │ │ │ ├── Contact.cshtml │ │ │ ├── Index.cshtml │ │ │ └── Privacy.cshtml │ │ ├── Shared │ │ │ ├── Error.cshtml │ │ │ ├── _CookieConsentPartial.cshtml │ │ │ ├── _Layout.cshtml │ │ │ └── _ValidationScriptsPartial.cshtml │ │ ├── _ViewImports.cshtml │ │ └── _ViewStart.cshtml │ ├── WebGYM.csproj │ ├── appsettings.Development.json │ ├── appsettings.json │ └── wwwroot │ │ ├── ErrorLog │ │ ├── Log_28-December-2018.txt │ │ ├── Log_29-April-2019.txt │ │ └── Log_29-December-2018.txt │ │ ├── css │ │ ├── site.css │ │ └── site.min.css │ │ ├── favicon.ico │ │ ├── images │ │ ├── banner1.svg │ │ ├── banner2.svg │ │ └── banner3.svg │ │ ├── js │ │ ├── site.js │ │ └── site.min.js │ │ └── lib │ │ ├── bootstrap │ │ ├── .bower.json │ │ ├── LICENSE │ │ └── dist │ │ │ ├── css │ │ │ ├── bootstrap-theme.css │ │ │ ├── bootstrap-theme.css.map │ │ │ ├── bootstrap-theme.min.css │ │ │ ├── bootstrap-theme.min.css.map │ │ │ ├── bootstrap.css │ │ │ ├── bootstrap.css.map │ │ │ ├── bootstrap.min.css │ │ │ └── bootstrap.min.css.map │ │ │ ├── fonts │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ └── js │ │ │ ├── bootstrap.js │ │ │ ├── bootstrap.min.js │ │ │ └── npm.js │ │ ├── jquery-validation-unobtrusive │ │ ├── .bower.json │ │ ├── LICENSE.txt │ │ ├── jquery.validate.unobtrusive.js │ │ └── jquery.validate.unobtrusive.min.js │ │ ├── jquery-validation │ │ ├── .bower.json │ │ ├── LICENSE.md │ │ └── dist │ │ │ ├── additional-methods.js │ │ │ ├── additional-methods.min.js │ │ │ ├── jquery.validate.js │ │ │ └── jquery.validate.min.js │ │ └── jquery │ │ ├── .bower.json │ │ ├── LICENSE.txt │ │ └── dist │ │ ├── jquery.js │ │ ├── jquery.min.js │ │ └── jquery.min.map └── gym-project │ ├── .editorconfig │ ├── README.md │ ├── angular.json │ ├── dist │ └── gym-project │ │ ├── favicon.ico │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.svg │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ ├── fontawesome-webfont.woff2 │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.svg │ │ ├── glyphicons-halflings-regular.ttf │ │ ├── glyphicons-halflings-regular.woff │ │ ├── glyphicons-halflings-regular.woff2 │ │ ├── index.html │ │ ├── main.js │ │ ├── main.js.map │ │ ├── polyfills.js │ │ ├── polyfills.js.map │ │ ├── runtime.js │ │ ├── runtime.js.map │ │ ├── styles.js │ │ ├── styles.js.map │ │ ├── vendor.js │ │ └── vendor.js.map │ ├── e2e │ ├── protractor.conf.js │ ├── src │ │ ├── app.e2e-spec.ts │ │ └── app.po.ts │ └── tsconfig.e2e.json │ ├── package-lock.json │ ├── package.json │ ├── src │ ├── app │ │ ├── AdminDashboard │ │ │ ├── app.AdminDashboardComponent.html │ │ │ └── app.AdminDashboardComponent.ts │ │ ├── AssignRole │ │ │ ├── Models │ │ │ │ ├── AssignRemoveModel.ts │ │ │ │ └── AssignRolesViewModel.ts │ │ │ ├── Services │ │ │ │ └── app.AssignandRemoveRole.Service.ts │ │ │ ├── app.AllAssignRole.component.ts │ │ │ ├── app.AllAssignedRoles.html │ │ │ ├── app.AssignRole.component.ts │ │ │ └── app.AssignandRemoveRole.html │ │ ├── AuthGuard │ │ │ ├── AdminAuthGuardService.ts │ │ │ └── UserAuthGuardService.ts │ │ ├── Content │ │ │ ├── dist │ │ │ │ ├── css │ │ │ │ │ ├── sb-admin-2.css │ │ │ │ │ └── sb-admin-2.min.css │ │ │ │ └── js │ │ │ │ │ ├── sb-admin-2.js │ │ │ │ │ └── sb-admin-2.min.js │ │ │ └── vendor │ │ │ │ ├── bootstrap-social │ │ │ │ ├── bootstrap-social.css │ │ │ │ ├── bootstrap-social.less │ │ │ │ └── bootstrap-social.scss │ │ │ │ ├── bootstrap │ │ │ │ ├── css │ │ │ │ │ ├── bootstrap.css │ │ │ │ │ └── bootstrap.min.css │ │ │ │ ├── fonts │ │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ │ └── js │ │ │ │ │ ├── bootstrap.js │ │ │ │ │ └── bootstrap.min.js │ │ │ │ ├── datatables-plugins │ │ │ │ ├── dataTables.bootstrap.css │ │ │ │ ├── dataTables.bootstrap.js │ │ │ │ ├── dataTables.bootstrap.min.js │ │ │ │ └── index.html │ │ │ │ ├── datatables-responsive │ │ │ │ ├── dataTables.responsive.css │ │ │ │ ├── dataTables.responsive.js │ │ │ │ └── dataTables.responsive.scss │ │ │ │ ├── datatables │ │ │ │ ├── css │ │ │ │ │ ├── dataTables.bootstrap.css │ │ │ │ │ ├── dataTables.bootstrap.min.css │ │ │ │ │ ├── dataTables.bootstrap4.css │ │ │ │ │ ├── dataTables.bootstrap4.min.css │ │ │ │ │ ├── dataTables.foundation.css │ │ │ │ │ ├── dataTables.foundation.min.css │ │ │ │ │ ├── dataTables.jqueryui.css │ │ │ │ │ ├── dataTables.jqueryui.min.css │ │ │ │ │ ├── dataTables.material.css │ │ │ │ │ ├── dataTables.material.min.css │ │ │ │ │ ├── dataTables.semanticui.css │ │ │ │ │ ├── dataTables.semanticui.min.css │ │ │ │ │ ├── dataTables.uikit.css │ │ │ │ │ ├── dataTables.uikit.min.css │ │ │ │ │ ├── jquery.dataTables.css │ │ │ │ │ ├── jquery.dataTables.min.css │ │ │ │ │ └── jquery.dataTables_themeroller.css │ │ │ │ ├── images │ │ │ │ │ ├── Sorting icons.psd │ │ │ │ │ ├── favicon.ico │ │ │ │ │ ├── sort_asc.png │ │ │ │ │ ├── sort_asc_disabled.png │ │ │ │ │ ├── sort_both.png │ │ │ │ │ ├── sort_desc.png │ │ │ │ │ └── sort_desc_disabled.png │ │ │ │ └── js │ │ │ │ │ ├── dataTables.bootstrap.js │ │ │ │ │ ├── dataTables.bootstrap.min.js │ │ │ │ │ ├── dataTables.bootstrap4.js │ │ │ │ │ ├── dataTables.bootstrap4.min.js │ │ │ │ │ ├── dataTables.foundation.js │ │ │ │ │ ├── dataTables.foundation.min.js │ │ │ │ │ ├── dataTables.jqueryui.js │ │ │ │ │ ├── dataTables.jqueryui.min.js │ │ │ │ │ ├── dataTables.material.js │ │ │ │ │ ├── dataTables.material.min.js │ │ │ │ │ ├── dataTables.semanticui.js │ │ │ │ │ ├── dataTables.semanticui.min.js │ │ │ │ │ ├── dataTables.uikit.js │ │ │ │ │ ├── dataTables.uikit.min.js │ │ │ │ │ ├── jquery.dataTables.js │ │ │ │ │ ├── jquery.dataTables.min.js │ │ │ │ │ └── jquery.js │ │ │ │ ├── flot-tooltip │ │ │ │ ├── jquery.flot.tooltip.js │ │ │ │ ├── jquery.flot.tooltip.min.js │ │ │ │ └── jquery.flot.tooltip.source.js │ │ │ │ ├── flot │ │ │ │ ├── excanvas.js │ │ │ │ ├── excanvas.min.js │ │ │ │ ├── jquery.colorhelpers.js │ │ │ │ ├── jquery.flot.canvas.js │ │ │ │ ├── jquery.flot.categories.js │ │ │ │ ├── jquery.flot.crosshair.js │ │ │ │ ├── jquery.flot.errorbars.js │ │ │ │ ├── jquery.flot.fillbetween.js │ │ │ │ ├── jquery.flot.image.js │ │ │ │ ├── jquery.flot.js │ │ │ │ ├── jquery.flot.navigate.js │ │ │ │ ├── jquery.flot.pie.js │ │ │ │ ├── jquery.flot.resize.js │ │ │ │ ├── jquery.flot.selection.js │ │ │ │ ├── jquery.flot.stack.js │ │ │ │ ├── jquery.flot.symbol.js │ │ │ │ ├── jquery.flot.threshold.js │ │ │ │ ├── jquery.flot.time.js │ │ │ │ └── jquery.js │ │ │ │ ├── font-awesome │ │ │ │ ├── HELP-US-OUT.txt │ │ │ │ ├── css │ │ │ │ │ ├── font-awesome.css │ │ │ │ │ ├── font-awesome.css.map │ │ │ │ │ └── font-awesome.min.css │ │ │ │ ├── fonts │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ │ ├── less │ │ │ │ │ ├── animated.less │ │ │ │ │ ├── bordered-pulled.less │ │ │ │ │ ├── core.less │ │ │ │ │ ├── extras.less │ │ │ │ │ ├── fixed-width.less │ │ │ │ │ ├── font-awesome.less │ │ │ │ │ ├── icons.less │ │ │ │ │ ├── larger.less │ │ │ │ │ ├── list.less │ │ │ │ │ ├── mixins.less │ │ │ │ │ ├── path.less │ │ │ │ │ ├── rotated-flipped.less │ │ │ │ │ ├── screen-reader.less │ │ │ │ │ ├── spinning.less │ │ │ │ │ ├── stacked.less │ │ │ │ │ └── variables.less │ │ │ │ └── scss │ │ │ │ │ ├── _animated.scss │ │ │ │ │ ├── _bordered-pulled.scss │ │ │ │ │ ├── _core.scss │ │ │ │ │ ├── _extras.scss │ │ │ │ │ ├── _fixed-width.scss │ │ │ │ │ ├── _icons.scss │ │ │ │ │ ├── _larger.scss │ │ │ │ │ ├── _list.scss │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ ├── _path.scss │ │ │ │ │ ├── _rotated-flipped.scss │ │ │ │ │ ├── _screen-reader.scss │ │ │ │ │ ├── _spinning.scss │ │ │ │ │ ├── _stacked.scss │ │ │ │ │ ├── _variables.scss │ │ │ │ │ └── font-awesome.scss │ │ │ │ ├── jquery │ │ │ │ ├── jquery.js │ │ │ │ └── jquery.min.js │ │ │ │ ├── metisMenu │ │ │ │ ├── metisMenu.css │ │ │ │ ├── metisMenu.js │ │ │ │ ├── metisMenu.min.css │ │ │ │ └── metisMenu.min.js │ │ │ │ ├── morrisjs │ │ │ │ ├── morris.css │ │ │ │ ├── morris.js │ │ │ │ └── morris.min.js │ │ │ │ └── raphael │ │ │ │ ├── raphael.js │ │ │ │ └── raphael.min.js │ │ ├── CreateUsers │ │ │ ├── Models │ │ │ │ ├── app.UserDropdownModel.ts │ │ │ │ └── app.UserModel.ts │ │ │ ├── Services │ │ │ │ └── app.UserRegistration.Service.ts │ │ │ ├── app.AllUserRegistration.component.ts │ │ │ ├── app.AllUserRegistration.html │ │ │ ├── app.EditUserRegistration.component.ts │ │ │ ├── app.EditUserRegistration.html │ │ │ ├── app.UserRegistration.component.ts │ │ │ └── app.UserRegistration.html │ │ ├── Login │ │ │ ├── Models │ │ │ │ └── app.LoginModel.ts │ │ │ ├── Services │ │ │ │ └── app.LoginService.ts │ │ │ ├── app.AdminLogout.Component.ts │ │ │ ├── app.LoginComponent.ts │ │ │ ├── app.UserLogout.Component.ts │ │ │ └── app.login.html │ │ ├── MemberRegistration │ │ │ ├── List │ │ │ │ ├── Memberlist.component.html │ │ │ │ ├── app.MemberListComponent .ts │ │ │ │ ├── app.MemberViewComponent.html │ │ │ │ └── app.MemberViewComponent.ts │ │ │ ├── Models │ │ │ │ ├── app.MemberRegistrationGridModel.ts │ │ │ │ └── app.MemberRegistrationModel.ts │ │ │ ├── Services │ │ │ │ └── app.MemberRegistration.Service.ts │ │ │ ├── app.AllMemberRegistration.component.ts │ │ │ ├── app.AllMemberRegistration.html │ │ │ ├── app.EditMemberRegistration.component.ts │ │ │ ├── app.EditMemberRegistration.html │ │ │ ├── app.MemberRegistration.component.ts │ │ │ ├── app.MemberRegistration.html │ │ │ └── app.memberComponent.css │ │ ├── Payment │ │ │ ├── List │ │ │ │ ├── app.PaymentListComponent.ts │ │ │ │ ├── app.PaymentOverviewComponent.ts │ │ │ │ ├── app.PaymentViewComponent.html │ │ │ │ └── app.Paymentlist.component.html │ │ │ ├── Models │ │ │ │ └── app.PaymentDetailsModel.ts │ │ │ └── Services │ │ │ │ └── app.PaymentDetails.Service.ts │ │ ├── PeriodMaster │ │ │ ├── Models │ │ │ │ └── app.PeriodModel.ts │ │ │ └── Services │ │ │ │ └── app.Period.Service.ts │ │ ├── PlanMaster │ │ │ ├── Models │ │ │ │ ├── app.ActivePlanModel.ts │ │ │ │ ├── app.PlanMasterModel.ts │ │ │ │ └── app.PlanMasterViewModel.ts │ │ │ ├── Services │ │ │ │ └── app.planmaster.service.ts │ │ │ ├── app.EditPlan.component.html │ │ │ ├── app.EditPlan.component.ts │ │ │ ├── app.allplanmaster.component.html │ │ │ ├── app.allplanmaster.component.ts │ │ │ ├── app.planmaster.component.html │ │ │ └── app.planmaster.component.ts │ │ ├── Recepit │ │ │ ├── Models │ │ │ │ ├── app.GenerateRecepitRequestModel.ts │ │ │ │ └── app.GenerateRecepitViewModel.ts │ │ │ ├── Recepit.html │ │ │ ├── Services │ │ │ │ └── app.GenerateRecepit.Service.ts │ │ │ └── app.generateRecepit.Component.ts │ │ ├── Renewal │ │ │ ├── Models │ │ │ │ ├── app.RenewalModel.ts │ │ │ │ ├── app.RequestMemberModel.ts │ │ │ │ ├── app.RequestMemberNoModel.ts │ │ │ │ └── app.ResponseMemberModel.ts │ │ │ ├── Services │ │ │ │ └── app.renewal.Service.ts │ │ │ ├── app.Renewal.Component.ts │ │ │ └── app.renewalcomponent.html │ │ ├── Reports │ │ │ ├── Models │ │ │ │ ├── app.MemberDetailsReportViewModel.ts │ │ │ │ ├── app.MonthModel.ts │ │ │ │ ├── app.MonthWiseRequestModel.ts │ │ │ │ ├── app.MonthWiseResponseModel.ts │ │ │ │ ├── app.RenewalReportViewModel.ts │ │ │ │ ├── app.RenewalRequestModel.ts │ │ │ │ ├── app.YearModel.ts │ │ │ │ ├── app.YearwiseRequestModel.ts │ │ │ │ └── app.YearwiseResponseModel.ts │ │ │ ├── Services │ │ │ │ └── app.ReportServices.ts │ │ │ ├── app.MemberDetailsReport.Component.ts │ │ │ ├── app.MemberDetailsReport.css │ │ │ ├── app.MemberDetailsReport.html │ │ │ ├── app.MonthwiseReport.Component.ts │ │ │ ├── app.MonthwiseReport.html │ │ │ ├── app.RenewalReport.Component.ts │ │ │ ├── app.RenewalReport.html │ │ │ ├── app.YearwiseReport.Component.ts │ │ │ └── app.YearwiseReport.html │ │ ├── RoleMaster │ │ │ ├── Models │ │ │ │ └── app.RoleModel.ts │ │ │ ├── Services │ │ │ │ └── app.role.Service.ts │ │ │ ├── app.AllRole.component.ts │ │ │ ├── app.AllRole.html │ │ │ ├── app.EditRole.component.ts │ │ │ ├── app.EditRole.html │ │ │ ├── app.Role.component.ts │ │ │ └── app.Role.html │ │ ├── SchemeMasters │ │ │ ├── Models │ │ │ │ ├── app.SchemeDropdownModel.ts │ │ │ │ └── app.SchemeViewModel.ts │ │ │ ├── Services │ │ │ │ └── app.Scheme.Service.ts │ │ │ ├── app.AllScheme.Component.ts │ │ │ ├── app.AllSchemeComponent.css │ │ │ ├── app.AllSchemeComponent.html │ │ │ ├── app.EditScheme.Component.ts │ │ │ ├── app.EditSchemeComponent.html │ │ │ ├── app.Scheme.Component.ts │ │ │ ├── app.SchemeMaster.html │ │ │ └── app.SchemeModel.ts │ │ ├── Shared │ │ │ ├── PaginationModel.ts │ │ │ ├── PaginationService.ts │ │ │ ├── app.GenderModel.ts │ │ │ ├── constantUrl.ts │ │ │ └── environment.ts │ │ ├── UserDashboard │ │ │ ├── app.UserDashboardComponent.html │ │ │ └── app.UserDashboardComponent.ts │ │ ├── _layout │ │ │ ├── app-admin-layout.component.html │ │ │ ├── app-adminlayout.component.css │ │ │ ├── app-adminlayout.component.ts │ │ │ ├── app-user-layout.component.html │ │ │ └── app-userlayout.component.ts │ │ ├── app-routing.module.ts │ │ ├── app.component.css │ │ ├── app.component.html │ │ ├── app.component.spec.ts │ │ ├── app.component.ts │ │ └── app.module.ts │ ├── assets │ │ └── .gitkeep │ ├── browserslist │ ├── environments │ │ ├── environment.prod.ts │ │ └── environment.ts │ ├── favicon.ico │ ├── index.html │ ├── karma.conf.js │ ├── main.ts │ ├── polyfills.ts │ ├── styles.css │ ├── test.ts │ ├── tsconfig.app.json │ ├── tsconfig.spec.json │ └── tslint.json │ ├── tsconfig.json │ └── tslint.json └── gym-project ├── .editorconfig ├── README.md ├── angular.json ├── e2e ├── protractor.conf.js ├── src │ ├── app.e2e-spec.ts │ └── app.po.ts └── tsconfig.e2e.json ├── package-lock.json ├── package.json ├── src ├── app │ ├── AdminDashboard │ │ ├── app.AdminDashboardComponent.html │ │ └── app.AdminDashboardComponent.ts │ ├── AssignRole │ │ ├── Models │ │ │ ├── AssignRemoveModel.ts │ │ │ └── AssignRolesViewModel.ts │ │ ├── Services │ │ │ └── app.AssignandRemoveRole.Service.ts │ │ ├── app.AllAssignRole.component.ts │ │ ├── app.AllAssignedRoles.html │ │ ├── app.AssignRole.component.ts │ │ └── app.AssignandRemoveRole.html │ ├── AuthGuard │ │ ├── AdminAuthGuardService.ts │ │ └── UserAuthGuardService.ts │ ├── Content │ │ ├── dist │ │ │ ├── css │ │ │ │ ├── sb-admin-2.css │ │ │ │ └── sb-admin-2.min.css │ │ │ └── js │ │ │ │ ├── sb-admin-2.js │ │ │ │ └── sb-admin-2.min.js │ │ └── vendor │ │ │ ├── bootstrap-social │ │ │ ├── bootstrap-social.css │ │ │ ├── bootstrap-social.less │ │ │ └── bootstrap-social.scss │ │ │ ├── bootstrap │ │ │ ├── css │ │ │ │ ├── bootstrap.css │ │ │ │ └── bootstrap.min.css │ │ │ ├── fonts │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ └── js │ │ │ │ ├── bootstrap.js │ │ │ │ └── bootstrap.min.js │ │ │ ├── datatables-plugins │ │ │ ├── dataTables.bootstrap.css │ │ │ ├── dataTables.bootstrap.js │ │ │ ├── dataTables.bootstrap.min.js │ │ │ └── index.html │ │ │ ├── datatables-responsive │ │ │ ├── dataTables.responsive.css │ │ │ ├── dataTables.responsive.js │ │ │ └── dataTables.responsive.scss │ │ │ ├── datatables │ │ │ ├── css │ │ │ │ ├── dataTables.bootstrap.css │ │ │ │ ├── dataTables.bootstrap.min.css │ │ │ │ ├── dataTables.bootstrap4.css │ │ │ │ ├── dataTables.bootstrap4.min.css │ │ │ │ ├── dataTables.foundation.css │ │ │ │ ├── dataTables.foundation.min.css │ │ │ │ ├── dataTables.jqueryui.css │ │ │ │ ├── dataTables.jqueryui.min.css │ │ │ │ ├── dataTables.material.css │ │ │ │ ├── dataTables.material.min.css │ │ │ │ ├── dataTables.semanticui.css │ │ │ │ ├── dataTables.semanticui.min.css │ │ │ │ ├── dataTables.uikit.css │ │ │ │ ├── dataTables.uikit.min.css │ │ │ │ ├── jquery.dataTables.css │ │ │ │ ├── jquery.dataTables.min.css │ │ │ │ └── jquery.dataTables_themeroller.css │ │ │ ├── images │ │ │ │ ├── Sorting icons.psd │ │ │ │ ├── favicon.ico │ │ │ │ ├── sort_asc.png │ │ │ │ ├── sort_asc_disabled.png │ │ │ │ ├── sort_both.png │ │ │ │ ├── sort_desc.png │ │ │ │ └── sort_desc_disabled.png │ │ │ └── js │ │ │ │ ├── dataTables.bootstrap.js │ │ │ │ ├── dataTables.bootstrap.min.js │ │ │ │ ├── dataTables.bootstrap4.js │ │ │ │ ├── dataTables.bootstrap4.min.js │ │ │ │ ├── dataTables.foundation.js │ │ │ │ ├── dataTables.foundation.min.js │ │ │ │ ├── dataTables.jqueryui.js │ │ │ │ ├── dataTables.jqueryui.min.js │ │ │ │ ├── dataTables.material.js │ │ │ │ ├── dataTables.material.min.js │ │ │ │ ├── dataTables.semanticui.js │ │ │ │ ├── dataTables.semanticui.min.js │ │ │ │ ├── dataTables.uikit.js │ │ │ │ ├── dataTables.uikit.min.js │ │ │ │ ├── jquery.dataTables.js │ │ │ │ ├── jquery.dataTables.min.js │ │ │ │ └── jquery.js │ │ │ ├── flot-tooltip │ │ │ ├── jquery.flot.tooltip.js │ │ │ ├── jquery.flot.tooltip.min.js │ │ │ └── jquery.flot.tooltip.source.js │ │ │ ├── flot │ │ │ ├── excanvas.js │ │ │ ├── excanvas.min.js │ │ │ ├── jquery.colorhelpers.js │ │ │ ├── jquery.flot.canvas.js │ │ │ ├── jquery.flot.categories.js │ │ │ ├── jquery.flot.crosshair.js │ │ │ ├── jquery.flot.errorbars.js │ │ │ ├── jquery.flot.fillbetween.js │ │ │ ├── jquery.flot.image.js │ │ │ ├── jquery.flot.js │ │ │ ├── jquery.flot.navigate.js │ │ │ ├── jquery.flot.pie.js │ │ │ ├── jquery.flot.resize.js │ │ │ ├── jquery.flot.selection.js │ │ │ ├── jquery.flot.stack.js │ │ │ ├── jquery.flot.symbol.js │ │ │ ├── jquery.flot.threshold.js │ │ │ ├── jquery.flot.time.js │ │ │ └── jquery.js │ │ │ ├── font-awesome │ │ │ ├── HELP-US-OUT.txt │ │ │ ├── css │ │ │ │ ├── font-awesome.css │ │ │ │ ├── font-awesome.css.map │ │ │ │ └── font-awesome.min.css │ │ │ ├── fonts │ │ │ │ ├── FontAwesome.otf │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ └── fontawesome-webfont.woff2 │ │ │ ├── less │ │ │ │ ├── animated.less │ │ │ │ ├── bordered-pulled.less │ │ │ │ ├── core.less │ │ │ │ ├── extras.less │ │ │ │ ├── fixed-width.less │ │ │ │ ├── font-awesome.less │ │ │ │ ├── icons.less │ │ │ │ ├── larger.less │ │ │ │ ├── list.less │ │ │ │ ├── mixins.less │ │ │ │ ├── path.less │ │ │ │ ├── rotated-flipped.less │ │ │ │ ├── screen-reader.less │ │ │ │ ├── spinning.less │ │ │ │ ├── stacked.less │ │ │ │ └── variables.less │ │ │ └── scss │ │ │ │ ├── _animated.scss │ │ │ │ ├── _bordered-pulled.scss │ │ │ │ ├── _core.scss │ │ │ │ ├── _extras.scss │ │ │ │ ├── _fixed-width.scss │ │ │ │ ├── _icons.scss │ │ │ │ ├── _larger.scss │ │ │ │ ├── _list.scss │ │ │ │ ├── _mixins.scss │ │ │ │ ├── _path.scss │ │ │ │ ├── _rotated-flipped.scss │ │ │ │ ├── _screen-reader.scss │ │ │ │ ├── _spinning.scss │ │ │ │ ├── _stacked.scss │ │ │ │ ├── _variables.scss │ │ │ │ └── font-awesome.scss │ │ │ ├── jquery │ │ │ ├── jquery.js │ │ │ └── jquery.min.js │ │ │ ├── metisMenu │ │ │ ├── metisMenu.css │ │ │ ├── metisMenu.js │ │ │ ├── metisMenu.min.css │ │ │ └── metisMenu.min.js │ │ │ ├── morrisjs │ │ │ ├── morris.css │ │ │ ├── morris.js │ │ │ └── morris.min.js │ │ │ └── raphael │ │ │ ├── raphael.js │ │ │ └── raphael.min.js │ ├── CreateUsers │ │ ├── Models │ │ │ ├── app.UserDropdownModel.ts │ │ │ └── app.UserModel.ts │ │ ├── Services │ │ │ └── app.UserRegistration.Service.ts │ │ ├── app.AllUserRegistration.component.ts │ │ ├── app.AllUserRegistration.html │ │ ├── app.EditUserRegistration.component.ts │ │ ├── app.EditUserRegistration.html │ │ ├── app.UserRegistration.component.ts │ │ └── app.UserRegistration.html │ ├── Login │ │ ├── Models │ │ │ └── app.LoginModel.ts │ │ ├── Services │ │ │ └── app.LoginService.ts │ │ ├── app.AdminLogout.Component.ts │ │ ├── app.LoginComponent.ts │ │ ├── app.UserLogout.Component.ts │ │ └── app.login.html │ ├── MemberRegistration │ │ ├── List │ │ │ ├── Memberlist.component.html │ │ │ ├── app.MemberListComponent .ts │ │ │ ├── app.MemberViewComponent.html │ │ │ └── app.MemberViewComponent.ts │ │ ├── Models │ │ │ ├── app.MemberRegistrationGridModel.ts │ │ │ └── app.MemberRegistrationModel.ts │ │ ├── Services │ │ │ └── app.MemberRegistration.Service.ts │ │ ├── app.AllMemberRegistration.component.ts │ │ ├── app.AllMemberRegistration.html │ │ ├── app.EditMemberRegistration.component.ts │ │ ├── app.EditMemberRegistration.html │ │ ├── app.MemberRegistration.component.ts │ │ ├── app.MemberRegistration.html │ │ └── app.memberComponent.css │ ├── Payment │ │ ├── List │ │ │ ├── app.PaymentListComponent.ts │ │ │ ├── app.PaymentOverviewComponent.ts │ │ │ ├── app.PaymentViewComponent.html │ │ │ └── app.Paymentlist.component.html │ │ ├── Models │ │ │ └── app.PaymentDetailsModel.ts │ │ └── Services │ │ │ └── app.PaymentDetails.Service.ts │ ├── PeriodMaster │ │ ├── Models │ │ │ └── app.PeriodModel.ts │ │ └── Services │ │ │ └── app.Period.Service.ts │ ├── PlanMaster │ │ ├── Models │ │ │ ├── app.ActivePlanModel.ts │ │ │ ├── app.PlanMasterModel.ts │ │ │ └── app.PlanMasterViewModel.ts │ │ ├── Services │ │ │ └── app.planmaster.service.ts │ │ ├── app.EditPlan.component.html │ │ ├── app.EditPlan.component.ts │ │ ├── app.allplanmaster.component.html │ │ ├── app.allplanmaster.component.ts │ │ ├── app.planmaster.component.html │ │ └── app.planmaster.component.ts │ ├── Recepit │ │ ├── Models │ │ │ ├── app.GenerateRecepitRequestModel.ts │ │ │ └── app.GenerateRecepitViewModel.ts │ │ ├── Recepit.html │ │ ├── Services │ │ │ └── app.GenerateRecepit.Service.ts │ │ └── app.generateRecepit.Component.ts │ ├── Renewal │ │ ├── Models │ │ │ ├── app.RenewalModel.ts │ │ │ ├── app.RequestMemberModel.ts │ │ │ ├── app.RequestMemberNoModel.ts │ │ │ └── app.ResponseMemberModel.ts │ │ ├── Services │ │ │ └── app.renewal.Service.ts │ │ ├── app.Renewal.Component.ts │ │ └── app.renewalcomponent.html │ ├── Reports │ │ ├── Models │ │ │ ├── app.MemberDetailsReportViewModel.ts │ │ │ ├── app.MonthModel.ts │ │ │ ├── app.MonthWiseRequestModel.ts │ │ │ ├── app.MonthWiseResponseModel.ts │ │ │ ├── app.RenewalReportViewModel.ts │ │ │ ├── app.RenewalRequestModel.ts │ │ │ ├── app.YearModel.ts │ │ │ ├── app.YearwiseRequestModel.ts │ │ │ └── app.YearwiseResponseModel.ts │ │ ├── Services │ │ │ └── app.ReportServices.ts │ │ ├── app.MemberDetailsReport.Component.ts │ │ ├── app.MemberDetailsReport.css │ │ ├── app.MemberDetailsReport.html │ │ ├── app.MonthwiseReport.Component.ts │ │ ├── app.MonthwiseReport.html │ │ ├── app.RenewalReport.Component.ts │ │ ├── app.RenewalReport.html │ │ ├── app.YearwiseReport.Component.ts │ │ └── app.YearwiseReport.html │ ├── RoleMaster │ │ ├── Models │ │ │ └── app.RoleModel.ts │ │ ├── Services │ │ │ └── app.role.Service.ts │ │ ├── app.AllRole.component.ts │ │ ├── app.AllRole.html │ │ ├── app.EditRole.component.ts │ │ ├── app.EditRole.html │ │ ├── app.Role.component.ts │ │ └── app.Role.html │ ├── SchemeMasters │ │ ├── Models │ │ │ ├── app.SchemeDropdownModel.ts │ │ │ └── app.SchemeViewModel.ts │ │ ├── Services │ │ │ └── app.Scheme.Service.ts │ │ ├── app.AllScheme.Component.ts │ │ ├── app.AllSchemeComponent.css │ │ ├── app.AllSchemeComponent.html │ │ ├── app.EditScheme.Component.ts │ │ ├── app.EditSchemeComponent.html │ │ ├── app.Scheme.Component.ts │ │ ├── app.SchemeMaster.html │ │ └── app.SchemeModel.ts │ ├── Shared │ │ ├── PaginationModel.ts │ │ ├── PaginationService.ts │ │ ├── app.GenderModel.ts │ │ ├── constantUrl.ts │ │ └── environment.ts │ ├── UserDashboard │ │ ├── app.UserDashboardComponent.html │ │ └── app.UserDashboardComponent.ts │ ├── _layout │ │ ├── app-admin-layout.component.html │ │ ├── app-adminlayout.component.css │ │ ├── app-adminlayout.component.ts │ │ ├── app-user-layout.component.html │ │ └── app-userlayout.component.ts │ ├── app-routing.module.ts │ ├── app.component.css │ ├── app.component.html │ ├── app.component.spec.ts │ ├── app.component.ts │ └── app.module.ts ├── assets │ └── .gitkeep ├── browserslist ├── environments │ ├── environment.prod.ts │ └── environment.ts ├── favicon.ico ├── index.html ├── karma.conf.js ├── main.ts ├── polyfills.ts ├── styles.css ├── test.ts ├── tsconfig.app.json ├── tsconfig.spec.json └── tslint.json ├── tsconfig.json └── tslint.json /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /Images/banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/Images/banner.png -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 saineshwar bageri 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /WebGYM/AngularGYMDBScript.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/AngularGYMDBScript.sql -------------------------------------------------------------------------------- /WebGYM/GYM Project Angular 7 with ASPNET CORE.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/GYM Project Angular 7 with ASPNET CORE.pdf -------------------------------------------------------------------------------- /WebGYM/WebGYM.Concrete/DatabaseContext.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Microsoft.EntityFrameworkCore; 7 | using WebGYM.Models; 8 | 9 | namespace WebGYM.Concrete 10 | { 11 | public class DatabaseContext : DbContext 12 | { 13 | public DatabaseContext(DbContextOptions options) : base(options) 14 | { 15 | 16 | } 17 | 18 | public DbSet SchemeMaster { get; set; } 19 | public DbSet PeriodTb { get; set; } 20 | public DbSet PlanMaster { get; set; } 21 | public DbSet Role { get; set; } 22 | public DbSet MemberRegistration { get; set; } 23 | public DbSet Users { get; set; } 24 | public DbSet UsersInRoles { get; set; } 25 | public DbSet PaymentDetails { get; set; } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Concrete/GenerateRecepitConcrete.cs: -------------------------------------------------------------------------------- 1 | using Dapper; 2 | using Microsoft.Extensions.Configuration; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Data; 6 | using System.Data.SqlClient; 7 | using System.Linq; 8 | using System.Text; 9 | using System.Threading.Tasks; 10 | using WebGYM.Interface; 11 | using WebGYM.ViewModels; 12 | 13 | namespace WebGYM.Concrete 14 | { 15 | public class GenerateRecepitConcrete : IGenerateRecepit 16 | { 17 | private readonly IConfiguration _configuration; 18 | private readonly DatabaseContext _context; 19 | 20 | public GenerateRecepitConcrete(DatabaseContext context, IConfiguration configuration) 21 | { 22 | _context = context; 23 | _configuration = configuration; 24 | 25 | } 26 | public GenerateRecepitViewModel Generate(int paymentId) 27 | { 28 | using (var con = new SqlConnection(_configuration.GetConnectionString("DatabaseConnection"))) 29 | { 30 | var para = new DynamicParameters(); 31 | para.Add("@PaymentID", paymentId); 32 | return con.Query("GetRecepit", para, null, true, 0, commandType: CommandType.StoredProcedure).SingleOrDefault(); 33 | } 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Concrete/PeriodMasterConcrete.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using WebGYM.Interface; 7 | using WebGYM.Models; 8 | 9 | namespace WebGYM.Concrete 10 | { 11 | public class PeriodMasterConcrete : IPeriodMaster 12 | { 13 | private readonly DatabaseContext _databaseContext; 14 | public PeriodMasterConcrete(DatabaseContext databaseContext) 15 | { 16 | _databaseContext = databaseContext; 17 | } 18 | 19 | public List ListofPeriod() 20 | { 21 | var listofPeriod = _databaseContext.PeriodTb.ToList(); 22 | 23 | listofPeriod.IndexOf(new PeriodTB() 24 | { 25 | Text = "---Select---", 26 | Value = string.Empty 27 | },0); 28 | 29 | return listofPeriod; 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Concrete/app.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IGenerateRecepit.cs: -------------------------------------------------------------------------------- 1 | using WebGYM.ViewModels; 2 | 3 | namespace WebGYM.Interface 4 | { 5 | public interface IGenerateRecepit 6 | { 7 | GenerateRecepitViewModel Generate(int paymentId); 8 | } 9 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IMemberRegistration.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Linq; 3 | using WebGYM.Models; 4 | using WebGYM.ViewModels; 5 | 6 | namespace WebGYM.Interface 7 | { 8 | public interface IMemberRegistration 9 | { 10 | int InsertMember(MemberRegistration memberRegistration); 11 | long CheckNameExitsforUpdate(string memberFName, string memberLName, string memberMName); 12 | bool CheckNameExits(string memberFName ,string memberLName, string memberMName); 13 | List GetMemberList(); 14 | MemberRegistrationViewModel GetMemberbyId(int memberId); 15 | bool DeleteMember(long memberId); 16 | int UpdateMember(MemberRegistration memberRegistration); 17 | IQueryable GetAll(QueryParameters queryParameters, int userId); 18 | int Count(int userId); 19 | List GetMemberNoList(string memberNo, int userId); 20 | } 21 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IPaymentDetails.cs: -------------------------------------------------------------------------------- 1 | using System.Linq; 2 | using WebGYM.Models; 3 | using WebGYM.ViewModels; 4 | 5 | namespace WebGYM.Interface 6 | { 7 | public interface IPaymentDetails 8 | { 9 | IQueryable GetAll(QueryParameters queryParameters, int userId); 10 | int Count(int userId); 11 | bool RenewalPayment(RenewalViewModel renewalViewModel); 12 | } 13 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IPeriodMaster.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using WebGYM.Models; 7 | 8 | namespace WebGYM.Interface 9 | { 10 | public interface IPeriodMaster 11 | { 12 | List ListofPeriod(); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IPlanMaster.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using WebGYM.Models; 3 | using WebGYM.ViewModels; 4 | 5 | namespace WebGYM.Interface 6 | { 7 | public interface IPlanMaster 8 | { 9 | void InsertPlan(PlanMaster plan); 10 | bool CheckPlanExits(string planName); 11 | List GetPlanMasterList(); 12 | PlanMasterViewModel GetPlanMasterbyId(int planId); 13 | bool DeletePlan(int planId); 14 | bool UpdatePlanMaster(PlanMaster planMaster); 15 | List GetActivePlanMasterList(int? schemeId); 16 | string GetAmount(int planId, int schemeId); 17 | int GetPlanMonthbyPlanId(int? planId); 18 | } 19 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IRenewal.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using WebGYM.ViewModels; 3 | 4 | namespace WebGYM.Interface 5 | { 6 | public interface IRenewal 7 | { 8 | RenewalViewModel GetMemberNo(string memberNo, int userid); 9 | bool CheckRenewalPaymentExists(DateTime newdate, long memberId); 10 | } 11 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IReports.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using WebGYM.ViewModels; 3 | 4 | namespace WebGYM.Interface 5 | { 6 | public interface IReports 7 | { 8 | List Generate_AllMemberDetailsReport(); 9 | List Get_YearwisePayment_details(string year); 10 | List Get_MonthwisePayment_details(string monthId); 11 | List Get_RenewalReport(RenewalReportRequestModel renewalReport); 12 | } 13 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IRole.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using WebGYM.Models; 3 | 4 | namespace WebGYM.Interface 5 | { 6 | public interface IRole 7 | { 8 | void InsertRole(Role role); 9 | bool CheckRoleExits(string roleName); 10 | Role GetRolebyId(int roleId); 11 | bool DeleteRole(int roleId); 12 | bool UpdateRole(Role role); 13 | List GetAllRole(); 14 | } 15 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/ISchemeMaster.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using WebGYM.Models; 7 | 8 | namespace WebGYM.Interface 9 | { 10 | public interface ISchemeMaster 11 | { 12 | bool AddSchemeMaster(SchemeMaster schemeMaster); 13 | List GetSchemeMasterList(); 14 | SchemeMaster GetSchemeMasterbyId(int schemeId); 15 | bool CheckSchemeNameExists(string schemeName); 16 | bool UpdateSchemeMaster(SchemeMaster schemeMaster); 17 | bool DeleteScheme(int schemeId); 18 | 19 | List GetActiveSchemeMasterList(); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IUsers.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using WebGYM.Models; 3 | using WebGYM.ViewModels; 4 | 5 | namespace WebGYM.Interface 6 | { 7 | public interface IUsers 8 | { 9 | bool InsertUsers(Users user); 10 | bool CheckUsersExits(string username); 11 | Users GetUsersbyId(int userid); 12 | bool DeleteUsers(int userid); 13 | bool UpdateUsers(Users role); 14 | List GetAllUsers(); 15 | bool AuthenticateUsers(string username, string password); 16 | LoginResponse GetUserDetailsbyCredentials(string username); 17 | } 18 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.Interface/IUsersInRoles.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using WebGYM.Models; 3 | using WebGYM.ViewModels; 4 | 5 | namespace WebGYM.Interface 6 | { 7 | public interface IUsersInRoles 8 | { 9 | bool AssignRole(UsersInRoles usersInRoles); 10 | bool CheckRoleExists(UsersInRoles usersInRoles); 11 | bool RemoveRole(UsersInRoles usersInRoles); 12 | List GetAssignRoles(); 13 | } 14 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/AngularGYMDBScript.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/WebGYM.Models/AngularGYMDBScript.sql -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/DynamicExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Dynamic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace WebGYM.Models 10 | { 11 | public static class DynamicExtensions 12 | { 13 | public static dynamic ToDynamic(this object value) 14 | { 15 | IDictionary expando = new ExpandoObject(); 16 | 17 | foreach (PropertyDescriptor property in TypeDescriptor.GetProperties(value.GetType())) 18 | expando.Add(property.Name, property.GetValue(value)); 19 | 20 | return expando as ExpandoObject; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/GYM Project Angular 7 with ASPNET CORE.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/WebGYM.Models/GYM Project Angular 7 with ASPNET CORE.pdf -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/PaymentDetails.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.ComponentModel.DataAnnotations.Schema; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace WebGYM.Models 10 | { 11 | [Table("PaymentDetails")] 12 | public class PaymentDetails 13 | { 14 | [Key] 15 | public long PaymentID { get; set; } 16 | public int PlanID { get; set; } 17 | public int? WorkouttypeID { get; set; } 18 | public string Paymenttype { get; set; } 19 | public DateTime PaymentFromdt { get; set; } 20 | public DateTime PaymentTodt { get; set; } 21 | public decimal? PaymentAmount { get; set; } 22 | public DateTime NextRenwalDate { get; set; } 23 | public DateTime? CreateDate { get; set; } 24 | public int? Createdby { get; set; } 25 | public DateTime? ModifyDate { get; set; } 26 | public int? ModifiedBy { get; set; } 27 | public string RecStatus { get; set; } 28 | public long? MemberID { get; set; } 29 | public string MemberNo { get; set; } 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/PeriodTB.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.ComponentModel.DataAnnotations.Schema; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace WebGYM.Models 10 | { 11 | [Table("PeriodTB")] 12 | public class PeriodTB 13 | { 14 | [Key] 15 | public int PeriodID { get; set; } 16 | public string Text { get; set; } 17 | public string Value { get; set; } 18 | } 19 | 20 | 21 | } 22 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/PlanMaster.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace WebGYM.Models 9 | { 10 | public class PlanMaster 11 | { 12 | [Key] 13 | public int PlanID { get; set; } 14 | public string PlanName { get; set; } 15 | public decimal? PlanAmount { get; set; } 16 | public decimal? ServicetaxAmount { get; set; } 17 | public string ServiceTax { get; set; } 18 | public DateTime? CreateDate { get; set; } 19 | public int? CreateUserID { get; set; } 20 | public DateTime? ModifyDate { get; set; } 21 | public int? ModifyUserID { get; set; } 22 | public bool RecStatus { get; set; } 23 | public int? SchemeID { get; set; } 24 | public int PeriodID { get; set; } 25 | public decimal? TotalAmount { get; set; } 26 | public string ServicetaxNo { get; set; } 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/QueryParameters.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace WebGYM.Models 8 | { 9 | public class QueryParameters 10 | { 11 | private const int MaxPageCount = 20; 12 | public int Page { get; set; } = 1; 13 | private int _pageCount = MaxPageCount; 14 | public int PageCount 15 | { 16 | get { return _pageCount; } 17 | set { _pageCount = (value > MaxPageCount) ? MaxPageCount : value; } 18 | } 19 | public string Query { get; set; } 20 | public string OrderBy { get; set; } = "MemberFName"; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/QueryParametersExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace WebGYM.Models 8 | { 9 | public static class QueryParametersExtensions 10 | { 11 | public static bool HasPrevious(this QueryParameters queryParameters) 12 | { 13 | return (queryParameters.Page > 1); 14 | } 15 | 16 | public static bool HasNext(this QueryParameters queryParameters, int totalCount) 17 | { 18 | return (queryParameters.Page < (int)GetTotalPages(queryParameters, totalCount)); 19 | } 20 | 21 | public static double GetTotalPages(this QueryParameters queryParameters, int totalCount) 22 | { 23 | return Math.Ceiling(totalCount / (double)queryParameters.PageCount); 24 | } 25 | 26 | public static bool HasQuery(this QueryParameters queryParameters) 27 | { 28 | return !String.IsNullOrEmpty(queryParameters.Query); 29 | } 30 | 31 | public static bool IsDescending(this QueryParameters queryParameters) 32 | { 33 | if (!String.IsNullOrEmpty(queryParameters.OrderBy)) 34 | { 35 | return queryParameters.OrderBy.Split(' ').Last().ToLowerInvariant().StartsWith("desc"); 36 | } 37 | return false; 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/Role.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.ComponentModel.DataAnnotations.Schema; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace WebGYM.Models 10 | { 11 | [Table("Role")] 12 | public class Role 13 | { 14 | [Key] 15 | public int RoleId { get; set; } 16 | 17 | [Required(ErrorMessage = "Enter Role name")] 18 | [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] 19 | public string RoleName { get; set; } 20 | 21 | public bool Status { get; set; } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/SchemeMaster.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace WebGYM.Models 9 | { 10 | public class SchemeMaster 11 | { 12 | [Key] 13 | public int SchemeID { get; set; } 14 | public string SchemeName { get; set; } 15 | public int Createdby { get; set; } 16 | public DateTime Createddate { get; set; } 17 | public bool Status { get; set; } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/Users.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.ComponentModel.DataAnnotations.Schema; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace WebGYM.Models 10 | { 11 | [Table("Users")] 12 | public class Users 13 | { 14 | [Key] 15 | public int UserId { get; set; } 16 | public string UserName { get; set; } 17 | public string FullName { get; set; } 18 | public string EmailId { get; set; } 19 | public string Contactno { get; set; } 20 | public string Password { get; set; } 21 | public int? Createdby { get; set; } 22 | public DateTime? CreatedDate { get; set; } 23 | public bool Status { get; set; } 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/UsersInRoles.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.ComponentModel.DataAnnotations.Schema; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace WebGYM.Models 10 | { 11 | [Table("UsersInRoles")] 12 | public class UsersInRoles 13 | { 14 | [Key] 15 | public int UserRolesId { get; set; } 16 | public int RoleId { get; set; } 17 | public int UserId { get; set; } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.Models/packages.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/AmountRequestViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace WebGYM.ViewModels 9 | { 10 | public class AmountRequestViewModel 11 | { 12 | [Required(ErrorMessage = "Plan is Required")] 13 | public int PlanId { get; set; } 14 | [Required(ErrorMessage = "Scheme is Required")] 15 | public int SchemeId { get; set; } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/AssignRolesViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace WebGYM.ViewModels 8 | { 9 | public class AssignRolesViewModel 10 | { 11 | public int UserId { get; set; } 12 | public string UserName { get; set; } 13 | public int RoleId { get; set; } 14 | public string RoleName { get; set; } 15 | public int UserRolesId { get; set; } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/GenerateRecepitRequestModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace WebGYM.ViewModels 8 | { 9 | public class GenerateRecepitRequestModel 10 | { 11 | public int PaymentId { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/GenerateRecepitViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace WebGYM.ViewModels 8 | { 9 | public class GenerateRecepitViewModel 10 | { 11 | public string MemberNo { get; set; } 12 | public string MemberName { get; set; } 13 | public string PlanName { get; set; } 14 | public string SchemeName { get; set; } 15 | public string PaymentFromdt { get; set; } 16 | public string PaymentTodt { get; set; } 17 | public string NextRenwalDate { get; set; } 18 | public string PaymentAmount { get; set; } 19 | public string CreateDate { get; set; } 20 | public string ServiceTax { get; set; } 21 | public string PlanAmount { get; set; } 22 | public string ServicetaxAmount { get; set; } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/LoginResponse.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace WebGYM.ViewModels 8 | { 9 | public class LoginResponse 10 | { 11 | public int UserId { get; set; } 12 | public string UserName { get; set; } 13 | public bool Status { get; set; } 14 | public int RoleId { get; set; } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/LoginViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace WebGYM.ViewModels 9 | { 10 | public class LoginRequestViewModel 11 | { 12 | [Required(ErrorMessage = "Enter UserName")] 13 | public string UserName { get; set; } 14 | 15 | [Required(ErrorMessage = "Enter Password")] 16 | public string Password { get; set; } 17 | public string Token { get; set; } 18 | public int Usertype { get; set; } 19 | } 20 | 21 | 22 | } 23 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/MemberDetailsReportViewModel.cs: -------------------------------------------------------------------------------- 1 | namespace WebGYM.ViewModels 2 | { 3 | public class MemberDetailsReportViewModel 4 | { 5 | public string Name { get; set; } 6 | public string Address { get; set; } 7 | public string Contactno { get; set; } 8 | public string EmailID { get; set; } 9 | public string MemberNo { get; set; } 10 | public string PlanName { get; set; } 11 | public string SchemeName { get; set; } 12 | public string JoiningDate { get; set; } 13 | public string RenwalDate { get; set; } 14 | public int PaymentAmount { get; set; } 15 | } 16 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/MemberRegistrationGridModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace WebGYM.ViewModels 4 | { 5 | public class MemberRegistrationGridModel 6 | { 7 | public long MemberId { get; set; } 8 | public string MemberNo { get; set; } 9 | public string MemberName { get; set; } 10 | public DateTime? Dob { get; set; } 11 | public string Contactno { get; set; } 12 | public string EmailId { get; set; } 13 | public string PlanName { get; set; } 14 | public string SchemeName { get; set; } 15 | public DateTime? JoiningDate { get; set; } 16 | public Decimal? Amount { get; set; } 17 | } 18 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/MemberRequest.cs: -------------------------------------------------------------------------------- 1 | namespace WebGYM.ViewModels 2 | { 3 | public class MemberRequest 4 | { 5 | public string MemberName { get; set; } 6 | } 7 | public class MemberResponse 8 | { 9 | public string MemberNo { get; set; } 10 | public string MemberName { get; set; } 11 | } 12 | 13 | public class MemberNoRequest 14 | { 15 | public string MemberNo { get; set; } 16 | } 17 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/MonthWiseReportViewModel.cs: -------------------------------------------------------------------------------- 1 | namespace WebGYM.ViewModels 2 | { 3 | public class MonthWiseReportViewModel 4 | { 5 | public string MemberFName { get; set; } 6 | public string MemberNo { get; set; } 7 | public string MemberLName { get; set; } 8 | public string MemberMName { get; set; } 9 | public string CreateDate { get; set; } 10 | public long Total { get; set; } 11 | public string Paymentmonth { get; set; } 12 | public double PaymentAmount { get; set; } 13 | public string Username { get; set; } 14 | } 15 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/MonthwiseRequestModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace WebGYM.ViewModels 8 | { 9 | public class MonthwiseRequestModel 10 | { 11 | public string MonthId { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/PaymentDetailsViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace WebGYM.ViewModels 4 | { 5 | public class PaymentDetailsViewModel 6 | { 7 | public long PaymentID { get; set; } 8 | public string PlanName { get; set; } 9 | public string SchemeName { get; set; } 10 | public DateTime? PaymentFromdt { get; set; } 11 | public DateTime? PaymentTodt { get; set; } 12 | public decimal? PaymentAmount { get; set; } 13 | public DateTime? NextRenwalDate { get; set; } 14 | public string RecStatus { get; set; } 15 | public string MemberName { get; set; } 16 | public string MemberNo { get; set; } 17 | } 18 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/RenewalReportRequestModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace WebGYM.ViewModels 8 | { 9 | public class RenewalReportRequestModel 10 | { 11 | public string Paymentfromdate { get; set; } 12 | public string Paymentfromto { get; set; } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/RenewalReportViewModel.cs: -------------------------------------------------------------------------------- 1 | namespace WebGYM.ViewModels 2 | { 3 | public class RenewalReportViewModel 4 | { 5 | public string MemberID { get; set; } 6 | public string PaymentID { get; set; } 7 | public string Name { get; set; } 8 | public string Address { get; set; } 9 | public string Contactno { get; set; } 10 | public string EmailID { get; set; } 11 | public string MemberNo { get; set; } 12 | public string PlanName { get; set; } 13 | public string SchemeName { get; set; } 14 | public string JoiningDate { get; set; } 15 | public string RenwalDate { get; set; } 16 | public string PaymentAmount { get; set; } 17 | 18 | } 19 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/RenewalViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace WebGYM.ViewModels 4 | { 5 | public class RenewalViewModel 6 | { 7 | public int PlanID { get; set; } 8 | public int? SchemeID { get; set; } 9 | public string MemberName { get; set; } 10 | public long MemberId { get; set; } 11 | public string MemberNo { get; set; } 12 | public DateTime NextRenwalDate { get; set; } 13 | public DateTime NewDate { get; set; } 14 | public Decimal? Amount { get; set; } 15 | public long PaymentID { get; set; } 16 | public long? Createdby { get; set; } 17 | } 18 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/RoleViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace WebGYM.ViewModels 9 | { 10 | public class RoleViewModel 11 | { 12 | [Required(ErrorMessage = "Enter Role name")] 13 | [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 3)] 14 | public string RoleName { get; set; } 15 | public bool Status { get; set; } 16 | public int? RoleId { get; set; } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/SchemeMasterViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.Linq; 5 | 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace WebGYM.ViewModels 10 | { 11 | public class SchemeMasterViewModel 12 | { 13 | [Required(ErrorMessage = "SchemeName is Required")] 14 | public string SchemeName { get; set; } 15 | 16 | public bool Status { get; set; } 17 | } 18 | public class SchemeMasterEditViewModel 19 | { 20 | [Required(ErrorMessage = "SchemeID is Required")] 21 | public int SchemeID { get; set; } 22 | 23 | [Required(ErrorMessage = "SchemeName is Required")] 24 | public string SchemeName { get; set; } 25 | 26 | public bool Status { get; set; } 27 | } 28 | 29 | 30 | } 31 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/UsersViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel.DataAnnotations; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace WebGYM.ViewModels 9 | { 10 | public class UsersViewModel 11 | { 12 | public int Id { get; set; } 13 | 14 | [Required] 15 | public string UserName { get; set; } 16 | [Required] 17 | public string FullName { get; set; } 18 | [Required] 19 | public string EmailId { get; set; } 20 | [Required] 21 | public string Contactno { get; set; } 22 | [Required] 23 | public string Password { get; set; } 24 | public bool Status { get; set; } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/YearWiseRequestModel.cs: -------------------------------------------------------------------------------- 1 | namespace WebGYM.ViewModels 2 | { 3 | public class YearWiseRequestModel 4 | { 5 | // ReSharper disable once InconsistentNaming 6 | public string YearID { get; set; } 7 | } 8 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM.ViewModels/YearwiseReportViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace WebGYM.ViewModels 8 | { 9 | public class YearwiseReportViewModel 10 | { 11 | public int CurrentYear { get; set; } 12 | public int April { get; set; } 13 | public int May { get; set; } 14 | public int June { get; set; } 15 | public int July { get; set; } 16 | public int August { get; set; } 17 | public int Sept { get; set; } 18 | public int Oct { get; set; } 19 | public int Nov { get; set; } 20 | public int Decm { get; set; } 21 | public int Jan { get; set; } 22 | public int Feb { get; set; } 23 | public int March { get; set; } 24 | public int Total { get; set; } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/GenerateRecepitController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using Microsoft.AspNetCore.Http; 6 | using Microsoft.AspNetCore.Mvc; 7 | using WebGYM.Interface; 8 | using WebGYM.ViewModels; 9 | 10 | namespace WebGYM.Controllers 11 | { 12 | [Route("api/[controller]")] 13 | [ApiController] 14 | public class GenerateRecepitController : ControllerBase 15 | { 16 | private readonly IGenerateRecepit _generateRecepit; 17 | public GenerateRecepitController(IGenerateRecepit generateRecepit) 18 | { 19 | _generateRecepit = generateRecepit; 20 | } 21 | 22 | 23 | // POST: api/GenerateRecepit 24 | [HttpPost] 25 | public GenerateRecepitViewModel Post([FromBody] GenerateRecepitRequestModel generateRecepitRequestModel) 26 | { 27 | try 28 | { 29 | return _generateRecepit.Generate(generateRecepitRequestModel.PaymentId); 30 | } 31 | catch (Exception) 32 | { 33 | throw; 34 | } 35 | } 36 | 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/GetMemberNoController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Security.Claims; 5 | using System.Threading.Tasks; 6 | using Microsoft.AspNetCore.Authorization; 7 | using Microsoft.AspNetCore.Http; 8 | using Microsoft.AspNetCore.Mvc; 9 | using WebGYM.Interface; 10 | using WebGYM.ViewModels; 11 | 12 | namespace WebGYM.Controllers 13 | { 14 | [Authorize] 15 | [Route("api/[controller]")] 16 | [ApiController] 17 | public class GetMemberNoController : ControllerBase 18 | { 19 | private readonly IMemberRegistration _memberRegistration; 20 | public GetMemberNoController(IMemberRegistration memberRegistration) 21 | { 22 | _memberRegistration = memberRegistration; 23 | } 24 | 25 | 26 | // POST: api/GetMemberNo 27 | [HttpPost] 28 | public List Post([FromBody] MemberRequest memberRequest) 29 | { 30 | try 31 | { 32 | var userId = Convert.ToInt32(this.User.FindFirstValue(ClaimTypes.Name)); 33 | return _memberRegistration.GetMemberNoList(memberRequest.MemberName, userId); 34 | } 35 | catch (Exception) 36 | { 37 | throw; 38 | } 39 | } 40 | 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/GetTotalAmountController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Net.Http; 5 | using System.Threading.Tasks; 6 | using Microsoft.AspNetCore.Authorization; 7 | using Microsoft.AspNetCore.Http; 8 | using Microsoft.AspNetCore.Mvc; 9 | using WebGYM.Interface; 10 | using WebGYM.ViewModels; 11 | 12 | namespace WebGYM.Controllers 13 | { 14 | [Authorize] 15 | [Route("api/[controller]")] 16 | [ApiController] 17 | public class GetTotalAmountController : ControllerBase 18 | { 19 | private readonly IPlanMaster _planMaster; 20 | public GetTotalAmountController(IPlanMaster planMaster) 21 | { 22 | _planMaster = planMaster; 23 | } 24 | 25 | 26 | // POST: api/GetTotalAmount 27 | [HttpPost] 28 | public string Post([FromBody] AmountRequestViewModel amountRequest) 29 | { 30 | try 31 | { 32 | if (ModelState.IsValid) 33 | { 34 | return _planMaster.GetAmount(amountRequest.PlanId, amountRequest.SchemeId); 35 | } 36 | else 37 | { 38 | return string.Empty; 39 | } 40 | } 41 | catch (Exception) 42 | { 43 | throw; 44 | } 45 | } 46 | 47 | 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/HomeController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Diagnostics; 4 | using System.Linq; 5 | using System.Threading.Tasks; 6 | using Microsoft.AspNetCore.Mvc; 7 | using WebGYM.Interface; 8 | using WebGYM.Models; 9 | 10 | namespace WebGYM.Controllers 11 | { 12 | public class HomeController : Controller 13 | { 14 | private ISchemeMaster _schemeMaster; 15 | public HomeController(ISchemeMaster schemeMaster) 16 | { 17 | _schemeMaster = schemeMaster; 18 | } 19 | public IActionResult Index() 20 | { 21 | return View(); 22 | } 23 | 24 | public IActionResult About() 25 | { 26 | ViewData["Message"] = "Your application description page."; 27 | 28 | return View(); 29 | } 30 | 31 | public IActionResult Contact() 32 | { 33 | ViewData["Message"] = "Your contact page."; 34 | 35 | return View(); 36 | } 37 | 38 | public IActionResult Privacy() 39 | { 40 | return View(); 41 | } 42 | 43 | [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)] 44 | public IActionResult Error() 45 | { 46 | return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier }); 47 | } 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/MemberDetailsReportController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using Microsoft.AspNetCore.Authorization; 6 | using Microsoft.AspNetCore.Http; 7 | using Microsoft.AspNetCore.Mvc; 8 | using WebGYM.Interface; 9 | using WebGYM.ViewModels; 10 | 11 | namespace WebGYM.Controllers 12 | { 13 | [Authorize] 14 | [Route("api/[controller]")] 15 | [ApiController] 16 | public class MemberDetailsReportController : ControllerBase 17 | { 18 | private readonly IReports _reports; 19 | public MemberDetailsReportController(IReports reports) 20 | { 21 | _reports = reports; 22 | } 23 | 24 | // GET: api/MemberDetailsReport 25 | [HttpGet] 26 | public List Get() 27 | { 28 | try 29 | { 30 | return _reports.Generate_AllMemberDetailsReport(); 31 | } 32 | catch (Exception) 33 | { 34 | throw; 35 | } 36 | } 37 | 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/MonthwiseReportController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using Microsoft.AspNetCore.Authorization; 6 | using Microsoft.AspNetCore.Http; 7 | using Microsoft.AspNetCore.Mvc; 8 | using WebGYM.Interface; 9 | using WebGYM.ViewModels; 10 | 11 | namespace WebGYM.Controllers 12 | { 13 | [Authorize] 14 | [Route("api/[controller]")] 15 | [ApiController] 16 | public class MonthwiseReportController : ControllerBase 17 | { 18 | 19 | private readonly IReports _reports; 20 | public MonthwiseReportController(IReports reports) 21 | { 22 | _reports = reports; 23 | } 24 | 25 | // POST: api/MonthwiseReport 26 | [HttpPost] 27 | public List Post([FromBody] MonthwiseRequestModel value) 28 | { 29 | try 30 | { 31 | return _reports.Get_MonthwisePayment_details(value.MonthId); 32 | } 33 | catch (Exception) 34 | { 35 | throw; 36 | } 37 | } 38 | 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/PeriodController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using Microsoft.AspNetCore.Authorization; 6 | using Microsoft.AspNetCore.Http; 7 | using Microsoft.AspNetCore.Mvc; 8 | using WebGYM.Interface; 9 | using WebGYM.Models; 10 | 11 | namespace WebGYM.Controllers 12 | { 13 | 14 | [Route("api/[controller]")] 15 | [ApiController] 16 | public class PeriodController : ControllerBase 17 | { 18 | private readonly IPeriodMaster _periodMaster; 19 | public PeriodController(IPeriodMaster periodMaster) 20 | { 21 | _periodMaster = periodMaster; 22 | } 23 | 24 | // GET: api/Period 25 | [HttpGet] 26 | public IEnumerable Get() 27 | { 28 | try 29 | { 30 | return _periodMaster.ListofPeriod(); 31 | } 32 | catch (Exception) 33 | { 34 | throw; 35 | } 36 | } 37 | 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/RenewalDetailsController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Security.Claims; 5 | using System.Threading.Tasks; 6 | using Microsoft.AspNetCore.Authorization; 7 | using Microsoft.AspNetCore.Http; 8 | using Microsoft.AspNetCore.Mvc; 9 | using WebGYM.Interface; 10 | using WebGYM.ViewModels; 11 | 12 | namespace WebGYM.Controllers 13 | { 14 | [Authorize] 15 | [Route("api/[controller]")] 16 | [ApiController] 17 | public class RenewalDetailsController : ControllerBase 18 | { 19 | private readonly IRenewal _renewal; 20 | public RenewalDetailsController(IRenewal renewal) 21 | { 22 | _renewal = renewal; 23 | } 24 | 25 | // POST: api/RenewalDetails 26 | [HttpPost] 27 | public RenewalViewModel Post([FromBody] MemberNoRequest memberNoRequest) 28 | { 29 | var userId = Convert.ToInt32(this.User.FindFirstValue(ClaimTypes.Name)); 30 | return _renewal.GetMemberNo(memberNoRequest.MemberNo, userId); 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/RenewalReportController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using Microsoft.AspNetCore.Authorization; 6 | using Microsoft.AspNetCore.Http; 7 | using Microsoft.AspNetCore.Mvc; 8 | using WebGYM.Interface; 9 | using WebGYM.ViewModels; 10 | 11 | namespace WebGYM.Controllers 12 | { 13 | [Authorize] 14 | [Route("api/[controller]")] 15 | [ApiController] 16 | public class RenewalReportController : ControllerBase 17 | { 18 | private readonly IReports _reports; 19 | public RenewalReportController(IReports reports) 20 | { 21 | _reports = reports; 22 | } 23 | 24 | // POST: api/RenewalReport 25 | [HttpPost] 26 | public List Post([FromBody] RenewalReportRequestModel value) 27 | { 28 | try 29 | { 30 | return _reports.Get_RenewalReport(value); 31 | } 32 | catch (Exception) 33 | { 34 | throw; 35 | } 36 | } 37 | 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/SchemeDropdownController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using Microsoft.AspNetCore.Authorization; 6 | using Microsoft.AspNetCore.Http; 7 | using Microsoft.AspNetCore.Mvc; 8 | using WebGYM.Interface; 9 | using WebGYM.Models; 10 | 11 | namespace WebGYM.Controllers 12 | { 13 | [Authorize] 14 | [Route("api/[controller]")] 15 | [ApiController] 16 | public class SchemeDropdownController : ControllerBase 17 | { 18 | 19 | private readonly ISchemeMaster _schemeMaster; 20 | public SchemeDropdownController(ISchemeMaster schemeMaster) 21 | { 22 | _schemeMaster = schemeMaster; 23 | } 24 | 25 | // GET: api/SchemeDropdown 26 | [HttpGet] 27 | public IEnumerable Get() 28 | { 29 | try 30 | { 31 | return _schemeMaster.GetActiveSchemeMasterList(); 32 | } 33 | catch (Exception) 34 | { 35 | throw; 36 | } 37 | } 38 | 39 | 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Controllers/YearwiseReportController.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using Microsoft.AspNetCore.Authorization; 6 | using Microsoft.AspNetCore.Http; 7 | using Microsoft.AspNetCore.Mvc; 8 | using WebGYM.Interface; 9 | using WebGYM.ViewModels; 10 | 11 | namespace WebGYM.Controllers 12 | { 13 | [Authorize] 14 | [Route("api/[controller]")] 15 | [ApiController] 16 | public class YearwiseReportController : ControllerBase 17 | { 18 | private readonly IReports _reports; 19 | public YearwiseReportController(IReports reports) 20 | { 21 | _reports = reports; 22 | } 23 | 24 | // POST: api/YearwiseReport 25 | [HttpPost] 26 | public List Post([FromBody] YearWiseRequestModel value) 27 | { 28 | return _reports.Get_YearwisePayment_details(value.YearID); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Models/AppSettings.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | 6 | namespace WebGYM.Models 7 | { 8 | public class AppSettings 9 | { 10 | public string Secret { get; set; } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Models/ErrorViewModel.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace WebGYM.Models 4 | { 5 | public class ErrorViewModel 6 | { 7 | public string RequestId { get; set; } 8 | 9 | public bool ShowRequestId => !string.IsNullOrEmpty(RequestId); 10 | } 11 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Threading.Tasks; 6 | using Microsoft.AspNetCore; 7 | using Microsoft.AspNetCore.Hosting; 8 | using Microsoft.Extensions.Configuration; 9 | using Microsoft.Extensions.Logging; 10 | 11 | namespace WebGYM 12 | { 13 | public class Program 14 | { 15 | public static void Main(string[] args) 16 | { 17 | CreateWebHostBuilder(args).Build().Run(); 18 | } 19 | 20 | public static IWebHostBuilder CreateWebHostBuilder(string[] args) => 21 | WebHost.CreateDefaultBuilder(args) 22 | .UseStartup(); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "iisSettings": { 3 | "windowsAuthentication": false, 4 | "anonymousAuthentication": true, 5 | "iisExpress": { 6 | "applicationUrl": "http://localhost:49749", 7 | "sslPort": 0 8 | } 9 | }, 10 | "profiles": { 11 | "IIS Express": { 12 | "commandName": "IISExpress", 13 | "launchBrowser": true, 14 | "environmentVariables": { 15 | "ASPNETCORE_ENVIRONMENT": "Development" 16 | } 17 | }, 18 | "WebGYM": { 19 | "commandName": "Project", 20 | "launchBrowser": true, 21 | "applicationUrl": "http://localhost:5000", 22 | "environmentVariables": { 23 | "ASPNETCORE_ENVIRONMENT": "Development" 24 | } 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM/Views/Home/About.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | ViewData["Title"] = "About"; 3 | } 4 |

@ViewData["Title"]

5 |

@ViewData["Message"]

6 | 7 |

Use this area to provide additional information.

8 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Views/Home/Contact.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | ViewData["Title"] = "Contact"; 3 | } 4 |

@ViewData["Title"]

5 |

@ViewData["Message"]

6 | 7 |
8 | One Microsoft Way
9 | Redmond, WA 98052-6399
10 | P: 11 | 425.555.0100 12 |
13 | 14 |
15 | Support: Support@example.com
16 | Marketing: Marketing@example.com 17 |
18 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Views/Home/Index.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | ViewData["Title"] = "Home Page"; 3 | } 4 | 5 |
6 |
7 |

DOT&NET GYM

8 |

All APIS Service of Project

9 |
10 |
11 | 12 | 13 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Views/Home/Privacy.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | ViewData["Title"] = "Privacy Policy"; 3 | } 4 |

@ViewData["Title"]

5 | 6 |

Use this page to detail your site's privacy policy.

7 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Views/Shared/Error.cshtml: -------------------------------------------------------------------------------- 1 | @model ErrorViewModel 2 | @{ 3 | ViewData["Title"] = "Error"; 4 | } 5 | 6 |

Error.

7 |

An error occurred while processing your request.

8 | 9 | @if (Model.ShowRequestId) 10 | { 11 |

12 | Request ID: @Model.RequestId 13 |

14 | } 15 | 16 |

Development Mode

17 |

18 | Swapping to Development environment will display more detailed information about the error that occurred. 19 |

20 |

21 | Development environment should not be enabled in deployed applications, as it can result in sensitive information from exceptions being displayed to end users. For local debugging, development environment can be enabled by setting the ASPNETCORE_ENVIRONMENT environment variable to Development, and restarting the application. 22 |

23 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Views/Shared/_ValidationScriptsPartial.cshtml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | 18 | 19 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Views/_ViewImports.cshtml: -------------------------------------------------------------------------------- 1 | @using WebGYM 2 | @using WebGYM.Models 3 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers 4 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/Views/_ViewStart.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | Layout = "_Layout"; 3 | } 4 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/WebGYM.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | netcoreapp2.1 5 | 6 | 7 | 8 | 1701;1702;1591 9 | bin\Debug\netcoreapp2.1\WebGYM.xml 10 | bin\Debug\netcoreapp2.1\ 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/appsettings.Development.json: -------------------------------------------------------------------------------- 1 | { 2 | "Logging": { 3 | "LogLevel": { 4 | "Default": "Debug", 5 | "System": "Information", 6 | "Microsoft": "Information" 7 | } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "AppSettings": { 3 | "Secret": "6XJCIEJO41PQZNWJC4RR" 4 | }, 5 | "Logging": { 6 | "LogLevel": { 7 | "Default": "Warning" 8 | } 9 | }, 10 | "AllowedHosts": "*", 11 | "ConnectionStrings": { 12 | "DatabaseConnection": "Data Source=CMDMFAZRIN\\SQLSERVER; Integrated Security = true;Database=AngularGYMDB; MultipleActiveResultSets=true;" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/css/site.css: -------------------------------------------------------------------------------- 1 | /* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification\ 2 | for details on configuring this project to bundle and minify static web assets. */ 3 | body { 4 | padding-top: 50px; 5 | padding-bottom: 20px; 6 | } 7 | 8 | /* Wrapping element */ 9 | /* Set some basic padding to keep content from hitting the edges */ 10 | .body-content { 11 | padding-left: 15px; 12 | padding-right: 15px; 13 | } 14 | 15 | /* Carousel */ 16 | .carousel-caption p { 17 | font-size: 20px; 18 | line-height: 1.4; 19 | } 20 | 21 | /* Make .svg files in the carousel display properly in older browsers */ 22 | .carousel-inner .item img[src$=".svg"] { 23 | width: 100%; 24 | } 25 | 26 | /* QR code generator */ 27 | #qrCode { 28 | margin: 15px; 29 | } 30 | 31 | /* Hide/rearrange for smaller screens */ 32 | @media screen and (max-width: 767px) { 33 | /* Hide captions */ 34 | .carousel-caption { 35 | display: none; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/css/site.min.css: -------------------------------------------------------------------------------- 1 | body{padding-top:50px;padding-bottom:20px}.body-content{padding-left:15px;padding-right:15px}.carousel-caption p{font-size:20px;line-height:1.4}.carousel-inner .item img[src$=".svg"]{width:100%}#qrCode{margin:15px}@media screen and (max-width:767px){.carousel-caption{display:none}} -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/WebGYM/wwwroot/favicon.ico -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/js/site.js: -------------------------------------------------------------------------------- 1 | // Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification 2 | // for details on configuring this project to bundle and minify static web assets. 3 | 4 | // Write your JavaScript code. 5 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/js/site.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/WebGYM/wwwroot/js/site.min.js -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/bootstrap/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap", 3 | "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", 4 | "keywords": [ 5 | "css", 6 | "js", 7 | "less", 8 | "mobile-first", 9 | "responsive", 10 | "front-end", 11 | "framework", 12 | "web" 13 | ], 14 | "homepage": "http://getbootstrap.com", 15 | "license": "MIT", 16 | "moduleType": "globals", 17 | "main": [ 18 | "less/bootstrap.less", 19 | "dist/js/bootstrap.js" 20 | ], 21 | "ignore": [ 22 | "/.*", 23 | "_config.yml", 24 | "CNAME", 25 | "composer.json", 26 | "CONTRIBUTING.md", 27 | "docs", 28 | "js/tests", 29 | "test-infra" 30 | ], 31 | "dependencies": { 32 | "jquery": "1.9.1 - 3" 33 | }, 34 | "version": "3.3.7", 35 | "_release": "3.3.7", 36 | "_resolution": { 37 | "type": "version", 38 | "tag": "v3.3.7", 39 | "commit": "0b9c4a4007c44201dce9a6cc1a38407005c26c86" 40 | }, 41 | "_source": "https://github.com/twbs/bootstrap.git", 42 | "_target": "v3.3.7", 43 | "_originalSource": "bootstrap", 44 | "_direct": true 45 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/bootstrap/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2011-2016 Twitter, Inc. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/WebGYM/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/WebGYM/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/WebGYM/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/WebGYM/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/bootstrap/dist/js/npm.js: -------------------------------------------------------------------------------- 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. 2 | require('../../js/transition.js') 3 | require('../../js/alert.js') 4 | require('../../js/button.js') 5 | require('../../js/carousel.js') 6 | require('../../js/collapse.js') 7 | require('../../js/dropdown.js') 8 | require('../../js/modal.js') 9 | require('../../js/tooltip.js') 10 | require('../../js/popover.js') 11 | require('../../js/scrollspy.js') 12 | require('../../js/tab.js') 13 | require('../../js/affix.js') -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/jquery-validation-unobtrusive/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery-validation-unobtrusive", 3 | "homepage": "https://github.com/aspnet/jquery-validation-unobtrusive", 4 | "version": "3.2.9", 5 | "_release": "3.2.9", 6 | "_resolution": { 7 | "type": "version", 8 | "tag": "v3.2.9", 9 | "commit": "a91f5401898e125f10771c5f5f0909d8c4c82396" 10 | }, 11 | "_source": "https://github.com/aspnet/jquery-validation-unobtrusive.git", 12 | "_target": "^3.2.9", 13 | "_originalSource": "jquery-validation-unobtrusive", 14 | "_direct": true 15 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) .NET Foundation. All rights reserved. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use 4 | these files except in compliance with the License. You may obtain a copy of the 5 | License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software distributed 10 | under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 11 | CONDITIONS OF ANY KIND, either express or implied. See the License for the 12 | specific language governing permissions and limitations under the License. 13 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/jquery-validation/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery-validation", 3 | "homepage": "https://jqueryvalidation.org/", 4 | "repository": { 5 | "type": "git", 6 | "url": "git://github.com/jquery-validation/jquery-validation.git" 7 | }, 8 | "authors": [ 9 | "Jörn Zaefferer " 10 | ], 11 | "description": "Form validation made easy", 12 | "main": "dist/jquery.validate.js", 13 | "keywords": [ 14 | "forms", 15 | "validation", 16 | "validate" 17 | ], 18 | "license": "MIT", 19 | "ignore": [ 20 | "**/.*", 21 | "node_modules", 22 | "bower_components", 23 | "test", 24 | "demo", 25 | "lib" 26 | ], 27 | "dependencies": { 28 | "jquery": ">= 1.7.2" 29 | }, 30 | "version": "1.17.0", 31 | "_release": "1.17.0", 32 | "_resolution": { 33 | "type": "version", 34 | "tag": "1.17.0", 35 | "commit": "fc9b12d3bfaa2d0c04605855b896edb2934c0772" 36 | }, 37 | "_source": "https://github.com/jzaefferer/jquery-validation.git", 38 | "_target": "^1.17.0", 39 | "_originalSource": "jquery-validation", 40 | "_direct": true 41 | } -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/jquery-validation/LICENSE.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | ===================== 3 | 4 | Copyright Jörn Zaefferer 5 | 6 | Permission is hereby granted, free of charge, to any person obtaining a copy 7 | of this software and associated documentation files (the "Software"), to deal 8 | in the Software without restriction, including without limitation the rights 9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10 | copies of the Software, and to permit persons to whom the Software is 11 | furnished to do so, subject to the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be included in 14 | all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 22 | THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /WebGYM/WebGYM/wwwroot/lib/jquery/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery", 3 | "main": "dist/jquery.js", 4 | "license": "MIT", 5 | "ignore": [ 6 | "package.json" 7 | ], 8 | "keywords": [ 9 | "jquery", 10 | "javascript", 11 | "browser", 12 | "library" 13 | ], 14 | "homepage": "https://github.com/jquery/jquery-dist", 15 | "version": "3.3.1", 16 | "_release": "3.3.1", 17 | "_resolution": { 18 | "type": "version", 19 | "tag": "3.3.1", 20 | "commit": "9e8ec3d10fad04748176144f108d7355662ae75e" 21 | }, 22 | "_source": "https://github.com/jquery/jquery-dist.git", 23 | "_target": "^3.3.1", 24 | "_originalSource": "jquery", 25 | "_direct": true 26 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/.editorconfig: -------------------------------------------------------------------------------- 1 | # Editor configuration, see https://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | charset = utf-8 6 | indent_style = space 7 | indent_size = 2 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | 11 | [*.md] 12 | max_line_length = off 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /WebGYM/gym-project/README.md: -------------------------------------------------------------------------------- 1 | # GymProject 2 | 3 | This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.0.6. 4 | 5 | ## Development server 6 | 7 | Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. 8 | 9 | ## Code scaffolding 10 | 11 | Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. 12 | 13 | ## Build 14 | 15 | Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build. 16 | 17 | ## Running unit tests 18 | 19 | Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). 20 | 21 | ## Running end-to-end tests 22 | 23 | Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). 24 | 25 | ## Further help 26 | 27 | To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). 28 | -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/dist/gym-project/favicon.ico -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/dist/gym-project/fontawesome-webfont.eot -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/dist/gym-project/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/dist/gym-project/fontawesome-webfont.woff -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/dist/gym-project/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/dist/gym-project/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/dist/gym-project/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/dist/gym-project/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/dist/gym-project/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /WebGYM/gym-project/dist/gym-project/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Gym Project 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /WebGYM/gym-project/e2e/protractor.conf.js: -------------------------------------------------------------------------------- 1 | // Protractor configuration file, see link for more information 2 | // https://github.com/angular/protractor/blob/master/lib/config.ts 3 | 4 | const { SpecReporter } = require('jasmine-spec-reporter'); 5 | 6 | exports.config = { 7 | allScriptsTimeout: 11000, 8 | specs: [ 9 | './src/**/*.e2e-spec.ts' 10 | ], 11 | capabilities: { 12 | 'browserName': 'chrome' 13 | }, 14 | directConnect: true, 15 | baseUrl: 'http://localhost:4200/', 16 | framework: 'jasmine', 17 | jasmineNodeOpts: { 18 | showColors: true, 19 | defaultTimeoutInterval: 30000, 20 | print: function() {} 21 | }, 22 | onPrepare() { 23 | require('ts-node').register({ 24 | project: require('path').join(__dirname, './tsconfig.e2e.json') 25 | }); 26 | jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); 27 | } 28 | }; -------------------------------------------------------------------------------- /WebGYM/gym-project/e2e/src/app.e2e-spec.ts: -------------------------------------------------------------------------------- 1 | import { AppPage } from './app.po'; 2 | 3 | describe('workspace-project App', () => { 4 | let page: AppPage; 5 | 6 | beforeEach(() => { 7 | page = new AppPage(); 8 | }); 9 | 10 | it('should display welcome message', () => { 11 | page.navigateTo(); 12 | expect(page.getTitleText()).toEqual('Welcome to gym-project!'); 13 | }); 14 | }); 15 | -------------------------------------------------------------------------------- /WebGYM/gym-project/e2e/src/app.po.ts: -------------------------------------------------------------------------------- 1 | import { browser, by, element } from 'protractor'; 2 | 3 | export class AppPage { 4 | navigateTo() { 5 | return browser.get('/'); 6 | } 7 | 8 | getTitleText() { 9 | return element(by.css('app-root h1')).getText(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /WebGYM/gym-project/e2e/tsconfig.e2e.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "../out-tsc/app", 5 | "module": "commonjs", 6 | "target": "es5", 7 | "types": [ 8 | "jasmine", 9 | "jasminewd2", 10 | "node" 11 | ] 12 | } 13 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/AdminDashboard/app.AdminDashboardComponent.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/AdminDashboard/app.AdminDashboardComponent.html -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/AdminDashboard/app.AdminDashboardComponent.ts: -------------------------------------------------------------------------------- 1 | import { Component} from '@angular/core'; 2 | 3 | @Component({ 4 | templateUrl:'./app.AdminDashboardComponent.html' 5 | }) 6 | 7 | export class AdminDashboardComponent 8 | { 9 | 10 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/AssignRole/Models/AssignRemoveModel.ts: -------------------------------------------------------------------------------- 1 | export class AssignRemoveModel 2 | { 3 | public UserId: number; 4 | public RoleId : number; 5 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/AssignRole/Models/AssignRolesViewModel.ts: -------------------------------------------------------------------------------- 1 | export class AssignRolesViewModel 2 | { 3 | public UserId: number; 4 | public RoleId : number; 5 | public UserName: string; 6 | public RoleName :string; 7 | public UserRolesId: number; 8 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/AssignRole/app.AllAssignedRoles.html: -------------------------------------------------------------------------------- 1 |

All AssignRoles

2 |
3 | 4 |
5 |
6 |
7 | 8 | 9 | 10 |
11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
UserName {{element.UserName}} RoleName {{element.RoleName}}
25 | 28 |
29 |
30 |
-------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/AuthGuard/AdminAuthGuardService.ts: -------------------------------------------------------------------------------- 1 | import { Injectable } from '@angular/core'; 2 | import { Router, CanActivate } from '@angular/router'; 3 | 4 | @Injectable() 5 | export class AdminAuthGuardService implements CanActivate { 6 | 7 | constructor(private router: Router) { } 8 | 9 | canActivate() 10 | { 11 | if (localStorage.getItem('AdminUser')) 12 | { 13 | // logged in so return true 14 | return true; 15 | } 16 | 17 | // not logged in so redirect to login page 18 | this.router.navigate(['/Login']); 19 | return false; 20 | } 21 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/AuthGuard/UserAuthGuardService.ts: -------------------------------------------------------------------------------- 1 | import { Injectable } from '@angular/core'; 2 | import { Router, CanActivate } from '@angular/router'; 3 | 4 | @Injectable() 5 | export class UserAuthGuardService implements CanActivate { 6 | 7 | constructor(private router: Router) { } 8 | 9 | canActivate() 10 | { 11 | if (localStorage.getItem('currentUser')) 12 | { 13 | // logged in so return true 14 | return true; 15 | } 16 | 17 | // not logged in so redirect to login page 18 | this.router.navigate(['/Login']); 19 | return false; 20 | } 21 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/dist/js/sb-admin-2.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Start Bootstrap - SB Admin 2 v3.3.7+1 (http://startbootstrap.com/template-overviews/sb-admin-2) 3 | * Copyright 2013-2016 Start Bootstrap 4 | * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE) 5 | */ 6 | $(function(){$("#side-menu").metisMenu()}),$(function(){$(window).bind("load resize",function(){var i=50,n=this.window.innerWidth>0?this.window.innerWidth:this.screen.width;n<768?($("div.navbar-collapse").addClass("collapse"),i=100):$("div.navbar-collapse").removeClass("collapse");var e=(this.window.innerHeight>0?this.window.innerHeight:this.screen.height)-1;e-=i,e<1&&(e=1),e>i&&$("#page-wrapper").css("min-height",e+"px")});for(var i=window.location,n=$("ul.nav a").filter(function(){return this.href==i}).addClass("active").parent();;){if(!n.is("li"))break;n=n.parent().addClass("in").parent()}}); -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/datatables/images/Sorting icons.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/datatables/images/Sorting icons.psd -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/datatables/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/datatables/images/favicon.ico -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_asc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_asc.png -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_asc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_asc_disabled.png -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_both.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_both.png -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_desc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_desc.png -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_desc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/datatables/images/sort_desc_disabled.png -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/HELP-US-OUT.txt: -------------------------------------------------------------------------------- 1 | I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, 2 | Fort Awesome (https://fortawesome.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, 3 | comprehensive icon sets or copy and paste your own. 4 | 5 | Please. Check it out. 6 | 7 | -Dave Gandy 8 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .@{fa-css-prefix}-pull-left { float: left; } 11 | .@{fa-css-prefix}-pull-right { float: right; } 12 | 13 | .@{fa-css-prefix} { 14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .@{fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/extras.less: -------------------------------------------------------------------------------- 1 | // Extras 2 | // -------------------------- 3 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | @import "screen-reader.less"; 19 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/screen-reader.less: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { .sr-only(); } 5 | .sr-only-focusable { .sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/spinning.less: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .#{$fa-css-prefix}-pull-left { float: left; } 11 | .#{$fa-css-prefix}-pull-right { float: right; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .#{$fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_extras.scss: -------------------------------------------------------------------------------- 1 | /* EXTRAS 2 | * -------------------------- */ 3 | 4 | /* Stacked and layered icon */ 5 | 6 | /* Animated rotating icon */ 7 | .#{$fa-css-prefix}-spin { 8 | -webkit-animation: spin 2s infinite linear; 9 | -moz-animation: spin 2s infinite linear; 10 | -o-animation: spin 2s infinite linear; 11 | animation: spin 2s infinite linear; 12 | } 13 | 14 | @-moz-keyframes spin { 15 | 0% { -moz-transform: rotate(0deg); } 16 | 100% { -moz-transform: rotate(359deg); } 17 | } 18 | @-webkit-keyframes spin { 19 | 0% { -webkit-transform: rotate(0deg); } 20 | 100% { -webkit-transform: rotate(359deg); } 21 | } 22 | @-o-keyframes spin { 23 | 0% { -o-transform: rotate(0deg); } 24 | 100% { -o-transform: rotate(359deg); } 25 | } 26 | @-ms-keyframes spin { 27 | 0% { -ms-transform: rotate(0deg); } 28 | 100% { -ms-transform: rotate(359deg); } 29 | } 30 | @keyframes spin { 31 | 0% { transform: rotate(0deg); } 32 | 100% { transform: rotate(359deg); } 33 | } 34 | 35 | 36 | // Icon rotations & flipping 37 | // ------------------------- 38 | 39 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 40 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 41 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 42 | 43 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 44 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 45 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_screen-reader.scss: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { @include sr-only(); } 5 | .sr-only-focusable { @include sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_spinning.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/font-awesome/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | @import "screen-reader"; 19 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/metisMenu/metisMenu.css: -------------------------------------------------------------------------------- 1 | /* 2 | * metismenu - v1.1.3 3 | * Easy menu jQuery plugin for Twitter Bootstrap 3 4 | * https://github.com/onokumus/metisMenu 5 | * 6 | * Made by Osman Nuri Okumus 7 | * Under MIT License 8 | */ 9 | .arrow { 10 | float: right; 11 | line-height: 1.42857; 12 | } 13 | 14 | .glyphicon.arrow:before { 15 | content: "\e079"; 16 | } 17 | 18 | .active > a > .glyphicon.arrow:before { 19 | content: "\e114"; 20 | } 21 | 22 | 23 | /* 24 | * Require Font-Awesome 25 | * http://fortawesome.github.io/Font-Awesome/ 26 | */ 27 | 28 | 29 | .fa.arrow:before { 30 | content: "\f104"; 31 | } 32 | 33 | .active > a > .fa.arrow:before { 34 | content: "\f107"; 35 | } 36 | 37 | .plus-times { 38 | float: right; 39 | } 40 | 41 | .fa.plus-times:before { 42 | content: "\f067"; 43 | } 44 | 45 | .active > a > .fa.plus-times { 46 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1); 47 | -webkit-transform: rotate(45deg); 48 | -moz-transform: rotate(45deg); 49 | -ms-transform: rotate(45deg); 50 | -o-transform: rotate(45deg); 51 | transform: rotate(45deg); 52 | } 53 | 54 | .plus-minus { 55 | float: right; 56 | } 57 | 58 | .fa.plus-minus:before { 59 | content: "\f067"; 60 | } 61 | 62 | .active > a > .fa.plus-minus:before { 63 | content: "\f068"; 64 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/metisMenu/metisMenu.min.css: -------------------------------------------------------------------------------- 1 | /* 2 | * metismenu - v1.1.3 3 | * Easy menu jQuery plugin for Twitter Bootstrap 3 4 | * https://github.com/onokumus/metisMenu 5 | * 6 | * Made by Osman Nuri Okumus 7 | * Under MIT License 8 | */ 9 | 10 | .arrow{float:right;line-height:1.42857}.glyphicon.arrow:before{content:"\e079"}.active>a>.glyphicon.arrow:before{content:"\e114"}.fa.arrow:before{content:"\f104"}.active>a>.fa.arrow:before{content:"\f107"}.plus-times{float:right}.fa.plus-times:before{content:"\f067"}.active>a>.fa.plus-times{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.plus-minus{float:right}.fa.plus-minus:before{content:"\f067"}.active>a>.fa.plus-minus:before{content:"\f068"} -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Content/vendor/morrisjs/morris.css: -------------------------------------------------------------------------------- 1 | .morris-hover{position:absolute;z-index:1000}.morris-hover.morris-default-style{border-radius:10px;padding:6px;color:#666;background:rgba(255,255,255,0.8);border:solid 2px rgba(230,230,230,0.8);font-family:sans-serif;font-size:12px;text-align:center}.morris-hover.morris-default-style .morris-hover-row-label{font-weight:bold;margin:0.25em 0} 2 | .morris-hover.morris-default-style .morris-hover-point{white-space:nowrap;margin:0.1em 0} 3 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/CreateUsers/Models/app.UserDropdownModel.ts: -------------------------------------------------------------------------------- 1 | export class UserDropdownModel 2 | { 3 | public UserId: number; 4 | public UserName: string; 5 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/CreateUsers/Models/app.UserModel.ts: -------------------------------------------------------------------------------- 1 | export class UserModel 2 | { 3 | public UserId: number; 4 | public UserName: string; 5 | public FullName: string; 6 | public EmailId: string; 7 | public Contactno: string; 8 | public Password: string; 9 | public Status: boolean; 10 | 11 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Login/Models/app.LoginModel.ts: -------------------------------------------------------------------------------- 1 | export class LoginModel 2 | { 3 | public Username: string = ""; 4 | public Password: string = ""; 5 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Login/app.AdminLogout.Component.ts: -------------------------------------------------------------------------------- 1 | import { Component, OnInit } from '@angular/core' 2 | import { Router } from '@angular/router' 3 | @Component({ 4 | template: '' 5 | }) 6 | export class AdminLogoutComponent implements OnInit 7 | { 8 | constructor(private _Route: Router) 9 | { 10 | 11 | } 12 | ngOnInit() { 13 | localStorage.removeItem('AdminUser'); 14 | this._Route.navigate(['Login']); 15 | } 16 | } 17 | 18 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Login/app.UserLogout.Component.ts: -------------------------------------------------------------------------------- 1 | import { Component, OnInit } from '@angular/core' 2 | import { Router } from '@angular/router' 3 | @Component({ 4 | template:'' 5 | }) 6 | export class UserLogoutComponent implements OnInit 7 | { 8 | constructor(private _Route: Router) 9 | { 10 | 11 | } 12 | 13 | ngOnInit() 14 | { 15 | localStorage.removeItem('currentUser'); 16 | this._Route.navigate(['Login']); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/MemberRegistration/List/app.MemberViewComponent.html: -------------------------------------------------------------------------------- 1 | 7 | 8 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/MemberRegistration/Models/app.MemberRegistrationGridModel.ts: -------------------------------------------------------------------------------- 1 | export class MemberRegistrationGridModel { 2 | public MemberId: number; 3 | public MemberNo: string; 4 | public MemberName: string; 5 | public MemberMName: number; 6 | public Dob: Date; 7 | public Contactno: string; 8 | public EmailId: string; 9 | public PlanName: string; 10 | public SchemeName: string; 11 | public SchemeID: string; 12 | public JoiningDate: string; 13 | public Amount: number; 14 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/MemberRegistration/Models/app.MemberRegistrationModel.ts: -------------------------------------------------------------------------------- 1 | export class MemberRegistrationModel 2 | { 3 | public MemberId : number; 4 | public MemberFName : string; 5 | public MemberLName : string; 6 | public MemberMName : number; 7 | public Dob : Date; 8 | public Age : number; 9 | public Contactno : string; 10 | public EmailId : string; 11 | public Gender : number; 12 | public PlanID : number; 13 | public SchemeID : string; 14 | public JoiningDate : string; 15 | public Address : string; 16 | public Amount : number; 17 | public SchemeName : string; 18 | public PlanName : string; 19 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/MemberRegistration/app.memberComponent.css: -------------------------------------------------------------------------------- 1 | @import "//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css"; 2 | @import "//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"; -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Payment/List/app.PaymentViewComponent.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Payment/Models/app.PaymentDetailsModel.ts: -------------------------------------------------------------------------------- 1 | export class PaymentDetailsModel 2 | { 3 | public PaymentID: number; 4 | public PlanName: string; 5 | public SchemeName: string; 6 | public PaymentAmount: number; 7 | public PaymentFromdt: Date; 8 | public PaymentTodt: Date; 9 | public NextRenwalDate: Date; 10 | public RecStatus: string; 11 | public MemberName: string; 12 | public MemberNo: string; 13 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/PeriodMaster/Models/app.PeriodModel.ts: -------------------------------------------------------------------------------- 1 | export class PeriodModel 2 | { 3 | public PeriodID: number = 0; 4 | public Text: string = ""; 5 | public Value: string = ""; 6 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/PlanMaster/Models/app.ActivePlanModel.ts: -------------------------------------------------------------------------------- 1 | export class ActivePlanModel { 2 | public PlanID: string; 3 | public PlanName: string; 4 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/PlanMaster/Models/app.PlanMasterModel.ts: -------------------------------------------------------------------------------- 1 | export class PlanMasterModel{ 2 | 3 | public PlanID : number; 4 | public PlanName : string; 5 | public PlanAmount : number; 6 | public ServiceTax : string; 7 | public SchemeID : number; 8 | public PeriodID : number; 9 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/PlanMaster/Models/app.PlanMasterViewModel.ts: -------------------------------------------------------------------------------- 1 | export class PlanMasterViewModel { 2 | 3 | public PlanID: number; 4 | public PlanName: string; 5 | public PlanAmount: number; 6 | public ServicetaxAmount: string; 7 | public ServiceTax: string; 8 | public RecStatus: boolean; 9 | public SchemeID: number; 10 | public SchemeName: string; 11 | public PeriodID: number; 12 | public Text: string; 13 | public TotalAmount: number; 14 | public ServicetaxNo: string; 15 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Recepit/Models/app.GenerateRecepitRequestModel.ts: -------------------------------------------------------------------------------- 1 | export class GenerateRecepitRequestModel 2 | { 3 | public PaymentID: number; 4 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Recepit/Models/app.GenerateRecepitViewModel.ts: -------------------------------------------------------------------------------- 1 | export class GenerateRecepitViewModel 2 | { 3 | public MemberNo : string; 4 | public MemberName : string; 5 | public PlanName : string; 6 | public SchemeName : string; 7 | public PaymentFromdt : string; 8 | public PaymentTodt : string; 9 | public NextRenwalDate : string; 10 | public PaymentAmount : string; 11 | public CreateDate : string; 12 | public ServiceTax : string; 13 | public PlanAmount : string; 14 | public ServicetaxAmount : string; 15 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Renewal/Models/app.RenewalModel.ts: -------------------------------------------------------------------------------- 1 | export class RenewalModel 2 | { 3 | public MemberName: string; 4 | public MemberNo: string; 5 | public MemberId : number; 6 | public PlanID : number; 7 | public SchemeID : string; 8 | public SearchMemberNo: string; 9 | public Amount : number; 10 | public NewDate : string; 11 | public NextRenwalDate : string; 12 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Renewal/Models/app.RequestMemberModel.ts: -------------------------------------------------------------------------------- 1 | export class RequestMemberModel { 2 | public MemberName: string; 3 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Renewal/Models/app.RequestMemberNoModel.ts: -------------------------------------------------------------------------------- 1 | export class RequestMemberNoModel 2 | { 3 | public MemberNo: string; 4 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Renewal/Models/app.ResponseMemberModel.ts: -------------------------------------------------------------------------------- 1 | export class ResponseMemberModel { 2 | public MemberName: string; 3 | public MemberNo: string; 4 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/Models/app.MemberDetailsReportViewModel.ts: -------------------------------------------------------------------------------- 1 | export class MemberDetailsReportModel 2 | { 3 | public Name :string; 4 | public Address :string; 5 | public Contactno :string; 6 | public EmailID :string; 7 | public MemberNo :string; 8 | public PlanName :string; 9 | public SchemeName :string; 10 | public JoiningDate :string; 11 | public RenwalDate :string; 12 | public PaymentAmount :string; 13 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/Models/app.MonthModel.ts: -------------------------------------------------------------------------------- 1 | export class MonthList 2 | { 3 | public MonthName: string; 4 | public MonthID: string; 5 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/Models/app.MonthWiseRequestModel.ts: -------------------------------------------------------------------------------- 1 | export class MonthWiseRequestModel 2 | { 3 | public MonthId :string; 4 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/Models/app.MonthWiseResponseModel.ts: -------------------------------------------------------------------------------- 1 | export class MonthWiseResponseModel 2 | { 3 | public MemberFName: string 4 | public MemberNo: string 5 | public MemberLName: string 6 | public MemberMName: string 7 | public CreateDate: string 8 | public Total: number 9 | public Paymentmonth: string 10 | public PaymentAmount: number 11 | public Username: string 12 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/Models/app.RenewalReportViewModel.ts: -------------------------------------------------------------------------------- 1 | export class RenewalReportViewModel 2 | { 3 | public MemberID : string; 4 | public PaymentID : string; 5 | public Name : string; 6 | public Address : string; 7 | public Contactno : string; 8 | public EmailID : string; 9 | public MemberNo : string; 10 | public PlanName : string; 11 | public SchemeName : string; 12 | public JoiningDate : string; 13 | public RenwalDate : string; 14 | public PaymentAmount : string; 15 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/Models/app.RenewalRequestModel.ts: -------------------------------------------------------------------------------- 1 | export class RenewalRequestModel { 2 | public Paymentfromdate: string 3 | public Paymentfromto: string 4 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/Models/app.YearModel.ts: -------------------------------------------------------------------------------- 1 | export class YearList 2 | { 3 | public YearName: string; 4 | public YearID: string; 5 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/Models/app.YearwiseRequestModel.ts: -------------------------------------------------------------------------------- 1 | export class YearwiseRequestModel 2 | { 3 | public YearID :string; 4 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/Models/app.YearwiseResponseModel.ts: -------------------------------------------------------------------------------- 1 | export class YearwiseResponseModel { 2 | public CurrentYear: string; 3 | public April: string; 4 | public May: string; 5 | public June: string; 6 | public July: string; 7 | public August: string; 8 | public Sept: string; 9 | public Oct: string; 10 | public Nov: string; 11 | public Decm: string; 12 | public Jan: string; 13 | public Feb: string; 14 | public March: string; 15 | public Total: string; 16 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Reports/app.MemberDetailsReport.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/Reports/app.MemberDetailsReport.css -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/RoleMaster/Models/app.RoleModel.ts: -------------------------------------------------------------------------------- 1 | export class RoleModel { 2 | public RoleName: string; 3 | public Status: boolean; 4 | public RoleId : number; 5 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/RoleMaster/app.Role.component.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { RoleModel } from './Models/app.RoleModel'; 3 | import { RoleService } from './Services/app.role.Service'; 4 | import { Router } from '@angular/router'; 5 | 6 | @Component({ 7 | templateUrl : './app.Role.html', 8 | styleUrls: ['../Content/vendor/bootstrap/css/bootstrap.min.css', 9 | '../Content/vendor/metisMenu/metisMenu.min.css', 10 | '../Content/dist/css/sb-admin-2.css', 11 | '../Content/vendor/font-awesome/css/font-awesome.min.css' 12 | ] 13 | }) 14 | 15 | export class RoleComponent 16 | { 17 | private _roleService; 18 | RoleModel : RoleModel = new RoleModel(); 19 | output: any; 20 | 21 | constructor(private _Route: Router, roleService :RoleService ){ 22 | this._roleService = roleService; 23 | } 24 | 25 | onSubmit() 26 | { 27 | 28 | 29 | this._roleService.AddRole(this.RoleModel).subscribe( 30 | response => { 31 | this.output = response 32 | if (this.output.StatusCode == "409") { 33 | alert('Role Already Exists'); 34 | } 35 | else if (this.output.StatusCode == "200") { 36 | alert('Role Saved Successfully'); 37 | this._Route.navigate(['/Role/All']); 38 | } 39 | else { 40 | alert('Something Went Wrong'); 41 | } 42 | }); 43 | } 44 | 45 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/SchemeMasters/Models/app.SchemeDropdownModel.ts: -------------------------------------------------------------------------------- 1 | export class SchemeDropdownModel { 2 | public SchemeID: string = ""; 3 | public SchemeName: string = ""; 4 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/SchemeMasters/Models/app.SchemeViewModel.ts: -------------------------------------------------------------------------------- 1 | export class SchemeMasterViewModel 2 | { 3 | public SchemeID: number = 0; 4 | public SchemeName: string = ""; 5 | public Status: boolean = false; 6 | public Createddate : string = "" 7 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/SchemeMasters/app.AllSchemeComponent.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/SchemeMasters/app.AllSchemeComponent.css -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/SchemeMasters/app.SchemeModel.ts: -------------------------------------------------------------------------------- 1 | export class SchemeMasterModel { 2 | public SchemeID: number = 0; 3 | public SchemeName: string = ""; 4 | public Status: boolean = false; 5 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Shared/PaginationModel.ts: -------------------------------------------------------------------------------- 1 | export class PaginationModel { 2 | selectItemsPerPage: number[] = [10, 25, 100]; 3 | pageSize = this.selectItemsPerPage[0]; 4 | pageIndex = 1; 5 | allItemsLength = 0; 6 | } 7 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Shared/PaginationService.ts: -------------------------------------------------------------------------------- 1 | import { PaginationModel } from "./PaginationModel"; 2 | import { PageEvent } from "@angular/material"; 3 | import { Injectable } from "@angular/core"; 4 | 5 | @Injectable({ 6 | providedIn: 'root' 7 | }) 8 | export class PaginationService 9 | { 10 | private paginationModel: PaginationModel; 11 | get page(): number { 12 | return this.paginationModel.pageIndex; 13 | } 14 | get selectItemsPerPage(): number[] { 15 | return this.paginationModel.selectItemsPerPage; 16 | } 17 | get pageCount(): number { 18 | return this.paginationModel.pageSize; 19 | } 20 | constructor() { 21 | this.paginationModel = new PaginationModel(); 22 | } 23 | change(pageEvent: PageEvent) { 24 | this.paginationModel.pageIndex = pageEvent.pageIndex + 1; 25 | this.paginationModel.pageSize = pageEvent.pageSize; 26 | this.paginationModel.allItemsLength = pageEvent.length; 27 | } 28 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Shared/app.GenderModel.ts: -------------------------------------------------------------------------------- 1 | interface GenderModel 2 | { 3 | id :string; 4 | Name :string; 5 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Shared/constantUrl.ts: -------------------------------------------------------------------------------- 1 | /** This file in future not longer referenced, apiEndPoint Reference from "environment/environment" */ 2 | export const constantUrl = 3 | { 4 | apiEndpoint: 'http://localhost:49749' 5 | }; 6 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/Shared/environment.ts: -------------------------------------------------------------------------------- 1 | /** This file in future not longer referenced, apiEndPoint Reference from "environment/environment" */ 2 | 3 | export const environment = 4 | { 5 | production: false, 6 | apiEndpoint: 'http://localhost:49749' 7 | }; 8 | 9 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/UserDashboard/app.UserDashboardComponent.html: -------------------------------------------------------------------------------- 1 |

UserDashboard

2 |
-------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/UserDashboard/app.UserDashboardComponent.ts: -------------------------------------------------------------------------------- 1 | import { Component} from '@angular/core'; 2 | 3 | @Component({ 4 | templateUrl:'./app.UserDashboardComponent.html' 5 | }) 6 | 7 | export class UserDashboardComponent 8 | { 9 | 10 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/_layout/app-adminlayout.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/_layout/app-adminlayout.component.css -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/_layout/app-adminlayout.component.ts: -------------------------------------------------------------------------------- 1 | import { Component, OnInit } from '@angular/core'; 2 | 3 | 4 | @Component({ 5 | selector: 'app-app-layout', 6 | templateUrl: './app-admin-layout.component.html', 7 | styleUrls: ['../Content/vendor/bootstrap/css/bootstrap.min.css', 8 | '../Content/vendor/metisMenu/metisMenu.min.css', 9 | '../Content/dist/css/sb-admin-2.css', 10 | '../Content/vendor/font-awesome/css/font-awesome.min.css' 11 | ] 12 | }) 13 | export class AppAdminLayoutComponent implements OnInit 14 | { 15 | 16 | 17 | constructor() { } 18 | 19 | ngOnInit() { 20 | 21 | } 22 | 23 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/_layout/app-userlayout.component.ts: -------------------------------------------------------------------------------- 1 | import { Component, OnInit } from '@angular/core'; 2 | 3 | @Component({ 4 | selector: 'app-app-layout', 5 | templateUrl: './app-user-layout.component.html', 6 | styleUrls: ['../Content/vendor/bootstrap/css/bootstrap.min.css', 7 | '../Content/vendor/metisMenu/metisMenu.min.css', 8 | '../Content/dist/css/sb-admin-2.css', 9 | '../Content/vendor/font-awesome/css/font-awesome.min.css' 10 | ] 11 | }) 12 | export class AppUserLayoutComponent implements OnInit 13 | { 14 | 15 | constructor() { } 16 | 17 | ngOnInit() { 18 | 19 | } 20 | 21 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/app-routing.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { Routes, RouterModule } from '@angular/router'; 3 | 4 | const routes: Routes = []; 5 | 6 | @NgModule({ 7 | imports: [RouterModule.forRoot(routes)], 8 | exports: [RouterModule] 9 | }) 10 | export class AppRoutingModule { } 11 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/app.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/app/app.component.css -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/app.component.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/app.component.spec.ts: -------------------------------------------------------------------------------- 1 | import { TestBed, async } from '@angular/core/testing'; 2 | import { RouterTestingModule } from '@angular/router/testing'; 3 | import { AppComponent } from './app.component'; 4 | 5 | describe('AppComponent', () => { 6 | beforeEach(async(() => { 7 | TestBed.configureTestingModule({ 8 | imports: [ 9 | RouterTestingModule 10 | ], 11 | declarations: [ 12 | AppComponent 13 | ], 14 | }).compileComponents(); 15 | })); 16 | 17 | it('should create the app', () => { 18 | const fixture = TestBed.createComponent(AppComponent); 19 | const app = fixture.debugElement.componentInstance; 20 | expect(app).toBeTruthy(); 21 | }); 22 | 23 | it(`should have as title 'gym-project'`, () => { 24 | const fixture = TestBed.createComponent(AppComponent); 25 | const app = fixture.debugElement.componentInstance; 26 | expect(app.title).toEqual('gym-project'); 27 | }); 28 | 29 | it('should render title in a h1 tag', () => { 30 | const fixture = TestBed.createComponent(AppComponent); 31 | fixture.detectChanges(); 32 | const compiled = fixture.debugElement.nativeElement; 33 | expect(compiled.querySelector('h1').textContent).toContain('Welcome to gym-project!'); 34 | }); 35 | }); 36 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/app/app.component.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | 3 | @Component({ 4 | selector: 'app-root', 5 | templateUrl: './app.component.html', 6 | styleUrls: ['./Content/vendor/bootstrap/css/bootstrap.min.css', 7 | './Content/vendor/metisMenu/metisMenu.min.css', 8 | './Content/dist/css/sb-admin-2.css', 9 | './Content/vendor/font-awesome/css/font-awesome.min.css' 10 | ] 11 | }) 12 | export class AppComponent { 13 | title = 'gym-project'; 14 | } 15 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/assets/.gitkeep -------------------------------------------------------------------------------- /WebGYM/gym-project/src/browserslist: -------------------------------------------------------------------------------- 1 | # This file is currently used by autoprefixer to adjust CSS to support the below specified browsers 2 | # For additional information regarding the format and rule options, please see: 3 | # https://github.com/browserslist/browserslist#queries 4 | # 5 | # For IE 9-11 support, please remove 'not' from the last line of the file and adjust as needed 6 | 7 | > 0.5% 8 | last 2 versions 9 | Firefox ESR 10 | not dead 11 | not IE 9-11 -------------------------------------------------------------------------------- /WebGYM/gym-project/src/environments/environment.prod.ts: -------------------------------------------------------------------------------- 1 | export const environment = { 2 | production: true 3 | }; 4 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/environments/environment.ts: -------------------------------------------------------------------------------- 1 | // This file can be replaced during build by using the `fileReplacements` array. 2 | // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. 3 | // The list of file replacements can be found in `angular.json`. 4 | 5 | export const environment = { 6 | production: false, 7 | apiEndpoint: 'http://localhost:49749' 8 | }; 9 | 10 | /* 11 | * For easier debugging in development mode, you can import the following file 12 | * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. 13 | * 14 | * This import should be commented out in production mode because it will have a negative impact 15 | * on performance if an error is thrown. 16 | */ 17 | // import 'zone.js/dist/zone-error'; // Included with Angular CLI. 18 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/WebGYM/gym-project/src/favicon.ico -------------------------------------------------------------------------------- /WebGYM/gym-project/src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Gym Project 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/karma.conf.js: -------------------------------------------------------------------------------- 1 | // Karma configuration file, see link for more information 2 | // https://karma-runner.github.io/1.0/config/configuration-file.html 3 | 4 | module.exports = function (config) { 5 | config.set({ 6 | basePath: '', 7 | frameworks: ['jasmine', '@angular-devkit/build-angular'], 8 | plugins: [ 9 | require('karma-jasmine'), 10 | require('karma-chrome-launcher'), 11 | require('karma-jasmine-html-reporter'), 12 | require('karma-coverage-istanbul-reporter'), 13 | require('@angular-devkit/build-angular/plugins/karma') 14 | ], 15 | client: { 16 | clearContext: false // leave Jasmine Spec Runner output visible in browser 17 | }, 18 | coverageIstanbulReporter: { 19 | dir: require('path').join(__dirname, '../coverage'), 20 | reports: ['html', 'lcovonly'], 21 | fixWebpackSourcePaths: true 22 | }, 23 | reporters: ['progress', 'kjhtml'], 24 | port: 9876, 25 | colors: true, 26 | logLevel: config.LOG_INFO, 27 | autoWatch: true, 28 | browsers: ['Chrome'], 29 | singleRun: false 30 | }); 31 | }; -------------------------------------------------------------------------------- /WebGYM/gym-project/src/main.ts: -------------------------------------------------------------------------------- 1 | import { enableProdMode } from '@angular/core'; 2 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 3 | import 'hammerjs'; 4 | import { AppModule } from './app/app.module'; 5 | import { environment } from './environments/environment'; 6 | 7 | if (environment.production) { 8 | enableProdMode(); 9 | } 10 | 11 | platformBrowserDynamic().bootstrapModule(AppModule) 12 | .catch(err => console.error(err)); 13 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/styles.css: -------------------------------------------------------------------------------- 1 | /* You can add global styles to this file, and also import other style files */ 2 | @import "~@angular/material/prebuilt-themes/indigo-pink.css"; 3 | 4 | table { 5 | width: 100%; 6 | } -------------------------------------------------------------------------------- /WebGYM/gym-project/src/test.ts: -------------------------------------------------------------------------------- 1 | // This file is required by karma.conf.js and loads recursively all the .spec and framework files 2 | 3 | import 'zone.js/dist/zone-testing'; 4 | import { getTestBed } from '@angular/core/testing'; 5 | import { 6 | BrowserDynamicTestingModule, 7 | platformBrowserDynamicTesting 8 | } from '@angular/platform-browser-dynamic/testing'; 9 | 10 | declare const require: any; 11 | 12 | // First, initialize the Angular testing environment. 13 | getTestBed().initTestEnvironment( 14 | BrowserDynamicTestingModule, 15 | platformBrowserDynamicTesting() 16 | ); 17 | // Then we find all the tests. 18 | const context = require.context('./', true, /\.spec\.ts$/); 19 | // And load the modules. 20 | context.keys().map(context); 21 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/tsconfig.app.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "../out-tsc/app", 5 | "types": [] 6 | }, 7 | "exclude": [ 8 | "test.ts", 9 | "**/*.spec.ts" 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/tsconfig.spec.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "../out-tsc/spec", 5 | "types": [ 6 | "jasmine", 7 | "node" 8 | ] 9 | }, 10 | "files": [ 11 | "test.ts", 12 | "polyfills.ts" 13 | ], 14 | "include": [ 15 | "**/*.spec.ts", 16 | "**/*.d.ts" 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /WebGYM/gym-project/src/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tslint.json", 3 | "rules": { 4 | "directive-selector": [ 5 | true, 6 | "attribute", 7 | "app", 8 | "camelCase" 9 | ], 10 | "component-selector": [ 11 | true, 12 | "element", 13 | "app", 14 | "kebab-case" 15 | ] 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /WebGYM/gym-project/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compileOnSave": false, 3 | "compilerOptions": { 4 | "baseUrl": "./", 5 | "outDir": "./dist/out-tsc", 6 | "sourceMap": true, 7 | "declaration": false, 8 | "module": "es2015", 9 | "moduleResolution": "node", 10 | "emitDecoratorMetadata": true, 11 | "experimentalDecorators": true, 12 | "target": "es5", 13 | "typeRoots": [ 14 | "node_modules/@types" 15 | ], 16 | "lib": [ 17 | "es2018", 18 | "dom" 19 | ] 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /gym-project/.editorconfig: -------------------------------------------------------------------------------- 1 | # Editor configuration, see https://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | charset = utf-8 6 | indent_style = space 7 | indent_size = 2 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | 11 | [*.md] 12 | max_line_length = off 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /gym-project/README.md: -------------------------------------------------------------------------------- 1 | # GymProject 2 | 3 | This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.0.6. 4 | 5 | ## Development server 6 | 7 | Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. 8 | 9 | ## Code scaffolding 10 | 11 | Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. 12 | 13 | ## Build 14 | 15 | Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build. 16 | 17 | ## Running unit tests 18 | 19 | Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). 20 | 21 | ## Running end-to-end tests 22 | 23 | Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). 24 | 25 | ## Further help 26 | 27 | To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). 28 | -------------------------------------------------------------------------------- /gym-project/e2e/protractor.conf.js: -------------------------------------------------------------------------------- 1 | // Protractor configuration file, see link for more information 2 | // https://github.com/angular/protractor/blob/master/lib/config.ts 3 | 4 | const { SpecReporter } = require('jasmine-spec-reporter'); 5 | 6 | exports.config = { 7 | allScriptsTimeout: 11000, 8 | specs: [ 9 | './src/**/*.e2e-spec.ts' 10 | ], 11 | capabilities: { 12 | 'browserName': 'chrome' 13 | }, 14 | directConnect: true, 15 | baseUrl: 'http://localhost:4200/', 16 | framework: 'jasmine', 17 | jasmineNodeOpts: { 18 | showColors: true, 19 | defaultTimeoutInterval: 30000, 20 | print: function() {} 21 | }, 22 | onPrepare() { 23 | require('ts-node').register({ 24 | project: require('path').join(__dirname, './tsconfig.e2e.json') 25 | }); 26 | jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); 27 | } 28 | }; -------------------------------------------------------------------------------- /gym-project/e2e/src/app.e2e-spec.ts: -------------------------------------------------------------------------------- 1 | import { AppPage } from './app.po'; 2 | 3 | describe('workspace-project App', () => { 4 | let page: AppPage; 5 | 6 | beforeEach(() => { 7 | page = new AppPage(); 8 | }); 9 | 10 | it('should display welcome message', () => { 11 | page.navigateTo(); 12 | expect(page.getTitleText()).toEqual('Welcome to gym-project!'); 13 | }); 14 | }); 15 | -------------------------------------------------------------------------------- /gym-project/e2e/src/app.po.ts: -------------------------------------------------------------------------------- 1 | import { browser, by, element } from 'protractor'; 2 | 3 | export class AppPage { 4 | navigateTo() { 5 | return browser.get('/'); 6 | } 7 | 8 | getTitleText() { 9 | return element(by.css('app-root h1')).getText(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /gym-project/e2e/tsconfig.e2e.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "../out-tsc/app", 5 | "module": "commonjs", 6 | "target": "es5", 7 | "types": [ 8 | "jasmine", 9 | "jasminewd2", 10 | "node" 11 | ] 12 | } 13 | } -------------------------------------------------------------------------------- /gym-project/src/app/AdminDashboard/app.AdminDashboardComponent.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/AdminDashboard/app.AdminDashboardComponent.html -------------------------------------------------------------------------------- /gym-project/src/app/AdminDashboard/app.AdminDashboardComponent.ts: -------------------------------------------------------------------------------- 1 | import { Component} from '@angular/core'; 2 | 3 | @Component({ 4 | templateUrl:'./app.AdminDashboardComponent.html' 5 | }) 6 | 7 | export class AdminDashboardComponent 8 | { 9 | 10 | } -------------------------------------------------------------------------------- /gym-project/src/app/AssignRole/Models/AssignRemoveModel.ts: -------------------------------------------------------------------------------- 1 | export class AssignRemoveModel 2 | { 3 | public UserId: number; 4 | public RoleId : number; 5 | } -------------------------------------------------------------------------------- /gym-project/src/app/AssignRole/Models/AssignRolesViewModel.ts: -------------------------------------------------------------------------------- 1 | export class AssignRolesViewModel 2 | { 3 | public UserId: number; 4 | public RoleId : number; 5 | public UserName: string; 6 | public RoleName :string; 7 | public UserRolesId: number; 8 | } -------------------------------------------------------------------------------- /gym-project/src/app/AssignRole/app.AllAssignedRoles.html: -------------------------------------------------------------------------------- 1 |

All AssignRoles

2 |
3 | 4 |
5 |
6 |
7 | 8 | 9 | 10 |
11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
UserName {{element.UserName}} RoleName {{element.RoleName}}
25 | 28 |
29 |
30 |
-------------------------------------------------------------------------------- /gym-project/src/app/AuthGuard/AdminAuthGuardService.ts: -------------------------------------------------------------------------------- 1 | import { Injectable } from '@angular/core'; 2 | import { Router, CanActivate } from '@angular/router'; 3 | 4 | @Injectable() 5 | export class AdminAuthGuardService implements CanActivate { 6 | 7 | constructor(private router: Router) { } 8 | 9 | canActivate() 10 | { 11 | if (localStorage.getItem('AdminUser')) 12 | { 13 | // logged in so return true 14 | return true; 15 | } 16 | 17 | // not logged in so redirect to login page 18 | this.router.navigate(['/Login']); 19 | return false; 20 | } 21 | } -------------------------------------------------------------------------------- /gym-project/src/app/AuthGuard/UserAuthGuardService.ts: -------------------------------------------------------------------------------- 1 | import { Injectable } from '@angular/core'; 2 | import { Router, CanActivate } from '@angular/router'; 3 | 4 | @Injectable() 5 | export class UserAuthGuardService implements CanActivate { 6 | 7 | constructor(private router: Router) { } 8 | 9 | canActivate() 10 | { 11 | if (localStorage.getItem('currentUser')) 12 | { 13 | // logged in so return true 14 | return true; 15 | } 16 | 17 | // not logged in so redirect to login page 18 | this.router.navigate(['/Login']); 19 | return false; 20 | } 21 | } -------------------------------------------------------------------------------- /gym-project/src/app/Content/dist/js/sb-admin-2.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Start Bootstrap - SB Admin 2 v3.3.7+1 (http://startbootstrap.com/template-overviews/sb-admin-2) 3 | * Copyright 2013-2016 Start Bootstrap 4 | * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE) 5 | */ 6 | $(function(){$("#side-menu").metisMenu()}),$(function(){$(window).bind("load resize",function(){var i=50,n=this.window.innerWidth>0?this.window.innerWidth:this.screen.width;n<768?($("div.navbar-collapse").addClass("collapse"),i=100):$("div.navbar-collapse").removeClass("collapse");var e=(this.window.innerHeight>0?this.window.innerHeight:this.screen.height)-1;e-=i,e<1&&(e=1),e>i&&$("#page-wrapper").css("min-height",e+"px")});for(var i=window.location,n=$("ul.nav a").filter(function(){return this.href==i}).addClass("active").parent();;){if(!n.is("li"))break;n=n.parent().addClass("in").parent()}}); -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/datatables/images/Sorting icons.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/datatables/images/Sorting icons.psd -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/datatables/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/datatables/images/favicon.ico -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/datatables/images/sort_asc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/datatables/images/sort_asc.png -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/datatables/images/sort_asc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/datatables/images/sort_asc_disabled.png -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/datatables/images/sort_both.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/datatables/images/sort_both.png -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/datatables/images/sort_desc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/datatables/images/sort_desc.png -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/datatables/images/sort_desc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/datatables/images/sort_desc_disabled.png -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/HELP-US-OUT.txt: -------------------------------------------------------------------------------- 1 | I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, 2 | Fort Awesome (https://fortawesome.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, 3 | comprehensive icon sets or copy and paste your own. 4 | 5 | Please. Check it out. 6 | 7 | -Dave Gandy 8 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Content/vendor/font-awesome/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .@{fa-css-prefix}-pull-left { float: left; } 11 | .@{fa-css-prefix}-pull-right { float: right; } 12 | 13 | .@{fa-css-prefix} { 14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .@{fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/extras.less: -------------------------------------------------------------------------------- 1 | // Extras 2 | // -------------------------- 3 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | @import "screen-reader.less"; 19 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/screen-reader.less: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { .sr-only(); } 5 | .sr-only-focusable { .sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/spinning.less: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .#{$fa-css-prefix}-pull-left { float: left; } 11 | .#{$fa-css-prefix}-pull-right { float: right; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .#{$fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_extras.scss: -------------------------------------------------------------------------------- 1 | /* EXTRAS 2 | * -------------------------- */ 3 | 4 | /* Stacked and layered icon */ 5 | 6 | /* Animated rotating icon */ 7 | .#{$fa-css-prefix}-spin { 8 | -webkit-animation: spin 2s infinite linear; 9 | -moz-animation: spin 2s infinite linear; 10 | -o-animation: spin 2s infinite linear; 11 | animation: spin 2s infinite linear; 12 | } 13 | 14 | @-moz-keyframes spin { 15 | 0% { -moz-transform: rotate(0deg); } 16 | 100% { -moz-transform: rotate(359deg); } 17 | } 18 | @-webkit-keyframes spin { 19 | 0% { -webkit-transform: rotate(0deg); } 20 | 100% { -webkit-transform: rotate(359deg); } 21 | } 22 | @-o-keyframes spin { 23 | 0% { -o-transform: rotate(0deg); } 24 | 100% { -o-transform: rotate(359deg); } 25 | } 26 | @-ms-keyframes spin { 27 | 0% { -ms-transform: rotate(0deg); } 28 | 100% { -ms-transform: rotate(359deg); } 29 | } 30 | @keyframes spin { 31 | 0% { transform: rotate(0deg); } 32 | 100% { transform: rotate(359deg); } 33 | } 34 | 35 | 36 | // Icon rotations & flipping 37 | // ------------------------- 38 | 39 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 40 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 41 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 42 | 43 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 44 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 45 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_screen-reader.scss: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { @include sr-only(); } 5 | .sr-only-focusable { @include sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_spinning.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/font-awesome/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | @import "screen-reader"; 19 | -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/metisMenu/metisMenu.css: -------------------------------------------------------------------------------- 1 | /* 2 | * metismenu - v1.1.3 3 | * Easy menu jQuery plugin for Twitter Bootstrap 3 4 | * https://github.com/onokumus/metisMenu 5 | * 6 | * Made by Osman Nuri Okumus 7 | * Under MIT License 8 | */ 9 | .arrow { 10 | float: right; 11 | line-height: 1.42857; 12 | } 13 | 14 | .glyphicon.arrow:before { 15 | content: "\e079"; 16 | } 17 | 18 | .active > a > .glyphicon.arrow:before { 19 | content: "\e114"; 20 | } 21 | 22 | 23 | /* 24 | * Require Font-Awesome 25 | * http://fortawesome.github.io/Font-Awesome/ 26 | */ 27 | 28 | 29 | .fa.arrow:before { 30 | content: "\f104"; 31 | } 32 | 33 | .active > a > .fa.arrow:before { 34 | content: "\f107"; 35 | } 36 | 37 | .plus-times { 38 | float: right; 39 | } 40 | 41 | .fa.plus-times:before { 42 | content: "\f067"; 43 | } 44 | 45 | .active > a > .fa.plus-times { 46 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1); 47 | -webkit-transform: rotate(45deg); 48 | -moz-transform: rotate(45deg); 49 | -ms-transform: rotate(45deg); 50 | -o-transform: rotate(45deg); 51 | transform: rotate(45deg); 52 | } 53 | 54 | .plus-minus { 55 | float: right; 56 | } 57 | 58 | .fa.plus-minus:before { 59 | content: "\f067"; 60 | } 61 | 62 | .active > a > .fa.plus-minus:before { 63 | content: "\f068"; 64 | } -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/metisMenu/metisMenu.min.css: -------------------------------------------------------------------------------- 1 | /* 2 | * metismenu - v1.1.3 3 | * Easy menu jQuery plugin for Twitter Bootstrap 3 4 | * https://github.com/onokumus/metisMenu 5 | * 6 | * Made by Osman Nuri Okumus 7 | * Under MIT License 8 | */ 9 | 10 | .arrow{float:right;line-height:1.42857}.glyphicon.arrow:before{content:"\e079"}.active>a>.glyphicon.arrow:before{content:"\e114"}.fa.arrow:before{content:"\f104"}.active>a>.fa.arrow:before{content:"\f107"}.plus-times{float:right}.fa.plus-times:before{content:"\f067"}.active>a>.fa.plus-times{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.plus-minus{float:right}.fa.plus-minus:before{content:"\f067"}.active>a>.fa.plus-minus:before{content:"\f068"} -------------------------------------------------------------------------------- /gym-project/src/app/Content/vendor/morrisjs/morris.css: -------------------------------------------------------------------------------- 1 | .morris-hover{position:absolute;z-index:1000}.morris-hover.morris-default-style{border-radius:10px;padding:6px;color:#666;background:rgba(255,255,255,0.8);border:solid 2px rgba(230,230,230,0.8);font-family:sans-serif;font-size:12px;text-align:center}.morris-hover.morris-default-style .morris-hover-row-label{font-weight:bold;margin:0.25em 0} 2 | .morris-hover.morris-default-style .morris-hover-point{white-space:nowrap;margin:0.1em 0} 3 | -------------------------------------------------------------------------------- /gym-project/src/app/CreateUsers/Models/app.UserDropdownModel.ts: -------------------------------------------------------------------------------- 1 | export class UserDropdownModel 2 | { 3 | public UserId: number; 4 | public UserName: string; 5 | } -------------------------------------------------------------------------------- /gym-project/src/app/CreateUsers/Models/app.UserModel.ts: -------------------------------------------------------------------------------- 1 | export class UserModel 2 | { 3 | public UserId: number; 4 | public UserName: string; 5 | public FullName: string; 6 | public EmailId: string; 7 | public Contactno: string; 8 | public Password: string; 9 | public Status: boolean; 10 | 11 | } -------------------------------------------------------------------------------- /gym-project/src/app/Login/Models/app.LoginModel.ts: -------------------------------------------------------------------------------- 1 | export class LoginModel 2 | { 3 | public Username: string = ""; 4 | public Password: string = ""; 5 | } -------------------------------------------------------------------------------- /gym-project/src/app/Login/app.AdminLogout.Component.ts: -------------------------------------------------------------------------------- 1 | import { Component, OnInit } from '@angular/core' 2 | import { Router } from '@angular/router' 3 | @Component({ 4 | template: '' 5 | }) 6 | export class AdminLogoutComponent implements OnInit 7 | { 8 | constructor(private _Route: Router) 9 | { 10 | 11 | } 12 | ngOnInit() { 13 | localStorage.removeItem('AdminUser'); 14 | this._Route.navigate(['Login']); 15 | } 16 | } 17 | 18 | -------------------------------------------------------------------------------- /gym-project/src/app/Login/app.UserLogout.Component.ts: -------------------------------------------------------------------------------- 1 | import { Component, OnInit } from '@angular/core' 2 | import { Router } from '@angular/router' 3 | @Component({ 4 | template:'' 5 | }) 6 | export class UserLogoutComponent implements OnInit 7 | { 8 | constructor(private _Route: Router) 9 | { 10 | 11 | } 12 | 13 | ngOnInit() 14 | { 15 | localStorage.removeItem('currentUser'); 16 | this._Route.navigate(['Login']); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /gym-project/src/app/MemberRegistration/List/app.MemberViewComponent.html: -------------------------------------------------------------------------------- 1 | 7 | 8 | -------------------------------------------------------------------------------- /gym-project/src/app/MemberRegistration/Models/app.MemberRegistrationGridModel.ts: -------------------------------------------------------------------------------- 1 | export class MemberRegistrationGridModel { 2 | public MemberId: number; 3 | public MemberNo: string; 4 | public MemberName: string; 5 | public MemberMName: number; 6 | public Dob: Date; 7 | public Contactno: string; 8 | public EmailId: string; 9 | public PlanName: string; 10 | public SchemeName: string; 11 | public SchemeID: string; 12 | public JoiningDate: string; 13 | public Amount: number; 14 | } -------------------------------------------------------------------------------- /gym-project/src/app/MemberRegistration/Models/app.MemberRegistrationModel.ts: -------------------------------------------------------------------------------- 1 | export class MemberRegistrationModel 2 | { 3 | public MemberId : number; 4 | public MemberFName : string; 5 | public MemberLName : string; 6 | public MemberMName : number; 7 | public Dob : Date; 8 | public Age : number; 9 | public Contactno : string; 10 | public EmailId : string; 11 | public Gender : number; 12 | public PlanID : number; 13 | public SchemeID : string; 14 | public JoiningDate : string; 15 | public Address : string; 16 | public Amount : number; 17 | public SchemeName : string; 18 | public PlanName : string; 19 | } -------------------------------------------------------------------------------- /gym-project/src/app/MemberRegistration/app.memberComponent.css: -------------------------------------------------------------------------------- 1 | @import "//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css"; 2 | @import "//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"; -------------------------------------------------------------------------------- /gym-project/src/app/Payment/List/app.PaymentViewComponent.html: -------------------------------------------------------------------------------- 1 | 6 | 7 | -------------------------------------------------------------------------------- /gym-project/src/app/Payment/Models/app.PaymentDetailsModel.ts: -------------------------------------------------------------------------------- 1 | export class PaymentDetailsModel 2 | { 3 | public PaymentID: number; 4 | public PlanName: string; 5 | public SchemeName: string; 6 | public PaymentAmount: number; 7 | public PaymentFromdt: Date; 8 | public PaymentTodt: Date; 9 | public NextRenwalDate: Date; 10 | public RecStatus: string; 11 | public MemberName: string; 12 | public MemberNo: string; 13 | } -------------------------------------------------------------------------------- /gym-project/src/app/PeriodMaster/Models/app.PeriodModel.ts: -------------------------------------------------------------------------------- 1 | export class PeriodModel 2 | { 3 | public PeriodID: number = 0; 4 | public Text: string = ""; 5 | public Value: string = ""; 6 | } -------------------------------------------------------------------------------- /gym-project/src/app/PlanMaster/Models/app.ActivePlanModel.ts: -------------------------------------------------------------------------------- 1 | export class ActivePlanModel { 2 | public PlanID: string; 3 | public PlanName: string; 4 | } -------------------------------------------------------------------------------- /gym-project/src/app/PlanMaster/Models/app.PlanMasterModel.ts: -------------------------------------------------------------------------------- 1 | export class PlanMasterModel{ 2 | 3 | public PlanID : number; 4 | public PlanName : string; 5 | public PlanAmount : number; 6 | public ServiceTax : string; 7 | public SchemeID : number; 8 | public PeriodID : number; 9 | } -------------------------------------------------------------------------------- /gym-project/src/app/PlanMaster/Models/app.PlanMasterViewModel.ts: -------------------------------------------------------------------------------- 1 | export class PlanMasterViewModel { 2 | 3 | public PlanID: number; 4 | public PlanName: string; 5 | public PlanAmount: number; 6 | public ServicetaxAmount: string; 7 | public ServiceTax: string; 8 | public RecStatus: boolean; 9 | public SchemeID: number; 10 | public SchemeName: string; 11 | public PeriodID: number; 12 | public Text: string; 13 | public TotalAmount: number; 14 | public ServicetaxNo: string; 15 | } -------------------------------------------------------------------------------- /gym-project/src/app/Recepit/Models/app.GenerateRecepitRequestModel.ts: -------------------------------------------------------------------------------- 1 | export class GenerateRecepitRequestModel 2 | { 3 | public PaymentID: number; 4 | } -------------------------------------------------------------------------------- /gym-project/src/app/Recepit/Models/app.GenerateRecepitViewModel.ts: -------------------------------------------------------------------------------- 1 | export class GenerateRecepitViewModel 2 | { 3 | public MemberNo : string; 4 | public MemberName : string; 5 | public PlanName : string; 6 | public SchemeName : string; 7 | public PaymentFromdt : string; 8 | public PaymentTodt : string; 9 | public NextRenwalDate : string; 10 | public PaymentAmount : string; 11 | public CreateDate : string; 12 | public ServiceTax : string; 13 | public PlanAmount : string; 14 | public ServicetaxAmount : string; 15 | } -------------------------------------------------------------------------------- /gym-project/src/app/Renewal/Models/app.RenewalModel.ts: -------------------------------------------------------------------------------- 1 | export class RenewalModel 2 | { 3 | public MemberName: string; 4 | public MemberNo: string; 5 | public MemberId : number; 6 | public PlanID : number; 7 | public SchemeID : string; 8 | public SearchMemberNo: string; 9 | public Amount : number; 10 | public NewDate : string; 11 | public NextRenwalDate : string; 12 | } -------------------------------------------------------------------------------- /gym-project/src/app/Renewal/Models/app.RequestMemberModel.ts: -------------------------------------------------------------------------------- 1 | export class RequestMemberModel { 2 | public MemberName: string; 3 | } -------------------------------------------------------------------------------- /gym-project/src/app/Renewal/Models/app.RequestMemberNoModel.ts: -------------------------------------------------------------------------------- 1 | export class RequestMemberNoModel 2 | { 3 | public MemberNo: string; 4 | } -------------------------------------------------------------------------------- /gym-project/src/app/Renewal/Models/app.ResponseMemberModel.ts: -------------------------------------------------------------------------------- 1 | export class ResponseMemberModel { 2 | public MemberName: string; 3 | public MemberNo: string; 4 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/Models/app.MemberDetailsReportViewModel.ts: -------------------------------------------------------------------------------- 1 | export class MemberDetailsReportModel 2 | { 3 | public Name :string; 4 | public Address :string; 5 | public Contactno :string; 6 | public EmailID :string; 7 | public MemberNo :string; 8 | public PlanName :string; 9 | public SchemeName :string; 10 | public JoiningDate :string; 11 | public RenwalDate :string; 12 | public PaymentAmount :string; 13 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/Models/app.MonthModel.ts: -------------------------------------------------------------------------------- 1 | export class MonthList 2 | { 3 | public MonthName: string; 4 | public MonthID: string; 5 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/Models/app.MonthWiseRequestModel.ts: -------------------------------------------------------------------------------- 1 | export class MonthWiseRequestModel 2 | { 3 | public MonthId :string; 4 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/Models/app.MonthWiseResponseModel.ts: -------------------------------------------------------------------------------- 1 | export class MonthWiseResponseModel 2 | { 3 | public MemberFName: string 4 | public MemberNo: string 5 | public MemberLName: string 6 | public MemberMName: string 7 | public CreateDate: string 8 | public Total: number 9 | public Paymentmonth: string 10 | public PaymentAmount: number 11 | public Username: string 12 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/Models/app.RenewalReportViewModel.ts: -------------------------------------------------------------------------------- 1 | export class RenewalReportViewModel 2 | { 3 | public MemberID : string; 4 | public PaymentID : string; 5 | public Name : string; 6 | public Address : string; 7 | public Contactno : string; 8 | public EmailID : string; 9 | public MemberNo : string; 10 | public PlanName : string; 11 | public SchemeName : string; 12 | public JoiningDate : string; 13 | public RenwalDate : string; 14 | public PaymentAmount : string; 15 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/Models/app.RenewalRequestModel.ts: -------------------------------------------------------------------------------- 1 | export class RenewalRequestModel { 2 | public Paymentfromdate: string 3 | public Paymentfromto: string 4 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/Models/app.YearModel.ts: -------------------------------------------------------------------------------- 1 | export class YearList 2 | { 3 | public YearName: string; 4 | public YearID: string; 5 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/Models/app.YearwiseRequestModel.ts: -------------------------------------------------------------------------------- 1 | export class YearwiseRequestModel 2 | { 3 | public YearID :string; 4 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/Models/app.YearwiseResponseModel.ts: -------------------------------------------------------------------------------- 1 | export class YearwiseResponseModel { 2 | public CurrentYear: string; 3 | public April: string; 4 | public May: string; 5 | public June: string; 6 | public July: string; 7 | public August: string; 8 | public Sept: string; 9 | public Oct: string; 10 | public Nov: string; 11 | public Decm: string; 12 | public Jan: string; 13 | public Feb: string; 14 | public March: string; 15 | public Total: string; 16 | } -------------------------------------------------------------------------------- /gym-project/src/app/Reports/app.MemberDetailsReport.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/Reports/app.MemberDetailsReport.css -------------------------------------------------------------------------------- /gym-project/src/app/RoleMaster/Models/app.RoleModel.ts: -------------------------------------------------------------------------------- 1 | export class RoleModel { 2 | public RoleName: string; 3 | public Status: boolean; 4 | public RoleId : number; 5 | } -------------------------------------------------------------------------------- /gym-project/src/app/RoleMaster/app.Role.component.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | import { RoleModel } from './Models/app.RoleModel'; 3 | import { RoleService } from './Services/app.role.Service'; 4 | import { Router } from '@angular/router'; 5 | 6 | @Component({ 7 | templateUrl : './app.Role.html', 8 | styleUrls: ['../Content/vendor/bootstrap/css/bootstrap.min.css', 9 | '../Content/vendor/metisMenu/metisMenu.min.css', 10 | '../Content/dist/css/sb-admin-2.css', 11 | '../Content/vendor/font-awesome/css/font-awesome.min.css' 12 | ] 13 | }) 14 | 15 | export class RoleComponent 16 | { 17 | private _roleService; 18 | RoleModel : RoleModel = new RoleModel(); 19 | output: any; 20 | 21 | constructor(private _Route: Router, roleService :RoleService ){ 22 | this._roleService = roleService; 23 | } 24 | 25 | onSubmit() 26 | { 27 | 28 | 29 | this._roleService.AddRole(this.RoleModel).subscribe( 30 | response => { 31 | this.output = response 32 | if (this.output.StatusCode == "409") { 33 | alert('Role Already Exists'); 34 | } 35 | else if (this.output.StatusCode == "200") { 36 | alert('Role Saved Successfully'); 37 | this._Route.navigate(['/Role/All']); 38 | } 39 | else { 40 | alert('Something Went Wrong'); 41 | } 42 | }); 43 | } 44 | 45 | } -------------------------------------------------------------------------------- /gym-project/src/app/SchemeMasters/Models/app.SchemeDropdownModel.ts: -------------------------------------------------------------------------------- 1 | export class SchemeDropdownModel { 2 | public SchemeID: string = ""; 3 | public SchemeName: string = ""; 4 | } -------------------------------------------------------------------------------- /gym-project/src/app/SchemeMasters/Models/app.SchemeViewModel.ts: -------------------------------------------------------------------------------- 1 | export class SchemeMasterViewModel 2 | { 3 | public SchemeID: number = 0; 4 | public SchemeName: string = ""; 5 | public Status: boolean = false; 6 | public Createddate : string = "" 7 | } -------------------------------------------------------------------------------- /gym-project/src/app/SchemeMasters/app.AllSchemeComponent.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/SchemeMasters/app.AllSchemeComponent.css -------------------------------------------------------------------------------- /gym-project/src/app/SchemeMasters/app.SchemeModel.ts: -------------------------------------------------------------------------------- 1 | export class SchemeMasterModel { 2 | public SchemeID: number = 0; 3 | public SchemeName: string = ""; 4 | public Status: boolean = false; 5 | } -------------------------------------------------------------------------------- /gym-project/src/app/Shared/PaginationModel.ts: -------------------------------------------------------------------------------- 1 | export class PaginationModel { 2 | selectItemsPerPage: number[] = [10, 25, 100]; 3 | pageSize = this.selectItemsPerPage[0]; 4 | pageIndex = 1; 5 | allItemsLength = 0; 6 | } 7 | -------------------------------------------------------------------------------- /gym-project/src/app/Shared/PaginationService.ts: -------------------------------------------------------------------------------- 1 | import { PaginationModel } from "./PaginationModel"; 2 | import { PageEvent } from "@angular/material"; 3 | import { Injectable } from "@angular/core"; 4 | 5 | @Injectable({ 6 | providedIn: 'root' 7 | }) 8 | export class PaginationService 9 | { 10 | private paginationModel: PaginationModel; 11 | get page(): number { 12 | return this.paginationModel.pageIndex; 13 | } 14 | get selectItemsPerPage(): number[] { 15 | return this.paginationModel.selectItemsPerPage; 16 | } 17 | get pageCount(): number { 18 | return this.paginationModel.pageSize; 19 | } 20 | constructor() { 21 | this.paginationModel = new PaginationModel(); 22 | } 23 | change(pageEvent: PageEvent) { 24 | this.paginationModel.pageIndex = pageEvent.pageIndex + 1; 25 | this.paginationModel.pageSize = pageEvent.pageSize; 26 | this.paginationModel.allItemsLength = pageEvent.length; 27 | } 28 | } -------------------------------------------------------------------------------- /gym-project/src/app/Shared/app.GenderModel.ts: -------------------------------------------------------------------------------- 1 | interface GenderModel 2 | { 3 | id :string; 4 | Name :string; 5 | } -------------------------------------------------------------------------------- /gym-project/src/app/Shared/constantUrl.ts: -------------------------------------------------------------------------------- 1 | /** This file in future not longer referenced, apiEndPoint Reference from "environment/environment" */ 2 | export const constantUrl = 3 | { 4 | apiEndpoint: 'http://localhost:49749' 5 | }; 6 | -------------------------------------------------------------------------------- /gym-project/src/app/Shared/environment.ts: -------------------------------------------------------------------------------- 1 | /** This file in future not longer referenced, apiEndPoint Reference from "environment/environment" */ 2 | 3 | export const environment = 4 | { 5 | production: false, 6 | apiEndpoint: 'http://localhost:49749' 7 | }; 8 | 9 | -------------------------------------------------------------------------------- /gym-project/src/app/UserDashboard/app.UserDashboardComponent.html: -------------------------------------------------------------------------------- 1 |

UserDashboard

2 |
-------------------------------------------------------------------------------- /gym-project/src/app/UserDashboard/app.UserDashboardComponent.ts: -------------------------------------------------------------------------------- 1 | import { Component} from '@angular/core'; 2 | 3 | @Component({ 4 | templateUrl:'./app.UserDashboardComponent.html' 5 | }) 6 | 7 | export class UserDashboardComponent 8 | { 9 | 10 | } -------------------------------------------------------------------------------- /gym-project/src/app/_layout/app-adminlayout.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/_layout/app-adminlayout.component.css -------------------------------------------------------------------------------- /gym-project/src/app/_layout/app-adminlayout.component.ts: -------------------------------------------------------------------------------- 1 | import { Component, OnInit } from '@angular/core'; 2 | 3 | 4 | @Component({ 5 | selector: 'app-app-layout', 6 | templateUrl: './app-admin-layout.component.html', 7 | styleUrls: ['../Content/vendor/bootstrap/css/bootstrap.min.css', 8 | '../Content/vendor/metisMenu/metisMenu.min.css', 9 | '../Content/dist/css/sb-admin-2.css', 10 | '../Content/vendor/font-awesome/css/font-awesome.min.css' 11 | ] 12 | }) 13 | export class AppAdminLayoutComponent implements OnInit 14 | { 15 | 16 | 17 | constructor() { } 18 | 19 | ngOnInit() { 20 | 21 | } 22 | 23 | } -------------------------------------------------------------------------------- /gym-project/src/app/_layout/app-userlayout.component.ts: -------------------------------------------------------------------------------- 1 | import { Component, OnInit } from '@angular/core'; 2 | 3 | @Component({ 4 | selector: 'app-app-layout', 5 | templateUrl: './app-user-layout.component.html', 6 | styleUrls: ['../Content/vendor/bootstrap/css/bootstrap.min.css', 7 | '../Content/vendor/metisMenu/metisMenu.min.css', 8 | '../Content/dist/css/sb-admin-2.css', 9 | '../Content/vendor/font-awesome/css/font-awesome.min.css' 10 | ] 11 | }) 12 | export class AppUserLayoutComponent implements OnInit 13 | { 14 | 15 | constructor() { } 16 | 17 | ngOnInit() { 18 | 19 | } 20 | 21 | } -------------------------------------------------------------------------------- /gym-project/src/app/app-routing.module.ts: -------------------------------------------------------------------------------- 1 | import { NgModule } from '@angular/core'; 2 | import { Routes, RouterModule } from '@angular/router'; 3 | 4 | const routes: Routes = []; 5 | 6 | @NgModule({ 7 | imports: [RouterModule.forRoot(routes)], 8 | exports: [RouterModule] 9 | }) 10 | export class AppRoutingModule { } 11 | -------------------------------------------------------------------------------- /gym-project/src/app/app.component.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/app/app.component.css -------------------------------------------------------------------------------- /gym-project/src/app/app.component.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /gym-project/src/app/app.component.spec.ts: -------------------------------------------------------------------------------- 1 | import { TestBed, async } from '@angular/core/testing'; 2 | import { RouterTestingModule } from '@angular/router/testing'; 3 | import { AppComponent } from './app.component'; 4 | 5 | describe('AppComponent', () => { 6 | beforeEach(async(() => { 7 | TestBed.configureTestingModule({ 8 | imports: [ 9 | RouterTestingModule 10 | ], 11 | declarations: [ 12 | AppComponent 13 | ], 14 | }).compileComponents(); 15 | })); 16 | 17 | it('should create the app', () => { 18 | const fixture = TestBed.createComponent(AppComponent); 19 | const app = fixture.debugElement.componentInstance; 20 | expect(app).toBeTruthy(); 21 | }); 22 | 23 | it(`should have as title 'gym-project'`, () => { 24 | const fixture = TestBed.createComponent(AppComponent); 25 | const app = fixture.debugElement.componentInstance; 26 | expect(app.title).toEqual('gym-project'); 27 | }); 28 | 29 | it('should render title in a h1 tag', () => { 30 | const fixture = TestBed.createComponent(AppComponent); 31 | fixture.detectChanges(); 32 | const compiled = fixture.debugElement.nativeElement; 33 | expect(compiled.querySelector('h1').textContent).toContain('Welcome to gym-project!'); 34 | }); 35 | }); 36 | -------------------------------------------------------------------------------- /gym-project/src/app/app.component.ts: -------------------------------------------------------------------------------- 1 | import { Component } from '@angular/core'; 2 | 3 | @Component({ 4 | selector: 'app-root', 5 | templateUrl: './app.component.html', 6 | styleUrls: ['./Content/vendor/bootstrap/css/bootstrap.min.css', 7 | './Content/vendor/metisMenu/metisMenu.min.css', 8 | './Content/dist/css/sb-admin-2.css', 9 | './Content/vendor/font-awesome/css/font-awesome.min.css' 10 | ] 11 | }) 12 | export class AppComponent { 13 | title = 'gym-project'; 14 | } 15 | -------------------------------------------------------------------------------- /gym-project/src/assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/assets/.gitkeep -------------------------------------------------------------------------------- /gym-project/src/browserslist: -------------------------------------------------------------------------------- 1 | # This file is currently used by autoprefixer to adjust CSS to support the below specified browsers 2 | # For additional information regarding the format and rule options, please see: 3 | # https://github.com/browserslist/browserslist#queries 4 | # 5 | # For IE 9-11 support, please remove 'not' from the last line of the file and adjust as needed 6 | 7 | > 0.5% 8 | last 2 versions 9 | Firefox ESR 10 | not dead 11 | not IE 9-11 -------------------------------------------------------------------------------- /gym-project/src/environments/environment.prod.ts: -------------------------------------------------------------------------------- 1 | export const environment = { 2 | production: true 3 | }; 4 | -------------------------------------------------------------------------------- /gym-project/src/environments/environment.ts: -------------------------------------------------------------------------------- 1 | // This file can be replaced during build by using the `fileReplacements` array. 2 | // `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. 3 | // The list of file replacements can be found in `angular.json`. 4 | 5 | export const environment = { 6 | production: false, 7 | apiEndpoint: 'http://localhost:49749' 8 | }; 9 | 10 | /* 11 | * For easier debugging in development mode, you can import the following file 12 | * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. 13 | * 14 | * This import should be commented out in production mode because it will have a negative impact 15 | * on performance if an error is thrown. 16 | */ 17 | // import 'zone.js/dist/zone-error'; // Included with Angular CLI. 18 | -------------------------------------------------------------------------------- /gym-project/src/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nirzaf/Angular-7-Project-with-ASP.NET-CORE-APIS/3e4bbd68a92299727330e779206423ac4b9a8501/gym-project/src/favicon.ico -------------------------------------------------------------------------------- /gym-project/src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | GymProject 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /gym-project/src/karma.conf.js: -------------------------------------------------------------------------------- 1 | // Karma configuration file, see link for more information 2 | // https://karma-runner.github.io/1.0/config/configuration-file.html 3 | 4 | module.exports = function (config) { 5 | config.set({ 6 | basePath: '', 7 | frameworks: ['jasmine', '@angular-devkit/build-angular'], 8 | plugins: [ 9 | require('karma-jasmine'), 10 | require('karma-chrome-launcher'), 11 | require('karma-jasmine-html-reporter'), 12 | require('karma-coverage-istanbul-reporter'), 13 | require('@angular-devkit/build-angular/plugins/karma') 14 | ], 15 | client: { 16 | clearContext: false // leave Jasmine Spec Runner output visible in browser 17 | }, 18 | coverageIstanbulReporter: { 19 | dir: require('path').join(__dirname, '../coverage'), 20 | reports: ['html', 'lcovonly'], 21 | fixWebpackSourcePaths: true 22 | }, 23 | reporters: ['progress', 'kjhtml'], 24 | port: 9876, 25 | colors: true, 26 | logLevel: config.LOG_INFO, 27 | autoWatch: true, 28 | browsers: ['Chrome'], 29 | singleRun: false 30 | }); 31 | }; -------------------------------------------------------------------------------- /gym-project/src/main.ts: -------------------------------------------------------------------------------- 1 | import { enableProdMode } from '@angular/core'; 2 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 3 | import 'hammerjs'; 4 | import { AppModule } from './app/app.module'; 5 | import { environment } from './environments/environment'; 6 | 7 | if (environment.production) { 8 | enableProdMode(); 9 | } 10 | 11 | platformBrowserDynamic().bootstrapModule(AppModule) 12 | .catch(err => console.error(err)); 13 | -------------------------------------------------------------------------------- /gym-project/src/styles.css: -------------------------------------------------------------------------------- 1 | /* You can add global styles to this file, and also import other style files */ 2 | @import "~@angular/material/prebuilt-themes/indigo-pink.css"; 3 | 4 | table { 5 | width: 100%; 6 | } -------------------------------------------------------------------------------- /gym-project/src/test.ts: -------------------------------------------------------------------------------- 1 | // This file is required by karma.conf.js and loads recursively all the .spec and framework files 2 | 3 | import 'zone.js/dist/zone-testing'; 4 | import { getTestBed } from '@angular/core/testing'; 5 | import { 6 | BrowserDynamicTestingModule, 7 | platformBrowserDynamicTesting 8 | } from '@angular/platform-browser-dynamic/testing'; 9 | 10 | declare const require: any; 11 | 12 | // First, initialize the Angular testing environment. 13 | getTestBed().initTestEnvironment( 14 | BrowserDynamicTestingModule, 15 | platformBrowserDynamicTesting() 16 | ); 17 | // Then we find all the tests. 18 | const context = require.context('./', true, /\.spec\.ts$/); 19 | // And load the modules. 20 | context.keys().map(context); 21 | -------------------------------------------------------------------------------- /gym-project/src/tsconfig.app.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "../out-tsc/app", 5 | "types": [] 6 | }, 7 | "exclude": [ 8 | "test.ts", 9 | "**/*.spec.ts" 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /gym-project/src/tsconfig.spec.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "../out-tsc/spec", 5 | "types": [ 6 | "jasmine", 7 | "node" 8 | ] 9 | }, 10 | "files": [ 11 | "test.ts", 12 | "polyfills.ts" 13 | ], 14 | "include": [ 15 | "**/*.spec.ts", 16 | "**/*.d.ts" 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /gym-project/src/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../tslint.json", 3 | "rules": { 4 | "directive-selector": [ 5 | true, 6 | "attribute", 7 | "app", 8 | "camelCase" 9 | ], 10 | "component-selector": [ 11 | true, 12 | "element", 13 | "app", 14 | "kebab-case" 15 | ] 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /gym-project/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compileOnSave": false, 3 | "compilerOptions": { 4 | "baseUrl": "./", 5 | "outDir": "./dist/out-tsc", 6 | "sourceMap": true, 7 | "declaration": false, 8 | "module": "es2015", 9 | "moduleResolution": "node", 10 | "emitDecoratorMetadata": true, 11 | "experimentalDecorators": true, 12 | "target": "es5", 13 | "typeRoots": [ 14 | "node_modules/@types" 15 | ], 16 | "lib": [ 17 | "es2018", 18 | "dom" 19 | ] 20 | } 21 | } 22 | --------------------------------------------------------------------------------