示例#1
0
 public ActionResult AddTask(TaskEntry model)
 {
     if (model.Name != null && model.DueDate >= DateTime.Today)
     {
         _repo.Add(model);
         TempData["SuccessMessage"] = "Task Created!";
         return(RedirectToAction("ViewTasks"));
     }
     else
     {
         ViewBag.ErrorMessage = "All fields mandatory and Due Date can't be in the past";
         return(View(model));
     }
 }
示例#2
0
        public IActionResult Task(Task task)
        {
            var userId = User.GetUserId();

            task.UserId = userId;

            if (!ModelState.IsValid)
            {
                var vm = new TaskViewModel
                {
                    Task    = task,
                    Heading = task.Id == 0 ?
                              "Dodawanie nowegozadania" : "Edytowanie zadania",
                    Categories = _taskRepository.GetCategories()
                };

                return(View("Task", vm));
            }
            if (task.Id == 0)
            {
                _taskRepository.Add(task);
            }
            else
            {
                _taskRepository.Update(task);
            }

            return(RedirectToAction("Tasks"));
        }
示例#3
0
        public bool CreateNewTaskForEmptyPalletSupply(int positionID)
        {
            string palletCode   = "";
            var    storageQuery = StorageRepository.GetQueryable()
                                  .Where(i => i.ProductCode == palletCode &&
                                         i.Quantity - i.OutFrozenQuantity > 0)
                                  .OrderBy(i => i.StorageTime);

            var storage  = storageQuery.FirstOrDefault();
            var position = PositionRepository.GetQueryable()
                           .Where(i => i.ID == positionID).FirstOrDefault();

            var positionCell = CellPositionRepository.GetQueryable()
                               .Where(i => i.StockInPositionID == positionID).FirstOrDefault();

            if (storage != null && position != null && positionCell != null)
            {
                var cellPosition = CellPositionRepository.GetQueryable()
                                   .Where(cp => cp.CellCode == storage.CellCode).FirstOrDefault();

                if (cellPosition != null)
                {
                    var path = PathRepository.GetQueryable()
                               .Where(p => p.OriginRegion == cellPosition.StockOutPosition.Region &&
                                      p.TargetRegion == position.Region)
                               .FirstOrDefault();
                    if (path != null)
                    {
                        var quantity = storage.Quantity - storage.OutFrozenQuantity;
                        storage.OutFrozenQuantity += quantity;

                        var newTask = new Task();
                        newTask.TaskType             = "01";
                        newTask.TaskLevel            = 0;
                        newTask.PathID               = path.ID;
                        newTask.ProductCode          = palletCode;
                        newTask.ProductName          = "空托盘";
                        newTask.OriginStorageCode    = storage.CellCode;
                        newTask.TargetStorageCode    = positionCell.CellCode;
                        newTask.OriginPositionID     = cellPosition.StockOutPositionID;
                        newTask.TargetPositionID     = positionID;
                        newTask.CurrentPositionID    = cellPosition.StockOutPositionID;
                        newTask.CurrentPositionState = "02";
                        newTask.State           = "01";
                        newTask.TagState        = "01";//拟不使用
                        newTask.Quantity        = Convert.ToInt32(storage.Quantity);
                        newTask.TaskQuantity    = Convert.ToInt32(quantity);
                        newTask.OperateQuantity = 0;
                        //newTask.OrderID = inItem.BillNo;
                        //newTask.OrderType = "01";
                        //newTask.AllotID = inItem.ID;
                        newTask.DownloadState = "1";
                        TaskRepository.Add(newTask);
                        TaskRepository.SaveChanges();
                        return(true);
                    }
                }
            }
            return(false);
        }
        void AddCollection()
        {
            var c = new TaskCollection();

            _repository.Add(c);
            this.IsSaved = false;
        }
