public void UpdateTest() { var obj = _bll.GetByID("70c46d69-ca7c-46b2-bd18-ebf03a28d02b"); obj.nota = "22222"; obj.tanggal = new DateTime(2017, 1, 1); obj.tanggal_tempo = new DateTime(2017, 1, 25); obj.ppn = 20000; obj.diskon = 7500; obj.keterangan = "tesssss"; foreach (var itemBeli in obj.item_beli) { itemBeli.jumlah = itemBeli.jumlah + 1; itemBeli.harga = itemBeli.harga + 1000; itemBeli.diskon = 0; itemBeli.entity_state = EntityState.Modified; } var validationError = new ValidationError(); var result = _bll.Update(obj, ref validationError); Console.WriteLine("Error : " + validationError.Message); Assert.IsTrue(result != 0); var updatedObj = _bll.GetByID(obj.beli_produk_id); Assert.IsNotNull(updatedObj); Assert.AreEqual(obj.beli_produk_id, updatedObj.beli_produk_id); Assert.AreEqual(obj.pengguna_id, updatedObj.pengguna_id); Assert.AreEqual(obj.supplier_id, updatedObj.supplier_id); Assert.AreEqual(obj.nota, updatedObj.nota); Assert.AreEqual(obj.tanggal, updatedObj.tanggal); Assert.AreEqual(obj.tanggal_tempo, updatedObj.tanggal_tempo); Assert.AreEqual(obj.ppn, updatedObj.ppn); Assert.AreEqual(obj.diskon, updatedObj.diskon); Assert.AreEqual(obj.total_nota, updatedObj.total_nota); //Assert.AreEqual(obj.total_pelunasan, newObj.total_pelunasan); Assert.AreEqual(obj.keterangan, updatedObj.keterangan); // tes hasil update ke tabel item beli Assert.AreEqual(3, updatedObj.item_beli.Count); var index = 0; foreach (var itemBeliUpdated in updatedObj.item_beli) { Assert.AreEqual(obj.item_beli[index].produk_id, itemBeliUpdated.produk_id); Assert.AreEqual(obj.item_beli[index].harga, itemBeliUpdated.harga); Assert.AreEqual(obj.item_beli[index].jumlah, itemBeliUpdated.jumlah); Assert.AreEqual(obj.item_beli[index].diskon, itemBeliUpdated.diskon); index++; } }
protected override void Simpan() { if (this._supplier == null || txtSupplier.Text.Length == 0) { MsgHelper.MsgWarning("'Supplier' tidak boleh kosong !"); txtSupplier.Focus(); return; } var total = SumGrid(this._listOfItemBeli); if (!(total > 0)) { MsgHelper.MsgWarning("Anda belum melengkapi inputan data produk !"); return; } if (rdoKredit.Checked) { if (!DateTimeHelper.IsValidRangeTanggal(dtpTanggal.Value, dtpTanggalTempo.Value)) { MsgHelper.MsgNotValidRangeTanggal(); return; } } if (!MsgHelper.MsgKonfirmasi("Apakah proses ingin dilanjutkan ?")) { return; } if (_isNewData) { _beli = new BeliProduk(); } _beli.pengguna_id = this._pengguna.pengguna_id; _beli.Pengguna = this._pengguna; _beli.supplier_id = this._supplier.supplier_id; _beli.Supplier = this._supplier; _beli.nota = txtNota.Text; _beli.tanggal = dtpTanggal.Value; _beli.tanggal_tempo = DateTimeHelper.GetNullDateTime(); _beli.is_tunai = rdoTunai.Checked; if (rdoKredit.Checked) // pembelian kredit { _beli.tanggal_tempo = dtpTanggalTempo.Value; } _beli.ppn = NumberHelper.StringToDouble(txtPPN.Text); _beli.diskon = NumberHelper.StringToDouble(txtDiskon.Text); _beli.keterangan = txtKeterangan.Text; _beli.item_beli = this._listOfItemBeli.Where(f => f.Produk != null).ToList(); foreach (var item in _beli.item_beli) { if (!(item.harga > 0)) { item.harga = item.Produk.harga_beli; } } if (!_isNewData) // update { _beli.item_beli_deleted = _listOfItemBeliDeleted; } var result = 0; var validationError = new ValidationError(); using (new StCursor(Cursors.WaitCursor, new TimeSpan(0, 0, 0, 0))) { if (_isNewData) { result = _bll.Save(_beli, ref validationError); } else { result = _bll.Update(_beli, ref validationError); } if (result > 0) { try { if (chkCetakNotaBeli.Checked) { CetakNota(_beli.beli_produk_id); } } catch { } Listener.Ok(this, _isNewData, _beli); _supplier = null; _listOfItemBeli.Clear(); _listOfItemBeliDeleted.Clear(); this.Close(); } else { if (validationError.Message.NullToString().Length > 0) { MsgHelper.MsgWarning(validationError.Message); base.SetFocusObject(validationError.PropertyName, this); } else { MsgHelper.MsgUpdateError(); } } } }