Exemplo n.º 1
0
        public int Update(PembayaranHutangProduk obj, bool isUpdateFromPembelian)
        {
            var result = 0;

            try
            {
                obj.tanggal = obj.tanggal.ToUtc();

                var api      = string.Format("update?isUpdateFromPembelian={0}", isUpdateFromPembelian);
                var response = RestSharpHelper <OpenRetailWebApiPostResponse> .PostRequest(_apiUrl, api, obj);

                result = Convert.ToInt32(response.Results);

                if (result > 0)
                {
                    foreach (var item in obj.item_pembayaran_hutang.Where(f => f.BeliProduk != null))
                    {
                        item.entity_state = EntityState.Unchanged;
                    }
                }
            }
            catch (Exception ex)
            {
                _log.Error("Error:", ex);
            }

            return(result);
        }
Exemplo n.º 2
0
        public int Update(PembayaranHutangProduk obj, bool isUpdateFromPembelian)
        {
            var result = 0;

            try
            {
                IDbTransaction transaction = null;

                if (!isUpdateFromPembelian)
                {
                    _context.BeginTransaction();

                    transaction = _context.transaction;
                }

                // update header
                result = _context.db.Update <PembayaranHutangProduk>(obj, transaction) ? 1 : 0;

                // delete detail
                foreach (var item in obj.item_pembayaran_hutang_deleted)
                {
                    result = _context.db.Delete <ItemPembayaranHutangProduk>(item, transaction) ? 1 : 0;
                }

                // insert/update detail
                foreach (var item in obj.item_pembayaran_hutang.Where(f => f.BeliProduk != null))
                {
                    item.pembayaran_hutang_produk_id = obj.pembayaran_hutang_produk_id;

                    if (item.entity_state == EntityState.Added)
                    {
                        item.item_pembayaran_hutang_produk_id = _context.GetGUID();

                        _context.db.Insert <ItemPembayaranHutangProduk>(item, transaction);

                        result = 1;
                    }
                    else if (item.entity_state == EntityState.Modified)
                    {
                        result = _context.db.Update <ItemPembayaranHutangProduk>(item, transaction) ? 1 : 0;
                    }

                    // update entity state
                    item.entity_state = EntityState.Unchanged;
                }

                if (!isUpdateFromPembelian)
                {
                    _context.Commit();
                }

                result = 1;
            }
            catch (Exception ex)
            {
                _log.Error("Error:", ex);
            }

            return(result);
        }
        public int Save(PembayaranHutangProduk obj, bool isSaveFromPembelian)
        {
            var result = 0;

            try
            {
                IDbTransaction transaction = null;

                if (!isSaveFromPembelian)
                {
                    _context.BeginTransaction();

                    transaction = _context.transaction;
                }

                obj.pembayaran_hutang_produk_id = _context.GetGUID();

                if (obj.nota == null || obj.nota.Length == 0)
                {
                    obj.nota = this.GetLastNota();
                }

                // insert header
                _context.db.Insert <PembayaranHutangProduk>(obj, transaction);

                // insert detil
                foreach (var item in obj.item_pembayaran_hutang.Where(f => f.BeliProduk != null))
                {
                    if (item.beli_produk_id.Length > 0)
                    {
                        item.item_pembayaran_hutang_produk_id = _context.GetGUID();
                        item.pembayaran_hutang_produk_id      = obj.pembayaran_hutang_produk_id;

                        _context.db.Insert <ItemPembayaranHutangProduk>(item, transaction);

                        // update entity state
                        item.entity_state = EntityState.Unchanged;
                    }
                }

                if (!isSaveFromPembelian)
                {
                    _context.Commit();
                }

                LogicalThreadContext.Properties["NewValue"] = obj.ToJson();
                _log.Info("Tambah data");

                result = 1;
            }
            catch (Exception ex)
            {
                _log.Error("Error:", ex);
            }

            return(result);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Method khusus untuk menyimpan pembayaran hutang pembelian tunai
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        private int SavePembayaranHutang(BeliProduk obj)
        {
            PembayaranHutangProduk            pembayaranHutang;
            ItemPembayaranHutangProduk        itemPembayaranHutang;
            IPembayaranHutangProdukRepository pembayaranHutangRepo = new PembayaranHutangProdukRepository(_context, _log);

            var result = 0;

            // set detail
            itemPembayaranHutang = pembayaranHutangRepo.GetByBeliID(obj.beli_produk_id);
            if (itemPembayaranHutang != null) // sudah ada pelunasan
            {
                itemPembayaranHutang.nominal    = obj.grand_total;
                itemPembayaranHutang.BeliProduk = new BeliProduk {
                    beli_produk_id = itemPembayaranHutang.beli_produk_id
                };
                itemPembayaranHutang.entity_state = EntityState.Modified;

                // set header by detail
                pembayaranHutang          = itemPembayaranHutang.PembayaranHutangProduk;
                pembayaranHutang.is_tunai = obj.is_tunai;

                // set item pembayaran
                pembayaranHutang.item_pembayaran_hutang.Add(itemPembayaranHutang);

                result = pembayaranHutangRepo.Update(pembayaranHutang, true);
            }
            else // belum ada pelunasan hutang
            {
                pembayaranHutang = new PembayaranHutangProduk();

                // set header
                pembayaranHutang.supplier_id = obj.supplier_id;
                pembayaranHutang.pengguna_id = obj.pengguna_id;
                pembayaranHutang.tanggal     = obj.tanggal;
                pembayaranHutang.keterangan  = "Pembelian tunai produk";
                pembayaranHutang.is_tunai    = obj.is_tunai;

                // set item
                itemPembayaranHutang = new ItemPembayaranHutangProduk();
                itemPembayaranHutang.beli_produk_id = obj.beli_produk_id;
                itemPembayaranHutang.BeliProduk     = obj;
                itemPembayaranHutang.nominal        = obj.grand_total; // GetTotalNotaSetelahDiskonDanPPN(obj);
                itemPembayaranHutang.keterangan     = string.Empty;

                // set item pembayaran
                pembayaranHutang.item_pembayaran_hutang.Add(itemPembayaranHutang);

                // simpan item pembayaran
                result = pembayaranHutangRepo.Save(pembayaranHutang, true);
            }

            return(result);
        }
        public PembayaranHutangProduk GetByID(string id)
        {
            PembayaranHutangProduk obj = null;

            using (IDapperContext context = new DapperContext())
            {
                IUnitOfWork uow = new UnitOfWork(context, _log);
                obj = uow.PembayaranHutangProdukRepository.GetByID(id);
            }

            return(obj);
        }
        public int Delete(PembayaranHutangProduk obj)
        {
            var result = 0;

            using (IDapperContext context = new DapperContext())
            {
                IUnitOfWork uow = new UnitOfWork(context, _log);
                result = uow.PembayaranHutangProdukRepository.Delete(obj);
            }

            return(result);
        }
Exemplo n.º 7
0
        public void DeleteTest()
        {
            var obj = new PembayaranHutangProduk
            {
                pembayaran_hutang_produk_id = "d4e66a6c-c0b2-49e1-be4d-b33e7b1bd565"
            };

            var result = _bll.Delete(obj);

            Assert.IsTrue(result != 0);

            var deletedObj = _bll.GetByID(obj.pembayaran_hutang_produk_id);

            Assert.IsNull(deletedObj);
        }
Exemplo n.º 8
0
        public int Delete(PembayaranHutangProduk obj)
        {
            var result = 0;

            try
            {
                result = _context.db.Delete <PembayaranHutangProduk>(obj) ? 1 : 0;
            }
            catch (Exception ex)
            {
                _log.Error("Error:", ex);
            }

            return(result);
        }
Exemplo n.º 9
0
        public void SaveTest()
        {
            var obj = new PembayaranHutangProduk
            {
                supplier_id = "e6201c8e-74e3-467c-a463-c8ea1763668e",
                pengguna_id = "00b5acfa-b533-454b-8dfd-e7881edd180f",
                tanggal     = DateTime.Today,
                keterangan  = "keterangan header",
                nota        = "BB-12345",
                is_tunai    = false
            };

            var listOfItemPembayaranHutang = new List <ItemPembayaranHutangProduk>();

            listOfItemPembayaranHutang.Add(new ItemPembayaranHutangProduk {
                BeliProduk = new BeliProduk {
                    beli_produk_id = "0983d9b8-7abe-4be2-9383-16607fcfc91a"
                }, beli_produk_id = "0983d9b8-7abe-4be2-9383-16607fcfc91a", nominal = 500000, keterangan = "keterangan #1"
            });
            listOfItemPembayaranHutang.Add(new ItemPembayaranHutangProduk {
                BeliProduk = new BeliProduk {
                    beli_produk_id = "70c46d69-ca7c-46b2-bd18-ebf03a28d02b"
                }, beli_produk_id = "70c46d69-ca7c-46b2-bd18-ebf03a28d02b", nominal = 700000, keterangan = "keterangan #2"
            });

            obj.item_pembayaran_hutang = listOfItemPembayaranHutang;

            var validationError = new ValidationError();

            var result = _bll.Save(obj, false, ref validationError);

            Console.WriteLine("Error : " + validationError.Message);

            Assert.IsTrue(result != 0);

            var newObj = _bll.GetByID(obj.pembayaran_hutang_produk_id);

            Assert.IsNotNull(newObj);
            Assert.AreEqual(obj.pembayaran_hutang_produk_id, newObj.pembayaran_hutang_produk_id);
            Assert.AreEqual(obj.supplier_id, newObj.supplier_id);
            Assert.AreEqual(obj.pengguna_id, newObj.pengguna_id);
            Assert.AreEqual(obj.tanggal, newObj.tanggal);
            Assert.AreEqual(obj.keterangan, newObj.keterangan);
            Assert.AreEqual(obj.nota, newObj.nota);
            Assert.AreEqual(obj.is_tunai, newObj.is_tunai);
        }
Exemplo n.º 10
0
        public int Delete(PembayaranHutangProduk obj)
        {
            var result = 0;

            try
            {
                var api      = "delete";
                var response = RestSharpHelper <OpenRetailWebApiPostResponse> .PostRequest(_apiUrl, api, obj);

                result = Convert.ToInt32(response.Results);
            }
            catch (Exception ex)
            {
                _log.Error("Error:", ex);
            }

            return(result);
        }
        public PembayaranHutangProduk GetByID(string id)
        {
            PembayaranHutangProduk obj = null;

            if (_isUseWebAPI)
            {
                _unitOfWork = new UnitOfWork(_isUseWebAPI, _baseUrl, _log);
                obj         = _unitOfWork.PembayaranHutangProdukRepository.GetByID(id);
            }
            else
            {
                using (IDapperContext context = new DapperContext())
                {
                    _unitOfWork = new UnitOfWork(context, _log);
                    obj         = _unitOfWork.PembayaranHutangProdukRepository.GetByID(id);
                }
            }

            return(obj);
        }
        public int Delete(PembayaranHutangProduk obj)
        {
            var result = 0;

            if (_isUseWebAPI)
            {
                _unitOfWork = new UnitOfWork(_isUseWebAPI, _baseUrl, _log);
                result      = _unitOfWork.PembayaranHutangProdukRepository.Delete(obj);
            }
            else
            {
                using (IDapperContext context = new DapperContext())
                {
                    _unitOfWork = new UnitOfWork(context, _log);
                    result      = _unitOfWork.PembayaranHutangProdukRepository.Delete(obj);
                }
            }

            return(result);
        }
Exemplo n.º 13
0
        public PembayaranHutangProduk GetByID(string id)
        {
            PembayaranHutangProduk obj = null;

            try
            {
                var api      = string.Format("get_by_id?id={0}", id);
                var response = RestSharpHelper <OpenRetailWebApiGetResponse <PembayaranHutangProduk> > .GetRequest(_apiUrl, api).Data;

                if (response.Results.Count > 0)
                {
                    obj = response.Results[0];
                }
            }
            catch (Exception ex)
            {
                _log.Error("Error:", ex);
            }

            return(obj);
        }
        public int Delete(PembayaranHutangProduk obj)
        {
            var result = 0;

            try
            {
                result = _context.db.Delete <PembayaranHutangProduk>(obj) ? 1 : 0;

                if (result > 0)
                {
                    LogicalThreadContext.Properties["OldValue"] = obj.ToJson();
                    _log.Info("Hapus data");
                }
            }
            catch (Exception ex)
            {
                _log.Error("Error:", ex);
            }

            return(result);
        }
        public int Save(PembayaranHutangProduk obj, bool isSaveFromPembelian, ref ValidationError validationError)
        {
            var validatorResults = _validator.Validate(obj);

            if (!validatorResults.IsValid)
            {
                foreach (var failure in validatorResults.Errors)
                {
                    validationError.Message      = failure.ErrorMessage;
                    validationError.PropertyName = failure.PropertyName;
                    return(0);
                }
            }

            var result = 0;

            if (_isUseWebAPI)
            {
                obj.pembayaran_hutang_produk_id = Guid.NewGuid().ToString();

                foreach (var item in obj.item_pembayaran_hutang)
                {
                    item.item_pembayaran_hutang_produk_id = Guid.NewGuid().ToString();
                }

                _unitOfWork = new UnitOfWork(_isUseWebAPI, _baseUrl, _log);
                result      = _unitOfWork.PembayaranHutangProdukRepository.Save(obj, isSaveFromPembelian);
            }
            else
            {
                using (IDapperContext context = new DapperContext())
                {
                    _unitOfWork = new UnitOfWork(context, _log);
                    result      = _unitOfWork.PembayaranHutangProdukRepository.Save(obj, isSaveFromPembelian);
                }
            }

            return(result);
        }
Exemplo n.º 16
0
        public FrmEntryPembayaranHutangPembelianProduk(string header, PembayaranHutangProduk pembayaranHutang, IPembayaranHutangProdukBll bll)
            : base()
        {
            InitializeComponent();
            ColorManagerHelper.SetTheme(this, this);

            base.SetHeader(header);
            base.SetButtonSelesaiToBatal();
            this._bll = bll;
            this._pembayaranHutang = pembayaranHutang;
            this._supplier         = pembayaranHutang.Supplier;
            this._log      = MainProgram.log;
            this._pengguna = MainProgram.pengguna;

            txtNota.Text     = this._pembayaranHutang.nota;
            dtpTanggal.Value = (DateTime)this._pembayaranHutang.tanggal;

            txtSupplier.Text   = this._supplier.nama_supplier;
            txtKeterangan.Text = this._pembayaranHutang.keterangan;

            // simpan data lama
            _listOfItemPembayaranHutangOld.Clear();
            foreach (var item in this._pembayaranHutang.item_pembayaran_hutang)
            {
                _listOfItemPembayaranHutangOld.Add(new ItemPembayaranHutangProduk
                {
                    item_pembayaran_hutang_produk_id = item.item_pembayaran_hutang_produk_id,
                    nominal    = item.nominal,
                    keterangan = item.keterangan
                });
            }

            _listOfItemPembayaranHutang = this._pembayaranHutang.item_pembayaran_hutang;
            _listOfItemPembayaranHutang.Add(new ItemPembayaranHutangProduk()); // add dummy objek

            InitGridControl(gridControl);

            RefreshTotal();
        }
        public PembayaranHutangProduk GetByID(string id)
        {
            PembayaranHutangProduk obj = null;

            try
            {
                _sql = SQL_TEMPLATE.Replace("{WHERE}", "WHERE t_pembayaran_hutang_produk.pembayaran_hutang_produk_id = @id");
                _sql = _sql.Replace("{ORDER BY}", "");

                obj = MappingRecordToObject(_sql, new { id }).SingleOrDefault();
                if (obj != null)
                {
                    obj.item_pembayaran_hutang = GetItemPembayaran(obj.pembayaran_hutang_produk_id);
                }
            }
            catch (Exception ex)
            {
                _log.Error("Error:", ex);
            }

            return(obj);
        }
        public int Save(PembayaranHutangProduk obj, bool isSaveFromPembelian, ref ValidationError validationError)
        {
            var validatorResults = _validator.Validate(obj);

            if (!validatorResults.IsValid)
            {
                foreach (var failure in validatorResults.Errors)
                {
                    validationError.Message      = failure.ErrorMessage;
                    validationError.PropertyName = failure.PropertyName;
                    return(0);
                }
            }

            var result = 0;

            using (IDapperContext context = new DapperContext())
            {
                IUnitOfWork uow = new UnitOfWork(context, _log);
                result = uow.PembayaranHutangProdukRepository.Save(obj, isSaveFromPembelian);
            }

            return(result);
        }
Exemplo n.º 19
0
        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._listOfItemPembayaranHutang);

            if (!(total > 0))
            {
                MsgHelper.MsgWarning("Anda belum melengkapi inputan data pembayaran !");
                return;
            }

            if (!MsgHelper.MsgKonfirmasi("Apakah proses ingin dilanjutkan ?"))
            {
                return;
            }

            if (_isNewData)
            {
                _pembayaranHutang = new PembayaranHutangProduk();
            }

            _pembayaranHutang.pengguna_id = this._pengguna.pengguna_id;
            _pembayaranHutang.Pengguna    = this._pengguna;
            _pembayaranHutang.supplier_id = this._supplier.supplier_id;
            _pembayaranHutang.Supplier    = this._supplier;
            _pembayaranHutang.nota        = txtNota.Text;
            _pembayaranHutang.tanggal     = dtpTanggal.Value;
            _pembayaranHutang.keterangan  = txtKeterangan.Text;

            _pembayaranHutang.item_pembayaran_hutang = this._listOfItemPembayaranHutang.Where(f => f.BeliProduk != null).ToList();

            if (!_isNewData) // update
            {
                _pembayaranHutang.item_pembayaran_hutang_deleted = _listOfItemPembayaranHutangDeleted.ToList();
            }

            var result          = 0;
            var validationError = new ValidationError();

            using (new StCursor(Cursors.WaitCursor, new TimeSpan(0, 0, 0, 0)))
            {
                if (_isNewData)
                {
                    result = _bll.Save(_pembayaranHutang, false, ref validationError);
                }
                else
                {
                    result = _bll.Update(_pembayaranHutang, false, ref validationError);
                }

                if (result > 0)
                {
                    Listener.Ok(this, _isNewData, _pembayaranHutang);

                    _supplier = null;
                    _listOfItemPembayaranHutang.Clear();
                    _listOfItemPembayaranHutangDeleted.Clear();

                    this.Close();
                }
                else
                {
                    if (validationError.Message.NullToString().Length > 0)
                    {
                        MsgHelper.MsgWarning(validationError.Message);
                        base.SetFocusObject(validationError.PropertyName, this);
                    }
                    else
                    {
                        MsgHelper.MsgUpdateError();
                    }
                }
            }
        }
 public int Update(PembayaranHutangProduk obj)
 {
     throw new NotImplementedException();
 }