public List <BusinessObjects.Ticket> GetTicketList() { Logger.TraceMethodStart(ClassName, "GetTicketList"); var ticket = default(List <BusinessObjects.Ticket>); try { using (var db = new DAL.EntityModel.BugTrackingEntities()) { var query = db.Tickets.Where(c => c.Active == true) .Include(x => x.Status) .Include(x => x.Priority) .Include(x => x.Category) .Include(x => x.User) .Include(x => x.Product) .Include(x => x.Organization).ToList(); ; ticket = MapperAllLevels.Map <List <DAL.EntityModel.Ticket>, List <BusinessObjects.Ticket> >(query); return(ticket); } } catch (Exception ex) { Logger.TraceError("Exception:", ex); throw; } finally { Logger.TraceMethodEnd(ClassName, "GetTicketList"); } }
public BusinessObjects.Ticket DeleteTicket(long Id) { Logger.TraceMethodStart(ClassName, "DeleteTicket"); var ticket = default(BusinessObjects.Ticket); try { using (var db = new DAL.EntityModel.BugTrackingEntities()) { var query = db.Tickets.Where(c => c.ID == Id && c.Active == true).FirstOrDefault(); ticket = MapperAllLevels.Map <DAL.EntityModel.Ticket, BusinessObjects.Ticket>(query); return(ticket); } } catch (Exception ex) { Logger.TraceError("Exception: ", ex); throw; } finally { Logger.TraceMethodEnd(ClassName, "DeleteProduct"); } }
public List <BusinessObjects.Ticket> GetFilteredTechnicianTicketList(BusinessObjects.Ticket filter) { Logger.TraceMethodStart(ClassName, "GetFilteredTechnicianTicketList"); var ticket = default(List <BusinessObjects.Ticket>); try { using (var db = new DAL.EntityModel.BugTrackingEntities()) { var UserID = System.Web.HttpContext.Current.User.Identity.GetUserId(); var Assigned = db.Users.Where(c => c.UserId == UserID).Select(c => c.ID).First(); var query = db.Tickets.Where(c => c.Active == true && c.AssigneeID == Assigned); if (filter.ProductID.ToString() != "0") { query = query.Where(c => c.ProductID == filter.ProductID); } if (filter.CategoryID.ToString() != "0") { query = query.Where(c => c.CategoryID == filter.CategoryID); } if (filter.StatusID.ToString() != "0") { query = query.Where(c => c.StatusID == filter.StatusID); } if (filter.OrganizationID.ToString() != "0") { query = query.Where(c => c.OrganizationID == filter.OrganizationID); } if (filter.PriorityID.ToString() != "0") { query = query.Where(c => c.PriorityID == filter.PriorityID); } query = query.Include(x => x.Status) .Include(x => x.Priority) .Include(x => x.Category) .Include(x => x.User) .Include(x => x.Product) .Include(x => x.Organization); ; ; ticket = MapperAllLevels.Map <List <DAL.EntityModel.Ticket>, List <BusinessObjects.Ticket> >(query.ToList()); return(ticket); } } catch (Exception ex) { Logger.TraceError("Exception:", ex); throw; } finally { Logger.TraceMethodEnd(ClassName, "GetFilteredTechnicianTicketList"); } }
public BugTrackingResponse <Ticket> Save(Ticket ticket) { Logger.TraceMethodStart(ClassName, "SaveTicket"); var response = new BugTrackingResponse <BusinessObjects.Ticket>(); using (var db = new DAL.EntityModel.BugTrackingEntities()) { using (var transaction = db.Database.BeginTransaction()) { try { var UserID = System.Web.HttpContext.Current.User.Identity.GetUserId(); ticket.UserID = UserID; var validator = new TicketSaveSpecificaion(); var result = validator.Validate(ticket); var failures = result.Errors; response.ValidationResult = result; if (result.IsValid) { ticket.Active = true; ticket.DateCreated = DateTime.Now; ticket.LastModified = DateTime.Now; var _ticket = MapperAllLevels.Map <BusinessObjects.Ticket, DAL.EntityModel.Ticket>(ticket); db.Tickets.Add(_ticket); db.SaveChanges(); transaction.Commit(); } else { transaction.Rollback(); Logger.TraceErrorFormat("Error while Saving {0}", response.ValidationResult.Errors); } return(response); } catch (Exception ex) { Logger.TraceError("Exception: ", ex); transaction.Rollback(); throw; } finally { Logger.TraceMethodEnd(ClassName, "SaveTicket"); } } } }
public BugTrackingResponse <BusinessObjects.Ticket> DeleteTicketConfirmed(long Id) { Logger.TraceMethodStart(ClassName, "DeleteTicket"); var response = new BugTrackingResponse <BusinessObjects.Ticket>(); using (var db = new DAL.EntityModel.BugTrackingEntities()) { using (var transaction = db.Database.BeginTransaction()) { try { var query = db.Tickets.Where(c => c.ID == Id && c.Active == true).FirstOrDefault(); var ticket = MapperAllLevels.Map <DAL.EntityModel.Ticket, BusinessObjects.Ticket>(query); var validator = new TicketDeleteSpecification(); var result = validator.Validate(ticket); var failures = result.Errors; response.ValidationResult = result; if (result.IsValid) { query.Active = false; query.LastModified = DateTime.Now; db.SaveChanges(); transaction.Commit(); } else { transaction.Rollback(); Logger.TraceErrorFormat("Error while Saving {0}", response.ValidationResult.Errors); } return(response); } catch (Exception ex) { Logger.TraceError("Exception: ", ex); transaction.Rollback(); throw; } finally { Logger.TraceMethodEnd(ClassName, "DeleteTicketConfirmed"); } } } }