public StokAdjustmentModel TryValidate(StokAdjustmentModel stokAdjustment) { var result = stokAdjustment; if (stokAdjustment == null) { throw new ArgumentNullException(nameof(stokAdjustment)); } // validasi tgl dan jam if (!stokAdjustment.TglTrs.IsValidTgl("dd-MM-yyyy")) { throw new ArgumentException("Invalid Tgl.Stok Adjustment"); } if (!stokAdjustment.JamTrs.IsValidJam("HH:mm:ss")) { throw new ArgumentException("Invalid Jam.Stok Adjustment"); } // cek BrgID foreach (var item in stokAdjustment.ListBrg) { var brg = _brgBL.GetData(item.BrgID); if (brg == null) { throw new ArgumentException("Invalid BrgID "); } // re-calc qty akhir item.QtyAkhir = item.QtyAwal + item.QtyAdjust; } return(result); }
public void Update(StokAdjustmentModel stokAdjustment) { var sSql = @" UPDATE StokAdjustment SET TglTrs = @TglTrs, JamTrs = @JamTrs, UserrID = @UserrID, TglVoid = @TglVoid, JamVoid = @JamVoid, UserrIDVoid = @UserrIDVoid, Keterangan = @Keterangan WHERE StokAdjustmentID = @StokAdjustmentID "; using (var conn = new SqlConnection(_connString)) using (var cmd = new SqlCommand(sSql, conn)) { cmd.AddParam("@StokAdjustmentID", stokAdjustment.StokAdjustmentID); cmd.AddParam("@TglTrs", stokAdjustment.TglTrs); cmd.AddParam("@JamTrs", stokAdjustment.JamTrs); cmd.AddParam("@UserrID", stokAdjustment.UserrID); cmd.AddParam("@TglVoid", stokAdjustment.TglVoid.ToTglYMD()); cmd.AddParam("@JamVoid", stokAdjustment.JamVoid); cmd.AddParam("@UserrIDVoid", stokAdjustment.UserrIDVoid); cmd.AddParam("@Keterangan", stokAdjustment.Keterangan); conn.Open(); cmd.ExecuteNonQuery(); } }
public void Insert(StokAdjustmentModel stokAdjustment) { var sSql = @" INSERT INTO StokAdjustment ( StokAdjustmentID, TglTrs, JamTrs, UserrID, TglVoid, JamVoid, UserrIDVoid, Keterangan) VALUES ( @StokAdjustmentID, @TglTrs, @JamTrs, @UserrID, @TglVoid, @JamVoid, @UserrIDVoid, @Keterangan) "; using (var conn = new SqlConnection(_connString)) using (var cmd = new SqlCommand(sSql, conn)) { cmd.AddParam("@StokAdjustmentID", stokAdjustment.StokAdjustmentID); cmd.AddParam("@TglTrs", stokAdjustment.TglTrs.ToTglYMD()); cmd.AddParam("@JamTrs", stokAdjustment.JamTrs); cmd.AddParam("@UserrID", stokAdjustment.UserrID); cmd.AddParam("@TglVoid", stokAdjustment.TglVoid.ToTglYMD()); cmd.AddParam("@JamVoid", stokAdjustment.JamVoid); cmd.AddParam("@UserrIDVoid", stokAdjustment.UserrIDVoid); cmd.AddParam("@Keterangan", stokAdjustment.Keterangan); conn.Open(); cmd.ExecuteNonQuery(); } }
private StokAdjustmentModel StokAdjustmentHeaderDataFactory() { var result = new StokAdjustmentModel { StokAdjustmentID = "A1", TglTrs = "20-02-2019", JamTrs = "21:39:00", }; return(result); }
public StokAdjustmentModel Save(StokAdjustmentModel stokAdjustment) { // validasi var result = stokAdjustment; result = TryValidate(stokAdjustment); var trsID = ""; // save using (var trans = TransHelper.NewScope()) { // edit: delete data lama if (stokAdjustment.StokAdjustmentID.Trim() != "") { // kembalikan stok lama _stokAdjustment2Dal.Delete(stokAdjustment.StokAdjustmentID); _stokAdjustmentDal.Delete(stokAdjustment.StokAdjustmentID); trsID = stokAdjustment.StokAdjustmentID; } // baru: generate no.transaksi else { var prefix = "AJ" + DateTime.Now.ToString("yyMM"); trsID = _paramNoBL.GenNewID(prefix, 10); } // save header stokAdjustment.StokAdjustmentID = trsID; // delete data lama _stokAdjustment2Dal.Delete(trsID); _stokAdjustmentDal.Delete(trsID); // insert data baru _stokAdjustmentDal.Insert(stokAdjustment); foreach (var item in stokAdjustment.ListBrg) { item.StokAdjustmentID = trsID; item.StokAdjustmentID2 = string.Format("{0}-{1}", trsID, item.NoUrut.ToString().PadLeft(3, '0')); _stokAdjustment2Dal.Insert(item); } trans.Complete(); } return(result); }
StokAdjustmentModel StokAdjustmentDataFactory() { var result = new StokAdjustmentModel { StokAdjustmentID = "A1", TglTrs = "01-01-2000", JamTrs = "12:12:11", UserrID = "B1", TglVoid = "01-01-3000", JamVoid = "00:00:00", UserrIDVoid = "C1", Keterangan = "D1", ListBrg = null, }; return result; }
public IEnumerable <StokAdjustmentModel> ListData(string tgl1, string tgl2) { List <StokAdjustmentModel> result = null; var sSql = @" SELECT aa.StokAdjustmentID, aa.TglTrs, aa.JamTrs, aa.UserrID, aa.TglVoid, aa.JamVoid, aa.UserrIDVoid, aa.Keterangan FROM StokAdjustment aa WHERE aa.TglTrs BETWEEN @Tgl1 AND @Tgl2 "; using (var conn = new SqlConnection(_connString)) using (var cmd = new SqlCommand(sSql, conn)) { cmd.AddParam("@Tgl1", tgl1.ToTglYMD()); cmd.AddParam("@Tgl2", tgl2.ToTglYMD()); conn.Open(); using (var dr = cmd.ExecuteReader()) { if (dr.HasRows) { result = new List <StokAdjustmentModel>(); while (dr.Read()) { var item = new StokAdjustmentModel { StokAdjustmentID = dr["StokAdjustmentID"].ToString(), TglTrs = dr["TglTrs"].ToString().ToTglDMY(), JamTrs = dr["JamTrs"].ToString(), UserrID = dr["UserrID"].ToString(), TglVoid = dr["TglVoid"].ToString().ToTglDMY(), JamVoid = dr["JamVoid"].ToString(), UserrIDVoid = dr["UserrIDVoid"].ToString(), Keterangan = dr["Keterangan"].ToString(), }; result.Add(item); } } } } return(result); }
public StokAdjustmentModel GetData(string id) { StokAdjustmentModel result = null; var sSql = @" SELECT aa.TglTrs, aa.JamTrs,aa.UserrID, aa.Keterangan, aa.TglVoid, aa.JamVoid, aa.UserrIDVoid FROM StokAdjustment aa WHERE aa.StokAdjustmentID = @StokAdjustmentID "; using (var conn = new SqlConnection(_connString)) using (var cmd = new SqlCommand(sSql, conn)) { cmd.AddParam("@StokAdjustmentID", id); conn.Open(); using (var dr = cmd.ExecuteReader()) { if (dr.HasRows) { dr.Read(); result = new StokAdjustmentModel { StokAdjustmentID = id, TglTrs = dr["TglTrs"].ToString().ToTglDMY(), JamTrs = dr["JamTrs"].ToString(), UserrID = dr["UserrID"].ToString(), TglVoid = dr["TglVoid"].ToString().ToTglDMY(), JamVoid = dr["JamVoid"].ToString(), UserrIDVoid = dr["UserrIDVoid"].ToString(), Keterangan = dr["Keterangan"].ToString(), }; } } } return(result); }
private void SaveTransaksi() { var kodeTrs = NoTrsTextBox.Text; var tglTrs = TanggalDateTime.Value.ToString("dd-MM-yyyy"); var jamTrs = JamTextBox.Text; var keterangan = KeteranganTextBox.Text; var dtlTrs = new List <StokAdjustment2Model>(); var noUrut = 0; List <StokAdjustment2Model> listDetilAdj = null; foreach (DataRow dr in DetilAdjTable.Rows) { if (listDetilAdj == null) { listDetilAdj = new List <StokAdjustment2Model>(); } if (dr["BrgID"].ToString().Trim() == "") { continue; } var dtlAdj = new StokAdjustment2Model() { NoUrut = noUrut, BrgID = dr["BrgID"].ToString(), BrgName = "", QtyAwal = Convert.ToDecimal(dr["QtyAwal"]), QtyAdjust = Convert.ToDecimal(dr["QtyAdjust"]), QtyAkhir = Convert.ToDecimal(dr["QtyAkhir"]), HppAdjust = Convert.ToDecimal(dr["Hpp"]) }; listDetilAdj.Add(dtlAdj); noUrut++; } var stokAdj = new StokAdjustmentModel { StokAdjustmentID = kodeTrs, TglTrs = tglTrs, JamTrs = jamTrs, Keterangan = keterangan, TglVoid = "3000-01-01", JamVoid = "00:00:00", UserrID = "", UserrIDVoid = "", ListBrg = listDetilAdj }; StokAdjustmentModel result = null; using (var trans = TransHelper.NewScope()) { result = _stokAdjustmentBL.Save(stokAdj); var resultGenStok = _bpStokBL.Generate(result); trans.Complete(); } if (result != null) { LastIDLabel.Text = result.StokAdjustmentID; } }
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); }