Beispiel #1
0
        public void ChangePartStatus(ChangePartStatusBindingModel model)
        {
            var part = partLogic.Read(new PartBindingModel
            {
                Id         = model.PartId,
                PartStatus = PartStatus.Костыль
            })?.FirstOrDefault();

            if (part == null)
            {
                throw new Exception("Деталь не найдена");
            }

            if (part.PartCount - model.PartCount >= 0)
            {
                partLogic.CreateOrUpdate(new PartBindingModel
                {
                    Id           = part.Id,
                    ProviderId   = part.ProviderId,
                    ProviderFIO  = part.ProviderFIO,
                    PartType     = part.PartType,
                    PartColor    = part.PartColor,
                    PartCount    = model.PartCount,
                    PartStatus   = PartStatus.Убыл,
                    DateRecieve  = part.DateRecieve,
                    DateTransfer = DateTime.Now
                });

                partLogic.CreateOrUpdate(new PartBindingModel
                {
                    ProviderId  = part.ProviderId,
                    ProviderFIO = part.ProviderFIO,
                    PartType    = part.PartType,
                    PartColor   = part.PartColor,
                    PartCount   = part.PartCount - model.PartCount,
                    PartStatus  = PartStatus.Прибыл,
                    DateRecieve = part.DateRecieve
                });
            }
            else
            {
                throw new Exception("Не хватает деталей");
            }
        }
Beispiel #2
0
        public void AddPart(PartBindingModel model)
        {
            var           parts = partLogic.Read(null);
            PartViewModel part  = null;

            foreach (var p in parts)
            {
                if (p.PartType == model.PartType && p.PartColor == model.PartColor && p.PartStatus == model.PartStatus)
                {
                    part = p;
                    break;
                }
            }

            if (part != null)
            {
                partLogic.CreateOrUpdate(new PartBindingModel
                {
                    Id          = part.Id,
                    PartType    = part.PartType,
                    PartColor   = part.PartColor,
                    PartCount   = part.PartCount + model.PartCount,
                    PartStatus  = part.PartStatus,
                    DateRecieve = part.DateRecieve
                });
            }
            else
            {
                partLogic.CreateOrUpdate(new PartBindingModel
                {
                    PartType    = model.PartType,
                    PartColor   = model.PartColor,
                    PartCount   = model.PartCount,
                    PartStatus  = PartStatus.Прибыл,
                    DateRecieve = DateTime.Now
                });
            }
        }
Beispiel #3
0
 public void OrderPart(PartBindingModel model) => _part.CreateOrUpdate(model);