示例#1
0
        public ActionResult Create(TasksModel model)
        {
            if (!CurrentUser.IsManager)
            {
                return(RedirectToAction("NotFound", "Home"));
            }

            if (!string.IsNullOrEmpty(model.Name))
            {
                var task = new Task();
                task.ProjectId   = model.ProjectId;
                task.Leader      = model.Leader;
                task.Name        = model.Name;
                task.Priority    = model.Priority;
                task.Description = model.Description;
                task.CreateBy    = CurrentUser.Id;
                task.ModifyBy    = CurrentUser.Id;
                task.CreateDate  = DateTime.Now;
                task.ModifyDate  = DateTime.Now;
                if (!string.IsNullOrEmpty(model.StartAndEndDate) && model.StartAndEndDate.Split('-').Length == 2)
                {
                    var      strStart = model.StartAndEndDate.Split('-')[0].Trim();
                    var      strEnd   = model.StartAndEndDate.Split('-')[1].Trim();
                    DateTime sdate;
                    DateTime edate;
                    if (DateTime.TryParseExact(strStart, Helper.FormatDate,
                                               new CultureInfo("en-US"),
                                               DateTimeStyles.None,
                                               out sdate))
                    {
                        task.StartDate = sdate;
                    }

                    if (DateTime.TryParseExact(strEnd, Helper.FormatDate,
                                               new CultureInfo("en-US"),
                                               DateTimeStyles.None,
                                               out edate))
                    {
                        task.EndDate = edate;
                    }

                    TaskBO.Insert(task);
                    var department = DepartmentBO.GetById(task.Leader);
                    if (department != null && department.UserId > 0)
                    {
                        AlertBO.Insert(task.Name, (int)AlertType.Task, 0, department.UserId);
                    }

                    //TODO ... Insert document
                }
                return(RedirectToAction("Index"));
            }

            PreparingData();
            return(View(model));
        }