public JsonResult ItemCreate(List <DemoVM> ResourceDetails) { var result = new { flag = false, message = "Saving failed" }; foreach (var item in ResourceDetails) { ProcProjectItem procitem = new ProcProjectItem(); procitem.Id = item.ProjectId; //procitem. = item.ProjectSiteId; procitem.ItemId = item.ItemISLNO; procitem.UnitId = item.UnitUSLNO; procitem.PQuantity = item.PQuantity; //procitem.Unit = (Unit)Enum.Parse(typeof(Unit), item.UnitUSLNO.ToString()); procitem.PCost = item.PCost; procitem.Remarks = item.Remarks; db.ProcProjectItem.Add(procitem); db.SaveChanges(); } result = new { flag = true, message = "Project saving successful." }; return(Json(result, JsonRequestBehavior.AllowGet)); }
public JsonResult ItemCreate(List <ProcItem> ResourceDetails, int ProjectSiteId, DateTime?BOQDate, string BOQNo, DateTime?NOADate, string NOANo, string ProjectType, string ProjectStatus, string ProjectRemarks) { var result = new { flag = false, message = "Saving failed" }; ProcProject procProject = new ProcProject(); //procProject.Id = ProjectId; procProject.ProjectSiteId = ProjectSiteId; procProject.BOQDate = BOQDate; procProject.BOQNo = BOQNo; procProject.NOADate = NOADate; procProject.NOANo = NOANo; procProject.Status = ProjectStatus; procProject.Remarks = ProjectRemarks; procProject.ProjectType = ProjectType; db.ProcProject.Add(procProject); db.SaveChanges(); foreach (var item in ResourceDetails) { ProcProjectItem procitem = new ProcProjectItem(); // var checkeingDuplicate= db.ProcProjectItem.Where(x => x.ProjectId == item.ProjectId && x.ProjectSiteId == item.ProjectSiteId && x.ItemISLNO == item.ItemISLNO); //var procProjId = db.ProcProject.SingleOrDefault(x => x.ProjectSiteId == ProjectSiteId); //procitem.ProcProjectId = procProjId.Id; // procitem.ProjectSiteId = item.ProjectSiteId; procitem.ProcProjectId = procProject.Id; procitem.ItemId = item.ItemISLNO; procitem.UnitId = item.UnitUSLNO; procitem.PQuantity = item.PQuantity; //procitem.Unit = (Unit)Enum.Parse(typeof(Unit), item.UnitUSLNO.ToString()); procitem.PCost = item.PCost; procitem.Remarks = item.Remarks; db.ProcProjectItem.Add(procitem); db.SaveChanges(); } result = new { flag = true, message = "Project saving successful." }; return(Json(result, JsonRequestBehavior.AllowGet)); }
public JsonResult DeleteProjectItem(int id, int ProcProjectId) { var result = new { flag = false, message = "Error occured !!" }; try { var procItemList = db.ProcProjectItem.SingleOrDefault(x => x.ItemId == id && x.ProcProjectId == ProcProjectId); if (procItemList != null) { ProcProjectItem procItem = db.ProcProjectItem.Find(procItemList.Id); db.ProcProjectItem.Remove(procItem); db.SaveChanges(); result = new { flag = true, message = "Delete successful !!" }; } else { result = new { flag = false, message = "Delete failed!" }; } } catch (Exception ex) { result = new { flag = false, message = "Delete failed !!\nError Occured." }; } return(Json(result, JsonRequestBehavior.AllowGet)); }
public ActionResult Edit(int?projectId, int?siteId) { ViewBag.PId = projectId; ViewBag.SId = siteId; var procProjectId = db.ProcProject.FirstOrDefault(x => x.Id == projectId && x.ProjectSiteId == siteId); ViewBag.ProcProjectId = procProjectId.Id; ViewBag.ProcProjectIdEditForm = procProjectId.ProjectSite.Project.Name; ViewBag.ProjectId = new SelectList(db.Project, "Id", "Name"); ViewBag.SiteId = new SelectList(db.ProjectSite, "Id", "Name"); ViewBag.ItemName = new SelectList(db.Item, "Id", "Name"); ViewBag.Unit = new SelectList(db.Unit, "Id", "Name"); var projectTypeStatus = new SelectList(new List <SelectListItem> { new SelectListItem { Text = "Government", Value = "Government" }, new SelectListItem { Text = "Non-Government", Value = "Non-Government" }, }, "Value", "Text"); ViewBag.ProjectType = projectTypeStatus; ViewBag.PrManId = new SelectList(db.CompanyResource, "Id", "Name"); ViewBag.StEngId = new SelectList(db.CompanyResource, "Id", "Name"); var projectIdFinder = db.ProjectSite.SingleOrDefault(x => x.Id == siteId); var projects = db.Project.SingleOrDefault(x => x.Id == projectIdFinder.ProjectId); ViewBag.StartDate = NullHelper.DateToString(projects.StartDate); ViewBag.EndDate = NullHelper.DateToString(projects.EndDate); var procProjects = db.ProcProject.SingleOrDefault(x => x.Id == projectId && x.ProjectSiteId == siteId); ViewBag.BOQDate = NullHelper.DateToString(procProjects.BOQDate); ViewBag.NOADate = NullHelper.DateToString(procProjects.NOADate); ViewBag.BOQNo = NullHelper.ObjectToString(procProjects.BOQNo); ViewBag.NOANo = NullHelper.ObjectToString(procProjects.NOANo); //ViewBag.PType = NullHelper.ObjectToString(procProjects.ProjectType); var projectType = new SelectList(new List <SelectListItem> { new SelectListItem { Text = "Government", Value = "Government" }, new SelectListItem { Text = "Non-Government", Value = "Non-Government" }, }, "Value", "Text", procProjects.ProjectType); ViewBag.ProjectType = projectType; ViewBag.PStatus = NullHelper.ObjectToString(procProjects.Status); ViewBag.PRemarks = NullHelper.ObjectToString(procProjects.Remarks); var projectRes = db.ProjectResource.SingleOrDefault(x => x.ProjectId == projectIdFinder.ProjectId); ViewBag.PrMan = NullHelper.ObjectToString(projectRes.CompanyResource.Name); var projectSiteRes = db.ProjectSiteResource.SingleOrDefault(x => x.ProjectSiteId == siteId); ViewBag.StEng = NullHelper.ObjectToString(projectSiteRes.CompanyResource.Name); VMProjectItem vmProjectItem = new VMProjectItem(); vmProjectItem.ProcProjectItem = db.ProcProjectItem.Where(x => x.ProcProjectId == projectId /*&& x.ProjectSiteId == siteId*/).ToList(); if (projectId == null || siteId == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProcProject procProject = db.ProcProject.Where(x => x.Id == projectId && x.ProjectSiteId == siteId).FirstOrDefault(); Project project = db.Project.Where(x => x.Id == projectId).FirstOrDefault(); ProcProjectItem procProjectItem = db.ProcProjectItem.Where(x => x.ProcProjectId == projectId /*&& x.ProjectSiteId == siteId*/).FirstOrDefault(); if (procProject == null) { return(HttpNotFound()); } return(View(vmProjectItem)); }
public JsonResult UpdateProcProject(List <DemoVM> ResourceDetails, int?[] DeleteItems, int ProcProjectId, int ProjectSiteId, DateTime?BOQDate, string BOQNo, DateTime?NOADate, string NOANo, string ProjectType, string ProjectStatus, string ProjectRemarks) { var result = new { flag = false, message = "Saving failed" }; if (DeleteItems != null) { foreach (var i in DeleteItems) { var procprojectItem = db.ProcProjectItem.SingleOrDefault(x => x.ProcProjectId == ProcProjectId && x.ItemId == i); var delteItem = db.ProcProjectItem.Find(procprojectItem.Id); db.ProcProjectItem.Remove(delteItem); db.SaveChanges(); } } var existProcProject = db.ProcProject.Where(x => x.Id == ProcProjectId && x.ProjectSiteId == ProjectSiteId).ToList(); if (existProcProject.Count != 0) { var flag = false; var checkdata = db.ProcProject.Where(x => x.Id == ProcProjectId && x.ProjectSiteId == ProjectSiteId).SingleOrDefault(); if (checkdata != null) { checkdata.Id = ProcProjectId; checkdata.ProjectSiteId = ProjectSiteId; checkdata.BOQDate = BOQDate; checkdata.NOADate = NOADate; checkdata.BOQNo = BOQNo; checkdata.NOANo = NOANo; checkdata.Status = ProjectStatus; //if (ProjectRemarks == null) //{ // checkdata.Remarks = ""; //} //else //{ // checkdata.Remarks = ProjectRemarks; //} checkdata.Remarks = ProjectRemarks; checkdata.ProjectType = ProjectType; db.Entry(checkdata).State = EntityState.Modified; flag = db.SaveChanges() > 0; if (flag == true) { if (ResourceDetails != null) { try { foreach (var item in ResourceDetails) { ProcProjectItem procProjectItem = new ProcProjectItem(); procProjectItem.ProcProjectId = item.ProcProjectId; // procProjectItem.ProjectSiteId = item.ProjectSiteId; procProjectItem.ItemId = item.ItemISLNO; procProjectItem.UnitId = item.UnitUSLNO; procProjectItem.PQuantity = item.PQuantity; procProjectItem.PCost = item.PCost; procProjectItem.Remarks = item.Remarks; //db.ProcProjectItem.Add(procProjectItem); var checkingProjectItems = db.ProcProjectItem.FirstOrDefault(x => x.ProcProjectId == item.ProcProjectId /*&& x.ProjectSiteId == item.ProjectSiteId*/ && x.ItemId == item.ItemISLNO); flag = false; if (checkingProjectItems == null) { db.Entry(procProjectItem).State = EntityState.Added; } else { procProjectItem = db.ProcProjectItem.Find(checkingProjectItems.Id); procProjectItem.PQuantity = item.PQuantity; procProjectItem.PCost = item.PCost; procProjectItem.PCost = item.PCost; procProjectItem.Remarks = item.Remarks; procProjectItem.UnitId = item.UnitUSLNO; db.Entry(procProjectItem).State = EntityState.Modified; } //db.Entry(procProjectItem).State = procProjectItem.ProjectId == item.ProjectId && procProjectItem.ProjectSiteId==item.ProjectSiteId ? // EntityState.Added : // EntityState.Modified; db.SaveChanges(); } result = new { flag = true, message = "Edit saving successful !" }; return(Json(result, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { } } } } // } //catch (Exception ex) //{ //} return(Json(result, JsonRequestBehavior.AllowGet)); } else { result = new { flag = false, message = "Procurement project and Project Items already exist!" }; return(Json(result, JsonRequestBehavior.AllowGet)); } }
public JsonResult ItemCreate(List <ProcItem> ResourceDetails, int ProjectSiteId, DateTime?BOQDate, string BOQNo, DateTime?NOADate, string NOANo, string ProjectType, string ProjectStatus, string ProjectRemarks) { var result = new { flag = false, message = "Saving failed" }; var check = db.ProcProject.Where(x => x.ProjectSiteId == ProjectSiteId).ToList(); if (check.Count == 0) { using (var dbContextTransaction = db.Database.BeginTransaction()) { try { ProcProject procProject = new ProcProject(); //procProject.Id = ProjectId; procProject.ProjectSiteId = ProjectSiteId; procProject.BOQDate = BOQDate; procProject.BOQNo = BOQNo; procProject.NOADate = NOADate; procProject.NOANo = NOANo; procProject.Status = ProjectStatus; procProject.Remarks = ProjectRemarks; procProject.ProjectType = ProjectType; db.ProcProject.Add(procProject); db.SaveChanges(); foreach (var item in ResourceDetails) { ProcProjectItem procitem = new ProcProjectItem(); procitem.ProcProjectId = procProject.Id; procitem.ItemId = item.ItemISLNO; procitem.UnitId = item.UnitUSLNO; procitem.PQuantity = item.PQuantity; //procitem.Unit = (Unit)Enum.Parse(typeof(Unit), item.UnitUSLNO.ToString()); procitem.PCost = item.PCost; procitem.Remarks = item.Remarks; db.ProcProjectItem.Add(procitem); db.SaveChanges(); } dbContextTransaction.Commit(); result = new { flag = true, message = "Project cost saving successful." }; } catch (Exception ex) { dbContextTransaction.Rollback(); result = new { flag = false, message = "Saving failed! Error occurred." //message = ex.Message }; } } } else { result = new { flag = false, message = "Site cost already exists!" //message = ex.Message }; } return(Json(result, JsonRequestBehavior.AllowGet)); }