private void _fillDocument(motskin_documents item, Dictionary <string, string> parameters) { foreach (var key in parameters.Keys) { string value = parameters[key].ToString(); switch (key) { case "number": item.number = value; break; case "sum": item.sum = RDL.Convert.StrToDecimal(value, 0); break; case "contractorID": item.contractorID = RDL.Convert.StrToInt(value, 0); break; case "documentTypeID": item.documentTypeID = RDL.Convert.StrToInt(value, 0); break; case "comment": item.comment = value; break; case "reference": item.reference = value; break; } } }
public static bool DeleteDocument(int id) { motskin_documents element = _documents.FirstOrDefault(p => p.id == id); if (element != null) { element.isDeleted = true; return(true); } return(false); }
public static int SaveDocument(motskin_documents element, bool withSave = true) { element.motskin_documentStatuses = GetDocumentStatuses().FirstOrDefault(p => p.id == element.documentStatusID); element.motskin_documentTypes = GetDocumentTypes().FirstOrDefault(p => p.id == element.documentTypeID); element.motskin_contractors = GetContractors().FirstOrDefault(p => p.id == element.contractorID); if (element.id == 0) { element.id = _documents.Count + 1; _documents.Add(element); } else { int pos = _documents.IndexOf(_documents.FirstOrDefault(p => p.id == element.id)); if (pos >= 0) { _documents[pos] = element; } } return(_documents.Count); }
private bool _logChangeStatus(motskin_documents item, string note = "") { var res = false; try { _db.SaveDocumentStatusLog(new motskin_documentStatusLog { created = DateTime.Now, documentStatusID = item.documentStatusID, documentID = item.id, note = note }); res = true; } catch (Exception ex) { _debug(ex, new { documentID = item.id, statusID = item.documentStatusID, note }); } return(res); }
public motskin_documents Create(Dictionary <string, string> parameters, aspnet_Users user, out string msg) { motskin_documents 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_documents { date = DateTime.Now, // дата неизменна documentStatusID = statusID, createdUnique = guid, //reference = "" // пока адрес не сформирован }; _fillDocument(res, parameters); _db.SaveDocument(res); // сохраняем в бд // и сразу же получаем из базы этот объект, чтобы узнать его id. res = _db.GetDocuments().FirstOrDefault(x => x.createdUnique == guid); _logChangeStatus(res, "Статус изменен " + user.UserName); } catch (Exception ex) { _debug(ex, new { userName = user.UserName }); msg = "Сбой при выполнении операции"; } return(res); }
public int SaveDocument(motskin_documents element, bool withSave = true) { #if !PSEUDO if (element.id == 0) { db.motskin_documents.Add(element); if (withSave) { Save(); } } else { db.Entry(element).State = EntityState.Modified; if (withSave) { Save(); } } return(element.id); #else return(PseudoData.SaveDocument(element)); #endif }