Beispiel #1
0
        public static void CreateNew(NewEqRequestModel model)
        {
            try
            {
                var flowDefine = FlowBAL.GetFlowDefine("NEWEQ");
                model.CurrentFlowIndex = 0;

                var nextStep = FlowBAL.MoveToNextFlowStep(model.CurrentFlowIndex.Value, flowDefine);
                if (nextStep != null)
                {
                    model.CurrentFlowIndex = nextStep.Index;
                    model.Assignee         = nextStep.Owner;
                    model.IsComplete       = false;
                }
                else
                {
                    model.IsComplete = true;
                }

                FlowDAL.CreateNewEqRequest(model);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #2
0
        public static void ApproveNEWEQRequest(NewEqRequestModel model)
        {
            using (var context = new BEMSContext())
            {
                if (model.IsComplete == true)
                {
                    var ticket = context.FlowNewEqRequests.SingleOrDefault(a => a.ID.Equals(model.ID));
                    if (ticket == null)
                    {
                        throw new NullReferenceException(string.Format("单据未找到。ID:{0}。", model.ID));
                    }
                    ticket.IsComplete = true;
                }
                else
                {
                    var ticketFlow = context.FlowProgress.SingleOrDefault(a => a.TicketID.Equals(model.ID));
                    ticketFlow.Assignee        = model.Assignee;
                    ticketFlow.AssignTime      = DateTime.Now;
                    ticketFlow.CurrentFlowStep = model.CurrentFlowIndex.Value;
                    ticketFlow.Comments        = model.Comments;
                    ticketFlow.LastUpdateBy    = model.LastModifyBy;
                    ticketFlow.LastUpdateTime  = model.LastModifyTime.Value;
                }

                context.SaveChanges();
            }
        }
Beispiel #3
0
        public static void CreateNewEqRequest(NewEqRequestModel model)
        {
            using (var context = new BEMSContext())
            {
                model.ID = "NEWEQ_" + DateTime.Now.ToString("yyyyMMddHHmmss");
                context.FlowNewEqRequests.Add(new EF.DBModels.FlowNewEqRequest()
                {
                    ID          = model.ID,
                    Amount      = model.Amount,
                    EModel      = model.EModel,
                    EType       = model.EType,
                    Memo        = model.Memo,
                    Requester   = model.Requester,
                    RequestTime = model.RequestTime,
                    IsComplete  = model.IsComplete
                });

                context.FlowProgress.Add(new EF.DBModels.FlowProgress
                {
                    FlowType        = "NEWEQ",
                    Assignee        = model.Assignee,
                    AssignTime      = model.RequestTime,
                    Comments        = string.Empty,
                    CurrentFlowStep = model.CurrentFlowIndex.Value,
                    TicketID        = model.ID,
                    LastUpdateBy    = model.Requester,
                    LastUpdateTime  = model.RequestTime
                });

                context.SaveChanges();
            }
        }
Beispiel #4
0
        public IActionResult CreateNewEqRequest([FromBody] dynamic data)
        {
            var model = new NewEqRequestModel()
            {
                Amount      = data.Amount,
                EModel      = data.EModel,
                EType       = data.EType,
                Memo        = data.Memo,
                Requester   = data.Requester,
                RequestTime = data.RequestTime
            };

            try
            {
                NewEqRequestFlow.CreateNew(model);
                return(new JsonResult(new
                {
                    Flag = true,
                    Message = ""
                }));
            }
            catch (Exception e)
            {
                return(new JsonResult(new
                {
                    Flag = false,
                    Message = e.Message
                }));
            }
        }
Beispiel #5
0
        public static void ApproveNewEQRequest(string ticketID, string currentUser, string strComments)
        {
            try
            {
                var flowDefine  = GetFlowDefine("NEWEQ");
                var ticket      = FlowDAL.GetSingleNEWEQRequestByTickeyNo(ticketID);
                var currentStep = flowDefine.Steps.SingleOrDefault(a => a.Index == ticket.CurrentFlowIndex);
                var nextStep    = MoveToNextFlowStep(currentStep.Index, flowDefine);

                if (currentStep.Owner.Equals(ticket.Assignee))
                {
                    if (nextStep == null)
                    {
                        var ticketComplete = new NewEqRequestModel()
                        {
                            ID               = ticketID,
                            Assignee         = null,
                            CurrentFlowIndex = null,
                            IsComplete       = true,
                            Comments         = strComments,
                            LastModifyBy     = currentUser,
                            LastModifyTime   = DateTime.Now
                        };
                        FlowDAL.ApproveNEWEQRequest(ticketComplete);
                    }
                    else
                    {
                        var ticketUpdate = new NewEqRequestModel()
                        {
                            ID               = ticketID,
                            Assignee         = nextStep.Owner,
                            CurrentFlowIndex = nextStep.Index,
                            IsComplete       = false,
                            Comments         = strComments,
                            LastModifyBy     = currentUser,
                            LastModifyTime   = DateTime.Now
                        };
                        FlowDAL.ApproveNEWEQRequest(ticketUpdate);
                    }
                }
                else
                {
                    throw new Exception("审批人信息不正确!");
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Beispiel #6
0
 public static void ApproveScrapQRequest(NewEqRequestModel model)
 {
 }