Exemple #1
0
        public Task <int> InsertAsync(MaterialDeliveryNoteModel model)
        {
            do
            {
                var datamod = _materialDeliveryNoteDbSet.Where(a => a.BonCode == model.BonCode).Count();

                if (datamod >= 0 && datamod < 9)
                {
                    datamod   += 1;
                    model.Code = model.BonCode + $"000{datamod}";
                }
                else if (datamod >= 9 && datamod < 99)
                {
                    datamod   += 1;
                    model.Code = model.BonCode + $"00{datamod}";
                }
                else if (datamod >= 99 && datamod < 999)
                {
                    datamod   += 1;
                    model.Code = model.BonCode + $"0{datamod}";
                }
                else
                {
                    datamod   += 1;
                    model.Code = model.BonCode + $"{datamod}";
                }
            } while (_materialDeliveryNoteDbSet.Any(entity => entity.Code == model.Code));
            EntityExtension.FlagForCreate(model, _identityProvider.Username, USER_AGENT);
            _materialDeliveryNoteDbSet.Add(model);
            return(_dbContext.SaveChangesAsync());
        }
Exemple #2
0
        public void Should_Success_Instantiate()
        {
            var item = new List <ItemsViewModel>()
            {
                new ItemsViewModel()
            };
            var date = DateTimeOffset.Now;
            MaterialDeliveryNoteModel model = new MaterialDeliveryNoteModel()
            {
                Id           = 1,
                Code         = "Code",
                DateSJ       = date,
                BonCode      = "BonCode",
                DateFrom     = date,
                DateTo       = date,
                DoNumberId   = 1,
                DONumber     = "DONumber",
                FONumber     = "FONumber",
                ReceiverId   = 1,
                ReceiverCode = "ReceiverCode",
                ReceiverName = "ReceiverName",
                Remark       = "Remark",
                SCNumberId   = 1,
                SCNumber     = "SCNumber",
                SenderId     = 1,
                SenderCode   = "SenderCode",
                SenderName   = "SenderName",
                StorageId    = 1,
                StorageCode  = "StorageCode",
                StorageName  = "StorageName",
                Items        = item
            };

            Assert.Equal(1, model.Id);
            Assert.Equal("Code", model.Code);
            Assert.Equal(date, model.DateSJ);
            Assert.Equal("BonCode", model.BonCode);
            Assert.Equal(date, model.DateFrom);
            Assert.Equal(date, model.DateTo);
            Assert.Equal(1, model.DoNumberId);
            Assert.Equal("DONumber", model.DONumber);
            Assert.Equal("FONumber", model.FONumber);
            Assert.Equal(1, model.ReceiverId);
            Assert.Equal("ReceiverCode", model.ReceiverCode);
            Assert.Equal("ReceiverName", model.ReceiverName);
            Assert.Equal("Remark", model.Remark);
            Assert.Equal(1, model.SCNumberId);
            Assert.Equal("SCNumber", model.SCNumber);
            Assert.Equal(1, model.SenderId);
            Assert.Equal("SenderCode", model.SenderCode);
            Assert.Equal("SenderName", model.SenderName);
            Assert.Equal(1, model.StorageId);
            Assert.Equal("StorageCode", model.StorageCode);
            Assert.Equal("StorageName", model.StorageName);
            Assert.Equal(item, model.Items);
        }
Exemple #3
0
        public Task <int> UpdateAsync(int id, MaterialDeliveryNoteModel model)
        {
            var modelToUpdate = _materialDeliveryNoteDbSet.Include(s => s.Items).FirstOrDefault(entity => entity.Id == id);

            modelToUpdate.SetCode(model.BonCode);
            modelToUpdate.SetDateSJ(model.DateSJ);
            modelToUpdate.SetBonCode(model.BonCode);
            modelToUpdate.SetDateFrom(model.DateFrom);
            modelToUpdate.SetDateTo(model.DateTo);
            modelToUpdate.SetDONumberId(model.DoNumberId);
            modelToUpdate.SetDONumber(model.DONumber);
            modelToUpdate.SetFONumber(model.FONumber);
            modelToUpdate.SetReceiverId(model.ReceiverId);
            modelToUpdate.SetReceiverCode(model.ReceiverCode);
            modelToUpdate.SetReceiverName(model.ReceiverName);
            modelToUpdate.SetRemark(model.Remark);
            modelToUpdate.SetSCNumberId(model.SCNumberId);
            modelToUpdate.SetSCNumber(model.SCNumber);
            modelToUpdate.SetSenderId(model.SenderId);
            modelToUpdate.SetSenderCode(model.SenderCode);
            modelToUpdate.SetSenderName(model.SenderName);
            modelToUpdate.SetStorageid(model.StorageId);
            modelToUpdate.SetStorageCode(model.StorageCode);
            modelToUpdate.SetStorageName(model.StorageName);

            foreach (var itm in modelToUpdate.Items)
            {
                var locitem = model.Items.FirstOrDefault(s => s.Id == itm.Id);

                if (locitem != null)
                {
                    itm.Setidsop(locitem.IdSOP);
                    itm.SetNoSPP(locitem.NoSOP);
                    itm.SetMaterialName(locitem.MaterialName);
                    itm.SetInputLot(locitem.InputLot);
                    itm.SetWeightBruto(locitem.WeightBruto);
                    itm.SetWeightDOS(locitem.WeightDOS);
                    itm.SetWeightCone(locitem.WeightCone);
                    itm.SetWeightBale(locitem.WeightBale);
                    itm.SetGetTotal(locitem.GetTotal);
                }
                else
                {
                    _ItemsDbSet.Remove(itm);
                }
            }

            foreach (var newitm in model.Items.Where(s => s.Id == 0))
            {
                modelToUpdate.Items.Add(newitm);
            }

            return(_dbContext.SaveChangesAsync());
        }