public JsonResult CompanySearch(string company) { List <DocumentMovement> CList = db.DocumentMovements.Where(v => v.Description == company && v.Type == Movement.Incoming).OrderBy(c => c.DateCreated).ToList(); string us = MiscClass.getUserUnit().ToString(); List <DocumentMovement> CLists = new List <DocumentMovement>(); int f = 0; foreach (var item in CList) { List <DocumentMovement> c = db.DocumentMovements.Where(v => v.PrefID == item.PrefID).ToList(); DocumentMovement df = c.Where(x => x.PrefID == item.PrefID).LastOrDefault(); if (df.Status == Status.Confirmed && df.Destination == us && df.Type == Movement.Incoming) { CLists.Add(item); } //if (c != null) //{ // if (c.Destination == us) // { // CLists.Add(item); // //CList.RemoveAt(f); // } //} f = f + 1; } return(Json(CLists, JsonRequestBehavior.AllowGet)); }
public ActionResult Confirm(int id) { DocumentMovement documentMovement = db.DocumentMovements.Find(id); if (documentMovement == null) { return(HttpNotFound()); } var Incoming = documentMovement; documentMovement.DateStatus = DateTime.Now; documentMovement.Status = Status.Confirmed; db.Entry(documentMovement).State = EntityState.Modified; db.SaveChanges(); Audit.Trail(documentMovement.PrefID, eAction.Confirmed, documentMovement.Id.ToString()); Incoming.Type = Movement.Incoming; Incoming.Status = Status.Confirmed; Incoming.Source = documentMovement.Destination; Incoming.Destination = MiscClass.getUserUnit().ToString(); db.DocumentMovements.Add(Incoming); db.SaveChanges(); Audit.Trail(Incoming.PrefID, eAction.Create, Incoming.Id.ToString()); return(RedirectToAction("Notifications")); }
// GET: Documents/Create public ActionResult CreateBackLog() { ViewBag.FileTypeId = new SelectList(db.FileTypes, "FileTypeId", "Description"); int s = MiscClass.getUserUnit(); ViewBag.UnitId = new SelectList(db.Units.Where(x => x.UnitId == s).ToList(), "UnitId", "Description"); ViewBag.DeptId = new SelectList(db.Departments.OrderBy(x => x.Description).ToList(), "DeptID", "Description"); return(View()); }
public JsonResult NotificationCount() { int count = 0; var d = MiscClass.getUserUnit().ToString(); var t = db.DocumentMovements.Where(k => k.Destination == d && k.Status == Status.Pending).OrderBy(x => x.DateCreated).ToList(); count = t.Count; return(Json(count, JsonRequestBehavior.AllowGet)); }
public JsonResult getData(string FileID) { var cd = db.DocumentMovements.Where(x => x.PrefID == FileID && x.Type == Movement.Incoming).FirstOrDefault(); DisplayData ds = new DisplayData(); ds.PrefID = cd.PrefID; ds.Destination = MiscClass.getUnit(Convert.ToInt32(cd.Destination)); ds.FileType = MiscClass.getFileType(cd.FileType); ds.Description = cd.Description; ds.DateCreated = Convert.ToDateTime(cd.DateCreated).ToShortDateString(); return(Json(ds, JsonRequestBehavior.AllowGet)); }
// GET: Documents public ActionResult Index() { var unit = MiscClass.getUserUnit(); List <Document> documents = new List <Document>(); if (User.IsInRole("Super Admin")) { documents = db.Documents.Include(d => d.FileType).Include(d => d.Unit).ToList(); } else { documents = db.Documents.Where(x => x.UnitId == unit).Include(d => d.FileType).Include(d => d.Unit).ToList(); } return(View(documents)); }
void Awake() { ///////////////////////////////////////////LOAD miscClass = XmlLoad <MiscClass>(file); Debug.Log("xml cargado: " + file.name); ///////////////////////////////////////////SAVE //MiscClass miscClass = new MiscClass(); //miscClass.gold = "gold"; //miscClass.placeYourbet = "Place your bet"; //miscClass.bet = "Bet"; //miscClass.exit = "Exit"; //miscClass.rolltheDice = "Rol the dice"; //miscClass.roll = "Roll"; //miscClass.pressAnykey = "Press Any Key"; //miscClass.player = "Player"; //miscClass.opponent = "Opponent"; //miscClass.score = "Score"; //miscClass.roundScore = "Round Score"; //miscClass.pass = "******"; //miscClass.youWin = "You Win!"; //miscClass.youLose = "You Lose"; //miscClass.warningBet = "You must bet some gold"; //miscClass.playerStarts = "Player Starts"; //miscClass.opponentStarts = "Opponent Starts"; //miscClass.draw = "Draw"; //miscClass.rollAgain = "Roll Again"; //miscClass.badLuck = "Bad luck"; //miscClass.opponentFail = "Opponent fails"; //miscClass.yourTurn = "Your turn"; //miscClass.luckyOne = "Lucky One!!"; //miscClass.opponenPasses = "Opponent Passes"; //miscClass.yourEarn = "You earn "; //miscClass.bottle = "Alcohol bottle"; //miscClass.shopSentence = "What do you have for sale?"; //SaveXML<MiscClass>(Application.dataPath + "/Dialogue/", "MiscText_Eng.xml", miscClass); //print("xml salvado, ruta: " + Application.dataPath); //////////////////////////////////////////// }
public JsonResult getCompanyFiles(int ID) { var company = db.Companys.Where(c => c.Id == ID).FirstOrDefault(); List <Document> ds = db.Documents.Where(x => x.Description == company.Description).ToList(); List <DisplayData> dt = new List <DisplayData>(); foreach (var item in ds) { DisplayData ns = new DisplayData(); ns.PrefID = item.FileId; ns.Description = item.Subject; ns.FileType = MiscClass.getFileType(item.FileTypeId); ns.DateCreated = item.DateCreated.Value.ToShortDateString(); dt.Add(ns); } return(Json(dt, JsonRequestBehavior.AllowGet)); }
public JsonResult GetDocumentDetails(string FileID) { DocDetails detail = new DocDetails(); Document s = db.Documents.Where(n => n.FileId == FileID).FirstOrDefault(); if (s != null) { detail.FileId = s.FileId; detail.Subject = s.Subject; detail.Description = s.Description; detail.FileType = db.FileTypes.Where(n => n.FileTypeId == s.FileTypeId).FirstOrDefault().Description; detail.DateCreated = s.DateCreated.Value.ToShortDateString(); detail.UserID = MiscClass.GetFullName(s.UserID); return(Json(detail, JsonRequestBehavior.AllowGet)); } else { detail = null; return(Json("Empty", JsonRequestBehavior.AllowGet)); } }
public ActionResult Index(HttpPostedFileBase upload) { if (ModelState.IsValid) { if (upload != null && upload.ContentLength > 0) { // ExcelDataReader works with the binary Excel file, so it needs a FileStream // to get started. This is how we avoid dependencies on ACE or Interop: Stream stream = upload.InputStream; // We return the interface, so that IExcelDataReader reader = null; if (upload.FileName.EndsWith(".xls")) { reader = ExcelReaderFactory.CreateBinaryReader(stream); } else if (upload.FileName.EndsWith(".xlsx")) { reader = ExcelReaderFactory.CreateOpenXmlReader(stream); } else { ModelState.AddModelError("File", "This file format is not supported"); return(View()); } //reader.IsFirstRowAsColumnNames = true; DataSet result = reader.AsDataSet(new ExcelDataSetConfiguration() { ConfigureDataTable = (_) => new ExcelDataTableConfiguration() { UseHeaderRow = true } }); reader.Close(); DataTable tbl = result.Tables[0]; foreach (DataRow item in tbl.Rows) { Document document = new Document(); document.UserID = HttpContext.User.Identity.Name; document.Subject = item[2].ToString(); document.Description = item[1].ToString(); document.DateCreated = Convert.ToDateTime(item[3].ToString()); document.UnitId = Convert.ToInt32(item[4].ToString()); string fd = item[5].ToString(); string prefix = ""; string ts = MiscClass.GenerateNumber(5); switch (fd) { case "LETTERS & CORESPONDENCES": prefix = "LTR"; document.FileId = prefix + "/" + DateTime.Today.Year.ToString() + "/" + ts; document.FileTypeId = 2; break; case "FILE": document.FileId = item[0].ToString(); document.FileTypeId = 1; break; case "PROPOSAL": prefix = "PRP"; document.FileId = prefix + "/" + DateTime.Today.Year.ToString() + "/" + ts; document.FileTypeId = 3; break; case "REQUEST": prefix = "TEMP"; document.FileId = prefix + "/" + DateTime.Today.Year.ToString() + "/" + ts; document.FileTypeId = 5; break; } var isExist = db.Documents.Where(x => x.FileId == document.FileId).FirstOrDefault(); if (isExist == null) { DocumentMovement doc = new DocumentMovement(); doc.DateCreated = document.DateCreated; doc.Type = Movement.Incoming; doc.Source = MiscClass.getUserUnit().ToString(); doc.Destination = document.UnitId.ToString(); doc.PrefID = document.FileId; doc.Subject = document.Subject; doc.Status = Status.Confirmed; doc.DateStatus = document.DateCreated; doc.Description = document.Description; doc.FileType = document.FileTypeId; db.DocumentMovements.Add(doc); db.Documents.Add(document); db.SaveChanges(); Audit.Trail(doc.PrefID, eAction.Create, doc.Id.ToString()); } } ViewBag.recCounts = tbl.Rows.Count; ViewBag.Uploaded = 1; return(View(result.Tables[0])); } else { ModelState.AddModelError("File", "Please Upload Your file"); } } return(View()); }
public ActionResult Index() { int unit = MiscClass.getUserUnit(); HomeAnalytics data = new HomeAnalytics(); //Analytics for Today data._TDC = db.Documents.Where(x => (DbFunctions.TruncateTime(x.DateCreated) == DateTime.Today.Date) && (x.UnitId == unit)).Count(); data._TID = db.DocumentMovements.Where(x => (DbFunctions.TruncateTime(x.DateCreated) == DateTime.Today.Date) && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())).Count(); data._TOD = db.DocumentMovements.Where(x => (DbFunctions.TruncateTime(x.DateCreated) == DateTime.Today.Date) && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())).Count(); //Analytics for 7 Days var currDate = DateTime.Today.Date; var prev7Date = DateTime.Today.AddDays(-7); data._7DC = db.Documents .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= currDate && DbFunctions .TruncateTime(x.DateCreated) >= prev7Date) && (x.UnitId == unit)) .Count(); data._7ID = db.DocumentMovements .Where(x => (DbFunctions .TruncateTime(x.DateCreated) <= currDate && DbFunctions .TruncateTime(x.DateCreated) >= prev7Date) && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Count(); data._7OD = db.DocumentMovements .Where(x => (DbFunctions .TruncateTime(x.DateCreated) <= currDate && DbFunctions .TruncateTime(x.DateCreated) >= prev7Date) && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Count();; //Analytics for 30 days prev7Date = DateTime.Today.AddDays(-30); data._30DC = db.Documents .Where(x => (DbFunctions .TruncateTime(x.DateCreated) <= currDate && DbFunctions .TruncateTime(x.DateCreated) >= prev7Date) && (x.UnitId == unit)) .Count(); data._30ID = db.DocumentMovements .Where(x => (DbFunctions .TruncateTime(x.DateCreated) <= currDate && DbFunctions .TruncateTime(x.DateCreated) >= prev7Date) && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Count(); data._30OD = db.DocumentMovements .Where(x => (DbFunctions .TruncateTime(x.DateCreated) <= currDate && DbFunctions .TruncateTime(x.DateCreated) >= prev7Date) && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Count(); //ViewBag.Analytics = data; return(View(data)); }
//[ValidateAntiForgeryToken] public ActionResult CreateSend([Bind(Include = "Id,FileId,Description,Subject,DateCreated,UnitId,FileTypeId,Destination,DateSend")] CreateSend Cdocument) { try { Document document = new Document(); document.Description = Cdocument.Description; document.FileId = Cdocument.FileId; document.Subject = Cdocument.Subject; document.FileTypeId = Cdocument.FileTypeId; document.UnitId = Cdocument.UnitId; document.UserID = HttpContext.User.Identity.Name; document.DateCreated = DateTime.Now; if (ModelState.IsValid) { if (document.FileId == null) { var td = db.FileTypes.Where(x => x.FileTypeId == document.FileTypeId).FirstOrDefault(); string prefix = ""; switch (td.Description.ToUpper()) { case "PROPOSALS": prefix = "PRP"; break; case "LETTERS": prefix = "LTR"; break; case "MEMO": prefix = "MEM"; break; default: prefix = "TEMP"; break; } string ts = MiscClass.GenerateNumber(5); document.FileId = prefix + "/" + DateTime.Today.Year.ToString() + "/" + ts; } var isExist = db.Documents.Where(x => x.FileId == document.FileId).FirstOrDefault(); if (isExist == null) { DocumentMovement doc = new DocumentMovement(); doc.DateCreated = document.DateCreated; doc.Type = Movement.Incoming; doc.Source = MiscClass.getUserUnit().ToString(); doc.Destination = document.UnitId.ToString(); doc.PrefID = document.FileId; doc.Status = Status.Confirmed; doc.DateStatus = document.DateCreated; doc.Description = document.Description; doc.FileType = document.FileTypeId; doc.Subject = document.Subject; db.DocumentMovements.Add(doc); db.Documents.Add(document); db.SaveChanges(); Audit.Trail(doc.PrefID, eAction.Create, doc.Id.ToString()); var outgoing = db.DocumentMovements.Where(x => x.PrefID == document.FileId).FirstOrDefault(); if (outgoing != null) { var ds = Convert.ToDateTime(Cdocument.DateSend); outgoing.DateCreated = ds; outgoing.Source = outgoing.Destination; outgoing.Destination = Cdocument.Destination; outgoing.Type = Movement.Outgoing; outgoing.Status = Status.Pending; db.DocumentMovements.Add(outgoing); Audit.Trail(outgoing.PrefID, eAction.Create, outgoing.Id.ToString()); db.SaveChanges(); } } else { ModelState.AddModelError(String.Empty, "FileID Already Exists"); ViewBag.FileTypeId = new SelectList(db.FileTypes, "FileTypeId", "Description", document.FileTypeId); ViewBag.UnitId = new SelectList(db.Units, "UnitId", "Description", document.UnitId); return(View(document)); } return(RedirectToAction("Index")); } ViewBag.FileTypeId = new SelectList(db.FileTypes, "FileTypeId", "Description", document.FileTypeId); ViewBag.UnitId = new SelectList(db.Units, "UnitId", "Description", document.UnitId); return(View(document)); } catch (Exception e) { var ed = e; throw; } }
//[ValidateAntiForgeryToken] public ActionResult CreateSendBackLog([Bind(Include = "Id,FileId,Description,Subject,DateCreated,UnitId,FileTypeId,Destination,DateSend")] CreateSend Cdocument) { try { Document document = new Document(); document.Description = Cdocument.Description; document.FileId = Cdocument.FileId; document.Subject = Cdocument.Subject; document.FileTypeId = Cdocument.FileTypeId; document.UnitId = Cdocument.UnitId; document.UserID = HttpContext.User.Identity.Name; //var s = Convert.ToDateTime(Cdocument.DateCreated); document.DateCreated = Cdocument.DateCreated; //if (ModelState.IsValid) if ((document.FileId == null && document.FileTypeId == 1) || document.DateCreated == null) { ModelState.AddModelError("", "Please Complete all Details File ID or Date"); } else { if (document.FileId == null) { var td = db.FileTypes.Where(x => x.FileTypeId == document.FileTypeId).FirstOrDefault(); string prefix = ""; switch (td.Description.ToUpper()) { case "PROPOSALS": prefix = "PRP"; break; case "LETTERS": prefix = "LTR"; break; case "MEMO": prefix = "MEM"; break; default: prefix = "TEMP"; break; } string ts = MiscClass.GenerateNumber(5); document.FileId = prefix + "/" + DateTime.Today.Year.ToString() + "/" + ts; } else { var sp = document.FileId.ToArray(); StringBuilder sd = new StringBuilder(); foreach (var item in sp) { if (item.ToString() == "&") { sd.Append("_"); } else { sd.Append(item.ToString()); } } document.FileId = sd.ToString(); } var isExist = db.Documents.Where(x => x.FileId == document.FileId).FirstOrDefault(); if (isExist == null) { DocumentMovement doc = new DocumentMovement(); doc.DateCreated = document.DateCreated; doc.Type = Movement.Incoming; doc.Source = MiscClass.getUserUnit().ToString(); doc.Destination = document.UnitId.ToString(); doc.PrefID = document.FileId; doc.Status = Status.Confirmed; doc.DateStatus = document.DateCreated; doc.Description = document.Description; doc.FileType = document.FileTypeId; doc.Subject = document.Subject; db.DocumentMovements.Add(doc); db.Documents.Add(document); db.SaveChanges(); Audit.Trail(doc.PrefID, eAction.Create, doc.Id.ToString()); var outgoing = db.DocumentMovements.Where(x => x.PrefID == document.FileId).FirstOrDefault(); if (outgoing != null) { outgoing.DateCreated = Cdocument.DateSend; outgoing.Source = outgoing.Destination; outgoing.Destination = Cdocument.Destination; outgoing.Type = Movement.Outgoing; outgoing.Status = Status.Pending; db.DocumentMovements.Add(outgoing); Audit.Trail(outgoing.PrefID, eAction.Create, outgoing.Id.ToString()); db.SaveChanges(); } } else { ViewBag.FileTypeId = new SelectList(db.FileTypes, "FileTypeId", "Description", document.FileTypeId); ViewBag.UnitId = new SelectList(db.Units, "UnitId", "Description", document.UnitId); return(View(document)); } return(RedirectToAction("Index")); } ViewBag.FileTypeId = new SelectList(db.FileTypes, "FileTypeId", "Description", document.FileTypeId); ViewBag.UnitId = new SelectList(db.Units, "UnitId", "Description", document.UnitId); ViewBag.DeptId = new SelectList(db.Departments.OrderBy(x => x.Description).ToList(), "DeptID", "Description"); return(View(document)); } catch (Exception e) { var ed = e; throw; } }
public User() { About = new AboutClass(); Misc = new MiscClass(); }
public JsonResult getFileID(int unit) { string FileId = MiscClass.GetUniqueKey(unit); return(Json(FileId, JsonRequestBehavior.AllowGet)); }
// GET: Reports public ActionResult Index() { ViewBag.Unit = MiscClass.getUserUnit(); ViewBag.UnitId = new SelectList(db.Units.OrderBy(c => c.Description), "UnitId", "Description"); return(View()); }
public JsonResult Index(Report report) { ReportDisplay rd = new ReportDisplay(); report.Role = HttpContext.User.Identity.GetUserName(); DateTime dateFrom; DateTime dateTo; List <string> dt = new List <string>(); string dFrom = ""; string dTo = ""; dt = report.DateRange.Split('-').ToList(); for (int i = 0; i < dt.Count; i++) { if (i == 0) { dFrom = dt[0].ToString().Trim(); } else { dTo = dt[1].ToString().Trim(); } } dateFrom = DateTime.Parse(dFrom); dateTo = DateTime.Parse(dTo); if (User.IsInRole("Admin") || User.IsInRole("Super Admin")) { if (report.Unit == null) { if (report.Option == ReportOption.Day) { dt.Clear(); dt = report.Day.Split('/').ToList(); string newDate = dt[1].ToString() + "/" + dt[0].ToString() + "/" + dt[2].ToString(); DateTime currDate = DateTime.Parse(report.Day); rd.docCreated = db.Documents.Where(x => x.DateCreated == currDate.Date).Count(); rd.docIncoming = db.DocumentMovements.Where(x => x.DateCreated == currDate.Date && (x.Type == Movement.Incoming)).Count(); rd.docOutgoing = db.DocumentMovements.Where(x => x.DateCreated == currDate.Date && (x.Type == Movement.Outgoing)).Count(); rd.docCreatedList = db.Documents.Where(x => x.DateCreated == currDate.Date) .Select(x => new DocDetails { Description = x.Description, FileId = x.FileId, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileTypeId).FirstOrDefault().Description, UserID = x.UserID }).ToList(); rd.docIncomingList = db.DocumentMovements.Where(x => x.DateCreated == currDate.Date && (x.Type == Movement.Incoming)) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId.ToString() == (x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId.ToString() == (x.Source)).FirstOrDefault().Description }).ToList(); rd.docOutgoingList = db.DocumentMovements.Where(x => x.DateCreated == currDate.Date && (x.Type == Movement.Outgoing)) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId.ToString() == (x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId.ToString() == (x.Source)).FirstOrDefault().Description }).ToList(); } else if (report.Option == ReportOption.DateRange) { rd.docCreated = db.Documents .Where(x => x.DateCreated >= dateFrom.Date && (x.DateCreated <= dateTo.Date)).Count(); rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Incoming && (x.DateCreated >= dateFrom.Date) && (x.DateCreated <= dateTo.Date)).Count(); rd.docOutgoing = db.DocumentMovements .Where(x => x.Type == Movement.Outgoing && (x.DateCreated >= dateFrom.Date) && (x.DateCreated <= dateTo.Date)).Count(); rd.docCreatedList = db.Documents .Where(x => x.DateCreated >= dateFrom.Date && (x.DateCreated <= dateTo.Date)) .Select(x => new DocDetails { Description = x.Description, FileId = x.FileId, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileTypeId).FirstOrDefault().Description, UserID = x.UserID }).ToList(); // FILE rd.docCreated = db.Documents .Where(x => x.DateCreated >= dateFrom.Date && (x.DateCreated <= dateTo.Date) && x.FileTypeId == 1) .Count(); // Letters & Correspondences rd.docCreated = db.Documents .Where(x => x.DateCreated >= dateFrom.Date && (x.DateCreated <= dateTo.Date) && x.FileTypeId == 2) .Count(); // Proposals rd.docCreated = db.Documents .Where(x => x.DateCreated >= dateFrom.Date && (x.DateCreated <= dateTo.Date) && x.FileTypeId == 3) .Count(); // Memo rd.docCreated = db.Documents .Where(x => x.DateCreated >= dateFrom.Date && (x.DateCreated <= dateTo.Date) && x.FileTypeId == 4) .Count(); // Requests rd.docCreated = db.Documents .Where(x => x.DateCreated >= dateFrom.Date && (x.DateCreated <= dateTo.Date) && x.FileTypeId == 5) .Count(); //Incoming // FILE rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Incoming && (x.DateCreated >= dateFrom.Date) && x.FileType == 1 && (x.DateCreated <= dateTo.Date)).Count(); // Letters & Correspondences rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Incoming && (x.DateCreated >= dateFrom.Date) && x.FileType == 2 && (x.DateCreated <= dateTo.Date)).Count(); // Proposals rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Incoming && (x.DateCreated >= dateFrom.Date) && x.FileType == 3 && (x.DateCreated <= dateTo.Date)).Count(); // Memo rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Incoming && (x.DateCreated >= dateFrom.Date) && x.FileType == 4 && (x.DateCreated <= dateTo.Date)).Count(); // Requests rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Incoming && (x.DateCreated >= dateFrom.Date) && x.FileType == 5 && (x.DateCreated <= dateTo.Date)).Count(); //Outgoing // FILE rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Outgoing && (x.DateCreated >= dateFrom.Date) && x.FileType == 1 && (x.DateCreated <= dateTo.Date)).Count(); // Letters & Correspondences rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Outgoing && (x.DateCreated >= dateFrom.Date) && x.FileType == 2 && (x.DateCreated <= dateTo.Date)).Count(); // Proposals rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Outgoing && (x.DateCreated >= dateFrom.Date) && x.FileType == 3 && (x.DateCreated <= dateTo.Date)).Count(); // Memo rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Outgoing && (x.DateCreated >= dateFrom.Date) && x.FileType == 4 && (x.DateCreated <= dateTo.Date)).Count(); // Requests rd.docIncoming = db.DocumentMovements .Where(x => x.Type == Movement.Outgoing && (x.DateCreated >= dateFrom.Date) && x.FileType == 5 && (x.DateCreated <= dateTo.Date)).Count(); try { //rd.docIncomingList = db.DocumentMovements // .Where(c => c.Type == Movement.Incoming && (c.DateCreated >= dateFrom) && (c.).ToList(); //rd.docIncomingList = db.DocumentMovements // .Where(x => x.Type == Movement.Incoming && // (x.DateCreated >= dateFrom.Date) && // (x.DateCreated <= dateTo.Date)) // .Select(x => new RD // { // Description = x.Description, // FileId = x.PrefID, // Subject = x.Subject, // DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), // FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, // Destination = db.Units.Where(g => g.UnitId == Convert.ToInt16(x.Destination)).FirstOrDefault().Description, // Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description // }).ToList(); rd.docOutgoingList = db.DocumentMovements .Where(x => x.Type == Movement.Outgoing && (x.DateCreated >= dateFrom.Date) && (x.DateCreated <= dateTo.Date)) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, }).ToList(); } catch (Exception ex) { throw; } } else if (report.Option == ReportOption.Year) { rd.docCreated = db.Documents.Where(x => x.DateCreated.Value.Year.ToString() == report.Year).Count(); rd.docIncoming = db.DocumentMovements.Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Incoming)).Count(); rd.docOutgoing = db.DocumentMovements.Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Outgoing)).Count(); rd.docCreatedList = db.Documents.Where(x => x.DateCreated.Value.Year.ToString() == report.Year) .Select(x => new DocDetails { Description = x.Description, FileId = x.FileId, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileTypeId).FirstOrDefault().Description, UserID = x.UserID }).ToList(); rd.docIncomingList = db.DocumentMovements .Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Incoming)) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description }).ToList(); rd.docOutgoingList = db.DocumentMovements .Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Outgoing)) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, }).ToList(); } } else { int unit = Convert.ToInt32(report.Unit); if (report.Option == ReportOption.Day) { dt.Clear(); dt = report.Day.Split('/').ToList(); string newDate = dt[1].ToString() + "/" + dt[0].ToString() + "/" + dt[2].ToString(); DateTime currDate = DateTime.Parse(report.Day); rd.docCreated = db.Documents.Where(x => x.DateCreated == currDate && (x.UnitId == unit)).Count(); rd.docIncoming = db.DocumentMovements.Where(x => x.DateCreated == currDate && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())).Count(); rd.docOutgoing = db.DocumentMovements.Where(x => x.DateCreated == currDate && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())).Count(); rd.docCreatedList = db.Documents.Where(x => x.DateCreated == currDate && (x.UnitId == unit)) .Select(x => new DocDetails { Description = x.Description, FileId = x.FileId, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileTypeId).FirstOrDefault().Description, UserID = x.UserID }).ToList(); rd.docIncomingList = db.DocumentMovements .Where(x => x.DateCreated == currDate && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description }).ToList(); rd.docOutgoingList = db.DocumentMovements .Where(x => x.DateCreated == currDate && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, }).ToList(); } else if (report.Option == ReportOption.DateRange) { //rd.docCreated = db.Documents // .Where(x => x.DateCreated >= dateFrom && x.DateCreated <= dateTo).Count(); rd.docCreated = db.Documents .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.UnitId == unit)) .Count(); rd.docIncoming = db.DocumentMovements .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Count(); rd.docOutgoing = db.DocumentMovements .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Count(); rd.docCreatedList = db.Documents .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.UnitId == unit)) .Select(x => new DocDetails { Description = x.Description, FileId = x.FileId, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileTypeId).FirstOrDefault().Description, UserID = x.UserID }).ToList(); rd.docIncomingList = db.DocumentMovements .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description }).ToList(); rd.docOutgoingList = db.DocumentMovements .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, }).ToList(); } else if (report.Option == ReportOption.Year) { rd.docCreated = db.Documents.Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.UnitId == unit)).Count(); rd.docIncoming = db.DocumentMovements.Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())).Count(); rd.docOutgoing = db.DocumentMovements.Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())).Count(); rd.docCreatedList = db.Documents .Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.UnitId == unit)) .Select(x => new DocDetails { Description = x.Description, FileId = x.FileId, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileTypeId).FirstOrDefault().Description, UserID = x.UserID }).ToList(); rd.docIncomingList = db.DocumentMovements .Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description }).ToList(); rd.docOutgoingList = db.DocumentMovements .Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, }).ToList(); } } } else { int unit = Convert.ToInt32(report.Unit); if (report.Option == ReportOption.Day) { dt.Clear(); dt = report.Day.Split('/').ToList(); string newDate = dt[1].ToString() + "/" + dt[0].ToString() + "/" + dt[2].ToString(); DateTime currDate = DateTime.Parse(report.Day); rd.docCreated = db.Documents.Where(x => x.DateCreated == currDate && (x.UnitId == unit)).Count(); rd.docIncoming = db.DocumentMovements.Where(x => x.DateCreated == currDate && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())).Count(); rd.docOutgoing = db.DocumentMovements.Where(x => x.DateCreated == currDate && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())).Count(); rd.docCreatedList = db.Documents.Where(x => x.DateCreated == currDate && (x.UnitId == unit)) .Select(x => new DocDetails { Description = x.Description, FileId = x.FileId, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileTypeId).FirstOrDefault().Description, UserID = x.UserID }).ToList(); rd.docIncomingList = db.DocumentMovements.Where(x => x.DateCreated == currDate && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId.ToString() == (x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId.ToString() == (x.Source)).FirstOrDefault().Description }).ToList(); rd.docOutgoingList = db.DocumentMovements .Where(x => x.DateCreated == currDate && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId.ToString() == (x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId.ToString() == (x.Source)).FirstOrDefault().Description }).ToList(); } else if (report.Option == ReportOption.DateRange) { //rd.docCreated = db.Documents // .Where(x => x.DateCreated >= dateFrom && x.DateCreated <= dateTo).Count(); rd.docCreated = db.Documents .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.UnitId == unit)) .Count(); rd.docIncoming = db.DocumentMovements .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Count(); rd.docOutgoing = db.DocumentMovements .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Count(); rd.docCreatedList = db.Documents .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.UnitId == unit)) .Select(x => new DocDetails { Description = x.Description, FileId = x.FileId, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileTypeId).FirstOrDefault().Description, UserID = x.UserID }).ToList(); rd.docIncomingList = db.DocumentMovements .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description }).ToList(); rd.docOutgoingList = db.DocumentMovements .Where(x => (DbFunctions.TruncateTime(x.DateCreated) <= dateFrom && DbFunctions.TruncateTime(x.DateCreated) >= dateTo) && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, }).ToList(); } else if (report.Option == ReportOption.Year) { rd.docCreated = db.Documents.Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.UnitId == unit)).Count(); rd.docIncoming = db.DocumentMovements.Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())).Count(); rd.docOutgoing = db.DocumentMovements.Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())).Count(); rd.docCreatedList = db.Documents .Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.UnitId == unit)) .Select(x => new DocDetails { Description = x.Description, FileId = x.FileId, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileTypeId).FirstOrDefault().Description, UserID = x.UserID }).ToList(); rd.docIncomingList = db.DocumentMovements .Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Incoming) && (x.Destination == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description }).ToList(); rd.docOutgoingList = db.DocumentMovements .Where(x => x.DateCreated.Value.Year.ToString() == report.Year && (x.Type == Movement.Outgoing) && (x.Source == unit.ToString())) .Select(x => new RD { Description = x.Description, FileId = x.PrefID, Subject = x.Subject, DateCreated = DbFunctions.TruncateTime(x.DateCreated).ToString(), FileType = db.FileTypes.Where(d => d.FileTypeId == x.FileType).FirstOrDefault().Description, Source = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Source)).FirstOrDefault().Description, Destination = db.Units.Where(g => g.UnitId == Convert.ToInt32(x.Destination)).FirstOrDefault().Description, }).ToList(); } } if (report.Unit == null) { rd.Unit = "All"; } else { rd.Unit = MiscClass.getUnitReports(Convert.ToInt32(report.Unit)); } return(Json(rd, JsonRequestBehavior.AllowGet)); }