public static bool DeleteInvoice(int id) { motskin_invoices element = _invoices.FirstOrDefault(p => p.id == id); if (element != null) { element.isDeleted = true; return(true); } return(false); }
public static int SaveInvoice(motskin_invoices element, bool withSave = true) { element.motskin_invoiceStatuses = GetInvoiceStatuses().FirstOrDefault(p => p.id == element.invoiceStatusID); element.motskin_contractors = GetContractors().FirstOrDefault(p => p.id == element.contractorID); if (element.id == 0) { element.id = _invoices.Count + 1; _invoices.Add(element); } else { int pos = _invoices.IndexOf(_invoices.FirstOrDefault(p => p.id == element.id)); if (pos >= 0) { _invoices[pos] = element; } } return(_invoices.Count); }
private void _fillInvoice(motskin_invoices item, Dictionary <string, string> parameters) { foreach (var key in parameters.Keys) { switch (key) { case "number": item.number = parameters[key]; break; case "contractorName": item.contractorID = RDL.Convert.StrToInt(parameters[key], 0); break; case "comment": item.comment = parameters[key]; break; } } }
private bool _logChangeStatus(motskin_invoices item, string note = "") { var res = false; try { _db.SaveInvoiceStatusLog(new motskin_invoiceStatusLog { created = DateTime.Now, invoiceStatusID = item.invoiceStatusID, invoiceID = item.id, note = note }); res = true; } catch (Exception ex) { _debug(ex, new { invoiceID = item.id, statusID = item.invoiceStatusID, note }); } return(res); }
public motskin_invoices Create(Dictionary <string, string> parameters, aspnet_Users user, out string msg) { motskin_invoices res = null; msg = ""; try { if (!_IsCanUserChange(user)) { msg = "Нет прав для данной операции"; return(null); } var statusID = GetStatuses().FirstOrDefault(x => x.code == "created").id; Guid guid = Guid.NewGuid(); res = new motskin_invoices { date = DateTime.Now, // дата неизменна invoiceStatusID = statusID, createdUnique = guid }; _fillInvoice(res, parameters); _db.SaveInvoice(res); // сохраняем в бд // и сразу же получаем из базы этот объект, чтобы узнать его id. motskin_invoices item = _db.GetInvoices().FirstOrDefault(x => x.createdUnique == guid); _logChangeStatus(item, "Статус изменен " + user.UserName); } catch (Exception ex) { _debug(ex, new { userName = user.UserName }); msg = "Сбой при выполнении операции"; } return(res); }
public int SaveInvoice(motskin_invoices element, bool withSave = true) { #if !PSEUDO if (element.id == 0) { db.motskin_invoices.Add(element); if (withSave) { Save(); } } else { db.Entry(element).State = EntityState.Modified; if (withSave) { Save(); } } return(element.id); #else return(PseudoData.SaveInvoice(element)); #endif }