Esempio n. 1
0
        public IHttpActionResult GetClientRequests(int id)
        {
            var clientRequestViewModel = new ClientRequestViewModel();

            if (id != 0)
            {
                var clientRequest = UnitOfWork.Repository <ClientRequest>()
                                    .Get(x => x.ClientRequestId == id, includeProperties: "Person, ClientSource, ProductType, ClientRequestStatus")
                                    .SingleOrDefault();
                if (clientRequest == null)
                {
                    return(NotFound());
                }

                clientRequestViewModel = Mapper.Map <ClientRequest, ClientRequestViewModel>(clientRequest);
            }

            //var clientSources = UnitOfWork.Repository<ClientSource>().Get().ToList();
            //clientRequestViewModel.ClientSources = Mapper.Map<List<ClientSource>, List<ClientSourceViewModel>>(clientSources);

            //var productTypes = UnitOfWork.Repository<ProductType>().Get().ToList();
            //clientViewModel.ProductTypes = Mapper.Map<List<ProductType>, List<ProductTypeViewModel>>(productTypes);

            //var clientStatuses = UnitOfWork.Repository<ClientStatus>().Get().ToList();
            //clientViewModel.ClientStatuses = Mapper.Map<List<ClientStatus>, List<ClientStatusViewModel>>(clientStatuses);

            //var employees = UnitOfWork.Repository<Employee>().Get(includeProperties: "Person").ToList();
            //clientViewModel.Employees = Mapper.Map<List<Employee>, List<EmployeeViewModel>>(employees);

            return(Ok(clientRequestViewModel));
        }
Esempio n. 2
0
        // GET: ActivityDetails/Create
        public IActionResult Create()
        {
            ClientRequestViewModel vm;

            vm = new ClientRequestViewModel(_context);
            return(View(vm));
        }
Esempio n. 3
0
        public async Task <IActionResult> Edit(int id, ClientRequestViewModel activityDetails)
        {
            if (id != activityDetails.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(activityDetails.GetModel());
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ActivityDetailsExists(activityDetails.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            activityDetails.loadLists(_context);
            return(View(activityDetails));
        }
Esempio n. 4
0
        public ClientResponseViewModel Add(ClientRequestViewModel client)
        {
            var clientModel = _mapper.Map <Client>(client);
            var result      = _clientBusiness.Add(clientModel);

            return(_mapper.Map <ClientResponseViewModel>(result));
        }
Esempio n. 5
0
        public IActionResult Index(ClientRequestViewModel vm)
        {
            if (ModelState.IsValid)
            {
                Client client = new Client()
                {
                    Name = vm.Name, Email = vm.Email, Phone = vm.Phone
                };
                ClientRequest clientRequest = new ClientRequest()
                {
                    Question             = vm.Question,
                    OfferId              = vm.OfferId,
                    ClientRequestStateId = _context.ClientRequestStates.First(r => r.IsNewRequest == true).Id
                };

                client.ClientRequests = new List <ClientRequest>()
                {
                    clientRequest
                };

                _context.Clients.Add(client);
                _context.SaveChanges();

                return(RedirectToAction("Response"));
            }
            else
            {
                ViewBag.Offers = _context.Offers.ToList();
                return(View(vm));
            }
        }
Esempio n. 6
0
        public ClientResponseViewModel Update(Guid key, ClientRequestViewModel client)
        {
            var clientConsult = _clientBusiness.GetByKey(key);

            var clientEntity = _mapper.Map <Client>(client);

            clientEntity.UniqueKey = key;
            clientEntity.Id        = clientConsult.Id;

            var result = _clientBusiness.Update(clientEntity);

            return(_mapper.Map <ClientResponseViewModel>(result));
        }
Esempio n. 7
0
        public IHttpActionResult PostClientRequest(ClientRequestViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var clientRequest = Mapper.Map <ClientRequestViewModel, ClientRequest>(viewModel);

            clientRequest.Person.CreatedAt = DateTime.Now;
            clientRequest.Person.Employees = null;
            clientRequest.CreatedAt        = DateTime.Now;

            UnitOfWork.Repository <ClientRequest>().Insert(clientRequest);
            UnitOfWork.Save();

            return(Ok());
        }
Esempio n. 8
0
        public ActionResult <string> Post([FromBody] ClientRequestViewModel client)
        {
            try
            {
                _logger.LogInformation("Add a new client");
                var result = _clientServices.Add(client);
                if (result.ValidationResult.Errors.Any())
                {
                    return(AddValidationErrors(result.ValidationResult.Errors));
                }

                return(Ok(result));
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, ex.Message);
                return(new StatusCodeResult(500));
            }
        }
Esempio n. 9
0
        // GET: ActivityDetails/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            ClientRequestViewModel vm;

            if (id == 0)
            {
                vm = new ClientRequestViewModel(_context);
            }
            else
            {
                var activityDetails = await _context.ClientRequest.FindAsync(id);

                if (activityDetails == null)
                {
                    return(NotFound());
                }
                vm = new ClientRequestViewModel(_context, activityDetails);
            }

            return(View(vm));
        }