示例#5
0
        public bool CreateNewTaskForMoveBackRemain(int taskID)
        {
            var task = TaskRepository.GetQueryable().Where(i => i.ID == taskID).FirstOrDefault();

            if (task != null)
            {
                var newTask = new Task();
                newTask.TaskType  = "01";
                newTask.TaskLevel = 0;
                //newTask.PathID = path.ID;
                newTask.ProductCode          = task.ProductCode;
                newTask.ProductName          = task.ProductName;
                newTask.OriginStorageCode    = task.TargetStorageCode;
                newTask.TargetStorageCode    = task.OriginStorageCode;
                newTask.OriginPositionID     = task.CurrentPositionID;
                newTask.TargetPositionID     = task.OriginPositionID;
                newTask.CurrentPositionID    = task.CurrentPositionID;
                newTask.CurrentPositionState = "02";
                newTask.State           = "01";
                newTask.TagState        = "01";//拟不使用
                newTask.Quantity        = task.Quantity - task.OperateQuantity;
                newTask.TaskQuantity    = task.Quantity - task.OperateQuantity;
                newTask.OperateQuantity = 0;
                //newTask.OrderID = inItem.BillNo;
                //newTask.OrderType = "01";
                //newTask.AllotID = inItem.ID;
                newTask.DownloadState = "1";
                TaskRepository.Add(newTask);
                TaskRepository.SaveChanges();
                return(true);
            }
            return(false);
        }
示例#6
0
        public async Task <IActionResult> Add(TaskAddViewModel vm)
        {
            if (ModelState.IsValid)
            {
                TaskType type = await taskTypeRepository.GetById(vm.type);

                User reporter = await userManager.GetUserAsync(HttpContext.User);

                User assignee = await userManager.FindByIdAsync(vm.assignee);

                Task task = new Task();
                task.name        = vm.name;
                task.description = vm.description;
                task.type        = type;
                task.reporter    = reporter;
                task.assignee    = assignee;
                task.state       = vm.state;

                await taskRepository.Add(task);

                return(RedirectToAction("Index", "Kanban"));
            }

            return(View(vm));
        }
        public Client()
        {
            #region Parameters

            ITaskFactory    _taskFactory    = new TaskFactory();
            ITaskRepository _taskRepository = new TaskRepository();
            const int       period          = 12;
            const int       prevTaskId      = 1;
            var             dto             = new TaskDto
            {
                Type      = TaskType.Call,
                StartLine = DateTime.Today.AddMonths(period - 1)
            };

            #endregion

            #region Doing

            var task = _taskFactory.Create(dto);

            _taskRepository.Add(task, dto.SaleId);
            _taskRepository.CompleteTask(prevTaskId);

            //TODO:company is Client and sale is Client

            #endregion
        }
示例#8
0
        /// <summary>
        /// 移库但觉作业
        /// </summary>
        /// <param name="billNo">单据号</param>
        /// <param name="errInfo">错误消息</param>
        /// <returns></returns>
        public bool MoveBIllTask(string billNo, out string errInfo)
        {
            bool result = true;

            errInfo = string.Empty;
            var moveQuery = MoveBillDetailRepository.GetQueryable().Where(i => i.BillNo == billNo);

            try
            {
                if (moveQuery.Any())
                {
                    foreach (var moveItem in moveQuery.ToArray())
                    {
                        //根据移出货位查找起始位置信息
                        var originCellPosition = CellPositionRepository.GetQueryable().FirstOrDefault(c => c.CellCode == moveItem.OutCellCode);
                        //根据移入货位查找目标位置信息
                        var targetCellPosition = CellPositionRepository.GetQueryable().FirstOrDefault(c => c.CellCode == moveItem.InCellCode);
                        //根据移出位置ID去找起始区域ID信息
                        var originPosition = PositionRepository.GetQueryable().FirstOrDefault(p => p.ID == originCellPosition.StockOutPositionID);
                        //根据移入位置ID去找目标区域ID信息
                        var targetPosition = PositionRepository.GetQueryable().FirstOrDefault(p => p.ID == targetCellPosition.StockInPositionID);
                        //根据入库的目标区域和起始位置区域去找路径信息
                        var path     = PathRepository.GetQueryable().FirstOrDefault(p => p.OriginRegionID == originPosition.RegionID && p.TargetRegionID == targetPosition.RegionID);
                        var moveTask = new Task();
                        moveTask.TaskType             = "01";
                        moveTask.TaskLevel            = 0;
                        moveTask.PathID               = path.ID;
                        moveTask.ProductCode          = moveItem.Product.ProductCode;
                        moveTask.ProductName          = moveItem.Product.ProductName;
                        moveTask.OriginStorageCode    = moveItem.OutCellCode;
                        moveTask.TargetStorageCode    = moveItem.InCellCode;
                        moveTask.OriginPositionID     = originPosition.ID;
                        moveTask.TargetPositionID     = targetPosition.ID;
                        moveTask.CurrentPositionID    = originPosition.ID;
                        moveTask.CurrentPositionState = "01";
                        moveTask.State           = "01";
                        moveTask.TagState        = "01";
                        moveTask.Quantity        = Convert.ToInt32(moveItem.RealQuantity);
                        moveTask.TaskQuantity    = Convert.ToInt32(moveItem.RealQuantity);
                        moveTask.OperateQuantity = Convert.ToInt32(moveItem.RealQuantity);
                        moveTask.OrderID         = moveItem.BillNo;
                        moveTask.OrderType       = "02";
                        moveTask.AllotID         = moveItem.ID;
                        TaskRepository.Add(moveTask);
                    }
                    TaskRepository.SaveChanges();
                }
                else
                {
                    errInfo = "当前选择订单没有移库细表数据,请重新选择!";
                }
            }
            catch (Exception e)
            {
                result  = false;
                errInfo = e.Message;
            }
            return(result);
        }
 public void Init()
 {
     _fakeConsole = Substitute.For<IConsole>();
     _project = new Project("secrets");
     _task = new Task("test", _project);
     _taskRepository = new TaskRepository();
     _taskRepository.Add(_task);
 }
