public IActionResult Edit(ProviderRequest model)
        {
            Response res = new Response();

            try
            {
                using (JobsPhonesCTX db = new JobsPhonesCTX())
                {
                    Proveedor proveedor = db.Proveedor.Find(model.Id);
                    proveedor.NombreProveedor    = model.NombreProveedor;
                    proveedor.NitProveedor       = model.NitProveedor;
                    proveedor.DireccionProveedor = model.DireccionProveedor;
                    proveedor.TelefonoProveedor  = model.TelefonoProveedor;
                    proveedor.UrlProveedor       = model.UrlProveedor;
                    db.Entry(proveedor).State    = Microsoft.EntityFrameworkCore.EntityState.Modified;
                    db.SaveChanges();

                    res.Exito = 1;
                }
            }
            catch (Exception e)
            {
                res.Message = e.Message;
            }
            return(Ok(res));
        }
Exemple #2
0
        public ActionResult ObtenerProveedores()
        {
            var datos = new List <ProviderRequest>();

            bool resultado = true;

            try

            {
                using (db)
                {
                    foreach (var item in db.SP_LISTAR_PROVEEDORES())
                    {
                        ProviderRequest proveedorItem = new ProviderRequest();

                        proveedorItem.NombreCompleto = item.NombreCompleto;
                        proveedorItem.Cod_Pers       = item.Cod_Pers;

                        datos.Add(proveedorItem);
                    }
                }
            }

            catch (Exception)

            {
                resultado = false;
            }



            return(Json(new { success = resultado, dato = datos },

                        JsonRequestBehavior.AllowGet));
        }
Exemple #3
0
        public IHttpActionResult Post(ProviderRequest Provider)
        {
            var result = ProviderService.CreateProvider(Provider);

            return(Created <Entidad>("", new Entidad {
                Id = result.Id
            }));
        }
Exemple #4
0
        public IHttpActionResult Put(int id, ProviderRequest Provider)
        {
            var originalProvider = ProviderService.GetById(id);

            var ret = ProviderService.UpdateProvider(originalProvider, Provider);

            return(Ok());
        }
