public ActionResult DeleteConfirmed(int id) { JobItinerary jobItinerary = db.JobItineraries.Find(id); db.JobItineraries.Remove(jobItinerary); db.SaveChanges(); return(RedirectToAction("JobItinerary", new { id = jobItinerary.JobMainId })); }
public ActionResult Create([Bind(Include = "Id,JobMainId,DestinationId,ActualRate,Remarks,ItiDate,SvcId")] JobItinerary jobItinerary) { if (ModelState.IsValid) { db.JobItineraries.Add(jobItinerary); db.SaveChanges(); return(RedirectToAction("JobItinerary", new { id = jobItinerary.JobMainId })); } ViewBag.JobMainId = new SelectList(db.JobMains, "Id", "Description", jobItinerary.JobMainId); ViewBag.DestinationId = new SelectList(db.Destinations, "Id", "Description", jobItinerary.DestinationId); ViewBag.SvcId = new SelectList(db.JobServices.Where(d => d.JobMainId == jobItinerary.JobMainId), "Id", "Particulars", jobItinerary.SvcId); return(View(jobItinerary)); }
// GET: JobItineraries/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } JobItinerary jobItinerary = db.JobItineraries.Find(id); if (jobItinerary == null) { return(HttpNotFound()); } return(View(jobItinerary)); }
// GET: JobItineraries/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } JobItinerary jobItinerary = db.JobItineraries.Find(id); if (jobItinerary == null) { return(HttpNotFound()); } ViewBag.JobMainId = new SelectList(db.JobMains, "Id", "Description", jobItinerary.JobMainId); ViewBag.DestinationId = new SelectList(db.Destinations, "Id", "Description", jobItinerary.DestinationId); ViewBag.SvcId = new SelectList(db.JobServices.Where(d => d.JobMainId == jobItinerary.JobMainId), "Id", "Particulars", jobItinerary.SvcId); return(View(jobItinerary)); }
public ActionResult AddTemplate(int JobId) { int iTemplate = (int)TempData["SELECTEDTEMPLATE"]; int TempId = (int)TempData["TEMPLATEID"]; var template = db.Products.Find(TempId); var price = db.ProductPrices.Where(d => d.ProductId == template.Id).OrderBy(s => new { s.Uom, s.Qty }); // copy job services var jobTemplate = db.JobMains.Find(iTemplate); var jobRef = db.JobMains.Find(JobId); var srcJobSvcs = db.JobServices.Where(d => d.JobMainId == iTemplate); var srcJobIti = db.JobItineraries.Where(d => d.JobMainId == iTemplate); decimal dQuoteAmt = 0; decimal dSupplierAmt = 0; DateTime dtJobTemplate = (DateTime)jobTemplate.JobDate; DateTime dtJobDateStart = (DateTime)jobTemplate.JobDate; int irow = 0; #region add new service foreach (var src in srcJobSvcs) { irow++; Models.JobServices newJobSrv = new JobServices() { JobMainId = jobRef.Id, ServicesId = src.ServicesId, DtStart = jobRef.JobDate, DtEnd = jobRef.JobDate, Particulars = src.Particulars, Remarks = src.Remarks, QuotedAmt = dQuoteAmt, SupplierAmt = dSupplierAmt, ActualAmt = 0, SupplierId = src.SupplierId, SupplierItemId = src.SupplierItemId }; if (src.DtStart != null) { DateTime dtSrc = (DateTime)src.DtStart; TimeSpan tsSrc = dtSrc - dtJobTemplate; if (jobRef.JobDate != null) { newJobSrv.DtStart = jobRef.JobDate.Add(tsSrc); dtJobDateStart = jobRef.JobDate.Add(tsSrc); } } if (src.DtEnd != null) { DateTime dtSrc = (DateTime)src.DtEnd; TimeSpan tsSrc = dtSrc - dtJobTemplate; if (jobRef.JobDate != null) { newJobSrv.DtEnd = jobRef.JobDate.Add(tsSrc); } } if (jobRef.NoOfPax > 0 && irow == 1) { decimal pPrice = 0; foreach (var p in price) { if (p.Uom == "PAX") { if (p.Qty <= jobRef.NoOfPax) { pPrice = p.Rate * jobRef.NoOfPax; } } if (p.Uom == "UNIT") { pPrice = p.Rate; } } newJobSrv.QuotedAmt = pPrice; } db.JobServices.Add(newJobSrv); } #endregion #region Copy/Add Itinerary foreach (var src in srcJobIti) { Models.JobItinerary newJobIti = new JobItinerary() { JobMainId = jobRef.Id, DestinationId = src.DestinationId, Remarks = src.Remarks }; if (src.ItiDate != null) { DateTime dtSrc = (DateTime)src.ItiDate; TimeSpan tsSrc = dtSrc - dtJobTemplate; if (jobRef.JobDate != null) { newJobIti.ItiDate = jobRef.JobDate.Add(tsSrc); } } else { newJobIti.ItiDate = dtJobDateStart; } db.JobItineraries.Add(newJobIti); } #endregion db.SaveChanges(); #region set svc id to iti Models.JobServices jtmp = db.JobServices.Where(d => d.JobMainId == JobId).OrderByDescending(o => o.Id).FirstOrDefault(); int iAddedSvc = jtmp.Id; IList <Models.JobItinerary> jIti = db.JobItineraries.Where(d => d.JobMainId == JobId && d.SvcId == null).ToList(); foreach (var tmp in jIti) { tmp.SvcId = iAddedSvc; db.Entry(tmp).State = EntityState.Modified; } db.SaveChanges(); #endregion return(RedirectToAction("Services", new { id = JobId })); }