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()); } }
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); }