예제 #1
0
        public void Insert(BPHutangDetilModel model)
        {
            var sSql = @"
                INSERT INTO
                    BPHutangDetil (
                        BPHutangID, BPHutangDetilID, ReffID, 
                        Tgl, Jam, Keterangan, 
                        NilaiHutang, NilaiLunas)
                VALUES (
                        @BPHutangID, @BPHutangDetilID, @ReffID, 
                        @Tgl, @Jam, @Keterangan, 
                        @NilaiHutang, @NilaiLunas) ";

            using (var conn = new SqlConnection(_connString))
                using (var cmd = new SqlCommand(sSql, conn))
                {
                    cmd.AddParam("@BPHutangID", model.BPHutangID);
                    cmd.AddParam("@BPHutangDetilID", model.BPHutangDetilID);
                    cmd.AddParam("@ReffID", model.ReffID);
                    cmd.AddParam("@Tgl", model.Tgl.ToTglYMD());
                    cmd.AddParam("@Jam", model.Jam);
                    cmd.AddParam("@Keterangan", model.Keterangan);
                    cmd.AddParam("@NilaiHutang", model.NilaiHutang);
                    cmd.AddParam("@NilaiLunas", model.NilaiLunas);

                    conn.Open();
                    cmd.ExecuteNonQuery();
                }
        }
예제 #2
0
        private BPHutangDetilModel BPHutangDetilDataFactory()
        {
            var result = new BPHutangDetilModel
            {
                BPHutangID      = "A1",
                BPHutangDetilID = "B1",
                ReffID          = "C1",
                Tgl             = "11-02-2019",
                Jam             = "03:21:00",
                Keterangan      = "D1",
                NilaiHutang     = 51000,
                NilaiLunas      = 41000
            };

            return(result);
        }
예제 #3
0
        public IEnumerable <BPHutangDetilModel> ListData(string id)
        {
            List <BPHutangDetilModel> result = null;
            var sSql = @"
                SELECT
                    BPHutangID, BPHutangDetilID, ReffID, 
                    Tgl, Jam, Keterangan, 
                    NilaiHutang, NilaiLunas
                FROM
                    BPHutangDetil
                WHERE
                    BPHutangID = @BPHutangID ";

            using (var conn = new SqlConnection(_connString))
                using (var cmd = new SqlCommand(sSql, conn))
                {
                    cmd.AddParam("@BPHutangID", id);
                    conn.Open();
                    using (var dr = cmd.ExecuteReader())
                    {
                        if (!dr.HasRows)
                        {
                            return(null);
                        }
                        result = new List <BPHutangDetilModel>();
                        while (dr.Read())
                        {
                            var item = new BPHutangDetilModel
                            {
                                BPHutangID      = dr["BPHutangID"].ToString(),
                                BPHutangDetilID = dr["BPHutangDetilID"].ToString(),
                                ReffID          = dr["ReffID"].ToString(),
                                Tgl             = dr["Tgl"].ToString().ToTglDMY(),
                                Jam             = dr["Jam"].ToString(),
                                Keterangan      = dr["Keterangan"].ToString(),
                                NilaiHutang     = Convert.ToDecimal(dr["NilaiHutang"]),
                                NilaiLunas      = Convert.ToDecimal(dr["NilaiLunas"]),
                            };
                            result.Add(item);
                        }
                    }
                }
            return(result);
        }
예제 #4
0
        public IEnumerable <BPHutangModel> GenHutang(LunasKasBonModel lunasKasBon)
        {
            //  list semua penjualan di detil lunas kas bon
            List <LunasKasBonJualDepositModel> listLunasKasBonJualDeposit = null;

            foreach (var item in lunasKasBon.ListLunas)
            {
                if (item.PenjualanID.Trim() == "")
                {
                    continue;
                }

                var penjualan = _penjualanDal.GetData(item.PenjualanID);
                if (penjualan == null)
                {
                    throw new ArgumentException("Penjualan ID invalid");
                }

                if (listLunasKasBonJualDeposit == null)
                {
                    listLunasKasBonJualDeposit = new List <LunasKasBonJualDepositModel>();
                }

                listLunasKasBonJualDeposit.Add(new LunasKasBonJualDepositModel
                {
                    LunasKasBonID = lunasKasBon.LunasKasBonID,
                    PenjualanID   = penjualan.PenjualanID,
                    NilaiLunas    = item.NilaiLunas,
                    Keterangan    = "   " + item.Keterangan
                });
            }

            //  ambil data deposti dari penjualan tsb
            if (listLunasKasBonJualDeposit == null)
            {
                return(null);
            }

            foreach (var item in listLunasKasBonJualDeposit)
            {
                var penjualan = _penjualanDal.GetData(item.PenjualanID);
                if (penjualan.DepositID.Trim() == "")
                {
                    continue;
                }

                var deposit = _depositDal.GetData(penjualan.DepositID);
                if (deposit == null)
                {
                    throw new ArgumentException("Deposit ID invalid");
                }

                item.DepositID = deposit.DepositID;
            }

            //  generate pelunasan atas deposit tsb
            List <BPHutangModel> result = null;

            foreach (var item in listLunasKasBonJualDeposit.Where(x => x.DepositID.Trim() != ""))
            {
                var bpHutang = GetData(item.DepositID);

                //  hapus detil pelunasan atas id lunasKasBon ini
                var listDetilHtg = (
                    from c in bpHutang.ListLunas
                    where c.ReffID != lunasKasBon.LunasKasBonID
                    select c
                    ).ToList();

                //  tambahkan detil lunas kasbon ini
                var detilLunas = new BPHutangDetilModel
                {
                    BPHutangID  = bpHutang.BPHutangID,
                    Tgl         = lunasKasBon.Tgl,
                    Jam         = lunasKasBon.Jam,
                    ReffID      = lunasKasBon.LunasKasBonID,
                    Keterangan  = item.Keterangan,
                    NilaiHutang = 0,
                    NilaiLunas  = item.NilaiLunas
                };
                listDetilHtg.Add(detilLunas);

                //  pindahkan listbaru ke object bpHutang
                bpHutang.ListLunas = listDetilHtg;

                //  proses simpan
                Save(bpHutang);
                if (result == null)
                {
                    result = new List <BPHutangModel>();
                }
                result.Add(bpHutang);
            }

            return(result);
        }