Exemple #5
0
        public Provider CreateProvider(ProviderRequest Provider)
        {
            var entityToInsert = new Provider()
            {
                User    = this.UserRepository.GetById(Provider.UserId),
                Item    = Provider.Item,
                Address = Provider.Address
            };

            ProviderRepository.Insert(entityToInsert);
            return(entityToInsert);
        }
        public ActionResult Edit(int cod_prove)
        {
            ProviderRequest model = new ProviderRequest();

            using (db)
            {
                var prove = db.proveedor.Find(cod_prove);
                model.Cod_Pers = prove.Cod_Pers_Fk;
                model.Locacion = prove.Locacion;
                model.Enlace   = prove.Enlace;
            }
            return(View(model));
        }
        public IActionResult UpdateProvider([FromRoute] int id, [FromBody] ProviderRequest request)
        {
            var provider = _providerManager.FindProvider(id);

            if (provider == null)
            {
                return(NotFound("There is no object with such ID in a DataBase. Try another one."));
            }
            var response = _mapper.Map(request, provider);

            _providerManager.SaveChanges();
            return(Created("", response));
        }
 public ActionResult Edit(ProviderRequest model)
 {
     if (ModelState.IsValid)
     {
         using (db)
         {
             db.SP_Prove_Editar(model.Cod_Pers, model.Locacion, model.Enlace, model.Activo, model.Cod_Prove);
             db.SaveChanges();
             return(RedirectToAction("Index"));
         }
     }
     return(View(model));
 }
        public IActionResult Add(ProviderRequest model)
        {
            Response res = new Response();

            try
            {
                using (JobsPhonesCTX db = new JobsPhonesCTX())
                {
                    var valNombre = db.Proveedor.Where(p => p.NombreProveedor == model.NombreProveedor.Trim()).FirstOrDefault();
                    if (valNombre == null)
                    {
                        Proveedor proveedor = new Proveedor();
                        proveedor.NombreProveedor    = model.NombreProveedor;
                        proveedor.NitProveedor       = model.NitProveedor;
                        proveedor.DireccionProveedor = model.DireccionProveedor;
                        proveedor.TelefonoProveedor  = model.TelefonoProveedor;
                        proveedor.UrlProveedor       = model.UrlProveedor;
                        proveedor.IdEstadoProveedor  = 1;
                        db.Proveedor.Add(proveedor);
                        db.SaveChanges();

                        res.Exito = 1;
                    }
                    else if (valNombre.IdEstadoProveedor == 3)
                    {
                        Proveedor proveedor = db.Proveedor.Find(valNombre.Id);
                        proveedor.NitProveedor       = model.NitProveedor;
                        proveedor.DireccionProveedor = model.DireccionProveedor;
                        proveedor.TelefonoProveedor  = model.TelefonoProveedor;
                        proveedor.UrlProveedor       = model.UrlProveedor;
                        proveedor.IdEstadoProveedor  = 1;
                        db.Entry(proveedor).State    = Microsoft.EntityFrameworkCore.EntityState.Modified;
                        db.SaveChanges();

                        res.Exito = 1;
                    }
                    else
                    {
                        res.Message = "Proveedor existente";
                    }
                }
            }
            catch (Exception e)
            {
                res.Message = e.Message;
            }
            return(Ok(res));
        }
        public IActionResult CreateProvider([FromBody] ProviderRequest request)
        {
            if (!_providerManager.DoesCountryIdExist(request.OriginCountryId))
            {
                return(BadRequest("There is no such country ID in a Database!"));
            }

            var provider = _mapper.Map <ProviderRequest, Provider>(request);

            _providerManager.Add(provider);
            _providerManager.SaveChanges();

            var response = _mapper.Map <ProviderResponse>(provider);

            return(CreatedAtAction(nameof(GetProviderById), new { id = provider.Id }, response));
        }
        public async Task <ProviderResult> CreateIntegrationAsync(ProviderRequest request)
        {
            var           requestData   = (CreateStravaIntegrationRequest)request.Data;
            TokenResponse tokenResponse = await _stravaClient.AuthenticateAsync(requestData.Code);

            return(new ProviderResult
            {
                Provider = Provider,
                ProviderUserId = tokenResponse.Athlete.Id.ToString(),
                Data = new StravaIntegrationData
                {
                    AccessToken = tokenResponse.AccessToken,
                    AccessTokenExpiresUtc = DateTimeOffset.FromUnixTimeSeconds(tokenResponse.ExpiresAt).UtcDateTime,
                    RefreshToken = tokenResponse.RefreshToken
                }
            });
        }
Exemple #12
0
        public ActionResult CreateUpdateProvider(ProviderViewModel provider)
        {
            var nuser = new User();

            try
            {
                nuser         = Mapper.Map <User>(provider.User);
                nuser.Surname = provider.User.Name;


                if (provider.Id == 0)
                {
                    nuser = this.UserService.CreateUser(nuser);

                    var nprovider = new ProviderRequest()
                    {
                        UserId  = nuser.Id,
                        Item    = provider.Item,
                        Address = Mapper.Map <Address>(provider.Address)
                    };

                    this.ProviderService.CreateProvider(nprovider);
                }
                else
                {
                    this.UserService.UpdateUser(nuser);
                    var nprovider = Mapper.Map <Provider>(provider);

                    this.ProviderService.UpdateProvider(
                        new ProviderRequest()
                    {
                        Address = nprovider.Address,
                        Id      = nprovider.Id,
                        Item    = nprovider.Item,
                        UserId  = nprovider.User.Id
                    });
                }

                return(Redirect("/Providers/Index"));
            }
            catch (Exception ex)
            {
                return(View("../Shared/Error"));
            }
        }
