public async Task <IActionResult> Edit(int id, SolduriCasa solduriCasa) { if (id != solduriCasa.SolduriCasaId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.SolduriCasa.Update(solduriCasa); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!SolduriCasaExists(solduriCasa.SolduriCasaId)) { return(NotFound()); } else { throw; } } TempData["Message"] = "Solduri casa actualizate cu succes!"; TempData["Success"] = "true"; return(RedirectToAction(nameof(Index))); } ViewData["ClientId"] = new SelectList(_context.Client.OrderBy(x => x.Denumire), "ClientId", "Denumire", solduriCasa.ClientId); return(View(solduriCasa)); }
public async Task <IActionResult> Create(SolduriCasa solduriCasa) { if (ModelState.IsValid) { _context.SolduriCasa.Add(solduriCasa); await _context.SaveChangesAsync(); TempData["Message"] = "Solduri casa adaugate cu succes!"; TempData["Success"] = "true"; return(RedirectToAction(nameof(Index))); } ViewData["ClientId"] = new SelectList(_context.Client.OrderBy(x => x.Denumire), "ClientId", "Denumire", solduriCasa.ClientId); return(View(solduriCasa)); }
private static SolduriCasa CreateSold(XElement sold, int clientId) { SolduriCasa soldNou = new SolduriCasa { data = DateTime.Parse(sold.Element("data").Value), sold_prec = float.Parse(sold.Element("sold_prec").Value), incasari = float.Parse(sold.Element("incasari").Value.ToString()), plati = float.Parse(sold.Element("plati").Value.ToString()), sold_zi = float.Parse(sold.Element("sold_zi").Value), ClientId = clientId }; return(soldNou); }
public async Task <IActionResult> ImportSolduri(int?id) { DocumentVM documentVM = new DocumentVM() { }; documentVM.ApplicationUserId = _context.ApplicationUsers.FirstOrDefault(u => u.UserName == User.Identity.Name).Id; var documentTip = await _context.TipDocument.FirstOrDefaultAsync(u => u.Denumire == "XML"); if (id != 0) { documentVM.ClientId = id.Value; } // preluam documentele primite prin ajax var files = Request.Form.Files; // parcurgem fiecare document si il adaugam foreach (var file in files) { Document document = new Document() { ApplicationUserId = documentVM.ApplicationUserId, ClientId = documentVM.ClientId, TipDocumentId = documentTip.TipDocumentId, DocumentPath = await _fileManager.SaveDocument(file, documentTip.Denumire, documentVM.ClientId, documentVM.ApplicationUserId), Data = DateTime.Now }; if (ModelState.IsValid) { _context.Document.Add(document); // procesam XML-ul // adaugam salariatii preluati din acesta clientului ales de utilizator var fullPath = $"C:/Users/user/source/repos/Licenta/wwwroot/xml/{document.DocumentPath}"; XDocument doc = XDocument.Load(fullPath); var solduri = from sold in doc.Root.Elements() where DateTime.Parse(sold.Element("data").Value).Day > 25 select sold; IList <SolduriCasa> solduriCasa = new List <SolduriCasa>(); // Adaugam doar soldurile care sunt dupa data de 25 a lunii foreach (XElement sold in solduri) { SolduriCasa soldNou = CreateSold(sold, document.ClientId); solduriCasa.Add(soldNou); } // pastram soldurile din ultima data cu activitate a lunii for (var i = 0; i < solduriCasa.Count - 1; i++) { if (solduriCasa[i].data.Month.ToString() == solduriCasa[i + 1].data.Month.ToString() && solduriCasa[i].data.Day < solduriCasa[i + 1].data.Day) { solduriCasa.Remove(solduriCasa[i]); i--; } } // adaugam cate un sold pentru fiecare luna foreach (SolduriCasa sold in solduriCasa) { _context.SolduriCasa.Add(sold); } // stergem din memorie: bd si server XML-ul _fileManager.DeleteDocumentXML(document.DocumentPath); _context.Document.Remove(document); _context.SaveChanges(); } } return(PartialView("_AddSolduriImport", documentVM)); }