public ActionResult NewCommend(String description, int ticketID, HttpPostedFileBase file) { try { SSMEntities se = new SSMEntities(); if (file != null) { TicketFile ticketFile = new TicketFile(); Storage storeage = new Storage(); ticketFile.Url = storeage.uploadMyfile("ticket" + ticketID, "file" + ticketID, file); ticketFile.FileName = file.FileName; se.TicketFiles.Add(ticketFile); ticketFile.TicketID = ticketID; se.SaveChanges(); } TicketComment commend = new TicketComment(); commend.Creator = User.Identity.GetUserId(); commend.Description = description; commend.createddate = DateTime.Today; commend.point = 1; commend.ticketID = ticketID; commend.Accepted = false; se.TicketComments.Add(commend); se.SaveChanges(); return(RedirectToAction("Detail", new { id = ticketID })); } catch (Exception e) { } return(RedirectToAction("Index")); }
public ActionResult Answer(Response response, byte statusID, long requestID, HttpPostedFileBase[] file) { if (ModelState.IsValid) { var ticket = db.Tickets.Find(response.ticketID); response.answererID = user.userID; ticket.statusID = statusID; response.date = Common.GetDate(); ticket.Responses.Add(response); db.Entry(ticket).State = EntityState.Modified; //ticket.answererID = user.userID; //ticket.answer = ticket.answer; //ticket.Ticket.statusID = statusID; //db.Responses.Add(ticket); db.SaveChanges(); if (file[0] != null) { foreach (var item in file) { var filename = Path.GetExtension(item.FileName); var ticketFile = new TicketFile() { fileName = filename, responseID = response.responseID }; db.TicketFiles.Add(ticketFile); db.SaveChanges(); item.SaveAs(Server.MapPath("~/files/" + ticketFile.ticketFileID + filename)); } } return(RedirectToAction("Index")); } ViewBag.statusID = new SelectList(db.Status, "statusID", "state"); return(View(response)); }
public ActionResult Ask(Ticket ticket, string text, HttpPostedFileBase[] file, int?projectID) { if (ModelState.IsValid) { var mode = ticket.ticketID != 0; if (mode) { ticket = db.Tickets.Find(ticket.ticketID); } int?comanyID = (int?)TempData["CompanyID"] ?? 0; if (comanyID == 0) { return(RedirectToAction("SelectCompany")); } var request = new Request { text = text, askerID = user.userID, date = Common.GetDate() }; ticket.Requests.Add(request); ticket.companyID = comanyID; ticket.projectID = projectID; ticket.statusID = 1; if (mode) { db.Entry(ticket).State = EntityState.Modified; } else { db.Tickets.Add(ticket); } db.SaveChanges(); if (file[0] != null) { foreach (var item in file) { var filename = Path.GetExtension(item.FileName); var ticketFile = new TicketFile() { fileName = filename, requestID = request.requestID }; db.TicketFiles.Add(ticketFile); db.SaveChanges(); item.SaveAs(Server.MapPath("~/files/" + ticketFile.ticketFileID + filename)); } } db.SaveChanges(); return(RedirectToAction("CustomerIndex", "home", new ViewDataDictionary { new KeyValuePair <string, object>("message", "تیکت شما با موفقیت ارسال شد لطفا تا دریافت نتیجه صبور باشید") })); } ViewBag.projectID = new SelectList(db.Projects, "projectID", "name", ticket.projectID); return(View(ticket)); }
public List <TicketFile> Map(IDataReader reader) { List <TicketFile> files = new List <TicketFile>(); while (reader.Read()) { TicketFile file = new TicketFile(); file.FileID = Convert.ToInt32(reader["FileID"] == DBNull.Value ? 0 : reader["FileID"]); file.FileDisplayName = reader["FileNameOriginal"] == DBNull.Value ? "" : reader["FileNameOriginal"].ToString(); file.FileName = reader["FileName"] == DBNull.Value ? "" : reader["FileName"].ToString(); file.FileExtension = reader["FileExtension"] == DBNull.Value ? "" : reader["FileExtension"].ToString(); file.UploadDate = reader["UploadDate"] == DBNull.Value ? "" : reader["UploadDate"].ToString(); file.TicketId = Convert.ToInt32(reader["TicketID"] == DBNull.Value ? 0 : reader["TicketID"]); files.Add(file); } return(files); }
public static void Main(string[] args) { List <Ticket> Tickets = new List <Ticket>(); String ticketFileName = AppDomain.CurrentDomain.BaseDirectory + "Tickets.txt"; String EnhancementFileName = AppDomain.CurrentDomain.BaseDirectory + "Enhancements.txt"; String TaskFileName = AppDomain.CurrentDomain.BaseDirectory + "Tasks.txt"; String choice; TicketFile TicketFile = new TicketFile(ticketFileName); EnhancementFile enhancementFile = new EnhancementFile(EnhancementFileName); TaskFile taskFile = new TaskFile(TaskFileName); do { Console.WriteLine("\n"); Console.WriteLine("1) Add Bug Ticket"); Console.WriteLine("2) Display Bug Tickets"); Console.WriteLine("3) Add Enhancement Ticket"); Console.WriteLine("4) Display Enhancement Tickets"); Console.WriteLine("5) Add Task Ticket"); Console.WriteLine("6) Display Task Tickets"); Console.WriteLine("7) Search tickets by status"); Console.WriteLine("Enter to quit"); // input response choice = Console.ReadLine(); switch (choice) { case "1": Bug BugTicket = new Bug(); // prompt for ticket summary Console.WriteLine("Enter a summary: "); // save ticket summary BugTicket.TicketSummary = Console.ReadLine(); // prompt for ticket status Console.WriteLine("Enter the status: "); // save ticket status BugTicket.TicketStatus = Console.ReadLine(); // prompt for priority Console.WriteLine("Enter priority level: "); // save priority BugTicket.TicketPriority = Console.ReadLine(); // prompt for submitter name Console.WriteLine("Enter name: "); // save name BugTicket.SubmittedBy = Console.ReadLine(); // prompt for assigned Console.WriteLine("Enter name of person the ticket is assigned to: "); // save assigned BugTicket.AssignedTo = Console.ReadLine(); // prompt for watcher Console.WriteLine("Enter name of person watching: "); // save watcher BugTicket.Watching = Console.ReadLine(); // prompt for severity Console.WriteLine("Enter severity: "); // save severity BugTicket.Severity = Console.ReadLine(); TicketFile.AddTicket(BugTicket); Console.WriteLine("Ticket created."); break; case "2": foreach (Bug b in TicketFile.BugTickets) { Console.WriteLine(b.Display()); } break; case "3": Enhancement EnhancementTicket = new Enhancement(); // prompt for ticket summary Console.WriteLine("Enter a summary: "); // save ticket summary EnhancementTicket.TicketSummary = Console.ReadLine(); // prompt for ticket status Console.WriteLine("Enter the status: "); // save ticket status EnhancementTicket.TicketStatus = Console.ReadLine(); // prompt for priority Console.WriteLine("Enter priority level: "); // save priority EnhancementTicket.TicketPriority = Console.ReadLine(); // prompt for submitter name Console.WriteLine("Enter name: "); // save name EnhancementTicket.SubmittedBy = Console.ReadLine(); // prompt for assigned Console.WriteLine("Enter name of person the ticket is assigned to: "); // save assigned EnhancementTicket.AssignedTo = Console.ReadLine(); // prompt for watcher Console.WriteLine("Enter name of person watching: "); // save watcher EnhancementTicket.Watching = Console.ReadLine(); //prompt for software Console.WriteLine("Enter name of software: "); // save software EnhancementTicket.Software = Console.ReadLine(); //prompt for cost Console.WriteLine("Enter cost: "); // save cost EnhancementTicket.Cost = Console.ReadLine(); //prompt for reason Console.WriteLine("Enter reason: "); // save reason EnhancementTicket.Reason = Console.ReadLine(); //prompt for estimate Console.WriteLine("Enter estimate: "); // save restimate EnhancementTicket.Estimate = Console.ReadLine(); enhancementFile.AddTicket(EnhancementTicket); Console.WriteLine("Ticket created."); break; case "4": foreach (Enhancement e in enhancementFile.EnhancementTickets) { Console.WriteLine(e.Display()); } break; case "5": Task TaskTicket = new Task(); // prompt for ticket summary Console.WriteLine("Enter a summary: "); // save ticket summary TaskTicket.TicketSummary = Console.ReadLine(); // prompt for ticket status Console.WriteLine("Enter the status: "); // save ticket status TaskTicket.TicketStatus = Console.ReadLine(); // prompt for priority Console.WriteLine("Enter priority level: "); // save priority TaskTicket.TicketPriority = Console.ReadLine(); // prompt for submitter name Console.WriteLine("Enter name: "); // save name TaskTicket.SubmittedBy = Console.ReadLine(); // prompt for assigned Console.WriteLine("Enter name of person the ticket is assigned to: "); // save assigned TaskTicket.AssignedTo = Console.ReadLine(); // prompt for watcher Console.WriteLine("Enter name of person watching: "); // save watcher TaskTicket.Watching = Console.ReadLine(); //prompt for project name Console.WriteLine("Enter name of project: "); // save project name TaskTicket.projectName = Console.ReadLine(); //prompt for Due Date Console.WriteLine("Enter Due Date: "); // save cost TaskTicket.DueDate = Console.ReadLine(); taskFile.AddTicket(TaskTicket); Console.WriteLine("Ticket created."); break; case "6": foreach (Task t in taskFile.TaskTickets) { Console.WriteLine(t.Display()); } break; case "7": Console.WriteLine("Enter the status you would like to search (Open/Closed)"); var searchString = Console.ReadLine(); var results = new List <Ticket>(); results.AddRange(taskFile.Search(searchString)); results.AddRange(enhancementFile.Search(searchString)); results.AddRange(TicketFile.Search(searchString)); foreach (var item in results) { Console.WriteLine(item.Display()); } break; } }while (choice == "1" || choice == "2" || choice == "3" || choice == "4" || choice == "5" || choice == "6" || choice == "7"); }
public List <TicketFile> AttachmentsLinkFiles(Message message, List <ModuleActionLink> links) { List <TicketFile> attachments = null; if (message == null || links == null || !links.Any()) { return(null); } TicketUser usr = this.UserGetfromPerson(UC.CurrentUserID); if (message.Creator == null || message.Creator.Id != usr.Id) { return(null); } Boolean isInTransaction = Manager.IsInTransaction(); try { if (!isInTransaction) { Manager.BeginTransaction(); } litePerson person = CurrentLitePerson; if (person != null && person.Id > 0) { DateTime date = DateTime.Now; attachments = new List <TicketFile>(); foreach (ModuleActionLink link in links) { TicketFile attachment = QueryAttachments(a => a.Deleted == BaseStatusDeleted.None && a.Message != null && a.Message.Id == message.Id).ToList().Where(a => a.Item == (liteRepositoryItem)link.ModuleObject.ObjectOwner).Skip(0).Take(1).ToList().FirstOrDefault(); if (attachment == null) { attachment = new TicketFile(); attachment.CreateMetaInfo(person, UC.IpAddress, UC.ProxyIpAddress, date); attachment.Item = (liteRepositoryItem)link.ModuleObject.ObjectOwner; attachment.Message = message; attachment.TicketId = ((message != null && message.Ticket != null) ? message.Ticket.Id : 0); attachment.Name = attachment.Item.DisplayName; attachment.Visibility = Domain.Enums.FileVisibility.visible; Manager.SaveOrUpdate(attachment); liteModuleLink mLink = new liteModuleLink(link.Description, link.Permission, link.Action); mLink.CreateMetaInfo(person.Id, UC.IpAddress, UC.ProxyIpAddress, date); mLink.DestinationItem = (ModuleObject)link.ModuleObject; mLink.AutoEvaluable = false; mLink.SourceItem = ModuleObject.CreateLongObject(message.Id, message, (int)ModuleTicket.ObjectType.Message, 0, ModuleTicket.UniqueCode, ServiceModuleID()); Manager.SaveOrUpdate(mLink); attachment.Link = mLink; Manager.SaveOrUpdate(attachment); } else if (attachment.Deleted != BaseStatusDeleted.None) { attachment.RecoverMetaInfo(person, UC.IpAddress, UC.ProxyIpAddress, date); if (attachment.Item != null && attachment.Item.IsInternal && attachment.Item.Deleted != BaseStatusDeleted.None) { attachment.Item.Deleted = BaseStatusDeleted.None; attachment.Item.UpdateMetaInfo(person.Id, UC.IpAddress, UC.ProxyIpAddress, date); Manager.SaveOrUpdate(attachment.Item); } Manager.SaveOrUpdate(attachment); } attachments.Add(attachment); } } if (!isInTransaction) { Manager.Commit(); } } catch (Exception ex) { if (!isInTransaction) { Manager.RollBack(); } attachments = null; } return(attachments); }
public List <TicketFile> AttachmentsAddFiles(Message message, TicketUser user, List <dtoModuleUploadedItem> items) { List <TicketFile> attachments = null; if (message == null || message.Ticket == null || user == null || items == null || !items.Any()) { return(null); } if (message.Creator == null || message.Creator.Id != user.Id) { return(null); } Boolean isInTransaction = Manager.IsInTransaction(); try { if (!isInTransaction) { Manager.BeginTransaction(); } litePerson person = (user.Person ?? Manager.GetLiteUnknownUser()); if (items.Any() && person != null && person.TypeID != (int)UserTypeStandard.Guest && person.TypeID != (int)UserTypeStandard.PublicUser) { attachments = new List <TicketFile>(); DateTime date = DateTime.Now; foreach (dtoModuleUploadedItem item in items) { TicketFile attachment = new TicketFile(); attachment.CreateMetaInfo(person, UC.IpAddress, UC.ProxyIpAddress, date); attachment.Item = item.ItemAdded; attachment.Message = message; attachment.TicketId = ((message != null && message.Ticket != null) ? message.Ticket.Id : 0); attachment.Name = attachment.Item.DisplayName; attachment.Visibility = Domain.Enums.FileVisibility.visible; Manager.SaveOrUpdate(attachment); liteModuleLink link = new liteModuleLink(item.Link.Description, item.Link.Permission, item.Link.Action); link.CreateMetaInfo(person.Id, UC.IpAddress, UC.ProxyIpAddress, date); link.DestinationItem = (ModuleObject)item.Link.ModuleObject; link.AutoEvaluable = false; link.SourceItem = ModuleObject.CreateLongObject(message.Id, message, (int)ModuleTicket.ObjectType.Message, 0, ModuleTicket.UniqueCode, ServiceModuleID()); Manager.SaveOrUpdate(link); attachment.Link = link; if (item.ItemAdded.IsInternal) { if (item.ItemAdded.Module == null) { item.ItemAdded.Module = new lm.Comol.Core.FileRepository.Domain.ItemModuleSettings(); } item.ItemAdded.Module.IdObject = message.Id; item.ItemAdded.Module.IdObjectType = (int)ModuleTicket.ObjectType.Message; Manager.SaveOrUpdate(item.ItemAdded); } Manager.SaveOrUpdate(attachment); attachments.Add(attachment); } } if (!isInTransaction) { Manager.Commit(); } } catch (Exception ex) { if (!isInTransaction) { Manager.RollBack(); } attachments = null; } return(attachments); }
public static void Main(string[] args) { string file = "ticketData.txt"; string choice; //NewTicketFile ticketList = new NewTicketFile(); TicketFile ticketList = new TicketFile(); ticketList.FilePath = file; ticketList.LoadFile(); { // ask user a question Console.WriteLine("1) Read data from file."); Console.WriteLine("2) Create file from data."); Console.WriteLine("Enter any other key to exit."); // input response choice = Console.ReadLine(); if (choice == "1") { if (File.Exists(file)) { } else { Console.WriteLine("File does not exist"); } } else if (choice == "2") { Console.WriteLine("Enter a ticket"); //using(StreamReader sr = new StreamReader(file)) //{ // string line = sr.ReadLine(); // string[] values = line.Split(','); //} using (StreamWriter sw = new StreamWriter(file, true)) { string TicketID = ""; string SummaryIssue = ""; string Status = ""; string Priority = ""; string Submitter = ""; string Assigned = ""; string Watching = ""; sw.WriteLine("{0},{1},{2},{3},{4},{5}", TicketID, SummaryIssue, Status, Priority, Submitter, Assigned, Watching); sw.Close(); Console.ReadLine(); } } while (choice == "1" || choice == "2") { ; } } }
// constructors public TicketManager() { _ticketFile = new TicketFile(); }