Пример #1
0
        public Owner CreateOwner(OwnerRequest Owner)
        {
            var entityToInsert = new Owner()
            {
                User = this.UserRepository.GetById(Owner.UserId)
            };

            if (Owner.FunctionalUnitId != 0)
            {
                entityToInsert.FunctionalUnitId = Owner.FunctionalUnitId;
            }

            OwnerRepository.Insert(entityToInsert);
            return(entityToInsert);
        }
Пример #2
0
        internal bool assignOwnerResult(int reqId, bool result)
        {
            if (!system.SystemRequests.ContainsKey(reqId))
            {
                return(false);
            }
            OwnerRequest r = system.SystemRequests[reqId];

            r.responsesCounter++;
            r.result &= result;
            if (r.result && r.responsesCounter == r.storeOwnersCount - 1)
            {
                return(assignOwner(r.owner, r.user, r.store));
            }
            return(true);
        }
Пример #3
0
        public override async Task <OwnerResponse> GetOwnerById(OwnerRequest request, ServerCallContext context)
        {
            _logger.LogInformation($"Begin grpc call Owners.GetOwnerById({request.Id})");
            if (request.Id <= 0)
            {
                context.Status = new Status(StatusCode.FailedPrecondition, $"Id must be > 0 (received {request.Id})");
                return(null);
            }
            var owner = await _dbContext.Owners.SingleOrDefaultAsync(o => o.Id == request.Id);

            if (owner != null)
            {
                return(owner.MapToGrpcOwner());
            }
            context.Status = new Status(StatusCode.NotFound, $"Owner with id {request.Id} do not exist");
            return(null);
        }
Пример #4
0
        public async Task <ActionResult <RSV <Owner> > > InsertOwner([FromForm] OwnerRequest ownerRequest)
        {
            RSV <Owner> infoResultado = new();

            try
            {
                infoResultado.Datos = await this.Domain.InsertOwner(ownerRequest);

                infoResultado.Exitoso    = true;
                infoResultado.StatusCode = 201;
            }
            catch (Exception ex)
            {
                infoResultado.Exitoso    = false;
                infoResultado.Error      = new Error(ex);
                infoResultado.StatusCode = 500;
            }

            return(infoResultado);
        }
Пример #5
0
        public Owner CreateOwner(OwnerRequest Owner)
        {
            var entityToInsert = new Owner()
            {
                User            = this.UserRepository.GetById(Owner.UserId),
                PaymentTypeId   = Owner.PaymentTypeId,
                FunctionalUnits = new List <FunctionalUnit>()
            };

            if (Owner.FunctionalUnitIds.Count > 0)
            {
                foreach (var uid in Owner.FunctionalUnitIds)
                {
                    entityToInsert.FunctionalUnits.Add(this.FunctionalUnitRepository.GetById(uid));
                }
            }

            OwnerRepository.Insert(entityToInsert);
            return(entityToInsert);
        }
Пример #6
0
 public CustomUser OwnerRequestToCarOwner(OwnerRequest OwnerRequest)
 {
     return(new CustomUser
     {
         Id = OwnerRequest.Id,
         Email = OwnerRequest.Email,
         FirstName = OwnerRequest.Name,
         UserName = OwnerRequest.UserName,
         LastName = OwnerRequest.SurName,
         PhoneNumber = OwnerRequest.CarOwnerPhone,
         Address = OwnerRequest.Location,
         BirthDate = OwnerRequest.BirthDate,
         ManyToManyCustomUserToVehicle = OwnerRequest.CarRequests?.Select(car =>
                                                                          new ManyToManyCustomUserToVehicle()
         {
             CarId = car.Id,
             CarOwnerId = OwnerRequest.Id
         }).ToList()
     });
 }
