Пример #1
0
    public Dictionary <string, dynamic> HitungSaldo(PilihanDebitKredit pilihanDebitKredit, TBJurnalDetail[] _jurnalDetail)
    {
        Dictionary <string, dynamic> _result = new Dictionary <string, dynamic>();

        decimal _saldo = 0;

        foreach (var item in _jurnalDetail)
        {
            _saldo += (decimal)item.Debit - (decimal)item.Kredit;
        }

        //Saldo normal DEBIT dan lebih besar dari 0 --> tetap DEBIT
        if (PilihanDebitKredit.Debit == pilihanDebitKredit && _saldo >= 0)
        {
            Debit += _saldo;

            _result.Add("Debit", _saldo);
            _result.Add("Kredit", 0);
        }
        //Saldo normal DEBIT dan kecil dari 0 --> pindah ke KREDIT
        else if (PilihanDebitKredit.Debit == pilihanDebitKredit && _saldo < 0)
        {
            _saldo  = Math.Abs(_saldo);
            Kredit += _saldo;

            _result.Add("Debit", 0);
            _result.Add("Kredit", _saldo);
        }
        //Saldo normal KREDIT dan kecil dari 0 --> tetap KREDIT
        else if (PilihanDebitKredit.Kredit == pilihanDebitKredit && _saldo < 0)
        {
            _saldo  = Math.Abs(_saldo);
            Kredit += _saldo;

            _result.Add("Debit", 0);
            _result.Add("Kredit", _saldo);
        }
        //Saldo normal KREDIT dan lebih besar dari 0 --> pindah ke DEBIT
        else if (PilihanDebitKredit.Kredit == pilihanDebitKredit && _saldo >= 0)
        {
            Debit += _saldo;

            _result.Add("Debit", _saldo);
            _result.Add("Kredit", 0);
        }

        return(_result);
    }
Пример #2
0
    public TBAkuntansiJurnalDetail Proses(DataClassesDatabaseDataContext db, PilihanDebitKredit status, int idAkuntansiAkun, decimal nominal)
    {
        AkuntansiAkun_Class ClassAkuntansiAkun = new AkuntansiAkun_Class();

        var Akun = ClassAkuntansiAkun.Cari(db, idAkuntansiAkun);

        if (Akun != null)
        {
            var JurnalDetail = new TBAkuntansiJurnalDetail
            {
                //IDAkuntansiJurnalDetail
                //TBAkuntansiJurnal
                //Debit
                //Kredit
                //IDAkuntansiJurnal
                //IDAkuntansiAkun
                TBAkuntansiAkun = Akun
            };

            if (status == PilihanDebitKredit.Debit)
            {
                JurnalDetail.Debit  = nominal;
                JurnalDetail.Kredit = 0;
            }
            else if (status == PilihanDebitKredit.Kredit)
            {
                JurnalDetail.Debit  = 0;
                JurnalDetail.Kredit = nominal;
            }

            return(JurnalDetail);
        }
        else
        {
            return(null);
        }
    }