示例#10
0
        /// <summary>
        /// 入库单据作业
        /// </summary>
        /// <param name="billNo">单据号</param>
        /// <param name="errInfo">错误消息</param>
        /// <returns></returns>
        public bool InBIllTask(string billNo, out string errInfo)
        {
            bool result = true;

            errInfo = string.Empty;
            var originPositionSystem = SystemParameterRepository.GetQueryable().FirstOrDefault(s => s.PARAMETER_VALUE == "IsDefaultProduct");//入库查询其实位置ID
            var allotQuery           = InBillAllotRepository.GetQueryable().Where(i => i.BillNo == billNo);

            try
            {
                if (allotQuery.Any())
                {
                    foreach (var inItem in allotQuery.ToArray())
                    {
                        //根据入库货位去找货位位置信息
                        var targetCellPosition = CellPositionRepository.GetQueryable().FirstOrDefault(c => c.CellCode == inItem.CellCode);
                        //根据入库位置ID去找目标区域ID信息
                        var targetPosition = PositionRepository.GetQueryable().FirstOrDefault(p => p.ID == targetCellPosition.StockInPositionID);
                        //根据起始位置ID去找起始区域ID信息
                        var originPosition = PositionRepository.GetQueryable().FirstOrDefault(p => p.ID == Convert.ToInt32(originPositionSystem.PARAMETER_VALUE));
                        //根据入库的目标区域和起始位置区域去找路径信息
                        var path   = PathRepository.GetQueryable().FirstOrDefault(p => p.OriginRegionID == originPosition.RegionID && p.TargetRegionID == targetPosition.RegionID);
                        var inTask = new Task();
                        inTask.TaskType             = "01";
                        inTask.TaskLevel            = 0;
                        inTask.PathID               = path.ID;
                        inTask.ProductCode          = inItem.Product.ProductCode;
                        inTask.ProductName          = inItem.Product.ProductName;
                        inTask.OriginStorageCode    = "";
                        inTask.TargetStorageCode    = inItem.CellCode;
                        inTask.OriginPositionID     = Convert.ToInt32(originPositionSystem.PARAMETER_VALUE);
                        inTask.TargetPositionID     = targetPosition.ID;
                        inTask.CurrentPositionID    = Convert.ToInt32(originPositionSystem.PARAMETER_VALUE);
                        inTask.CurrentPositionState = "01";
                        inTask.State           = "01";
                        inTask.TagState        = "01";
                        inTask.Quantity        = Convert.ToInt32(inItem.RealQuantity);
                        inTask.TaskQuantity    = Convert.ToInt32(inItem.RealQuantity);
                        inTask.OperateQuantity = Convert.ToInt32(inItem.AllotQuantity);
                        inTask.OrderID         = inItem.BillNo;
                        inTask.OrderType       = "01";
                        inTask.AllotID         = inItem.ID;
                        TaskRepository.Add(inTask);
                    }
                    TaskRepository.SaveChanges();
                }
                else
                {
                    errInfo = "当前选择订单没有分配数据,请重新选择!";
                }
            }
            catch (Exception e)
            {
                result  = false;
                errInfo = e.Message;
            }
            return(result);
        }