Пример #7
0
        public ActionResult CreateUpdateFunctionalUnit(FunctionalUnitViewModel unit)
        {
            var consortium = this.ConsortiumService.GetConsortium(unit.ConsortiumId);
            var nunit      = Mapper.Map <FunctionalUnit>(unit);

            nunit.Ownership = consortium.Ownership;
            Renter Renter = null;

            if (unit.RenterId != 0)
            {
                Renter = this.RenterService.GetRenter(unit.RenterId);
            }

            Owner Owner = null;

            if (unit.OwnerId != 0)
            {
                Owner = this.OwnersService.GetOwner(unit.OwnerId);
            }


            try
            {
                var result = false;
                var entity = Mapper.Map <FunctionalUnitRequest>(nunit);
                if (nunit.Id == 0)
                {
                    var entidad = this.FunctionalUnitService.CreateFunctionalUnit(entity);
                    if (entidad.Id > 0)
                    {
                        if (Renter != null)
                        {
                            var renterRequest = new RenterRequest()
                            {
                                Id = Renter.Id,
                                FunctionalUnitId = entidad.Id,
                                UserId           = Renter.User.Id,
                                PaymentTypeId    = 1
                            };

                            this.RenterService.UpdateRenter(renterRequest);
                        }

                        if (Owner != null)
                        {
                            var ownerRequest = new OwnerRequest()
                            {
                                Id = Owner.Id,
                                FunctionalUnitId = entidad.Id,
                                UserId           = Owner.User.Id
                            };
                            this.OwnersService.UpdateOwner(ownerRequest);
                        }

                        result = true;
                    }
                }
                else
                {
                    result = this.FunctionalUnitService.UpdateFunctionalUnit(entity);
                    if (Renter != null)
                    {
                        var renterRequest = new RenterRequest()
                        {
                            Id = Renter.Id,
                            FunctionalUnitId = nunit.Id,
                            UserId           = Renter.User.Id,
                            PaymentTypeId    = Renter.PaymentTypeId
                        };

                        this.RenterService.UpdateRenter(renterRequest);
                    }

                    if (Owner != null)
                    {
                        var ownerRequest = new OwnerRequest()
                        {
                            Id = Owner.Id,
                            FunctionalUnitId = nunit.Id,
                            UserId           = Owner.User.Id
                        };
                        this.OwnersService.UpdateOwner(ownerRequest);
                    }

                    result = true;
                }
                if (result)
                {
                    return(Redirect(string.Format("/Consortium/Details/{0}", consortium.Id)));
                }
                else
                {
                    return(View("../Shared/Error"));
                }
            }
            catch (Exception ex)
            {
                return(View("../Shared/Error"));
            }
        }
Пример #8
0
 private void MergeOwner(Owner originalOwner, OwnerRequest Owner)
 {
     originalOwner.User             = this.UserRepository.GetById(Owner.UserId);
     originalOwner.FunctionalUnitId = Owner.FunctionalUnitId;// this.FunctionalUnitRepository.GetById(Owner.FunctionalUnitId);
 }
Пример #9
0
 public Owner UpdateOwner(Owner originalOwner, OwnerRequest Owner)
 {
     this.MergeOwner(originalOwner, Owner);
     OwnerRepository.Update(originalOwner);
     return(originalOwner);
 }
Пример #10
0
 public bool UpdateOwner(OwnerRequest Owner)
 {
     return(IntegrationService.RestCallNoReturn(ConfigurationManager.AppSettings["ApiCoreUrl"], string.Format(ApiCore.UpdateOwner, Owner.Id), RestMethod.Put, null, Owner));
 }
Пример #11
0
 public bool CreateOwner(OwnerRequest Owner)
 {
     return(IntegrationService.RestCallNoReturn(ConfigurationManager.AppSettings["ApiCoreUrl"], ApiCore.CreateOwner, RestMethod.Post, null, Owner));
 }
Пример #12
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,
                            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"));
            }
        }
Пример #13
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"));
            }
        }
        public async Task <IActionResult> AddOwner([FromRoute] int unitId, [FromBody] OwnerRequest owner)
        {
            var id = await _baseInfoApplicationService.CreateOwnershipAsync(unitId, owner.PersonName, owner.From, owner.To);

            return(Ok(id));
        }