// GET: ConsultingRequests/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ConsultingRequest consultingRequest = db.ConsultingRequests.Find(id); List <string> newFilesName = new List <string>(); List <string> paths = new List <string>(); UrlHelper url = Url; HttpServerUtilityBase server = Server; bool getFiles = filesTransact.getFiles(consultingRequest.NoRequest.Replace("/", ""), out newFilesName, out paths, url, server); ViewBag.newFilesName = newFilesName; ViewBag.paths = paths; ViewBag.requester = db.Employees.Where(p => p.EmployeeID.Equals(consultingRequest.RequesterID)).Select(p => p.Name).FirstOrDefault(); if (consultingRequest == null) { return(HttpNotFound()); } return(View(consultingRequest)); }
// GET: ConsultingRequests/Create public ActionResult Create() { ActivityServices activity = new ActivityServices(); var activities = activity.GetActivity().Where(p => p.Status == "Approve"); IEnumerable <SelectListItem> activityid = activities .Select(d => new SelectListItem { Value = d.ActivityID.ToString(), Text = d.Name }); ViewBag.ActivityID = activityid; String newReqNo = String.Empty; ConsultingRequest lastConReq = db.ConsultingRequests.OrderByDescending(p => p.ConsultingRequestID).FirstOrDefault(); if (lastConReq != null) { if (lastConReq.NoRequest.Contains("/")) { int reqNo = Convert.ToInt32(lastConReq.NoRequest.Split('/')[1]) + 1; newReqNo = Convert.ToString("ConsultingRequest/" + reqNo); } else { newReqNo = Convert.ToString("ConsultingRequest/" + 1); } } else { newReqNo = Convert.ToString("ConsultingRequest/" + 1); } ViewBag.ReqNo = newReqNo; return(View()); }
// GET: ConsultingRequests/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ConsultingRequest consultingRequest = db.ConsultingRequests.Find(id); List <string> newFilesName = new List <string>(); List <string> paths = new List <string>(); UrlHelper url = Url; HttpServerUtilityBase server = Server; var getFiles = filesTransact.getFiles(consultingRequest.NoRequest.Replace("/", ""), out newFilesName, out paths, url, server); ViewBag.newFilesName = newFilesName; ViewBag.paths = paths; ActivityServices activity = new ActivityServices(); var activities = activity.GetActivity().Where(p => p.Status == "Approve"); IEnumerable <SelectListItem> activityid = activities .Select(d => new SelectListItem { Value = d.ActivityID.ToString(), Text = d.Name }); ViewBag.ActivityID = activityid; ViewBag.requester = db.Employees.Where(p => p.EmployeeID.Equals(consultingRequest.RequesterID)).Select(p => p.Name).FirstOrDefault(); string consultingRequestnosurat = db.ConsultingRequests.Find(id).NoSurat; string consultingRequestnorequest = db.ConsultingRequests.Find(id).NoRequest; //int consultingRequestrequest = db.ConsultingRequests.Find(id).RequesterID; //int consultingRequestactivity = db.ConsultingRequests.Find(id).ActivityID.Value; DateTime consultingRequeststart = db.ConsultingRequests.Find(id).Date_Start; //DateTime consultingRequestend = db.ConsultingRequests.Find(id).Date_End; ViewBag.NoSurat = consultingRequestnosurat; ViewBag.NoRequest = consultingRequestnorequest; //ViewBag.RequesterID = consultingRequestrequest; //ViewBag.ActivityID = consultingRequestactivity; ViewBag.Date_Start = consultingRequeststart; //ViewBag.Date_End = consultingRequestend; if (consultingRequest == null) { return(HttpNotFound()); } ViewBag.ActivityID = new SelectList(db.Activities, "ActivityID", "Name", consultingRequest.ActivityID); return(View(consultingRequest)); }
public ActionResult DeleteConfirmed(int id) { db.Configuration.ProxyCreationEnabled = false; string username = User.Identity.Name; ConsultingRequest consultingRequest = db.ConsultingRequests.Find(id); ConsultingRequest conreq = new ConsultingRequest(); db.ConsultingRequests.Remove(consultingRequest); db.SaveChanges(); auditTransact.CreateAuditTrail("Delete", id, "Consulting Request", consultingRequest, conreq, username); TempData["message"] = "Request successfully deleted!"; return(RedirectToAction("Index")); }
public string GetActiv(string noreq) { ConsultingRequest Creuqest = context.ConsultingRequests.Where(p => p.NoRequest.Equals(noreq)).FirstOrDefault(); if (Creuqest != null) { string activity = Creuqest.ActivityStr; return(activity); } else { return(""); } }
// GET: ConsultingRequests/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ConsultingRequest consultingRequest = db.ConsultingRequests.Find(id); if (consultingRequest == null) { return(HttpNotFound()); } ViewBag.requester = db.Employees.Where(p => p.EmployeeID.Equals(consultingRequest.RequesterID)).Select(p => p.Name).FirstOrDefault(); return(View(consultingRequest)); }
public async Task <ActionResult> Preview(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ConsultingRequest consultingRequest = await db.ConsultingRequests.FindAsync(id); ViewBag.requester = db.Employees.Where(p => p.EmployeeID.Equals(consultingRequest.RequesterID)).Select(p => p.Name).FirstOrDefault(); if (consultingRequest == null) { return(HttpNotFound()); } ViewBag.WordDocumentFilename = "ConsultingRequest"; return(View(consultingRequest)); }
public ActionResult Edit(string submit, string requester, [Bind(Include = "ConsultingRequestID,NoRequest,NoSurat,RequesterID,Date_Start,EvaluationResult,Status,ActivityStr")] ConsultingRequest consultingRequest, IEnumerable <HttpPostedFileBase> files) { if (ModelState.IsValid) { string username = User.Identity.Name; db.Configuration.ProxyCreationEnabled = false; int i = 0; HttpServerUtilityBase server = Server; List <string> newFilesName = new List <string>(); List <string> paths = new List <string>(); UrlHelper url = Url; List <string> keepImages = new List <string>(); //object imagesTemp = Session["Images"]; var sessionImages = Session["Images"]; if (sessionImages != null) { Array arrKeepImages = (Array)sessionImages; foreach (var arrKeepImage in arrKeepImages) { keepImages.Add(arrKeepImage.ToString()); } bool getFiles = filesTransact.getFiles(consultingRequest.NoRequest.Replace("/", ""), out newFilesName, out paths, url, server); List <string> deletedFiles = paths.Except(keepImages).ToList(); bool deleteFiles = filesTransact.deleteFiles(deletedFiles, server); i = filesTransact.getLastNumberOfFiles(consultingRequest.NoRequest.Replace("/", ""), server); } foreach (var file in files) { if (file != null) { i = i + 1; bool addFile = filesTransact.addFile(consultingRequest.NoRequest.Replace("/", ""), i, file, server); } } Session.Remove("Images"); IQueryable <Employee> emp = db.Employees.Where(p => p.Name.Equals(requester)); int empId = 0; if (emp.Count() > 0 || emp != null) { empId = emp.Select(p => p.EmployeeID).FirstOrDefault(); } consultingRequest.RequesterID = empId; string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { consultingRequest.Status = "Draft"; } else if (submit == "Send Back") { consultingRequest.Status = HelperController.GetStatusSendback(db, "Consulting Request", consultingRequest.Status); } else if (submit == "Reject") { consultingRequest.Status = "Reject"; } else if (submit == "Approve") { consultingRequest.Status = "Approve"; ConsultingDraftAgreement consultingDraftAgreement = new ConsultingDraftAgreement(); consultingDraftAgreement.NoRequest = consultingRequest.NoRequest; consultingDraftAgreement.NoSurat = consultingRequest.NoSurat; consultingDraftAgreement.RequesterID = consultingRequest.RequesterID; consultingDraftAgreement.ActivityStr = consultingRequest.ActivityStr; //consultingDraftAgreement.ActivityID = consultingRequest.ActivityID; consultingDraftAgreement.Date_Start = consultingRequest.Date_Start; //consultingDraftAgreement.Date_End = consultingRequest.Date_End; consultingDraftAgreement.Status = "Draft"; db.ConsultingDraftAgreements.Add(consultingDraftAgreement); } else if (submit == "Submit For Review By" + user) { consultingRequest.Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { consultingRequest.Status = "Pending for Approve by" + user; string baseUrl = Request.Url.GetLeftPart(UriPartial.Authority); List <string> CIAUserIds = Request.GetOwinContext().GetUserManager <ApplicationRoleManager>().Roles.Where(p => p.Name.Equals(user.Trim())).FirstOrDefault().Users.Select(p => p.UserId).ToList(); List <Employee> CIAEmpList = new List <Employee>(); if (CIAUserIds.Count() > 0) { var CIAUsers = Request.GetOwinContext().GetUserManager <ApplicationUserManager>().Users.Where(p => (CIAUserIds.Contains(p.Id))).ToList(); foreach (var CIAUser in CIAUsers) { Employee empl = db.Employees.Where(p => p.Email.Equals(CIAUser.Email)).FirstOrDefault(); string emailContent = "Dear {0}, <BR/><BR/>Consulting Request : {1} need your approval. Please click on this <a href=\"{2}\" title=\"Consulting Request\">link</a> to show the Consulting Request.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string urlRequest = baseUrl + "/ConsultingRequests/Details/" + consultingRequest.ConsultingRequestID; emailTransact.SentEmailApproval(empl.Email, empl.Name, consultingRequest.NoRequest, emailContent, urlRequest); } } } ConsultingRequest oldData = db.ConsultingRequests.AsNoTracking().Where(p => p.ConsultingRequestID.Equals(consultingRequest.ConsultingRequestID)).FirstOrDefault(); auditTransact.CreateAuditTrail("Update", consultingRequest.ConsultingRequestID, "Consulting Request", oldData, consultingRequest, username); db.Entry(consultingRequest).State = EntityState.Modified; db.SaveChanges(); TempData["message"] = "Request successfully updated!"; return(RedirectToAction("Index")); } //ViewBag.ActivityID = new SelectList(db.Activities, "ActivityID", "Name", consultingRequest.ActivityID); return(View(consultingRequest)); }
public ActionResult Create(string submit, string requester, [Bind(Include = "ConsultingRequestID,NoRequest,NoSurat,RequesterID,Date_Start,EvaluationResult,Status,ActivityStr")] ConsultingRequest consultingRequest, IEnumerable <HttpPostedFileBase> files) { if (ModelState.IsValid) { string username = User.Identity.Name; IQueryable <Employee> emp = db.Employees.Where(p => p.Name.Equals(requester)); int empId = 0; if (emp.Count() > 0 || emp != null) { empId = emp.Select(p => p.EmployeeID).FirstOrDefault(); } consultingRequest.RequesterID = empId; string user = submit.Contains("By") ? submit.Split('y')[1] : String.Empty; if (submit == "Save") { consultingRequest.Status = "Draft"; } else if (submit == "Send Back") { consultingRequest.Status = HelperController.GetStatusSendback(db, "Consulting Request", consultingRequest.Status); } else if (submit == "Submit For Review By" + user) { consultingRequest.Status = "Pending for Review by" + user; } else if (submit == "Submit For Approve By" + user) { consultingRequest.Status = "Pending for Approve by" + user; string baseUrl = Request.Url.GetLeftPart(UriPartial.Authority); List <string> CIAUserIds = Request.GetOwinContext().GetUserManager <ApplicationRoleManager>().Roles.Where(p => p.Name.Equals(user.Trim())).FirstOrDefault().Users.Select(p => p.UserId).ToList(); List <Employee> CIAEmpList = new List <Employee>(); if (CIAUserIds.Count() > 0) { var CIAUsers = Request.GetOwinContext().GetUserManager <ApplicationUserManager>().Users.Where(p => (CIAUserIds.Contains(p.Id))).ToList(); foreach (var CIAUser in CIAUsers) { Employee empl = db.Employees.Where(p => p.Email.Equals(CIAUser.Email)).FirstOrDefault(); string emailContent = "Dear {0}, <BR/><BR/>Consulting Request : {1} need your approval. Please click on this <a href=\"{2}\" title=\"Consulting Request\">link</a> to show the Consulting Request.<BR/><BR/><BR/> Regards,<BR/><BR/> ePatria Team"; string urlRequest = baseUrl + "/ConsultingRequests/Details/" + consultingRequest.ConsultingRequestID; emailTransact.SentEmailApproval(empl.Email, empl.Name, consultingRequest.NoRequest, emailContent, urlRequest); } } } HttpServerUtilityBase server = Server; //var createFile = UploadFile(1234); int i = 0; foreach (var file in files) { if (file != null) { i = i + 1; bool addFile = filesTransact.addFile(consultingRequest.NoRequest.Replace("/", ""), i, file, server); } } db.ConsultingRequests.Add(consultingRequest); db.SaveChanges(); ConsultingRequest conreq = new ConsultingRequest(); auditTransact.CreateAuditTrail("Create", consultingRequest.ConsultingRequestID, "Consulting Request", conreq, consultingRequest, username); ReviewRelationMaster rrm = new ReviewRelationMaster(); string page = "draft"; rrm.Description = page + consultingRequest.ConsultingRequestID; db.ReviewRelationMasters.Add(rrm); db.SaveChanges(); TempData["message"] = "Request successfully created!"; return(RedirectToAction("Index")); } //ViewBag.ActivityID = new SelectList(db.Activities, "ActivityID", "Name", consultingRequest.ActivityID); return(View(consultingRequest)); }
public string getNewNumber(string type) { ePatriaDefault db = new ePatriaDefault(); string result = String.Empty; int length = 4; int no = 1; string newNo = string.Empty; int year = DateTime.Now.Year; bool noExist = false; string formatNo = string.Empty; if (type == "SP") { LetterOfCommand sp = db.LetterOfCommands.OrderByDescending(p => p.LetterOfCommandID).FirstOrDefault(); if (sp != null) { noExist = db.LetterOfCommands.Any(p => p.NomorSP.Contains("/PPN030/Prin/")); if (noExist) { no = Convert.ToInt32(sp.NomorSP.Split('/')[0]) + 1; } } newNo = no.ToString().PadLeft(length, '0'); result = newNo + "/PPN030/Prin/" + year; } else if (type == "Reporting") { Reporting rep = db.Reportings.OrderByDescending(p => p.ReportingID).FirstOrDefault(); if (rep != null) { noExist = db.Reportings.Any(p => p.NomorLaporan.Contains("/PPN030/Lap/")); if (noExist) { no = Convert.ToInt32(rep.NomorLaporan.Split('/')[0]) + 1; } } newNo = no.ToString().PadLeft(length, '0'); result = newNo + "/PPN030/Lap/" + year; } else if (type == "CSP") { ConsultingLetterOfCommand csp = db.ConsultingLetterOfCommands.OrderByDescending(p => p.ConsultingSuratPerintahID).FirstOrDefault(); if (csp != null) { noExist = db.ConsultingLetterOfCommands.Any(p => p.NomorSP.Contains("/PPN030/CPrin/")); if (noExist) { no = Convert.ToInt32(csp.NomorSP.Split('/')[0]) + 1; } } newNo = no.ToString().PadLeft(length, '0'); result = newNo + "/PPN030/CPrin/" + year; } else if (type == "CReporting") { ConsultingReporting crep = db.ConsultingReportings.OrderByDescending(p => p.ConsultingReportingID).FirstOrDefault(); if (crep != null) { noExist = db.ConsultingReportings.Any(p => p.NoLaporan.Contains("/PPN030/CLap/")); if (noExist) { no = Convert.ToInt32(crep.NoLaporan.Split('/')[0]) + 1; } } newNo = no.ToString().PadLeft(length, '0'); result = newNo + "/PPN030/CLap/" + year; } else if (type == "CRequest") { ConsultingRequest creq = db.ConsultingRequests.OrderByDescending(p => p.ConsultingRequestID).FirstOrDefault(); if (creq != null) { noExist = db.ConsultingRequests.Any(p => p.NoRequest.Contains("/PPN030/")); if (noExist) { no = Convert.ToInt32(creq.NoRequest.Split('/')[0]) + 1; } } newNo = no.ToString().PadLeft(length, '0'); result = newNo + "/PPN030/" + year; } return(result); }