Exemplo n.º 1
0
        public async Task <ActionResult> EditClient(ClientModel client)
        {
            await _clientRepository.Save(_mapper.Map <ClientDTO>(client));

            NotificationsController.AddNotification(this.User.SafeUserName(), $"{client.ClientName} was updated");
            return(RedirectToAction(nameof(ListClients)));
        }
 public ActionResult Create(Clients clients)
 {
     if (ModelState.IsValid)
     {
         clientsRepository.InsertOrUpdate(clients);
         clientsRepository.Save();
         return(RedirectToAction("Index"));
     }
     else
     {
         return(View());
     }
 }
Exemplo n.º 3
0
        private async Task <Dictionary <string, int> > BulkSaveClients(IEnumerable <ClientDTO> allClients, IEnumerable <JobUploadModel> recs, Action <ClientDTO> onNewClientCreated)
        {
            var comparer            = StringComparer.InvariantCultureIgnoreCase;
            var clientsByClientName = new Dictionary <string, int>(comparer);

            foreach (var rec in recs.Select(z => z.ClientName.Trim()).Distinct())
            {
                var matchedClient = await SaveForMatchingField(allClients,
                                                               matchCriteria : (client, field) => client.ClientName.Trim().Equals(field, StringComparison.InvariantCultureIgnoreCase),
                                                               factory : async(field) =>
                {
                    var client = await _clientsRepository.Save(new ClientDTO()
                    {
                        ClientName = field
                    });
                    onNewClientCreated(client);
                    return(client);
                },
                                                               field : rec);

                clientsByClientName.TryAdd(matchedClient.ClientName.Trim(), matchedClient.ClientId);
            }
            return(clientsByClientName);
        }