Пример #1
0
        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;
        }
Пример #3
0
        public IActionResult DeleteProjectPlan(int id, ProjectPlanViewModel model)
        {
            ProjectPlan projectPlan = _repository.GetProjectPlanById(id);

            _repository.DeleteEntity(projectPlan);

            _repository.SaveAll();
            return(RedirectToAction("AllProjectPlan"));
        }
Пример #4
0
        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;
        }
Пример #10
0
        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));
        }
Пример #11
0
        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 = "اسم ها نباید یکسان باشد" }));
            }
        }
Пример #12
0
        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"));
            }
        }