Пример #1
0
        public void DeleteTest()
        {
            using (var trans = TransHelper.NewScope())
            {
                //  arrange


                //  act
                _bpStokDal.Delete("A1");

                //  assert
            }
        }
Пример #2
0
        public IEnumerable <BPStokModel> Generate(PenjualanModel penjualan)
        {
            if (penjualan == null)
            {
                throw new ArgumentNullException(nameof(penjualan));
            }
            if (penjualan.ListBrg == null)
            {
                throw new ArgumentNullException(nameof(penjualan.ListBrg));
            }

            List <BPStokModel> result = null;

            // generate minus
            foreach (var item in penjualan.ListBrg)
            {
                var stokItem = new StokItem
                {
                    ReffID    = penjualan.PenjualanID,
                    Tgl       = penjualan.TglPenjualan,
                    Jam       = penjualan.JamPenjualan,
                    BrgID     = item.BrgID,
                    BPStokID  = item.BPStokID,
                    BrgName   = item.BrgName,
                    QtyIn     = 0,
                    NilaiHpp  = 0,
                    QtyOut    = item.Qty,
                    HargaJual = item.Harga,
                };
                var genResult = RemoveStok(stokItem);
                if (result == null)
                {
                    result = new List <BPStokModel>();
                }
                foreach (var item2 in genResult)
                {
                    result.Add(item2);
                }
            }

            if (result != null)
            {
                //  delete data lama
                foreach (var item in result)
                {
                    _bpStokDal.Delete(item.BPStokID);
                    _bpStokDetilDal.Delete(item.BPStokID);
                }

                //  insert data baru
                foreach (var item in result)
                {
                    _bpStokDal.Insert(item);
                    foreach (var item2 in item.ListDetil)
                    {
                        _bpStokDetilDal.Insert(item2);
                    }
                }
            }

            //  update stok info
            foreach (var item in penjualan.ListBrg)
            {
                _brgStokHargaBL.UpdateStok(item.BrgID);
            }

            return(result);
        }