Beispiel #1
0
        public JsonResult Delete(LimsTmcOutView model)
        {
            //if (ModelState.IsValid)
            //{
            string msg = string.Empty;

            try
            {
                OrderTmcRepository repository = new OrderTmcRepository();
                if (model.StateType == TmcOut.TmcOutStatuses.Repealed ||
                    model.StateType == TmcOut.TmcOutStatuses.Rejected ||
                    model.StateType == TmcOut.TmcOutStatuses.New)
                {
                    repository.Delete(model.TmcOutId);
                    repository.TocDelete(model.Id);
                }
                repository.Save();
            }
            catch (Exception e)
            {
                msg = e.ToString();
            }
            //}

            return(Json(msg, JsonRequestBehavior.AllowGet));
        }
Beispiel #2
0
        public PartialViewResult Edit(Guid id)
        {
            OrderTmcRepository repository = new OrderTmcRepository(false);
            var model = repository.LimsTmcOutViewGetAsQuarable(lto => lto.Id == id).FirstOrDefault();

            return(PartialView("OrderTmcView", model));
        }
Beispiel #3
0
        public JsonResult Update(LimsTmcOutView model)
        {
            // if (ModelState.IsValid)
            // {
            OrderTmcRepository repository = new OrderTmcRepository();

            TmcOut m = repository.GetById(model.TmcOutId);

            m.Note            = model.Note;
            m.OutTypeDicId    = model.OutTypeDicId;
            m.OwnerEmployeeId = model.OwnerEmployeeId;
            repository.Update(m);

            TmcOutCount mcount = repository.TmcOutCountGetAsQuarable(toc => toc.Id == model.Id).FirstOrDefault();

            if (mcount != null)
            {
                mcount.Count = model.Count;
                repository.Update(m);
            }

            repository.Save();
            // }

            return(Json(model, JsonRequestBehavior.AllowGet));
        }
Beispiel #4
0
        /// <summary>
        /// Выдать ТМЦ
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public JsonResult IssueOrder(LimsTmcOutView model)
        {
            string msg = string.Empty;

            try
            {
                OrderTmcRepository repository = new OrderTmcRepository();
                var tmcOut = repository.GetById(model.TmcOutId);
                tmcOut.StateType = TmcOut.TmcOutStatuses.Issued;
                repository.Update(tmcOut);

                var tmcOutCount = repository.TmcOutCountGetAsQuarable(toc => toc.Id == model.Id).FirstOrDefault();
                if (tmcOutCount != null)
                {
                    tmcOutCount.StateType = TmcOut.TmcOutStatuses.Issued;
                    tmcOutCount.CountFact = model.CountFact;
                    repository.TocUpdate(tmcOutCount);
                }

                if (EmployeePermissionHelper.IsFrpCenterTmc)
                {
                    UpdateTmcResidue(model.TmcId, model.CountFact);
                }

                repository.Save();
            }
            catch (Exception e)
            {
                msg = e.ToString();
            }
            return(Json(msg, JsonRequestBehavior.AllowGet));
        }
Beispiel #5
0
        public JsonResult ReadData([DataSourceRequest] DataSourceRequest request)
        {
            OrderTmcRepository repository = new OrderTmcRepository();
            var qr = repository.LimsTmcOutViewGetAsQuarable();

            qr = base.FilterByCurrentUser(qr, repository.GetContext());
            qr = qr.OrderByDescending(m => m.CreatedDate);
            var data = qr;

            return(Json(data.ToDataSourceResult(request), JsonRequestBehavior.AllowGet));
        }
Beispiel #6
0
        public JsonResult ReadData([DataSourceRequest] DataSourceRequest request)
        {
            OrderTmcRepository repository = new OrderTmcRepository();
            var qr = repository.LimsTmcOutViewGetAsQuarable();

            qr = base.FilterOwnerByCurrentUser(qr, repository.GetContext());
            qr = qr.OrderByDescending(m => m.CreatedDate);
            var data = qr.Where(lto => lto.StateType == TmcOut.TmcOutStatuses.Ordered ||
                                lto.StateType == TmcOut.TmcOutStatuses.Issued || lto.StateType == TmcOut.TmcOutStatuses.Rejected);

            // || lto.StateType == TmcOut.TmcOutStatuses.Issued

            return(Json(data.ToDataSourceResult(request), JsonRequestBehavior.AllowGet));
        }
