public BrgModel Save(BrgModel brg) { // validasi var result = brg; result = TryValidate(brg); using (var trans = TransHelper.NewScope()) { // save if (brg.BrgID.Trim() == "") { brg.BrgID = _paramNoBL.GenNewID("B", 5); _brgDal.Insert(result); // insert ke barangStokHarga _brgStokHargaBL.UpdateStok(brg.BrgID); } else { var dummyBrg = _brgDal.GetData(brg.BrgID); if (dummyBrg == null) { _brgDal.Insert(result); // insert ke barangStokHarga _brgStokHargaBL.UpdateStok(brg.BrgID); } else { _brgDal.Update(result); // insert ke barangStokHarga _brgStokHargaBL.UpdateStok(brg.BrgID); } } trans.Complete(); } return(result); }
public IEnumerable <BPStokModel> Generate(StokAdjustmentModel adjustment) { if (adjustment == null) { throw new ArgumentNullException(nameof(adjustment)); } if (adjustment.ListBrg == null) { throw new ArgumentNullException(nameof(adjustment.ListBrg)); } List <BPStokModel> result = null; // generate yang plus dulu foreach (var item in adjustment.ListBrg.Where(x => x.QtyAdjust > 0)) { var stokItem = new StokItem { ReffID = adjustment.StokAdjustmentID, Tgl = adjustment.TglTrs, Jam = adjustment.JamTrs, BrgID = item.BrgID, BrgName = item.BrgName, QtyIn = item.QtyAdjust, NilaiHpp = item.HppAdjust, QtyOut = 0, HargaJual = 0, BPStokID = "", }; var genResult = AddStok(stokItem); if (result == null) { result = new List <BPStokModel>(); } result.Add(genResult); } // generate yang minus kemudian foreach (var item in adjustment.ListBrg.Where(x => x.QtyAdjust < 0)) { var stokItem = new StokItem { ReffID = adjustment.StokAdjustmentID, Tgl = adjustment.TglTrs, Jam = adjustment.JamTrs, BrgID = item.BrgID, BrgName = item.BrgName, QtyIn = 0, NilaiHpp = 0, QtyOut = item.QtyAdjust * -1, HargaJual = 0, BPStokID = "", }; var genResult = RemoveStok(stokItem); if (result == null) { result = new List <BPStokModel>(); } foreach (var item2 in genResult) { result.Add(item2); } } // update stok info foreach (var item in adjustment.ListBrg) { _brgStokHargaBL.UpdateStok(item.BrgID); } return(result); }