示例#11
0
        public IActionResult Add(Models.Task t)
        {
            t.ExpirationDate.AddDays(-1);
            t.CreationDate = DateTime.Now;
            t.isCompleted  = false;

            _taskRepository.Add(t);
            return(CreatedAtAction("Get", new { id = t.Id }, t));
        }
示例#12
0
        protected void addTask_Click(object sender, EventArgs e)
        {
            var repo = new TaskRepository();

            repo.Add(new Task()
            {
                Name = Name.Text
            });
        }
示例#13
0
        public void Init()
        {
            _taskRepository = new TaskRepository();
            var project = new Project("secrets");
            var task = new Task("Eat more donuts.", project) {Id = 1L};
            _taskRepository.Add(task);

            _fakeConsole = Substitute.For<IConsole>();
            _showCommand = new ShowCommand(_fakeConsole, _taskRepository);
        }
示例#14
0
        public static Task AddTask(string name)
        {
            var repo = new TaskRepository();
            var task = new Task()
            {
                Name = name
            };

            repo.Add(task);
            return(task);
        }
示例#15
0
 public bool AddTask(TaskN proj)
 {
     try
     {
         return(TaskRepo.Add(proj));
     }
     catch (ProjectManagerException e)
     {
         throw e;
     }
 }
        public ActionResult Create(TaskViewModel task)
        {
            if (ModelState.IsValid)
            {
                repo.Add(task.ToModel());
                repo.Save();
                return(RedirectToAction("Index"));
            }

            return(View(task));
        }
示例#17
0
        public Models.Task Post(string name, int listId)
        {
            var task = new Models.Task()
            {
                Name        = name,
                DateCreated = DateTime.Now,
                IsDeleted   = false,
                ListId      = listId
            };

            return(_taskRepo.Add(task));
        }
 public void addTask(List<TaskJson> TaskList)
 {
     TaskRepository _TaskRepository = new TaskRepository();
     TaskTranslator _TaskTranslator = new TaskTranslator();
     foreach (TaskJson Taskjson in TaskList)
     {
         Taskjson.ID = Guid.NewGuid().ToString();
         Taskjson.StartDate= Utilities.GetMiladiDate(Taskjson.TarikhStart).ToString();
         Taskjson.EstimatedTimeHore = Taskjson.EstimatedTimeText.Split('.')[0];
         Taskjson.EstimatedTimeMin = "0";
         _TaskRepository.Add(_TaskTranslator.ToEntity(Taskjson));
     }
 }
        public ActionResult Create([Bind(Include = "UtrosenoVreme,Opis,AdvokatId,PodpredmetId,Placeno")] Task task)
        {
            if (ModelState.IsValid)
            {
                task.Datum = DateTime.Now;
                _db.Add(task);

                TempData["Success"] = "Uspešno dodat task";
                return(RedirectToAction("Index"));
            }

            return(View(task));
        }
示例#20
0
        public ActionResult AddTask(Task task)
        {
            var repo = new TaskRepository();

            repo.Add(task);

            if (Request.IsAjaxRequest())
            {
                return(Json(task));
            }

            return(new RedirectResult("/Home"));
        }
