Example #1
0
 public IActionResult Add([FromBody] LeaveAddRequest newLeave)
 {
     try
     {
         return(Ok(_leaveService.Add(newLeave)));
     }
     catch (Exception ex)
     {
         message = ex.Message;
         _log.LogError(message);
         return(StatusCode(StatusCodes.Status500InternalServerError, message));
     }
 }
        public ActionResult Apply(LeaveApplyViewModel leavemoModel)
        {
            if (ModelState.IsValid)
            {
                //判断是否需要图片附件
                switch (leavemoModel.Category)
                {
                //病假
                case LeaveCategory.病假:
                    break;

                //事假
                case LeaveCategory.事假:
                    break;
                }

                var userId = User.Identity.GetUserId();

                Leave leave = new Leave
                {
                    Category    = leavemoModel.Category,
                    StartDate   = leavemoModel.StartDate,
                    EndDate     = leavemoModel.EndDate,
                    ImageUrls   = leavemoModel.ImageUrls,
                    OneDayTime  = leavemoModel.OneDayTime,
                    OneDayStart = leavemoModel.OneDayStart,
                    OneDayEnd   = leavemoModel.OneDayEnd,
                    Reason      = leavemoModel.Reason,
                    ToWhere     = leavemoModel.ToWhere,
                    TimeType    = leavemoModel.TimeType,

                    UserId = userId,

                    LeaveStatus = 1,
                    AddTime     = DateTime.Now,
                    ResumeTime  = DateTime.Now,
                    IsResume    = 0,

                    Checks = new[]
                    {
                        new Check {
                            CheckStatus = 0, CheckTime = DateTime.Now, UserId = int.Parse(userId), CheckOrder = 0
                        },
                        new Check {
                            CheckStatus = 0, CheckTime = DateTime.Now, UserId = int.Parse(userId), CheckOrder = 1
                        }
                    }
                };
                try
                {
                    leave = _leaveService.Add(leave);
                    if (leave.LeaveId > 0)
                    {
                        return(RedirectToAction("Success", leave));
                    }
                    else
                    {
                        ModelState.AddModelError("", "请假失败");
                    }
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", "请假失败," + ex.Message);
                }
            }
            return(View(leavemoModel));
        }