Esempio n. 10
0
        public IHttpActionResult PutClientRequest(ClientRequestViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var clientRequest = UnitOfWork.Repository <ClientRequest>()
                                .Get(x => x.ClientRequestId == viewModel.ClientRequestId)
                                .SingleOrDefault();

            if (clientRequest == null)
            {
                return(BadRequest());
            }

            Mapper.Map <ClientRequestViewModel, ClientRequest>(viewModel, clientRequest);
            clientRequest.Person.UpdatedAt = DateTime.Now;
            clientRequest.UpdatedAt        = DateTime.Now;

            UnitOfWork.Repository <ClientRequest>().Update(clientRequest);

            try
            {
                UnitOfWork.Save();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ClientRequestExists(viewModel.ClientRequestId))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Esempio n. 11
0
        public async Task <IActionResult> Create(ClientRequestViewModel activityDetails)
        {
            var clientId = repository.GetCurrentAgentId(User.Identity.Name);

            //Generate number
            Random rd        = new Random();
            Int32  batchCode = rd.Next(9999);

            activityDetails.BatchNo = "B-" + batchCode.ToString();
            if (ModelState.IsValid)
            {
                ClientRequest request = new ClientRequest();
                {
                    request.Id            = activityDetails.Id;
                    request.BatchNo       = activityDetails.BatchNo;
                    request.ClientId      = clientId;
                    request.OutletId      = activityDetails.OutletId;
                    request.StartDate     = activityDetails.StartDate;
                    request.EndDate       = activityDetails.EndDate;
                    request.Days          = activityDetails.Days;
                    request.Age           = activityDetails.Age;
                    request.NbAgentShift1 = activityDetails.NbAgentShift1;
                    request.NbAgentShift2 = activityDetails.NbAgentShift2;
                    request.NbAgentShift3 = activityDetails.NbAgentShift3;
                    request.NbAgentShift4 = activityDetails.NbAgentShift4;
                    request.MechanismId   = activityDetails.MechanismId;
                    request.GenderId      = activityDetails.GenderId;
                    request.LanguageId    = activityDetails.LanguageId;
                    request.GradeId       = activityDetails.GradeId;
                    request.SkillId       = activityDetails.SkillId;
                }

                if (request.GenderId == 0)
                {
                    request.GenderId = null;
                }

                if (request.LanguageId == 0)
                {
                    request.LanguageId = null;
                }

                if (request.GradeId == 0)
                {
                    request.GradeId = null;
                }

                if (request.SkillId == 0)
                {
                    request.SkillId = null;
                }

                _context.Add(request);
                await _context.SaveChangesAsync();

                ClientRequestDetailsViewModel details = new ClientRequestDetailsViewModel();

                int id = request.Id;

                details.ClientRequestId = request.Id;

                Util util = new Util();
                foreach (DateTime day in util.EachDay(activityDetails.StartDate, activityDetails.EndDate))
                {
                    var a = (int)day.DayOfWeek;
                    foreach (char d in activityDetails.Days)
                    {
                        var val = (int)Char.GetNumericValue(d);
                        if (a == val)
                        {
                            details.Date = day;
                            _context.Add(details.GetModel());
                            await _context.SaveChangesAsync();
                        }
                    }
                }

                return(RedirectToAction(nameof(ClientRequest)));
            }
            activityDetails.loadLists(_context);
            return(View(activityDetails));
        }