Exemple #13
0
        public async Task <ProviderResult> CreateIntegrationAsync(ProviderRequest request)
        {
            var           authCode      = (CreateFitbitIntegrationRequest)request.Data;
            TokenResponse tokenResponse = await _fitbitAuthClient.AuthenticateAsync(authCode.Code, authCode.RedirectUri);

            if (tokenResponse.IsError)
            {
                throw new Exception(tokenResponse.Error); // TODO: if invalid code - return 4XX else throw exception
            }
            await _fitbitClient.AddSubscriptionAsync(subscriptionId : request.UserId, accessToken : tokenResponse.AccessToken);

            return(new ProviderResult
            {
                Provider = Provider,
                ProviderUserId = request.UserId,
                Data = new FitbitIntegrationData
                {
                    AccessToken = tokenResponse.AccessToken,
                    AccessTokenExpiresUtc = _dateTimeProvider.UtcNow.AddSeconds(tokenResponse.ExpiresIn),
                    RefreshToken = tokenResponse.RefreshToken
                }
            });
        }
Exemple #14
0
 public bool CreateProvider(ProviderRequest Provider)
 {
     return(IntegrationService.RestCallNoReturn(ConfigurationManager.AppSettings["ApiCoreUrl"], ApiCore.CreateProvider, RestMethod.Post, null, Provider));
 }
Exemple #15
0
        public ActionResult CreateUpdateUser(UserViewModel user)
        {
            var nuser = new User();

            try
            {
                nuser = Mapper.Map <User>(user);

                if (user.Id == 0)
                {
                    nuser = this.UserService.CreateUser(nuser);

                    if (user.IsOwner)
                    {
                        var owner = new OwnerRequest()
                        {
                            UserId            = nuser.Id,
                            FunctionalUnitIds = user.Units != null ? user.Units : new List <int>(),
                            PaymentTypeId     = user.PaymentTypeId
                        };
                        this.OwnerService.CreateOwner(owner);
                    }

                    if (user.IsProvider)
                    {
                        var provider = new ProviderRequest()
                        {
                            UserId = nuser.Id
                        };
                        this.ProviderService.CreateProvider(provider);
                    }

                    if (user.IsRenter)
                    {
                        var renter = new RenterRequest()
                        {
                            UserId           = nuser.Id,
                            PaymentTypeId    = user.PaymentTypeId,
                            FunctionalUnitId = user.FunctionalUnitId
                        };
                        this.RenterService.CreateRenter(renter);
                    }

                    if (user.IsWorker)
                    {
                        var worker = new WorkerRequest()
                        {
                            UserId           = nuser.Id,
                            AdministrationId = user.AdministrationId
                        };
                        this.WorkerService.CreateWorker(worker);
                    }
                }
                else
                {
                    this.UserService.UpdateUser(nuser);
                    var owners         = this.OwnerService.GetAll();
                    var ownersUsersIds = owners.Select(x => x.User.Id).ToList();

                    var renters         = this.RenterService.GetAll();
                    var rentersUsersIds = renters.Select(x => x.User.Id).ToList();

                    var workers         = this.WorkerService.GetAll();
                    var workersUsersIds = workers.Select(x => x.User.Id).ToList();

                    if (user.IsOwner)
                    {
                        var owner = new OwnerRequest()
                        {
                            UserId            = nuser.Id,
                            PaymentTypeId     = user.PaymentTypeId,
                            FunctionalUnitIds = user.Units
                        };

                        if (ownersUsersIds.Contains(user.Id))
                        {
                            var oldOwner = owners.Where(x => x.User.Id.Equals(user.Id)).FirstOrDefault();
                            owner.Id = oldOwner.Id;
                            this.OwnerService.UpdateOwner(owner);
                        }
                        else
                        {
                            this.OwnerService.CreateOwner(owner);
                        }
                    }
                    else
                    {
                        if (ownersUsersIds.Contains(user.Id))
                        {
                            var owner = owners.Where(x => x.User.Id.Equals(user.Id)).FirstOrDefault();
                            this.OwnerService.DeleteOwner(owner.Id);
                        }
                    }

                    if (user.IsRenter)
                    {
                        var renter = new RenterRequest()
                        {
                            UserId           = nuser.Id,
                            PaymentTypeId    = user.PaymentTypeId,
                            FunctionalUnitId = user.FunctionalUnitId
                        };

                        if (rentersUsersIds.Contains(user.Id))
                        {
                            var oldRenter = renters.Where(x => x.User.Id.Equals(user.Id)).FirstOrDefault();
                            renter.Id = oldRenter.Id;
                            this.RenterService.UpdateRenter(renter);
                        }
                        else
                        {
                            this.RenterService.CreateRenter(renter);
                        }
                    }
                    else
                    {
                        if (rentersUsersIds.Contains(user.Id))
                        {
                            var renter = renters.Where(x => x.User.Id.Equals(user.Id)).FirstOrDefault();
                            this.RenterService.DeleteRenter(renter.Id);
                        }
                    }

                    if (user.IsWorker)
                    {
                        var worker = new WorkerRequest()
                        {
                            UserId = nuser.Id
                        };

                        if (workersUsersIds.Contains(user.Id))
                        {
                            var oldWorker = workers.Where(x => x.User.Id.Equals(user.Id)).FirstOrDefault();
                            worker.Id = oldWorker.Id;
                            this.WorkerService.UpdateWorker(worker);
                        }
                        else
                        {
                            this.WorkerService.CreateWorker(worker);
                        }
                    }
                    else
                    {
                        if (rentersUsersIds.Contains(user.Id))
                        {
                            var renter = renters.Where(x => x.User.Id.Equals(user.Id)).FirstOrDefault();
                            this.RenterService.DeleteRenter(renter.Id);
                        }
                    }
                }

                if (!string.IsNullOrEmpty(user.CallbackUrl))
                {
                    return(Redirect(user.CallbackUrl));
                }
                else
                {
                    return(Redirect("/Users/Index"));
                }
            }
            catch (Exception ex)
            {
                return(View("../Shared/Error"));
            }
        }
