Пример #1
0
 public ActionResult CommRollBack(Timesheet.TimesheetForWeek tsfw, string comment)
 {
     if (tsfw != null && tsfw.TimesheetList != null && tsfw.TimesheetList.Count > 0)
     {
         var operateTime = DateTime.Now;
         foreach (var ts in tsfw.TimesheetList)
         {
             ts.Status       = ApproveStatus.Draft;
             ts.Approver     = ts.Creator;
             ts.ApprovedTime = operateTime;
             AddOrEdit(ts);
             _alService.AddApproveLog(new ApproveLog.ApproveLog()
             {
                 WorkflowInstanceID = ts.WorkflowInstanceID,
                 OperateTime        = operateTime,
                 Comment            = comment,
                 OperateType        = "撤回",
                 CurrentOperator    = Common.CommonHelper.CurrentUser,
                 NextOperator       = "",
                 Creator            = Common.CommonHelper.CurrentUser
             });
         }
         return(Json(new { success = true, message = "撤回周工时数据成功!" }, JsonRequestBehavior.AllowGet));
     }
     else
     {
         return(Json(new { success = false, message = "需要撤回周工时数据为空!" }, JsonRequestBehavior.AllowGet));
     }
 }
Пример #2
0
        public ActionResult SubmitFormForWeek(Timesheet.TimesheetForWeek tsfw, string comment)
        {
            var us = GetUserTeamId();

            if (us == -1)
            {
                return(Json(new { success = false, message = "请先在个人设置中设置科室!" }, JsonRequestBehavior.AllowGet));
            }
            if (tsfw != null && tsfw.TimesheetList != null && tsfw.TimesheetList.Count > 0)
            {
                var operateTime           = DateTime.Now;
                var startDate             = tsfw.TimesheetList.Min(ts => ts.TimesheetDate).Value.ToString("yyyy-MM-dd");
                var endDate               = tsfw.TimesheetList.Max(ts => ts.TimesheetDate).Value.ToString("yyyy-MM-dd");
                var newWorkflowInstanceID = string.Empty;
                Dictionary <string, string> approverWFIDList = new Dictionary <string, string>();
                foreach (var ts in tsfw.TimesheetList)
                {
                    var nextOperator = GetNextOperator(ts);
                    if (approverWFIDList.ContainsKey(nextOperator))
                    {
                        newWorkflowInstanceID = approverWFIDList[nextOperator];
                    }
                    else
                    {
                        newWorkflowInstanceID = Guid.NewGuid().ToString();
                        approverWFIDList.Add(nextOperator, newWorkflowInstanceID);
                    }
                    if (string.IsNullOrEmpty(ts.WorkflowInstanceID))
                    {
                        ts.WorkflowInstanceID = newWorkflowInstanceID;
                    }
                    ts.Status       = ApproveStatus.Approving;
                    ts.Approver     = nextOperator;
                    ts.ApprovedTime = operateTime;
                    AddOrEdit(ts);
                    _alService.AddApproveLog(new ApproveLog.ApproveLog()
                    {
                        WorkflowInstanceID = ts.WorkflowInstanceID,
                        OperateTime        = operateTime,
                        Comment            = comment,
                        OperateType        = "提交",
                        CurrentOperator    = Common.CommonHelper.CurrentUser,
                        NextOperator       = nextOperator,
                        Creator            = Common.CommonHelper.CurrentUser,
                        StartDate          = startDate,
                        EndDate            = endDate
                    });
                }
                return(Json(new { success = true, message = "提交周工时数据成功!" }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json(new { success = false, message = "需要提交周工时数据为空!" }, JsonRequestBehavior.AllowGet));
            }
        }
Пример #3
0
        public ActionResult SaveDraftForWeek(Timesheet.TimesheetForWeek tsfw)
        {
            var us = GetUserTeamId();

            if (us == -1)
            {
                return(Json(new { success = false, message = "请先在个人设置中设置科室!" }, JsonRequestBehavior.AllowGet));
            }
            if (tsfw != null && tsfw.TimesheetList != null && tsfw.TimesheetList.Count > 0)
            {
                foreach (var ts in tsfw.TimesheetList)
                {
                    ts.Status = ApproveStatus.Draft;
                    AddOrEdit(ts);
                }
                return(Json(new { success = true, message = "保存周工时草稿数据成功!" }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json(new { success = false, message = "需要保存的周工时草稿数据为空!" }, JsonRequestBehavior.AllowGet));
            }
        }