public ClientsAndTransactionDTO Copy(int id, string userId, int clientToId, int clientFromId) { SysTransaction copyTransaction = Database.TransactionsAC.Get(id); Client clientTo = Database.Clients.Get(clientToId); Client clientFrom = Database.Clients.Get(clientFromId); ClientsAndTransactionDTO copyClientsAndTransactionTransactionDto = new ClientsAndTransactionDTO { SysTransactionDto = new SysTransactionDTO { Sum = copyTransaction.Sum, CurrencyName = copyTransaction.Currency.Name, CountryId = copyTransaction.CountryId, ClientFromId = copyTransaction.ClientFromId, }, ClientDto = new ClientDTO { Name = clientTo.Name, LastName = clientTo.LastName, MobilePhone = clientTo.MobilePhone }, Id = clientFrom.Id, Name = clientFrom.Name, LastName = clientFrom.LastName }; return(copyClientsAndTransactionTransactionDto); }
public IActionResult Create(ClientsAndTransactionDTO model) { if (ModelState.IsValid) { transactionService.Create(model, _userManager.GetUserId(HttpContext.User)); return(RedirectToAction(nameof(AllCreated))); } return(View("ExeptionView")); }
public ClientsAndTransactionDTO GetClientsAndTransactionDTO(int id) { ClientsAndTransactionDTO model = new ClientsAndTransactionDTO(); ClientDTO client = _clientService.Get(id); model.Id = client.Id; model.Name = client.Name; model.LastName = client.LastName; return(model); }
public void Create(ClientsAndTransactionDTO item, string userId) { string tcn = TcnGenerator(); User user = Database.Users.GetByUserId(userId); Agent agentFrom = Database.Agents.Get((user.AgentId)); SysTransactionDTO transaction = item.SysTransactionDto; ClientDTO clientTo = item.ClientDto; var result = _clientService.FirstOrDefault(c => c.Name == clientTo.Name && c.LastName == clientTo.LastName && c.MobilePhone == clientTo.MobilePhone); if (result == null) { _clientService.Create(clientTo); clientTo = _clientService.FirstOrDefault(c => c.MobilePhone == clientTo.MobilePhone); } else { clientTo = result; } Country country = Mapper.Map <Country>(_countryService.Get(agentFrom.CountryId)); Currency currency = Database.Currencies.SingleOrDefault(c => c.Id == Convert.ToInt32(item.SysTransactionDto.CurrencyName)); transaction.AgentFromId = agentFrom.Id; transaction.TransactionStatus = (int)TransactionStatus.Created; transaction.Tcn = tcn; transaction.UserFromId = userId; transaction.CreateDateLocal = DateTime.UtcNow.AddHours(country.Utc); // Дата в часовом поясе агента transaction.ClientToId = clientTo.Id; transaction.CreateDateUtc = DateTime.UtcNow; transaction.CurrencyId = currency.Id; var map = Mapper.Map <SysTransaction>(transaction); Database.TransactionsAC.Create(map); Database.Save(); _countryService.UpdatePopularity(item.SysTransactionDto.CountryId); }