public async Task <ApiResult <ProjectPlanViewModel> > ItemPlan(int ID) { var res = new ApiResult <ProjectPlanViewModel>(); ProjectPlanInfo m; ProjectPlanViewModel pm = new ProjectPlanViewModel(); if (ID > 0) { m = plandb.GetId(ID); if (m != null) { pm.ID = m.ID; pm.ProjectID = m.ProjectID; pm.ProjectNodeID = m.ProjectNodeID; pm.UserID = m.UserID; UserInfo userInfo = userdb.GetId(m.UserID); if (userInfo != null) { pm.Principal = userdb.GetNames(userInfo); } pm.Contents = m.Contents; pm.BeginDate = Utility.GetDateFormat(m.BeginDate); pm.EndDate = Utility.GetDateFormat(m.EndDate); pm.IsEnable = m.IsEnable; pm.IsComplete = m.IsComplete; res.success = true; } } res.data = pm; return(await Task.Run(() => res)); }
private void RemoveFloor(FloorControl floorControl) { ProjectPlanViewModel vm = DataContext as ProjectPlanViewModel; vm.ProjectFile.FloorPlans.Remove(floorControl.FloorAssignment); grid.Children.Remove(floorControl); vm.SelectedFloorAssignment = null; selectedFloorControl = null; }
public IActionResult DeleteProjectPlan(int id, ProjectPlanViewModel model) { ProjectPlan projectPlan = _repository.GetProjectPlanById(id); _repository.DeleteEntity(projectPlan); _repository.SaveAll(); return(RedirectToAction("AllProjectPlan")); }
public IActionResult DeleteProjectPlan(int id) { ProjectPlanViewModel model = new ProjectPlanViewModel(); var projectPlan = _repository.GetProjectPlanById(id); model = _mapper.Map <ProjectPlan, ProjectPlanViewModel>(projectPlan); return(PartialView("~/Areas/Transit/Views/Transit/DeleteProjectPlan.cshtml", model)); }
private void AddFloors() { ProjectPlanViewModel vm = DataContext as ProjectPlanViewModel; foreach (FloorAssignment floorAssignment in vm.ProjectFile.FloorPlans) { FloorControl floorControl = new FloorControl(floorAssignment, vm.ProjectFile, planOffset); GenerateFloorControl(floorControl); } }
public ProjectPlanGrid(ProjectFile projectFile) { InitializeComponent(); ProjectPlanViewModel vm = DataContext as ProjectPlanViewModel; projectFile.Load(); vm.ProjectFile = projectFile; AddFloors(); }
private void FloorPlan_PreviewMouseDoubleClick(object sender, MouseButtonEventArgs e) { if (sender is DataGridRow clickedRow && clickedRow.DataContext is FloorPlan floorPlan) { ProjectPlanViewModel vm = DataContext as ProjectPlanViewModel; FloorControl floorControl = new FloorControl(floorPlan, vm.ProjectFile, planOffset); GenerateFloorControl(floorControl); vm.ProjectFile.FloorPlans.Add(floorControl.FloorAssignment); } }
private void grid_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { if (floorControlClicked) { floorControlClicked = false; return; } if (selectedFloorControl != null) { selectedFloorControl.Background = Brushes.Transparent; } ProjectPlanViewModel vm = DataContext as ProjectPlanViewModel; vm.SelectedFloorAssignment = null; selectedFloorControl = null; }
private void FloorControl_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { floorControlClicked = true; ProjectPlanViewModel vm = DataContext as ProjectPlanViewModel; if (selectedFloorControl != null) { selectedFloorControl.Background = Brushes.Transparent; } FloorControl floorControl = sender as FloorControl; FloorAssignment roomAssignment = vm.ProjectFile.FloorPlans.FirstOrDefault(x => x.Control.Tag == floorControl.Tag); vm.SelectedFloorAssignment = roomAssignment; floorControl.Background = new SolidColorBrush(Color.FromArgb(64, 255, 128, 0)); selectedFloorControl = floorControl; selectedFloorControl.Focus(); Keyboard.Focus(selectedFloorControl); vm.SelectedTabIndex = 1; }
public async Task <ApiResult <IEnumerable <ProjectPlanViewModel> > > PlanList(string ProjectID, int?ProjectNodeID, bool?IsComplete, bool?IsEnable) { // 以接口的形式返回数据 var res = new ApiResult <IEnumerable <ProjectPlanViewModel> >() { statusCode = (int)ApiEnum.Status }; if (ProjectNodeID == null) { ProjectNodeID = 0; } var parm = Expressionable.Create <ProjectPlanInfo>() .AndIF(IsComplete != null, o => o.IsComplete == IsComplete) .AndIF(IsEnable != null, m => m.IsEnable == IsEnable) .AndIF(!string.IsNullOrEmpty(ProjectID), m => m.ProjectID == ProjectID) .AndIF(ProjectNodeID != 0, m => m.ProjectNodeID == ProjectNodeID); var list = plandb.GetNopage(parm.ToExpression(), "Sorting,ID DESC"); List <ProjectPlanViewModel> list2 = new List <ProjectPlanViewModel>(); if (list != null && list.Count > 0) { foreach (var item in list) { ProjectPlanViewModel pm = new ProjectPlanViewModel(); pm.ID = item.ID; pm.ProjectID = item.ProjectID; pm.ProjectNodeID = item.ProjectNodeID; pm.UserID = item.UserID; UserInfo userInfo = userdb.GetId(item.UserID); if (userInfo != null) { pm.Principal = userdb.GetNames(userInfo); } pm.Contents = item.Contents; pm.BeginDate = Utility.GetDateFormat(item.BeginDate); pm.EndDate = Utility.GetDateFormat(item.EndDate); pm.IsEnable = item.IsEnable; pm.IsComplete = item.IsComplete; var parm2 = Expressionable.Create <PlanCommentInfo>() .AndIF(!string.IsNullOrEmpty(ProjectID), m => m.ProjectID == ProjectID) .AndIF(ProjectNodeID != 0, m => m.ProjectNodeID == ProjectNodeID); var list3 = plancomdb.GetNopage(parm2.ToExpression(), "ID DESC"); List <PlanCommentInfoViewModel> list4 = new List <PlanCommentInfoViewModel>(); if (list3 != null && list3.Count > 0) { foreach (var item2 in list3) { if (item2.UserID == item.UserID && item.ID == item2.PlanID) { PlanCommentInfoViewModel pm2 = new PlanCommentInfoViewModel(); pm2.ID = item2.ID; pm2.ProjectID = item2.ProjectID; pm2.ProjectNodeID = item2.ProjectNodeID; pm2.PlanID = item2.PlanID; pm2.UserID = item2.UserID; pm2.Title = item2.Title; UserInfo userInfo2 = userdb.GetId(item2.UserID); if (userInfo2 != null) { pm2.UserName = userdb.GetNames(userInfo2); } pm2.AddDate = Utility.GetDateFormat(item2.AddDate); pm2.IsEnable = item2.IsEnable; pm2.IsConfirm = item2.IsConfirm; list4.Add(pm2); } } pm.planCommentInfoViews = list4; } list2.Add(pm); } res.success = true; res.data = list2; res.statusCode = (int)ApiEnum.Status; } else { res.success = false; res.statusCode = (int)ApiEnum.Status; } return(await Task.Run(() => res)); }
public IActionResult AddEditProjectPlan(int?id, ProjectPlanViewModel model) { // if (false) // { Boolean flag = false; Boolean flagForEqual = true; string WorkerList = string.Empty; string OstadKarList = string.Empty; string SarparastList = string.Empty; int Identity; string WorkerCodes = string.Empty; string OstadKarCodes = string.Empty; string SarparastCodes = string.Empty; string[] workerlist = new string[0]; string[] ostadkarlist = new string[0]; string[] sarparastlist = new string[0]; // model.GetPersonList = _repository.GetAllPerson().Select(s => new Person { Id = s.Id, FullName = s.FullName }).ToList(); var query = _repository.GetAllTransitInfoWithPerson(); #region CheckForEqual //--------------------------------------- if (model.workerList != null && model.ostadkarList != null) { foreach (string ww in model.workerList) { foreach (string oo in model.ostadkarList) { if (oo == ww) { flagForEqual = false; } } } } //----------------------------------- if (model.workerList != null && model.sarparastList != null) { foreach (string ww in model.workerList) { foreach (string ss in model.sarparastList) { if (ss == ww) { flagForEqual = false; } } } } //-------------------------------------- if (model.ostadkarList != null && model.sarparastList != null) { foreach (string oo in model.ostadkarList) { foreach (string ss in model.sarparastList) { if (oo == ss) { flagForEqual = false; } } } } #endregion if (flagForEqual) { if (model.workerList != null) { foreach (string pp in model.workerList) { WorkerCodes += pp + ","; foreach (var item in query) { if (pp == Convert.ToString(item.Id)) { WorkerList += item.FullName + ","; } } } WorkerCodes = WorkerCodes.Remove(WorkerCodes.Length - 1); WorkerList = WorkerList.Remove(WorkerList.Length - 1); } else { WorkerCodes = null; WorkerList = null; } if (model.ostadkarList != null) { foreach (string pp in model.ostadkarList) { OstadKarCodes += pp + ","; foreach (var item in query) { if (pp == Convert.ToString(item.Id)) { OstadKarList += item.FullName + ","; } } } OstadKarCodes = OstadKarCodes.Remove(OstadKarCodes.Length - 1); OstadKarList = OstadKarList.Remove(OstadKarList.Length - 1); } else { OstadKarCodes = null; OstadKarList = null; } if (model.sarparastList != null) { foreach (string pp in model.sarparastList) { SarparastCodes += pp + ","; foreach (var item in query) { if (pp == Convert.ToString(item.Id)) { SarparastList += item.FullName + ","; } } } SarparastCodes = SarparastCodes.Remove(SarparastCodes.Length - 1); SarparastList = SarparastList.Remove(SarparastList.Length - 1); } else { SarparastCodes = null; SarparastList = null; } bool isNew = !id.HasValue; var newProjectPlan = _mapper.Map <ProjectPlanViewModel, ProjectPlan>(model); if (isNew) { TraceWorker traceworker; ProjectPlan oldProjectPlan = new ProjectPlan(); oldProjectPlan.ProjectId = newProjectPlan.ProjectId; oldProjectPlan.DateReg = newProjectPlan.DateReg; oldProjectPlan.Description = newProjectPlan.Description; oldProjectPlan.PersonId = newProjectPlan.PersonId; oldProjectPlan.Activity = newProjectPlan.Activity; oldProjectPlan.WorkTypeId = newProjectPlan.WorkTypeId; oldProjectPlan.WorkerList = WorkerList; oldProjectPlan.WorkerListCodes = WorkerCodes; oldProjectPlan.OstadKarList = OstadKarList; oldProjectPlan.OstadKarCodes = OstadKarCodes; oldProjectPlan.SarparastList = SarparastList; oldProjectPlan.SarparastCodes = SarparastCodes; Identity = _repository.Add_ProjectPlan_ReturnId(oldProjectPlan); if (model.workerList != null) { foreach (string pp in model.workerList) { //کد 1 در ورودی دوم معنی ورود به پروژه است //کد 1 در ورودی ششم به معنی پست کارگر است _repository.Save_TraceWorker(Identity, 1, "0", "0", Convert.ToInt32(pp), 1); _repository.Update_StatusTransit(Convert.ToInt32(pp), 2); _repository.SaveAll(); } } if (model.ostadkarList != null) { foreach (string pp in model.ostadkarList) { //کد 1 در ورودی دوم معنی ورود به پروژه است //کد 2 در ورودی ششم به معنی پست استاد کار است _repository.Save_TraceWorker(Identity, 1, "0", "0", Convert.ToInt32(pp), 2); _repository.Update_StatusTransit(Convert.ToInt32(pp), 2); _repository.SaveAll(); } } if (model.sarparastList != null) { foreach (string pp in model.sarparastList) { //کد 1 در ورودی دوم معنی ورود به پروژه است //کد 4 در ورودی ششم به معنی پست سرپرست است _repository.Save_TraceWorker(Identity, 1, "0", "0", Convert.ToInt32(pp), 4); _repository.Update_StatusTransit(Convert.ToInt32(pp), 2); _repository.SaveAll(); } } } else { ProjectPlan projectPlan = _repository.GetProjectPlanById(model.Id); TraceWorker traceworker; //-------------------------------------------------------------------- #region TraceForWorker if (projectPlan.WorkerListCodes != null) { workerlist = projectPlan.WorkerListCodes.Split(','); } else { workerlist = null; } traceworker = new TraceWorker(); if (model.workerList != null) { if (workerlist != null) { //-------------------حلقه زیر برای ورود به پروژه است--------------------------- foreach (string pp in model.workerList) { flag = true; for (int i = 0; i < workerlist.Length; i++) { if (workerlist[i] == pp) { flag = false; } } if (flag) { //کد 1 در ورودی دوم معنی ورود به پروژه است //کد 1 در ورودی ششم به معنی پست کارگر است _repository.Save_TraceWorker(newProjectPlan.Id, 1, "0", "0", Convert.ToInt32(pp), 1); _repository.Update_StatusTransit(Convert.ToInt32(pp), 2); _repository.SaveAll(); } } //-------------------حلقه زیر برای خروج از پروژه است--------------------------- for (int i = 0; i < workerlist.Length; i++) { flag = true; foreach (string pp in model.workerList) { if (workerlist[i] == pp) { flag = false; } } if (flag) { //کد 1 در ورودی دوم معنی خروج از پروژه است //کد 1 در ورودی ششم به معنی پست کارگر است _repository.Save_TraceWorker(newProjectPlan.Id, 2, "0", "0", Convert.ToInt32(workerlist[i]), 1); _repository.Update_StatusTransit(Convert.ToInt32(workerlist[i]), 1); _repository.SaveAll(); } } } else { foreach (string pp in model.workerList) { //کد 1 در ورودی دوم معنی ورود به پروژه است //کد 1 در ورودی ششم به معنی پست کارگر است _repository.Save_TraceWorker(newProjectPlan.Id, 1, "0", "0", Convert.ToInt32(pp), 1); _repository.Update_StatusTransit(Convert.ToInt32(pp), 2); _repository.SaveAll(); } } } else { if (workerlist != null) { for (int i = 0; i < workerlist.Length; i++) { //کد 12 در ورودی دوم معنی خروج از پروژه است //کد 1 در ورودی ششم به معنی پست کارگر است _repository.Save_TraceWorker(newProjectPlan.Id, 2, "0", "0", Convert.ToInt32(workerlist[i]), 1); _repository.Update_StatusTransit(Convert.ToInt32(workerlist[i]), 1); _repository.SaveAll(); } } } #endregion #region TraceForOstadKar if (projectPlan.OstadKarCodes != null) { ostadkarlist = projectPlan.OstadKarCodes.Split(','); } else { ostadkarlist = null; } traceworker = new TraceWorker(); if (model.ostadkarList != null) { if (ostadkarlist != null) { //-------------------حلقه زیر برای ورود به پروژه است--------------------------- foreach (string pp in model.ostadkarList) { flag = true; for (int i = 0; i < ostadkarlist.Length; i++) { if (ostadkarlist[i] == pp) { flag = false; } } if (flag) { //کد 1 در ورودی دوم معنی ورود به پروژه است //کد 1 در ورودی ششم به معنی پست استادکار است _repository.Save_TraceWorker(newProjectPlan.Id, 1, "0", "0", Convert.ToInt32(pp), 2); _repository.Update_StatusTransit(Convert.ToInt32(pp), 2); _repository.SaveAll(); } } //-------------------حلقه زیر برای خروج از پروژه است--------------------------- for (int i = 0; i < ostadkarlist.Length; i++) { flag = true; foreach (string pp in model.ostadkarList) { if (ostadkarlist[i] == pp) { flag = false; } } if (flag) { //کد 2 در ورودی دوم معنی خروج از پروژه است //کد 2 در ورودی ششم به معنی پست استادکار است _repository.Save_TraceWorker(newProjectPlan.Id, 2, "0", "0", Convert.ToInt32(ostadkarlist[i]), 2); _repository.Update_StatusTransit(Convert.ToInt32(ostadkarlist[i]), 1); _repository.SaveAll(); } } } else { foreach (string pp in model.ostadkarList) { //کد 1 در ورودی دوم معنی ورود به پروژه است //کد 2 در ورودی ششم به معنی پست استادکار است _repository.Save_TraceWorker(newProjectPlan.Id, 1, "0", "0", Convert.ToInt32(pp), 2); _repository.Update_StatusTransit(Convert.ToInt32(pp), 2); _repository.SaveAll(); } } } else { if (ostadkarlist != null) { for (int i = 0; i < ostadkarlist.Length; i++) { //کد 2 در ورودی دوم معنی خروج از پروژه است //کد 2 در ورودی ششم به معنی پست استادکار است _repository.Save_TraceWorker(newProjectPlan.Id, 2, "0", "0", Convert.ToInt32(ostadkarlist[i]), 2); _repository.Update_StatusTransit(Convert.ToInt32(ostadkarlist[i]), 1); _repository.SaveAll(); } } } #endregion #region TraceForSarparast if (projectPlan.SarparastCodes != null) { sarparastlist = projectPlan.SarparastCodes.Split(','); } else { sarparastlist = null; } traceworker = new TraceWorker(); if (model.sarparastList != null) { if (sarparastlist != null) { //-------------------حلقه زیر برای ورود به پروژه است--------------------------- foreach (string pp in model.sarparastList) { flag = true; for (int i = 0; i < sarparastlist.Length; i++) { if (sarparastlist[i] == pp) { flag = false; } } if (flag) { //کد 1 در ورودی دوم معنی ورود به پروژه است //کد 4 در ورودی ششم به معنی پست سرپرست است _repository.Save_TraceWorker(newProjectPlan.Id, 1, "0", "0", Convert.ToInt32(pp), 4); _repository.Update_StatusTransit(Convert.ToInt32(pp), 2); _repository.SaveAll(); } } //-------------------حلقه زیر برای خروج از پروژه است--------------------------- for (int i = 0; i < sarparastlist.Length; i++) { flag = true; foreach (string pp in model.sarparastList) { if (sarparastlist[i] == pp) { flag = false; } } if (flag) { //کد 2 در ورودی دوم معنی خروج از پروژه است //کد 4 در ورودی ششم به معنی پست سرپرست است _repository.Save_TraceWorker(newProjectPlan.Id, 2, "0", "0", Convert.ToInt32(sarparastlist[i]), 4); _repository.Update_StatusTransit(Convert.ToInt32(sarparastlist[i]), 1); _repository.SaveAll(); } } } else { foreach (string pp in model.sarparastList) { //کد 1 در ورودی دوم معنی ورود به پروژه است //کد 4 در ورودی ششم به معنی پست سرپرست است _repository.Save_TraceWorker(newProjectPlan.Id, 1, "0", "0", Convert.ToInt32(pp), 4); _repository.Update_StatusTransit(Convert.ToInt32(pp), 2); _repository.SaveAll(); } } } else { if (sarparastlist != null) { for (int i = 0; i < sarparastlist.Length; i++) { //کد 2 در ورودی دوم معنی خروج از پروژه است //کد 4 در ورودی ششم به معنی پست سرپرست است _repository.Save_TraceWorker(newProjectPlan.Id, 2, "0", "0", Convert.ToInt32(sarparastlist[i]), 4); _repository.Update_StatusTransit(Convert.ToInt32(sarparastlist[i]), 1); _repository.SaveAll(); } } } #endregion ProjectPlan oldProjectPlan = _repository.GetProjectPlanById(id); oldProjectPlan.ProjectId = newProjectPlan.ProjectId; oldProjectPlan.DateReg = newProjectPlan.DateReg; oldProjectPlan.Description = newProjectPlan.Description; oldProjectPlan.PersonId = newProjectPlan.PersonId; oldProjectPlan.Activity = newProjectPlan.Activity; oldProjectPlan.WorkTypeId = newProjectPlan.WorkTypeId; oldProjectPlan.WorkerList = WorkerList; oldProjectPlan.WorkerListCodes = WorkerCodes; oldProjectPlan.OstadKarList = OstadKarList; oldProjectPlan.OstadKarCodes = OstadKarCodes; oldProjectPlan.OstadKarList = OstadKarList; oldProjectPlan.OstadKarCodes = OstadKarCodes; oldProjectPlan.SarparastList = SarparastList; oldProjectPlan.SarparastCodes = SarparastCodes; _repository.SaveAll(); } // } return(RedirectToAction("AllProjectPlan")); } else { return(Json(new { Result = "اسم ها نباید یکسان باشد" })); } }
public IActionResult AddEditProjectPlan(int?id) { ProjectPlanViewModel model = new ProjectPlanViewModel(); try { var projectPlan = _repository.GetProjectPlanById(id); ViewBag.Project = _repository.GetAllProject(); ViewBag.WorkType = _repository.GetAllWorkType(); ViewBag.Person = _repository.GetAllPerson(); string[] WorkerListCodesTemp = new string[0]; string[] SarparastListCodesTemp = new string[0]; string[] OstadKarListCodesTemp = new string[0]; string worklistForPass = string.Empty; string SarparastlistForPass = string.Empty; string OstadkarlistForPass = string.Empty; if (id.HasValue) { if (projectPlan.WorkerListCodes != null) { WorkerListCodesTemp = projectPlan.WorkerListCodes.Split(','); ViewBag.tempq = WorkerListCodesTemp; worklistForPass = projectPlan.WorkerListCodes; } if (projectPlan.SarparastCodes != null) { SarparastListCodesTemp = projectPlan.SarparastCodes.Split(','); SarparastlistForPass = projectPlan.SarparastCodes; } if (projectPlan.OstadKarCodes != null) { OstadKarListCodesTemp = projectPlan.OstadKarCodes.Split(','); OstadkarlistForPass = projectPlan.OstadKarCodes; } model = _mapper.Map <ProjectPlan, ProjectPlanViewModel>(projectPlan); } // model.GetPersonList = _repository.GetAllPerson().Select(s => new Person { Id = s.Id, FullName = s.FullName }).ToList(); List <Person> Lperson; Person Tperson; //----------worker----------------- Lperson = new List <Person>(); var queryWorker = _repository.GetAllTransitInfo_EnableForCombo_Worker(worklistForPass, "worker"); // if (id.HasValue) // queryWorker = _repository.GetAllTransitInfo_EnableForComboWithoutTime_Worker(worklistForPass,"worker"); foreach (var item in queryWorker) { Tperson = new Person(); Tperson.Id = item.Id; Tperson.FullName = item.FullName; Lperson.Add(Tperson); } model.GetWorkerList = Lperson; model.workerList = WorkerListCodesTemp; //-------------Sarparast------------ Lperson = new List <Person>(); var querySarparast = _repository.GetAllTransitInfo_EnableForCombo_Worker(SarparastlistForPass, "sarparast"); // if (id.HasValue) // querySarparast = _repository.GetAllTransitInfo_EnableForComboWithoutTime_Worker(SarparastlistForPass, "sarparast"); foreach (var item in querySarparast) { Tperson = new Person(); Tperson.Id = item.Id; Tperson.FullName = item.FullName; Lperson.Add(Tperson); } model.GetSarparastList = Lperson; model.sarparastList = SarparastListCodesTemp; //------------Ostadkar--------------- Lperson = new List <Person>(); var queryOstadKar = _repository.GetAllTransitInfo_EnableForCombo_Worker(OstadkarlistForPass, "ostadkar"); // if (id.HasValue) // queryOstadKar = _repository.GetAllTransitInfo_EnableForComboWithoutTime_Worker(OstadkarlistForPass, "ostadkar"); foreach (var item in queryOstadKar) { Tperson = new Person(); Tperson.Id = item.Id; Tperson.FullName = item.FullName; Lperson.Add(Tperson); } model.GetOstadKarList = Lperson; model.ostadkarList = OstadKarListCodesTemp; // ViewBag.ProcessName = _repository.GetAllControlTools(); return(PartialView("~/Areas/Transit/Views/Transit/AddEditProjectPlan.cshtml", model)); } catch (Exception ex) { return(BadRequest("Failed to get orders")); } }