示例#21
0
        public async Task <CreateTaskResponse> Handle(CreateTaskRequest request, CancellationToken cancellationToken)
        {
            var currentUser = await _userService.GetCurrentUser();

            var planStart = request.PlanStartUtc.UnixTimeStampToDateTime();
            var planEnd   = request.Type == TaskType.Unexpected
                ? planStart.AddHours(1)
                : request.PlanEndUtc.UnixTimeStampToDateTime();
            var task = new TaskEntity()
            {
                Created    = DateTime.Now,
                LoaderId   = request.LoaderId,
                Status     = TaskWorkStatus.New,
                Comment    = request.Comment,
                Type       = request.Type,
                PlanStart  = planStart,
                PlanEnd    = planEnd,
                Direction  = request.Direction,
                CreateUser = currentUser
            };

            // Баки и логисты создаются сразу в статусе InProcess
            if (request.Direction == TaskDirection.Baki || request.Direction == TaskDirection.Logistic)
            {
                var taskInWork = await _loaderService.TaskInWork(request.LoaderId.Value);

                if (taskInWork != null)
                {
                    return(new CreateTaskResponse()
                    {
                        Result = TasksRequestHandleResult.LoaderIsBusy,
                        Message = $"У погрузчика есть незавершенное задание: {taskInWork.FactStart.Value.ToString("dd.mm.yyyy HH:mm")}"
                    });
                }

                task.Status    = TaskWorkStatus.InProcess;
                task.FactStart = DateTime.Now;
                task.PlanStart = 0L.UnixTimeStampToDateTime();
                task.PlanEnd   = 0L.UnixTimeStampToDateTime();
            }

            await _taskService.InsertTaskIntoPlanTimeline(task, false);

            _taskRepository.Add(task);
            await _taskRepository.SaveChangesAsync(cancellationToken);

            await _taskHubContextWrapper.TasksChanged(task.GetDateTimeForUpdateSignal());

            return(new CreateTaskResponse());
        }
示例#22
0
        public async System.Threading.Tasks.Task <ActionResult> Add(Task newTask)
        {
            if (ModelState.IsValid)
            {
                AppUser user = await UserManager.FindByNameAsync(User.Identity.Name);

                newTask.User = user;
                repository.Add(newTask, User.Identity.Name);
                ViewBag.MessageCode = 1;
                return(PartialView("Success"));
            }
            else
            {
                return(PartialView(newTask));
            }
        }
示例#23
0
        //implementation of the button that adds tasks
        public void AddTaskButton_Click(object sender, RoutedEventArgs e)
        {
            //binding gui fields to values
            string title, description;

            title       = AddTitle.Text;
            description = AddDescription.Text;
            DateTime dueDate;

            // Check if correct dueDate was passed:
            try {
                dueDate = (DateTime)DueDateCalendar.SelectedDate;
            } catch (InvalidOperationException err) {
                MessageBox.Show("Check the due date!");
                return;
            }


            //creating a task if fields are filled
            bool isTaskValid = ValidateTask(title, description, dueDate);

            if (isTaskValid)
            {
                //Buid a new Task
                TaskBuilder builder = new TaskBuilder();

                builder.SetTaskTitle(title)
                .SetTaskDesc(description)
                .SetCreationDate()
                .SetDueDate(dueDate)
                .SetUserId(currentUser.Id)
                .SetStatus(TaskStatus.New.ToString());

                Task newTask = builder.Build();

                // Add it to the repo:
                taskRepo.Add(newTask);
                taskRepo.Save();

                MessageBox.Show("Task created successfully!");
                ReloadTaskList();
            }
        }
示例#24
0
        public void Save(Task taskToSave)
        {
            //... BONUS: Implementar o funcionamento coma matéria, colocando
            // na tela uma lista ou dropdownlist/combobox com a lista
            // de materias para o usuário escolher e associar a tarefa ...//
            //if (taskToSave.Course == null)
            //    throw new ValidationException("A tarefa deve estar associada a uma matéria");

            //... adicionar validações para descrição e para assunto ...//

            if (taskToSave.Id == 0)
            {
                _repository.Add(taskToSave);
            }
            else
            {
                _repository.Update(taskToSave);
            }
        }
示例#25
0
        public async Task <IActionResult> Add(TasksViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (model.Task != "")
                {
                    var task = new Tasks
                    {
                        Task = model.Task
                    };

                    TaskRepository.Add(task);
                }
                return(View());
            }
            else
            {
                return(View(model));
            }
        }
示例#26
0
        public async Task <IActionResult> CreateTask(TaskModel model)
        {
            if (ModelState.IsValid)
            {
                var job = new TaskHandler
                {
                    TaskMessage  = model.TaskMessage,
                    TaskName     = model.TaskName,
                    CompleteDate = DateTime.Now.AddDays(10),
                    CreateDate   = DateTime.Now,
                    DueDate      = DateTime.Now,
                    Checked      = false
                };

                await repo.Add(job);

                return(RedirectToAction("Index"));
            }
            return(CreateTask());
        }
