Esempio n. 1
0
        public WorkProgress SaveWorkProgress(WorkProgressViewModel workProg)
        {
            WorkProgress wProg = null;

            if (workProg.ProgId > 0)
            {
                wProg = this.GetWorkProgress(workProg.ProgId);
            }


            //不是创建人只能新增不能修改
            if (wProg == null ||
                wProg.Creator != _identity.Claims.Where(c => c.Type == "name").FirstOrDefault().Value)
            {
                BizSteps step = _context.BizSteps.Include("BizItem").Where(s => s.StepId == workProg.StepId).FirstOrDefault();

                wProg        = new WorkProgress();
                wProg.WoId   = workProg.WoId;
                wProg.ItemId = step.BizItem.ItemId;
                wProg.StepId = step.StepId;
                _context.WorkProgress.Add(wProg);
            }


            wProg.CompletedTime      = workProg.CompletedTime;
            wProg.ResultDesc         = workProg.ResultDesc;
            wProg.AdvanceExpenditure = workProg.AdvanceExpenditure;
            wProg.CreateTime         = DateTime.Now;
            wProg.Creator            = _identity.Claims.Where(c => c.Type == "name").FirstOrDefault().Value;
            wProg.SortIndex          = workProg.SortIndex;
            wProg.IsSuccess          = workProg.IsSuccess;
            //重算代垫费用
            WorkOrder wOrder = _context.WorkOrders.Include("WorkProgresses").Where(wo => wo.WoId == wProg.WoId).First();

            wOrder.AdvanceExpenditure = wOrder.WorkProgresses.Sum(p => p.AdvanceExpenditure);
            wOrder.State = WorkOrderState.InProcess;

            if (!string.IsNullOrEmpty(workProg.Url))
            {
                ProgressImage pi = new ProgressImage();
                if (wProg.Images.Count > 0)
                {
                    pi = wProg.Images.FirstOrDefault();
                }
                else
                {
                    wProg.Images.Add(pi);
                }
                pi.AliyunKey    = workProg.FileName;
                pi.Url          = workProg.Url;
                pi.Expiration   = DateTime.Now.AddYears(5);
                pi.WorkProgress = wProg;
            }

            _context.SaveChanges();
            return(wProg);
        }
Esempio n. 2
0
        public void DeleteBizStep(int stepId)
        {
            BizSteps step = this.GetStep(stepId);

            if (step == null)
            {
                throw new ArgumentNullException("找不到步骤信息:" + stepId);
            }

            _context.BizSteps.Remove(step);
            _context.SaveChanges();
        }
Esempio n. 3
0
        public BizSteps SaveBizStep(BizStepsViewModel step)
        {
            BizSteps bizStep = new BizSteps();

            if (step.StepId > 0)
            {
                bizStep = this.GetStep(step.StepId);
            }

            bizStep.BizItem   = this.GetBizItem(step.ItemId);
            bizStep.StepName  = step.StepName;
            bizStep.SortIndex = step.SortIndex;

            _context.BizSteps.AddOrUpdate(bizStep);
            _context.SaveChanges();

            return(bizStep);
        }