Exemple #16
0
        // For more information on configuring authentication, please visit http://go.microsoft.com/fwlink/?LinkId=301864
        public void ConfigureAuth(IAppBuilder app)
        {
            // Configure the db context, user manager and signin manager to use a single instance per request
            app.CreatePerOwinContext(ProviderContext.Create);
            app.CreatePerOwinContext <ApplicationUserManager>(ApplicationUserManager.Create);
            app.CreatePerOwinContext <ApplicationSignInManager>(ApplicationSignInManager.Create);
            // The app also uses a RoleManager
            app.CreatePerOwinContext <ApplicationRoleManager>(ApplicationRoleManager.Create);

            // Enable the application to use a cookie to store information for the signed in user
            // and to use a cookie to temporarily store information about a user logging in with a third party login provider
            // Configure the sign in cookie
            app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
                CookieName         = ".Provider.AspNet.Cookies",
                LoginPath          = new PathString("/Account/Login"),
                Provider           = new CookieAuthenticationProvider
                {
                    // Enables the application to validate the security stamp when the user logs in.
                    // This is a security feature which is used when you change a password or add an external login to your account.
                    OnValidateIdentity = SecurityStampValidator.OnValidateIdentity <ApplicationUserManager, ApplicationUser>(
                        validateInterval: TimeSpan.FromMinutes(30),
                        regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
                }
            });
            app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);

            // Enables the application to temporarily store user information when they are verifying the second factor in the two-factor authentication process.
            app.UseTwoFactorSignInCookie(DefaultAuthenticationTypes.TwoFactorCookie, TimeSpan.FromMinutes(5));

            // Enables the application to remember the second login verification factor such as phone or email.
            // Once you check this option, your second step of verification during the login process will be remembered on the device where you logged in from.
            // This is similar to the RememberMe option when you log in.
            app.UseTwoFactorRememberBrowserCookie(DefaultAuthenticationTypes.TwoFactorRememberBrowserCookie);

            // Uncomment the following lines to enable logging in with third party login providers
            //app.UseMicrosoftAccountAuthentication(
            //    clientId: "",
            //    clientSecret: "");

            //app.UseTwitterAuthentication(
            //   consumerKey: "",
            //   consumerSecret: "");

            //app.UseFacebookAuthentication(
            //   appId: "",
            //   appSecret: "");

            //app.UseGoogleAuthentication(new GoogleOAuth2AuthenticationOptions()
            //{
            //    ClientId = "",
            //    ClientSecret = ""
            //});


            app.UseLtiAuthentication(new LtiAuthenticationOptions
            {
                Provider = new LtiAuthenticationProvider
                {
                    // Look up the secret for the consumer
                    OnAuthenticate = async context =>
                    {
                        // Make sure the request is not being replayed
                        var timeout = TimeSpan.FromMinutes(5);
                        var oauthTimestampAbsolute = OAuthConstants.Epoch.AddSeconds(context.LtiRequest.Timestamp);
                        if (DateTime.UtcNow - oauthTimestampAbsolute > timeout)
                        {
                            throw new LtiException("Expired " + OAuthConstants.TimestampParameter);
                        }

                        var db       = context.OwinContext.Get <ProviderContext>();
                        var consumer = await db.Consumers.SingleOrDefaultAsync(c => c.Key == context.LtiRequest.ConsumerKey);
                        if (consumer == null)
                        {
                            throw new LtiException("Invalid " + OAuthConstants.ConsumerKeyParameter);
                        }

                        var signature = context.LtiRequest.GenerateSignature(consumer.Secret);
                        if (!signature.Equals(context.LtiRequest.Signature))
                        {
                            throw new LtiException("Invalid " + OAuthConstants.SignatureParameter);
                        }

                        // If we made it this far the request is valid
                    },

                    // Sign in using application authentication. This handler will create a new application
                    // user if no matching application user is found.
                    OnAuthenticated = async context =>
                    {
                        var db       = context.OwinContext.Get <ProviderContext>();
                        var consumer = await db.Consumers.SingleOrDefaultAsync(c => c.Key.Equals(context.LtiRequest.ConsumerKey));
                        if (consumer == null)
                        {
                            return;
                        }

                        // Record the request for logging purposes and as reference for outcomes
                        var providerRequest = new ProviderRequest
                        {
                            Received   = DateTime.UtcNow,
                            LtiRequest = JsonConvert.SerializeObject(context.LtiRequest, Formatting.None,
                                                                     new JsonSerializerSettings {
                                NullValueHandling = NullValueHandling.Ignore
                            })
                        };
                        db.ProviderRequests.Add(providerRequest);
                        db.SaveChanges();

                        // Add the requst ID as a claim
                        var claims = new List <Claim>
                        {
                            new Claim("ProviderRequestId",
                                      providerRequest.ProviderRequestId.ToString(CultureInfo.InvariantCulture))
                        };

                        // Outcomes can live a long time to give the teacher enough
                        // time to grade the assignment. So they are stored in a separate table.
                        var lisOutcomeServiceUrl = ((IOutcomesManagementRequest)context.LtiRequest).LisOutcomeServiceUrl;
                        var lisResultSourcedid   = ((IOutcomesManagementRequest)context.LtiRequest).LisResultSourcedId;
                        if (!string.IsNullOrWhiteSpace(lisOutcomeServiceUrl) &&
                            !string.IsNullOrWhiteSpace(lisResultSourcedid))
                        {
                            var outcome = await db.Outcomes.SingleOrDefaultAsync(o =>
                                                                                 o.ConsumerId == consumer.ConsumerId &&
                                                                                 o.LisResultSourcedId == lisResultSourcedid);

                            if (outcome == null)
                            {
                                outcome = new Outcome
                                {
                                    ConsumerId         = consumer.ConsumerId,
                                    LisResultSourcedId = lisResultSourcedid
                                };
                                db.Outcomes.Add(outcome);
                                await db.SaveChangesAsync(); // Assign OutcomeId;
                            }
                            outcome.ContextTitle = context.LtiRequest.ContextTitle;
                            outcome.ServiceUrl   = lisOutcomeServiceUrl;
                            await db.SaveChangesAsync();

                            // Add the outcome ID as a claim
                            claims.Add(new Claim("OutcomeId",
                                                 outcome.OutcomeId.ToString(CultureInfo.InvariantCulture)));
                        }

                        // Sign in
                        await SecurityHandler.OnAuthenticated <ApplicationUserManager, ApplicationUser>(
                            context, claims);
                    },

                    // Generate a username using the LisPersonEmailPrimary from the LTI request
                    OnGenerateUserName = async context =>
                                         await SecurityHandler.OnGenerateUserName(context)
                },
                ChallengeResultUrl         = new PathString("/Manage/ToolConsumerLogins"),
                SignInAsAuthenticationType = DefaultAuthenticationTypes.ApplicationCookie
            });
        }
        public void ConfigureAuth(IAppBuilder app)
        {
            // Configure the db context, user manager and signin manager to use a single instance per request
            app.CreatePerOwinContext(ProviderContext.Create);
            app.CreatePerOwinContext <LtiUserManager>(LtiUserManager.Create);
            app.CreatePerOwinContext <ApplicationSignInManager>(ApplicationSignInManager.Create);
            // The app also uses a RoleManager
            app.CreatePerOwinContext <ApplicationRoleManager>(ApplicationRoleManager.Create);

            app.UseLtiAuthentication(new LtiAuthenticationOptions
            {
                Provider = new LtiAuthenticationProvider
                {
                    // Look up the secret for the consumer
                    OnAuthenticate = async context =>
                    {
                        // Make sure the request is not being replayed
                        var timeout = TimeSpan.FromMinutes(5);
                        var oauthTimestampAbsolute = OAuthConstants.Epoch.AddSeconds(context.LtiRequest.Timestamp);
                        if (DateTime.UtcNow - oauthTimestampAbsolute > timeout)
                        {
                            throw new LtiException("Expired " + OAuthConstants.TimestampParameter);
                        }

                        var db       = context.OwinContext.Get <ProviderContext>();
                        var consumer = await db.Consumers.SingleOrDefaultAsync(c => c.Key == context.LtiRequest.ConsumerKey);
                        if (consumer == null)
                        {
                            throw new LtiException("Invalid " + OAuthConstants.ConsumerKeyParameter);
                        }

                        var signature = context.LtiRequest.GenerateSignature(consumer.Secret);
                        if (!signature.Equals(context.LtiRequest.Signature))
                        {
                            throw new LtiException("Invalid " + OAuthConstants.SignatureParameter);
                        }

                        // If we made it this far the request is valid
                    },

                    // Sign in using application authentication. This handler will create a new application
                    // user if no matching application user is found.
                    OnAuthenticated = async context =>
                    {
                        var db       = context.OwinContext.Get <ProviderContext>();
                        var consumer = await db.Consumers.SingleOrDefaultAsync(c => c.Key.Equals(context.LtiRequest.ConsumerKey));
                        if (consumer == null)
                        {
                            return;
                        }

                        // Record the request for logging purposes and as reference for outcomes
                        var providerRequest = new ProviderRequest
                        {
                            Received   = DateTime.UtcNow,
                            LtiRequest = JsonConvert.SerializeObject(context.LtiRequest, Formatting.None,
                                                                     new JsonSerializerSettings {
                                NullValueHandling = NullValueHandling.Ignore
                            })
                        };
                        db.ProviderRequests.Add(providerRequest);
                        db.SaveChanges();

                        // Add the requst ID as a claim
                        var claims = new List <Claim>
                        {
                            new Claim("ProviderRequestId",
                                      providerRequest.ProviderRequestId.ToString(CultureInfo.InvariantCulture))
                        };

                        // Outcomes can live a long time to give the teacher enough
                        // time to grade the assignment. So they are stored in a separate table.
                        var lisOutcomeServiceUrl = ((IOutcomesManagementRequest)context.LtiRequest).LisOutcomeServiceUrl;
                        var lisResultSourcedid   = ((IOutcomesManagementRequest)context.LtiRequest).LisResultSourcedId;
                        if (!string.IsNullOrWhiteSpace(lisOutcomeServiceUrl) &&
                            !string.IsNullOrWhiteSpace(lisResultSourcedid))
                        {
                            var outcome = await db.Outcomes.SingleOrDefaultAsync(o =>
                                                                                 o.ConsumerId == consumer.ConsumerId &&
                                                                                 o.LisResultSourcedId == lisResultSourcedid);

                            if (outcome == null)
                            {
                                outcome = new Outcome
                                {
                                    ConsumerId         = consumer.ConsumerId,
                                    LisResultSourcedId = lisResultSourcedid
                                };
                                db.Outcomes.Add(outcome);
                                await db.SaveChangesAsync(); // Assign OutcomeId;
                            }
                            outcome.ContextTitle = context.LtiRequest.ContextTitle;
                            outcome.ServiceUrl   = lisOutcomeServiceUrl;
                            await db.SaveChangesAsync();

                            // Add the outcome ID as a claim
                            claims.Add(new Claim("OutcomeId",
                                                 outcome.OutcomeId.ToString(CultureInfo.InvariantCulture)));
                        }

                        // Sign in
                        await SecurityHandler.OnAuthenticated <LtiUserManager, LtiUser>(
                            context, claims);
                    },

                    // Generate a username using the LisPersonEmailPrimary from the LTI request
                    OnGenerateUserName = async context =>
                                         await SecurityHandler.OnGenerateUserName(context)
                },
                //ChallengeResultUrl = new PathString("/Manage/ToolConsumerLogins"),
                SignInAsAuthenticationType = DefaultAuthenticationTypes.ApplicationCookie
            });
        }
        public ActionResult CreateUpdateUser(UserViewModel user)
        {
            var nuser = new User();

            try
            {
                nuser = Mapper.Map <User>(user);

                if (user.Id == 0)
                {
                    nuser = this.UserService.CreateUser(nuser);

                    if (user.IsOwner)
                    {
                        var owner = new OwnerRequest()
                        {
                            UserId           = nuser.Id,
                            FunctionalUnitId = user.FunctionalUnitId
                        };
                        this.OwnerService.CreateOwner(owner);
                    }

                    if (user.IsProvider)
                    {
                        var provider = new ProviderRequest()
                        {
                            UserId = nuser.Id
                        };
                        this.ProviderService.CreateProvider(provider);
                    }

                    if (user.IsRenter)
                    {
                        var renter = new RenterRequest()
                        {
                            UserId           = nuser.Id,
                            PaymentTypeId    = user.PaymentTypeId,
                            FunctionalUnitId = user.FunctionalUnitId
                        };
                        this.RenterService.CreateRenter(renter);
                    }

                    if (user.IsWorker)
                    {
                        var worker = new WorkerRequest()
                        {
                            UserId           = nuser.Id,
                            AdministrationId = user.AdministrationId
                        };
                        this.WorkerService.CreateWorker(worker);
                    }
                }
                else
                {
                    this.UserService.UpdateUser(nuser);
                }
                return(Redirect("/Users/Index"));
            }
            catch (Exception ex)
            {
                return(View("../Shared/Error"));
            }
        }
Exemple #19
0
 public bool UpdateProvider(ProviderRequest Provider)
 {
     return(IntegrationService.RestCallNoReturn(ConfigurationManager.AppSettings["ApiCoreUrl"], string.Format(ApiCore.UpdateProvider, Provider.Id), RestMethod.Put, null, Provider));
 }
Exemple #20
0
 private void MergeProvider(Provider originalProvider, ProviderRequest Provider)
 {
     originalProvider.User = this.UserRepository.GetById(Provider.UserId);
     originalProvider.Item = Provider.Item;
 }
Exemple #21
0
 public Provider UpdateProvider(Provider originalProvider, ProviderRequest Provider)
 {
     this.MergeProvider(originalProvider, Provider);
     ProviderRepository.Update(originalProvider);
     return(originalProvider);
 }