Beispiel #7
0
        // GET: OrderTmc
        public PartialViewResult OrderTmcView(Guid tmcId, Guid?id = null, string note = "", bool isEdit = false)
        {
            TmcRepository  tmcRepository = new TmcRepository(false);
            LimsTmcOutView toc           = new LimsTmcOutView()
            {
                Id       = tmcId,
                TmcId    = tmcId,
                TmcOutId = id ?? Guid.Empty
            };

            if (id == null)
            {
                var tmcOrdering = tmcRepository.GetAsQuarable(tmc => tmc.Id == tmcId).FirstOrDefault();
                if (tmcOrdering != null)
                {
                    toc.Name                    = tmcOrdering.Name;
                    toc.Count                   = tmcOrdering.CountActual;
                    toc.OwnerEmployeeId         = tmcOrdering.OwnerEmployeeId;
                    toc.MeasureTypeConvertDicId = tmcOrdering.MeasureTypeConvertDicId;
                }

                DictionaryRepository dicRep = new DictionaryRepository(false);
                var outTypeId = dicRep.GetAsQuarable(d => d.Type == Dictionary.OutTypes.DicCode && d.ExpireDate == null)
                                .Select(d => d.Id)
                                .FirstOrDefault();
                toc.OutTypeDicId = outTypeId;
                toc.Note         = note;
            }
            else
            {
                OrderTmcRepository otRepo = new OrderTmcRepository(false);
                toc = otRepo.LimsTmcOutViewGetAsQuarable(lto => lto.TmcId == tmcId && lto.TmcOutId == id).FirstOrDefault();

                var tmcOrdering = tmcRepository.GetAsQuarable(tmc => tmc.Id == tmcId).FirstOrDefault();
                if (tmcOrdering != null && toc != null)
                {
                    toc.MeasureTypeConvertDicId = tmcOrdering.MeasureTypeConvertDicId;
                }
            }
            if (toc != null)
            {
                toc.IsEdit = isEdit;
            }
            return(PartialView(toc));
        }
Beispiel #8
0
        protected string ApplyAction(Guid tmcOutId, int status)
        {
            string msg = string.Empty;

            try
            {
                OrderTmcRepository repository = new OrderTmcRepository();
                var tmcOut = repository.GetById(tmcOutId);
                tmcOut.StateType = status;
                repository.Update(tmcOut);
                repository.Save();
            }
            catch (Exception e)
            {
                msg = e.ToString();
            }
            return(msg);
        }
Beispiel #9
0
        public PartialViewResult DeliveryTmcIssueView(Guid id)
        {
            OrderTmcRepository repository = new OrderTmcRepository(false);
            var limsTmcOutModel           = repository.LimsTmcOutViewGetAsQuarable(lto => lto.Id == id).FirstOrDefault();

            if (limsTmcOutModel != null)
            {
                TmcRepository tmcRepo  = new TmcRepository(false);
                var           tmcState = tmcRepo.LtaGetAsQuarable(lta => lta.Id == limsTmcOutModel.TmcId).FirstOrDefault();


                if (EmployeePermissionHelper.IsFrpCenterTmc)
                {
                    if (tmcState == null)
                    {
                        var tmcView = tmcRepo.TvGetAsQuarable(tv => tv.Id == limsTmcOutModel.TmcId).FirstOrDefault();

                        limsTmcOutModel.CountFact = tmcView != null
                            ? Math.Min(tmcView.CountActual, limsTmcOutModel.Count)
                            : limsTmcOutModel.Count;

                        limsTmcOutModel.CountActual = tmcView?.CountActual ?? 0;
                    }
                    else
                    {
                        limsTmcOutModel.CountFact = tmcState.TmcCountActual != null
                            ? Math.Min(tmcState.TmcCountActual.Value, limsTmcOutModel.Count)
                            : limsTmcOutModel.Count;

                        limsTmcOutModel.CountActual = tmcState.TmcCountActual ?? 0;
                    }
                }
                else
                {
                    limsTmcOutModel.CountFact = Math.Min(tmcState?.CountActual ?? 0, limsTmcOutModel.Count);

                    if (tmcState?.CountActual != null)
                    {
                        limsTmcOutModel.CountActual = tmcState.CountActual.Value;
                    }
                }
            }
            return(PartialView(limsTmcOutModel));
        }
Beispiel #10
0
        public JsonResult ConfirmOrderTmc(LimsTmcOutView outCount)
        {
            OrderTmcRepository repository = new OrderTmcRepository(false);

            // берем у ТМЦ
            var ownerId = outCount.OwnerEmployeeId;

            if (outCount.OwnerEmployeeId == null)
            {
                var tmcRepo = new TmcRepository(false);
                ownerId = tmcRepo.GetAsQuarable(t => t.Id == outCount.TmcId).Select(t => t.OwnerEmployeeId).FirstOrDefault();
            }


            TmcOut tmcOut = new TmcOut()
            {
                Id                = Guid.NewGuid(),
                Note              = outCount.Note,
                CreatedDate       = DateTime.Now,
                CreatedEmployeeId = UserHelper.GetCurrentEmployee().Id,
                StateType         = TmcOut.TmcOutStatuses.Ordered,
                OwnerEmployeeId   = ownerId,
                OutTypeDicId      = outCount.OutTypeDicId
            };

            repository.Insert(tmcOut);

            TmcOutCount tmcOutCount = new TmcOutCount()
            {
                Id       = Guid.NewGuid(),
                TmcId    = outCount.TmcId,
                Count    = outCount.Count,
                Note     = outCount.Note,
                TmcOutId = tmcOut.Id
            };

            repository.TocInsert(tmcOutCount);

            repository.Save();
            return(Json(outCount.TmcId, JsonRequestBehavior.AllowGet));
        }