示例#27
0
        static void Main(string[] args)
        {
            DBConnection   dbConnection   = new DBConnection();
            UserRepository userRepository = new UserRepository(dbConnection);

            User user = new User()
            {
                UserName  = "******",
                FirstName = "Misu",
                LastName  = "Chereches",
                Type      = "Employeee"
            };

            userRepository.Add(user);

            //var userList = userRepository.GetAll();

            Task task = new Task()
            {
                Name = "UNIT-1"
            };

            TaskRepository taskRepository = new TaskRepository(dbConnection);

            taskRepository.Add(task);

            Hour hour = new Hour()
            {
                UserId = 1,
                TaskId = 1,
                Count  = 2,
                Date   = DateTime.Today
            };

            HourRepository hourRepository = new HourRepository(dbConnection);

            hourRepository.Add(hour);

            List <Hour> listHours = hourRepository.GetAll();
        }
示例#28
0
        public ActionResult Create(Task task)
        {
            try
            {
                UserRepository userRepository = UserRepository.getInstance();
                var            user           = userRepository.getUser(User.Identity.GetUserId());
                if (user.TeamId == null)
                {
                    ModelState.AddModelError("", "Not allowed to create task! Not a member of any team!");
                    return(View(task));
                }
                task.TeamId    = (int)user.TeamId;
                task.CreatedBy = user.UserName;
                taskRepository.Add(task);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
示例#29
0
        /// <summary>
        /// 入库单据作业
        /// </summary>
        /// <param name="billNo">单据号</param>
        /// <param name="errInfo">错误消息</param>
        /// <returns></returns>
        public bool InBillTask(string billNo, out string errorInfo)
        {
            bool result = true;

            errorInfo = string.Empty;
            try
            {
                //查询“起始位置参数”
                var originPositionSystem = SystemParameterRepository.GetQueryable().FirstOrDefault(s => s.ParameterName == "IsDefaultProduct");
                int paramterValue        = Convert.ToInt32(originPositionSystem.ParameterValue);
                //入库分配信息
                var inBillAllot = InBillAllotRepository.GetQueryable().Where(i => i.BillNo == billNo);
                if (inBillAllot.Any())
                {
                    foreach (var inItem in inBillAllot.ToArray())
                    {
                        //根据“入库货位编码”查找“目标货位位置”
                        var targetCellPosition = CellPositionRepository.GetQueryable().FirstOrDefault(c => c.CellCode == inItem.CellCode);
                        if (targetCellPosition != null)
                        {
                            //根据“起始位置参数”查找“起始位置信息”
                            var originPosition = PositionRepository.GetQueryable().FirstOrDefault(p => p.ID == paramterValue);
                            if (originPosition != null)
                            {
                                //根据“货位位置中的入库位置ID”查找“目标位置信息”
                                var targetPosition = PositionRepository.GetQueryable().FirstOrDefault(p => p.ID == targetCellPosition.StockInPositionID);
                                if (targetPosition != null)
                                {
                                    //根据“入库(目标和起始)位置信息的区域ID”查找“路径信息”
                                    var path = PathRepository.GetQueryable().FirstOrDefault(p => p.OriginRegionID == originPosition.RegionID && p.TargetRegionID == targetPosition.RegionID);
                                    if (path != null)
                                    {
                                        var inTask = new Task();
                                        inTask.TaskType             = "01";
                                        inTask.TaskLevel            = 0;
                                        inTask.PathID               = path.ID;
                                        inTask.ProductCode          = inItem.Product.ProductCode;
                                        inTask.ProductName          = inItem.Product.ProductName;
                                        inTask.OriginStorageCode    = inItem.CellCode;
                                        inTask.TargetStorageCode    = inItem.CellCode;
                                        inTask.OriginPositionID     = Convert.ToInt32(originPositionSystem.Id);
                                        inTask.TargetPositionID     = targetPosition.ID;
                                        inTask.CurrentPositionID    = Convert.ToInt32(originPositionSystem.Id);
                                        inTask.CurrentPositionState = "01";
                                        inTask.State           = "04";
                                        inTask.TagState        = "01";
                                        inTask.Quantity        = Convert.ToInt32(inItem.RealQuantity);
                                        inTask.TaskQuantity    = Convert.ToInt32(inItem.RealQuantity);
                                        inTask.OperateQuantity = Convert.ToInt32(inItem.AllotQuantity);
                                        inTask.OrderID         = inItem.BillNo;
                                        inTask.OrderType       = "01";
                                        inTask.AllotID         = inItem.ID;
                                        inTask.DownloadState   = "0";
                                        TaskRepository.Add(inTask);
                                    }
                                    else
                                    {
                                        errorInfo = "未找到【路径信息】起始位置ID:" + originPosition.RegionID + ",目标位置ID:" + targetPosition.RegionID;
                                        result    = false;
                                    }
                                }
                                else
                                {
                                    errorInfo = "未找到【位置信息】目标货位位置ID:" + targetCellPosition.StockInPositionID;
                                    result    = false;
                                }
                            }
                            else
                            {
                                errorInfo = "请检查【系统参数】设置!";
                                result    = false;
                            }
                        }
                        else
                        {
                            errorInfo = "未找到【货位位置】入库货位编码:" + inItem.CellCode;
                            result    = false;
                        }
                    }
                    TaskRepository.SaveChanges();
                }
                else
                {
                    errorInfo = "当前选择订单没有分配数据,请重新选择!";
                }
            }
            catch (Exception e)
            {
                errorInfo = e.Message;
                result    = false;
            }
            return(result);
        }
示例#30
0
        /// <summary>
        /// 移库单据作业
        /// </summary>
        /// <param name="billNo">单据号</param>
        /// <param name="errInfo">错误消息</param>
        /// <returns></returns>
        public bool MoveBillTask(string billNo, out string errorInfo)
        {
            bool result = true;

            errorInfo = string.Empty;
            try
            {
                var moveQuery = MoveBillDetailRepository.GetQueryable().Where(i => i.BillNo == billNo);
                if (moveQuery.Any())
                {
                    foreach (var moveItem in moveQuery.ToArray())
                    {
                        //根据“移出的货位信息的编码”查找“起始的位置信息”
                        var originCellPosition = CellPositionRepository.GetQueryable().FirstOrDefault(c => c.CellCode == moveItem.OutCellCode);
                        if (originCellPosition != null)
                        {
                            //根据“移入的货位信息”查找“目标货位位置”
                            var targetCellPosition = CellPositionRepository.GetQueryable().FirstOrDefault(c => c.CellCode == moveItem.InCellCode);
                            if (targetCellPosition != null)
                            {
                                //根据“移出的位置信息ID”去找“起始位置的位置信息”
                                var originPosition = PositionRepository.GetQueryable().FirstOrDefault(p => p.ID == originCellPosition.StockOutPositionID);
                                if (originPosition != null)
                                {
                                    //根据“移入位置ID”去找“目标位置的区域ID”信息
                                    var targetPosition = PositionRepository.GetQueryable().FirstOrDefault(p => p.ID == targetCellPosition.StockInPositionID);
                                    if (targetPosition != null)
                                    {
                                        //根据“入库的目标位置信息的区域ID”和"起始的位置信息的区域ID"去找"路径信息"
                                        var path = PathRepository.GetQueryable().FirstOrDefault(p => p.OriginRegionID == originPosition.RegionID && p.TargetRegionID == targetPosition.RegionID);
                                        if (path != null)
                                        {
                                            var moveTask = new Task();
                                            moveTask.TaskType             = "01";
                                            moveTask.TaskLevel            = 0;
                                            moveTask.PathID               = path.ID;
                                            moveTask.ProductCode          = moveItem.Product.ProductCode;
                                            moveTask.ProductName          = moveItem.Product.ProductName;
                                            moveTask.OriginStorageCode    = moveItem.OutCellCode;
                                            moveTask.TargetStorageCode    = moveItem.InCellCode;
                                            moveTask.OriginPositionID     = originPosition.ID;
                                            moveTask.TargetPositionID     = targetPosition.ID;
                                            moveTask.CurrentPositionID    = originPosition.ID;
                                            moveTask.CurrentPositionState = "01";
                                            moveTask.State           = "01";
                                            moveTask.TagState        = "01";
                                            moveTask.Quantity        = Convert.ToInt32(moveItem.RealQuantity);
                                            moveTask.TaskQuantity    = Convert.ToInt32(moveItem.RealQuantity);
                                            moveTask.OperateQuantity = Convert.ToInt32(moveItem.RealQuantity);
                                            moveTask.OrderID         = moveItem.BillNo;
                                            moveTask.OrderType       = "03";
                                            moveTask.AllotID         = moveItem.ID;
                                            moveTask.DownloadState   = "0";
                                            TaskRepository.Add(moveTask);
                                        }
                                        else
                                        {
                                            errorInfo = "未找到【路径信息】起始位置ID:" + originPosition.RegionID + ",目标位置ID:" + targetPosition.RegionID;
                                            result    = false;
                                        }
                                    }
                                    else
                                    {
                                        errorInfo = "未找到目标【位置信息】移入位置ID:" + targetCellPosition.StockInPositionID;
                                        result    = false;
                                    }
                                }
                                else
                                {
                                    errorInfo = "未找到起始【位置信息】移出位置ID:" + originCellPosition.StockOutPositionID;
                                    result    = false;
                                }
                            }
                            else
                            {
                                errorInfo = "未找到目标【货位位置】移入货位编码:" + moveItem.InCellCode;
                                result    = false;
                            }
                        }
                        else
                        {
                            errorInfo = "未找到起始【货位位置】移出货位编码:" + moveItem.OutCellCode;
                            result    = false;
                        }
                    }
                    TaskRepository.SaveChanges();
                }
                else
                {
                    errorInfo = "当前选择订单没有移库细表数据,请重新选择!";
                }
            }
            catch (Exception e)
            {
                result    = false;
                errorInfo = e.Message;
            }
            return(result);
        }
示例#31
0
        // POST api/task
        public HttpResponseMessage Post([FromBody] Task value)
        {
            _repo.Add(value);

            return(Request.CreateResponse(HttpStatusCode.Created, value));
        }
示例#32
0
        public static void Main(string[] args)
        {
            _repository = new TaskRepository(CreateContext(), true);

            ClearAndPrint("Screens/Menu.txt");

            while (_running)
            {
                var input = Console.ReadKey();

                try
                {
                    if (char.IsDigit(input.KeyChar))
                    {
                        int taskId;
                        switch ((int)char.GetNumericValue(input.KeyChar))
                        {
                            case 1:
                                Clear();
                                Console.WriteLine("Current open tasks:");
                                if (!_repository.Entities.Any())
                                {
                                    Console.WriteLine("No open tasks...");
                                }

                                foreach (var task in _repository.ExecuteQuery(new ExampleRepositoryQuery { HideCompleted = true }))
                                {
                                    Console.WriteLine($"{task.Id} - {task.Description}");
                                }

                                Console.Write("\nPress any key to return...");
                                Console.ReadKey();
                                break;
                            case 2:
                                Clear();
                                var newTask = new Data.Entities.Task();
                                Console.WriteLine("Input task description:");
                                Console.Write("> ");
                                newTask.Description = Console.ReadLine();
                                _repository.Add(newTask);
                                _repository.SaveChanges();
                                break;
                            case 3:
                                Clear();
                                Console.Write("Task ID to mark as done > ");
                                taskId = (int)char.GetNumericValue(Console.ReadKey().KeyChar);
                                var taskToMark = _repository.Find(taskId);
                                taskToMark.Done = true;
                                taskToMark.LastChangeAt = DateTime.UtcNow;
                                _repository.SaveChanges();
                                break;
                            case 4:
                                Clear();
                                Console.Write("Task ID to delete > ");
                                taskId = (int)char.GetNumericValue(Console.ReadKey().KeyChar);
                                _repository.Remove(taskId);
                                _repository.SaveChanges();
                                break;
                            case 0:
                                _running = false;
                                break;
                            default:
                                throw new ArgumentOutOfRangeException(nameof(input.KeyChar));
                        }
                    }
                    else
                    {
                        throw new InvalidCastException(nameof(input.KeyChar));
                    }
                }
                catch (Exception exception)
                {
                    if (exception is ArgumentOutOfRangeException) Console.WriteLine("Invalid option selected.");
                    else if (exception is InvalidCastException) Console.WriteLine("Invalid character given.");
                    else if (exception is KeyNotFoundException) Console.WriteLine("No such task was found.");
                    else throw;
                }

                ClearAndPrint("Screens/Menu.txt");
            }
        }
示例#33
0
 public IActionResult Index(Task task)
 {
     _repo.Add(task);
     return(View("TaskAdded", task));
 }