Exemplo n.º 1
0
        public override void SaveJournal(TTrans trans, decimal totalHPP)
        {
            string desc       = string.Format("Penjualan paket jasa kepada {0}", trans.TransBy);
            string newVoucher = Helper.CommonHelper.GetVoucherNo(false);
            //save header of journal
            TJournal    journal    = SaveJournalHeader(newVoucher, trans, desc);
            MAccountRef accountRef = null;

            if (trans.TransPaymentMethod == EnumPaymentMethod.Tunai.ToString())
            {
                //save cash
                SaveJournalDet(journal, newVoucher, Helper.AccountHelper.GetCashAccount(), EnumJournalStatus.D, trans.TransGrandTotal.Value, trans, desc);
            }
            else
            {
                accountRef = AccountRefRepository.GetByRefTableId(EnumReferenceTable.Customer, trans.TransBy);
                //save piutang
                SaveJournalDet(journal, newVoucher, accountRef.AccountId, EnumJournalStatus.D, trans.TransGrandTotal.Value, trans, desc);
            }
            //save penjualan
            SaveJournalDet(journal, newVoucher, Helper.AccountHelper.GetSalesAccount(), EnumJournalStatus.K, trans.TransGrandTotal.Value, trans, desc);

            //save ikhtiar LR
            SaveJournalDet(journal, newVoucher, Helper.AccountHelper.GetIkhtiarLRAccount(), EnumJournalStatus.D, totalHPP, trans, desc);

            //save persediaan
            accountRef = AccountRefRepository.GetByRefTableId(EnumReferenceTable.Warehouse, trans.WarehouseId.Id);
            SaveJournalDet(journal, newVoucher, accountRef.AccountId, EnumJournalStatus.K, totalHPP, trans, desc);

            JournalRepository.Save(journal);

            //save journal ref
            SaveJournalRef(trans, journal);
        }
Exemplo n.º 2
0
        private void SaveJournal(object sender, EventArgs e)
        {
            if (ValidateJournalHeader())
            {
                simpanToolStripButton.Enabled = false;

                TJournal jur;

                //save journal detail
                for (int i = 0; i < tJournalDataGridView.RowCount; i++)
                {
                    jur               = new TJournal();
                    jur.JournalDate   = journalDateDateTimePicker.Value;
                    jur.JournalDesc   = tJournalDataGridView.Rows[i].Cells[4].Value.ToString();
                    jur.JournalJumlah = Convert.ToDecimal(tJournalDataGridView.Rows[i].Cells[2].Value);
                    jur.JournalPic    = string.Empty;
                    jur.JournalStatus = tJournalDataGridView.Rows[i].Cells[3].Value.ToString();
                    jur.SubAccountId  = tJournalDataGridView.Rows[i].Cells[0].Value.ToString();
                    jur.VoucherNo     = voucherNoTextBox.Text;
                    jur.ModifiedBy    = lbl_UserName.Text;
                    jur.ModifiedDate  = DateTime.Now;
                    AppCode.SaveTJournal(jur);
                }

                MessageBox.Show(this.Text + " berhasil disimpan", AppCode.AssemblyProduct, MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
        private TJournal SetNewJournal(EnumJournalType journalType)
        {
            TJournal journal = new TJournal();

            journal.SetAssignedIdTo(Guid.NewGuid().ToString());
            journal.JournalDate = DateTime.Today;
            journal.JournalType = journalType.ToString();
            // journal.JournalVoucherNo = "<Otomatis, dikosongkan saja.>"; //Helper.CommonHelper.GetVoucherNo();
            return(journal);
        }
        private TJournal SetNewJournal(EnumJournalType journalType)
        {
            TJournal journal = new TJournal();

            journal.SetAssignedIdTo(Guid.NewGuid().ToString());
            journal.JournalDate      = DateTime.Today;
            journal.JournalType      = journalType.ToString();
            journal.JournalVoucherNo = Helper.CommonHelper.GetVoucherNo();
            return(journal);
        }
Exemplo n.º 5
0
        protected void DeleteJournal(EnumReferenceTable referenceTable, string referenceType, string referenceId)
        {
            TJournalRef journalRef = JournalRefRepository.GetByReference(referenceTable,
                                                                         referenceType, referenceId);

            if (journalRef != null)
            {
                TJournal journalToDelete = journalRef.JournalId;
                JournalRefRepository.Delete(journalRef);
                JournalRepository.Delete(journalToDelete);
            }
        }
Exemplo n.º 6
0
        private void SaveJournal(string subAccountId, ListOfJournalStatus listOfJournalStatus)
        {
            TJournal jur = new TJournal();

            MSubAccount sub = (MSubAccount)DataMaster.GetObjectByProperty(typeof(MSubAccount), MSubAccount.ColumnNames.SubAccountId, subAccountId);
            MAccount    acc = new MAccount();

            if (sub != null)
            {
                acc = (MAccount)DataMaster.GetObjectByProperty(typeof(MAccount), MAccount.ColumnNames.AccountId, sub.AccountId);
                if (acc == null)
                {
                    acc = new MAccount();
                }
            }
            else
            {
                sub = new MSubAccount();
            }

            if (acc.AccountStatus == listOfJournalStatus.ToString())
            {
                jur.AccountSaldo   = acc.AccountSaldo + GrandTotalNumericUpDown.Value;
                jur.SubAccontSaldo = sub.SubAccountSaldo + GrandTotalNumericUpDown.Value;
            }
            else
            {
                jur.AccountSaldo   = acc.AccountSaldo - GrandTotalNumericUpDown.Value;
                jur.SubAccontSaldo = sub.SubAccountSaldo - GrandTotalNumericUpDown.Value;
            }

            jur.JournalDate   = DateTime.Now;
            jur.JournalDesc   = namaTransaksi + transactionFacturTextBox.Text;
            jur.JournalJumlah = GrandTotalNumericUpDown.Value;
            jur.JournalPic    = transactionByTextBox.Text;
            jur.JournalStatus = listOfJournalStatus.ToString();
            jur.SubAccountId  = subAccountId;
            jur.ModifiedBy    = lbl_UserName.Text;
            jur.ModifiedDate  = DateTime.Now;
            DataMaster.SavePersistence(jur);

            //update saldo sub account
            sub.SubAccountSaldo = jur.SubAccontSaldo;
            sub.ModifiedBy      = lbl_UserName.Text;
            sub.ModifiedDate    = DateTime.Now;
            DataMaster.UpdatePersistence(sub);

            //update saldo account
            acc.AccountSaldo = jur.AccountSaldo;
            acc.ModifiedBy   = lbl_UserName.Text;
            acc.ModifiedDate = DateTime.Now;
            DataMaster.UpdatePersistence(acc);
        }
Exemplo n.º 7
0
        private void DeleteJournal(TTrans trans)
        {
            TJournalRef journalRef = JournalRefRepository.GetByReference(EnumReferenceTable.Transaction,
                                                                         trans.TransStatus, trans.Id);

            if (journalRef != null)
            {
                TJournal journalToDelete = journalRef.JournalId;
                JournalRefRepository.Delete(journalRef);
                JournalRepository.Delete(journalToDelete);
            }
        }
Exemplo n.º 8
0
        protected void SaveJournalRef(TJournal j, string referenceId, string referenceType, string desc)
        {
            TJournalRef journalRef = new TJournalRef();

            journalRef.SetAssignedIdTo(Guid.NewGuid().ToString());
            journalRef.JournalId      = j;;
            journalRef.ReferenceTable = EnumReferenceTable.Transaction.ToString();
            journalRef.ReferenceType  = referenceType;
            journalRef.ReferenceId    = referenceId;
            journalRef.JournalRefDesc = desc;
            journalRef.CreatedBy      = UserName;
            journalRef.CreatedDate    = DateTime.Now;
            journalRef.DataStatus     = EnumDataStatus.New.ToString();
            JournalRefRepository.Save(journalRef);
        }
Exemplo n.º 9
0
        private void SaveJournalDet(TJournal journal, EnumJournalStatus enumJournalStatus, MAccount accountId, decimal?detAmmount, string desc)
        {
            TJournalDet detToInsert = new TJournalDet(journal);

            detToInsert.SetAssignedIdTo(Guid.NewGuid().ToString());
            detToInsert.AccountId         = accountId;
            detToInsert.JournalDetStatus  = enumJournalStatus.ToString();
            detToInsert.JournalDetAmmount = detAmmount;
            detToInsert.JournalDetNo      = 0;
            detToInsert.JournalDetDesc    = desc;
            detToInsert.CreatedBy         = User.Identity.Name;
            detToInsert.CreatedDate       = DateTime.Now;
            detToInsert.DataStatus        = Enums.EnumDataStatus.New.ToString();
            journal.JournalDets.Add(detToInsert);
        }
Exemplo n.º 10
0
        protected void SaveJournalDet(TJournal journal, string newVoucher, MAccount accountId, EnumJournalStatus journalStatus, decimal ammount, TTrans trans, string desc)
        {
            TJournalDet detToInsert = new TJournalDet(journal);

            detToInsert.SetAssignedIdTo(Guid.NewGuid().ToString());
            detToInsert.AccountId            = accountId;
            detToInsert.JournalDetStatus     = journalStatus.ToString();
            detToInsert.JournalDetEvidenceNo = trans.TransFactur;
            detToInsert.JournalDetAmmount    = ammount;
            detToInsert.JournalDetNo         = 0;
            detToInsert.JournalDetDesc       = desc;
            detToInsert.CreatedBy            = UserName;
            detToInsert.CreatedDate          = DateTime.Now;
            detToInsert.DataStatus           = Enums.EnumDataStatus.New.ToString();
            journal.JournalDets.Add(detToInsert);
        }
Exemplo n.º 11
0
        private void SaveTransactionJournal(string subAccountId, ListOfJournalStatus listOfJournalStatus, decimal saldo, string desc, string pic)
        {
            TJournal jur = new TJournal();

            jur.JournalDate   = DateTime.Now;
            jur.JournalDesc   = desc;
            jur.JournalJumlah = saldo;
            jur.JournalPic    = pic;
            jur.JournalStatus = listOfJournalStatus.ToString();
            jur.SubAccountId  = subAccountId;
            jur.VoucherNo     = voucherNo;
            jur.TransactionId = delId;
            jur.ModifiedBy    = lbl_UserName.Text;
            jur.ModifiedDate  = DateTime.Now;

            AppCode.SaveTJournal(jur);
        }
Exemplo n.º 12
0
        private ActionResult SaveJournalInterface(TJournal journal, FormCollection formCollection)
        {
            if (formCollection["btnSave"] != null)
            {
                if (journal.JournalType == EnumJournalType.GeneralLedger.ToString() && !ValidateDebetKredit())
                {
                    var e = new
                    {
                        Success = false,
                        Message = "Total Debet dan Kredit tidak sama."
                    };
                    return(Json(e, JsonRequestBehavior.AllowGet));
                }
                return(SaveJournal(journal, formCollection));
            }
            else if (formCollection["btnPrint"] != null || formCollection["btnPrintKwitansi"] != null)
            {
                //save data to session
                SetDataForPrint(journal.Id, journal.JournalType);
                string reportUrl = string.Empty;
                if (formCollection["btnPrint"] != null)
                {
                    EnumReports reportToPrint = EnumReports.RptPrintCash;
                    if (journal.JournalType == EnumJournalType.GeneralLedger.ToString())
                    {
                        reportToPrint = EnumReports.RptPrintGL;
                    }

                    reportUrl = Url.Content("~/ReportViewer.aspx?rpt=" + reportToPrint.ToString());
                }
                else if (formCollection["btnPrintKwitansi"] != null)
                {
                    reportUrl = Url.Content("~/ReportViewer.aspx?rpt=RptPrintKwitansi");
                }

                var e = new
                {
                    Success = false,
                    Message = "redirect",
                    Data    = reportUrl
                };
                return(Json(e, JsonRequestBehavior.AllowGet));
            }
            return(View());
        }
Exemplo n.º 13
0
        public static void SaveTJournal(TJournal jur)
        {
            DataMasterMgtServices DataMaster = new DataMasterMgtServices();
            MSubAccount           sub        = (MSubAccount)DataMaster.GetObjectByProperty(typeof(MSubAccount), MSubAccount.ColumnNames.SubAccountId, jur.SubAccountId);
            MAccount acc = new MAccount();

            if (sub != null)
            {
                acc = (MAccount)DataMaster.GetObjectByProperty(typeof(MAccount), MAccount.ColumnNames.AccountId, sub.AccountId);
                if (acc == null)
                {
                    acc = new MAccount();
                }
            }
            else
            {
                sub = new MSubAccount();
            }

            if (acc.AccountStatus == jur.JournalStatus)
            {
                jur.AccountSaldo   = acc.AccountSaldo + jur.JournalJumlah;
                jur.SubAccontSaldo = sub.SubAccountSaldo + jur.JournalJumlah;
            }
            else
            {
                jur.AccountSaldo   = acc.AccountSaldo - jur.JournalJumlah;
                jur.SubAccontSaldo = sub.SubAccountSaldo - jur.JournalJumlah;
            }

            jur.AccountId = acc.AccountId;
            DataMaster.SavePersistence(jur);

            //update saldo sub account
            sub.SubAccountSaldo = jur.SubAccontSaldo;
            sub.ModifiedBy      = jur.ModifiedBy;
            sub.ModifiedDate    = DateTime.Now;
            DataMaster.UpdatePersistence(sub);

            //update saldo account
            acc.AccountSaldo = jur.AccountSaldo;
            acc.ModifiedBy   = jur.ModifiedBy;
            acc.ModifiedDate = DateTime.Now;
            DataMaster.UpdatePersistence(acc);
        }
Exemplo n.º 14
0
        private void SaveJournal(TPayment payment, string transBy, string cashAccountId, string costCenterId, string desc)
        {
            TJournal journal = new TJournal();

            journal.JournalType      = EnumJournalType.GeneralLedger.ToString();
            journal.JournalVoucherNo = Helper.CommonHelper.GetVoucherNo();
            journal.JournalDate      = payment.PaymentDate;
            journal.JournalDesc      = payment.PaymentDesc;
            journal.JournalPic2      = payment.PaymentPic;
            journal.JournalPic       = transBy;

            journal.SetAssignedIdTo(Guid.NewGuid().ToString());
            journal.CostCenterId = _mCostCenterRepository.Get(costCenterId);
            journal.CreatedDate  = DateTime.Now;
            journal.CreatedBy    = User.Identity.Name;
            journal.DataStatus   = Enums.EnumDataStatus.New.ToString();
            journal.JournalDets.Clear();

            MAccount    accountCash = _mAccountRepository.Get(cashAccountId);
            MAccountRef accountRef;

            if (payment.PaymentType == EnumPaymentType.Hutang.ToString())
            {
                //search supplier hutang account
                accountRef = _mAccountRefRepository.GetByRefTableId(EnumReferenceTable.Supplier, transBy);
                //save debet
                SaveJournalDet(journal, EnumJournalStatus.D, accountRef.AccountId, payment.PaymentTotal, desc);
                //save kredit
                SaveJournalDet(journal, EnumJournalStatus.K, accountCash, payment.PaymentTotal, desc);
            }
            else if (payment.PaymentType == EnumPaymentType.Piutang.ToString())
            {
                //search Customer piutang account
                accountRef = _mAccountRefRepository.GetByRefTableId(EnumReferenceTable.Customer, transBy);
                //save debet
                SaveJournalDet(journal, EnumJournalStatus.D, accountCash, payment.PaymentTotal, desc);
                //save kredit
                SaveJournalDet(journal, EnumJournalStatus.K, accountRef.AccountId, payment.PaymentTotal, desc);
            }

            _tJournalRepository.Save(journal);
        }
Exemplo n.º 15
0
        private void SaveJournalClosing(string closingId, DateTime?dateFrom, DateTime?dateTo)
        {
            IList <MWarehouse> listWarehouse = _mWarehouseRepository.GetAll();
            MAccountRef        accountRef;

            foreach (MWarehouse warehouse in listWarehouse)
            {
                string   newVoucher = Helper.CommonHelper.GetVoucherNo(false);
                TJournal journal    = new TJournal();
                journal.SetAssignedIdTo(Guid.NewGuid().ToString());
                journal.CostCenterId      = warehouse.CostCenterId;
                journal.JournalType       = EnumJournalType.GeneralLedger.ToString();
                journal.JournalVoucherNo  = newVoucher;
                journal.JournalPic        = User.Identity.Name;
                journal.JournalDate       = dateTo;
                journal.JournalEvidenceNo = closingId;
                //j.JournalAmmount = ammount;
                journal.JournalDesc = "Hitung HPP";

                journal.DataStatus  = EnumDataStatus.New.ToString();
                journal.CreatedBy   = User.Identity.Name;
                journal.CreatedDate = DateTime.Now;
                journal.JournalDets.Clear();

                //save persediaan awal
                decimal?totalStockAwal = _tStockRepository.GetTotalStockBeforeDate(warehouse.Id, dateFrom.Value.AddDays(-1));
                accountRef = _mAccountRefRepository.GetByRefTableId(EnumReferenceTable.Warehouse, warehouse.Id);
                SaveJournalDet(journal, newVoucher, accountRef.AccountId, EnumJournalStatus.D, totalStockAwal, "Saldo Awal Periode");

                //save ikhtiar LR
                SaveJournalDet(journal, newVoucher, Helper.AccountHelper.GetHppAccount(), EnumJournalStatus.K, totalStockAwal, "Saldo Awal Periode");

                //save persediaan akhir
                decimal?totalLastStock = _tStockRepository.GetTotalStockBeforeDate(warehouse.Id, dateTo.Value);
                SaveJournalDet(journal, newVoucher, accountRef.AccountId, EnumJournalStatus.K, totalLastStock, "Saldo Akhir Periode");

                //save ikhtiar LR
                SaveJournalDet(journal, newVoucher, Helper.AccountHelper.GetHppAccount(), EnumJournalStatus.D, totalLastStock, "Saldo Akhir Periode");

                _tJournalRepository.Save(journal);
            }
        }
Exemplo n.º 16
0
        protected TJournal SaveJournalHeader(string newVoucher, TTrans trans, string desc)
        {
            TJournal j = new TJournal();

            j.SetAssignedIdTo(Guid.NewGuid().ToString());
            j.CostCenterId      = trans.WarehouseId.CostCenterId;
            j.JournalType       = EnumJournalType.GeneralLedger.ToString();
            j.JournalVoucherNo  = newVoucher;
            j.JournalPic        = trans.TransBy;
            j.JournalDate       = trans.TransDate;
            j.JournalEvidenceNo = trans.TransFactur;
            //j.JournalAmmount = ammount;
            j.JournalDesc = desc;

            j.DataStatus  = EnumDataStatus.New.ToString();
            j.CreatedBy   = UserName;
            j.CreatedDate = DateTime.Now;
            j.JournalDets.Clear();
            return(j);
        }
Exemplo n.º 17
0
        protected TJournal SaveJournalHeader(MCostCenter costCenterId, string newVoucher, string journalPic, DateTime?journalDate, string journalEvidenceNo, string desc)
        {
            TJournal j = new TJournal();

            j.SetAssignedIdTo(Guid.NewGuid().ToString());
            j.CostCenterId      = costCenterId;
            j.JournalType       = EnumJournalType.GeneralLedger.ToString();
            j.JournalVoucherNo  = newVoucher;
            j.JournalPic        = journalPic;
            j.JournalDate       = journalDate;
            j.JournalEvidenceNo = journalEvidenceNo;
            //j.JournalAmmount = ammount;
            j.JournalDesc = desc;

            j.DataStatus  = EnumDataStatus.New.ToString();
            j.CreatedBy   = UserName;
            j.CreatedDate = DateTime.Now;
            j.JournalDets.Clear();

            return(j);
        }
Exemplo n.º 18
0
        public ActionResult GetJsonJournal(string journalId)
        {
            TJournal journal     = _tJournalRepository.Get(journalId);
            MAccount cashAccount = null;

            //set account cash for cash in / out
            if (journal.JournalType.Equals(EnumJournalType.CashIn.ToString()) || journal.JournalType.Equals(EnumJournalType.CashOut.ToString()))
            {
                string detailStatus = journal.JournalType == EnumJournalType.CashIn.ToString()
                                          ? EnumJournalStatus.D.ToString()
                                          : EnumJournalStatus.K.ToString();
                cashAccount = (from s in journal.JournalDets
                               where s.JournalDetStatus == detailStatus
                               select s.AccountId).First();

                IList <TJournalDet> others = (from s in journal.JournalDets
                                              where s.JournalDetStatus != detailStatus
                                              select s).ToList();
                ListJournalDet = others.ToList();
            }
            else
            {
                ListJournalDet = journal.JournalDets.ToList();
            }

            var t = new
            {
                JournalId = journal.Id,
                journal.JournalDate,
                journal.JournalVoucherNo,
                CostCenterId    = journal.CostCenterId != null ? journal.CostCenterId.Id : null,
                CashAccountId   = cashAccount != null ? cashAccount.Id : null,
                CashAccountName = cashAccount != null ? cashAccount.AccountName : null,
                journal.JournalPic,
                journal.JournalPic2,
                journal.JournalDesc
            };

            return(Json(t, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 19
0
        public override void SaveJournal(TTrans trans, decimal totalHPP)
        {
            string desc       = string.Format("Penerimaan Stok dari {0}", trans.TransBy);
            string newVoucher = Helper.CommonHelper.GetVoucherNo(false);

            //delete journal first
            DeleteJournal(EnumReferenceTable.Transaction, trans.TransStatus, trans.Id);
            //save header of journal
            TJournal    journal    = SaveJournalHeader(trans.WarehouseId.CostCenterId, newVoucher, trans.TransBy, trans.TransDate, trans.TransFactur, desc);
            MAccountRef accountRef = null;

            ////save persediaan
            //accountRef = AccountRefRepository.GetByRefTableId(EnumReferenceTable.Warehouse, trans.WarehouseId.Id);
            //SaveJournalDet(journal, newVoucher, accountRef.AccountId, EnumJournalStatus.D, totalHPP, trans.TransFactur, desc);

            ////save ikhtiar LR
            //SaveJournalDet(journal, newVoucher, Helper.AccountHelper.GetHppAccount(), EnumJournalStatus.K, totalHPP, trans.TransFactur, desc);

            JournalRepository.Save(journal);

            //save journal ref
            SaveJournalRef(journal, trans.Id, trans.TransStatus, trans.TransDesc);
        }
Exemplo n.º 20
0
        public override void SaveJournal(TTrans trans, decimal totalHPP)
        {
            string desc       = string.Format("Pembelian dari {0}", trans.TransBy);
            string newVoucher = Helper.CommonHelper.GetVoucherNo(false);

            //delete journal first
            DeleteJournal(EnumReferenceTable.Transaction, trans.TransStatus, trans.Id);
            //save header of journal
            TJournal    journal    = SaveJournalHeader(trans.WarehouseId.CostCenterId, newVoucher, trans.TransBy, trans.TransDate, trans.TransFactur, desc);
            MAccountRef accountRef = null;

            //save pembelian
            SaveJournalDet(journal, newVoucher, Helper.AccountHelper.GetPurchaseAccount(), EnumJournalStatus.D, totalHPP, trans.TransFactur, desc);
            if (trans.TransPaymentMethod == EnumPaymentMethod.Tunai.ToString())
            {
                //save cash
                SaveJournalDet(journal, newVoucher, Helper.AccountHelper.GetCashAccount(), EnumJournalStatus.K, totalHPP, trans.TransFactur, desc);
            }
            else
            {
                accountRef = AccountRefRepository.GetByRefTableId(EnumReferenceTable.Supplier, trans.TransBy);
                //save hutang
                SaveJournalDet(journal, newVoucher, accountRef.AccountId, EnumJournalStatus.K, totalHPP, trans.TransFactur, desc);
            }

            ////save persediaan
            //accountRef = AccountRefRepository.GetByRefTableId(EnumReferenceTable.Warehouse, trans.WarehouseId.Id);
            //SaveJournalDet(journal, newVoucher, accountRef.AccountId, EnumJournalStatus.D, totalHPP, trans, desc);

            ////save ikhtiar LR
            //SaveJournalDet(journal, newVoucher, Helper.AccountHelper.GetIkhtiarLRAccount(), EnumJournalStatus.K, totalHPP, trans, desc);

            JournalRepository.Save(journal);

            //save journal ref
            SaveJournalRef(journal, trans.Id, trans.TransStatus, trans.TransDesc);
        }
        private ActionResult SaveJournal(TJournal journal, FormCollection formCollection)
        {
            if (journal == null)
            {
                journal = new TJournal();
            }
            journal.SetAssignedIdTo(formCollection["Journal.Id"]);
            journal.CostCenterId = _mCostCenterRepository.Get(formCollection["Journal.CostCenterId"]);
            journal.CreatedDate  = DateTime.Now;
            journal.CreatedBy    = User.Identity.Name;
            journal.DataStatus   = Enums.EnumDataStatus.New.ToString();
            journal.JournalDets.Clear();

            TJournalDet detToInsert;
            decimal     total = 0;

            foreach (TJournalDet det in ListJournalDet)
            {
                detToInsert = new TJournalDet(journal);
                detToInsert.SetAssignedIdTo(Guid.NewGuid().ToString());
                detToInsert.AccountId = det.AccountId;

                if (journal.JournalType == EnumJournalType.CashIn.ToString())
                {
                    detToInsert.JournalDetStatus = EnumJournalStatus.K.ToString();
                }
                else if (journal.JournalType == EnumJournalType.CashOut.ToString())
                {
                    detToInsert.JournalDetStatus = EnumJournalStatus.D.ToString();
                }
                else if (journal.JournalType == EnumJournalType.GeneralLedger.ToString())
                {
                    detToInsert.JournalDetStatus = det.JournalDetStatus;
                }

                detToInsert.JournalDetAmmount = det.JournalDetAmmount;
                detToInsert.JournalDetNo      = det.JournalDetNo;
                detToInsert.JournalDetDesc    = det.JournalDetDesc;
                detToInsert.CreatedBy         = User.Identity.Name;
                detToInsert.CreatedDate       = DateTime.Now;
                detToInsert.DataStatus        = Enums.EnumDataStatus.New.ToString();
                journal.JournalDets.Add(detToInsert);

                total += det.JournalDetAmmount.Value;
            }

            //add new detail for cash in / out
            if (journal.JournalType == EnumJournalType.CashIn.ToString() || journal.JournalType == EnumJournalType.CashOut.ToString())
            {
                detToInsert = new TJournalDet(journal);
                detToInsert.SetAssignedIdTo(Guid.NewGuid().ToString());
                detToInsert.AccountId = _mAccountRepository.Get(formCollection["CashAccountId"]);

                if (journal.JournalType == EnumJournalType.CashIn.ToString())
                {
                    detToInsert.JournalDetStatus = EnumJournalStatus.D.ToString();
                }
                else if (journal.JournalType == EnumJournalType.CashOut.ToString())
                {
                    detToInsert.JournalDetStatus = EnumJournalStatus.K.ToString();
                }

                detToInsert.JournalDetAmmount = total;
                detToInsert.JournalDetNo      = 0;
                detToInsert.JournalDetDesc    = journal.JournalDesc;
                detToInsert.CreatedBy         = User.Identity.Name;
                detToInsert.CreatedDate       = DateTime.Now;
                detToInsert.DataStatus        = Enums.EnumDataStatus.New.ToString();
                journal.JournalDets.Add(detToInsert);
            }

            try
            {
                _tJournalRepository.Save(journal);
                TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Success;
            }
            catch (Exception)
            {
                TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Failed;
            }
            return(View("Status"));

            //return RedirectToAction(journal.JournalType);
        }
Exemplo n.º 22
0
        private void CalculateItemValue()
        {
            //IList listGudang = DataMaster.GetAll(typeof(MGudang));
            //MGudang gud;

            //IList listItemStok;
            //ItemGudangStok stok;
            //MItem item;

            //decimal itemvalue = 0;

            //for (int i = 0; i < listGudang.Count; i++)
            //{
            //    gud = (MGudang)listGudang[i];
            //    listItemStok = DataMaster.GetListEq(typeof(ItemGudangStok), ItemGudangStok.ColumnNames.GudangId, gud.GudangId);
            //    for (int j = 0; j < listItemStok.Count; j++)
            //    {
            //        stok = (ItemGudangStok)listItemStok[j];
            //        item = (MItem)DataMaster.GetObjectByProperty(typeof(MItem), MItem.ColumnNames.ItemId, stok.ItemId);
            //        if (item != null)
            //        {
            //            itemvalue += stok.ItemStok * item.ItemPricePurchaseAvg;
            //        }
            //    }
            //}

            //IList listTrans = DataMaster.GetListBetweenValue(typeof(TTransaction), TTransaction.ColumnNames.TransactionDate, from, to);
            //IList listDet;
            //TTransaction trans;
            //TTransactionDetail det;

            //decimal salesTot = 0;
            //decimal retSalesTot = 0;
            //decimal hppSalesTot = 0;
            //decimal hppRetSalesTot = 0;
            ////decimal purTot = 0;
            ////decimal retPurTot = 0;

            //for (int i = 0; i < listTrans.Count; i++)
            //{
            //    trans = (TTransaction)listTrans[i];

            //    if (trans.TransactionStatus == ListOfTransaction.Sales.ToString() || trans.TransactionStatus == ListOfTransaction.ReturSales.ToString())
            //    {
            //        listDet = DataMaster.GetListEq(typeof(TTransactionDetail), TTransactionDetail.ColumnNames.TransactionId, trans.TransactionId);
            //        for (int j = 0; j < listDet.Count; j++)
            //        {
            //            det = (TTransactionDetail)listDet[j];
            //            if (trans.TransactionStatus == ListOfTransaction.Sales.ToString())
            //                hppSalesTot += det.CostPrice;
            //            else if (trans.TransactionStatus == ListOfTransaction.ReturSales.ToString())
            //                hppRetSalesTot += det.CostPrice;
            //        }

            //    }
            //}

            //decimal hppNet = hppSalesTot - hppRetSalesTot;

            //string voucherno = AppCode.GetVoucherNo();

            //TJournal jur = new TJournal();
            //jur.JournalDate = DateTime.Today;
            //jur.JournalDesc = "Harga Pokok Penjualan bulan " + comboBox_Month.Text + " " + numericUpDown_Year.Value.ToString();
            //jur.JournalJumlah = hppNet;
            //jur.JournalPic = string.Empty;
            //jur.JournalStatus = ListOfJournalStatus.Debet.ToString();
            //jur.SubAccountId = AppCode.GetHPPAccountNo();
            //jur.VoucherNo = voucherno;
            //jur.ModifiedBy = lbl_UserName.Text;
            //jur.ModifiedDate = DateTime.Now;
            //AppCode.SaveTJournal(jur);

            //jur = new TJournal();
            //jur.JournalDate = DateTime.Today;
            //jur.JournalDesc = "Ikhtiar Rugi Laba bulan " + comboBox_Month.Text + " " + numericUpDown_Year.Value.ToString();
            //jur.JournalJumlah = hppNet;
            //jur.JournalPic = string.Empty;
            //jur.JournalStatus = ListOfJournalStatus.Kredit.ToString();
            //jur.SubAccountId = AppCode.GetIkhtiarRLAccountNo();
            //jur.VoucherNo = voucherno;
            //jur.ModifiedBy = lbl_UserName.Text;
            //jur.ModifiedDate = DateTime.Now;
            //AppCode.SaveTJournal(jur);

            IList       listSubAcc = DataMaster.GetAll(typeof(MSubAccount));
            MSubAccount sub;
            MAccount    acc;
            decimal     rl = 0;

            for (int i = 0; i < listSubAcc.Count; i++)
            {
                sub = (MSubAccount)listSubAcc[i];
                SaveRekap(sub.AccountId, sub.SubAccountId, sub.SubAccountName, sub.SubAccountSaldo);
                acc = (MAccount)DataMaster.GetObjectByProperty(typeof(MAccount), MAccount.ColumnNames.AccountId, sub.AccountId);
                if (acc != null)
                {
                    if (acc.AccountPosition == ListOfAccountPosition.RugiLaba.ToString())
                    {
                        rl += sub.SubAccountSaldo;
                    }
                }
            }

            string voucherno = AppCode.GetVoucherNo();

            if (comboBox_Month.SelectedValue.ToString() == "12")
            {
                TJournal jur;
                IList    listAcc = DataMaster.GetListEq(typeof(MAccount), MAccount.ColumnNames.AccountPosition, ListOfAccountPosition.RugiLaba.ToString());
                for (int i = 0; i < listAcc.Count; i++)
                {
                    acc        = (MAccount)listAcc[i];
                    listSubAcc = DataMaster.GetListEq(typeof(MSubAccount), MSubAccount.ColumnNames.AccountId, acc.AccountId);
                    for (int j = 0; j < listSubAcc.Count; j++)
                    {
                        sub               = (MSubAccount)listSubAcc[j];
                        jur               = new TJournal();
                        jur.JournalDate   = DateTime.Today;
                        jur.JournalDesc   = "Jurnal Pembalik periode " + numericUpDown_Year.Value.ToString();
                        jur.JournalJumlah = sub.SubAccountSaldo;
                        jur.JournalPic    = lbl_UserName.Text;
                        jur.JournalStatus = ListOfJournalStatus.Debet.ToString();

                        jur.SubAccountId = sub.SubAccountId;
                        jur.VoucherNo    = voucherno;
                        jur.ModifiedBy   = lbl_UserName.Text;
                        jur.ModifiedDate = DateTime.Now;
                        AppCode.SaveTJournal(jur);
                    }
                }

                sub = (MSubAccount)DataMaster.GetObjectByProperty(typeof(MSubAccount), MSubAccount.ColumnNames.SubAccountId, AppCode.GetLabaDitahanAccountNo());

                jur               = new TJournal();
                jur.JournalDate   = DateTime.Today;
                jur.JournalDesc   = "Laba Tahun " + numericUpDown_Year.Value.ToString();
                jur.JournalJumlah = rl;
                jur.JournalPic    = lbl_UserName.Text;
                jur.JournalStatus = ListOfJournalStatus.Kredit.ToString();
                jur.SubAccountId  = sub.SubAccountId;
                jur.VoucherNo     = voucherno;
                jur.ModifiedBy    = lbl_UserName.Text;
                jur.ModifiedDate  = DateTime.Now;
                AppCode.SaveTJournal(jur);

                SaveRekap(sub.AccountId, sub.SubAccountId, sub.SubAccountName, rl);
            }
            else
            {
                SaveRekap("", "", "Laba/Rugi Periode Berjalan", rl);
            }
        }
Exemplo n.º 23
0
        private void UpdatePiHutang(object sender, EventArgs e)
        {
            if (!ValidatePiHutang())
            {
                return;
            }

            simpanToolStripButton.Enabled = false;

            TJournal jur = new TJournal();

            jur.JournalDate   = journalDateDateTimePicker.Value;
            jur.JournalDesc   = journalDescTextBox.Text;
            jur.JournalJumlah = journalJumlahNumericUpDown.Value;
            jur.JournalPic    = piHutangPicComboBox.SelectedValue.ToString();

            if (!IsDelete)
            {
                if (PiHutang == ListOfPiHutangStatus.Piutang)
                {
                    jur.JournalStatus = ListOfJournalStatus.Debet.ToString();
                }
                else if (PiHutang == ListOfPiHutangStatus.Hutang)
                {
                    jur.JournalStatus = ListOfJournalStatus.Kredit.ToString();
                }
            }
            else
            {
                if (PiHutang == ListOfPiHutangStatus.Piutang)
                {
                    jur.JournalStatus = ListOfJournalStatus.Kredit.ToString();
                }
                else if (PiHutang == ListOfPiHutangStatus.Hutang)
                {
                    jur.JournalStatus = ListOfJournalStatus.Debet.ToString();
                }
            }


            //if (IsDelete)
            //{
            //    jur.SubAccountId = subAccountIdComboBox.SelectedValue.ToString();
            //}
            //else
            //{
            jur.SubAccountId = subAccountIdComboBox.SelectedValue.ToString();
            //}

            jur.VoucherNo    = voucherNoTextBox.Text;
            jur.ModifiedBy   = lbl_UserName.Text;
            jur.ModifiedDate = DateTime.Now;
            AppCode.SaveTJournal(jur);


            TPiHutang piHut;

            for (int i = 0; i < tPiHutangDataGridView.RowCount; i++)
            {
                if (Convert.ToBoolean(tPiHutangDataGridView.Rows[i].Cells[0].Value) == true)
                {
                    piHut = (TPiHutang)DataMaster.GetObjectByProperty(typeof(TPiHutang), TPiHutang.ColumnNames.PiHutangId, Convert.ToDecimal(tPiHutangDataGridView.Rows[i].Cells[7].Value));
                    piHut.PiHutangDibayar += Convert.ToDecimal(tPiHutangDataGridView.Rows[i].Cells[6].Value);
                    piHut.PiHutangSisa     = piHut.PiHutangJumlah - piHut.PiHutangRetur - piHut.PiHutangDibayar;

                    if (piHut.PiHutangSisa == decimal.Zero)
                    {
                        piHut.PiHutangLunasDate = journalDateDateTimePicker.Value;
                        if (piHutang == ListOfPiHutangStatus.Piutang && !IsDelete)
                        {
                            ShareCommissionInterface(piHut.TransactionId);
                        }
                    }

                    piHut.ModifiedBy   = lbl_UserName.Text;
                    piHut.ModifiedDate = DateTime.Now;
                    DataMaster.UpdatePersistence(piHut);

                    jur               = new TJournal();
                    jur.JournalDate   = journalDateDateTimePicker.Value;
                    jur.JournalDesc   = journalDescTextBox.Text;
                    jur.JournalJumlah = Convert.ToDecimal(tPiHutangDataGridView.Rows[i].Cells[6].Value);
                    jur.JournalPic    = piHutangPicComboBox.SelectedValue.ToString();

                    if (!IsDelete)
                    {
                        if (PiHutang == ListOfPiHutangStatus.Piutang)
                        {
                            jur.JournalStatus = ListOfJournalStatus.Kredit.ToString();
                        }
                        else if (PiHutang == ListOfPiHutangStatus.Hutang)
                        {
                            jur.JournalStatus = ListOfJournalStatus.Debet.ToString();
                        }
                    }
                    else
                    {
                        if (PiHutang == ListOfPiHutangStatus.Piutang)
                        {
                            jur.JournalStatus = ListOfJournalStatus.Debet.ToString();
                        }
                        else if (PiHutang == ListOfPiHutangStatus.Hutang)
                        {
                            jur.JournalStatus = ListOfJournalStatus.Kredit.ToString();
                        }
                    }


                    jur.SubAccountId = tPiHutangDataGridView.Rows[i].Cells[8].Value.ToString();
                    jur.VoucherNo    = voucherNoTextBox.Text;
                    jur.ModifiedBy   = lbl_UserName.Text;
                    jur.ModifiedDate = DateTime.Now;
                    AppCode.SaveTJournal(jur);
                }
            }

            MessageBox.Show(this.Text + " berhasil disimpan", AppCode.AssemblyProduct, MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
Exemplo n.º 24
0
        private ActionResult SaveJournal(TJournal journal, FormCollection formCollection)
        {
            string Message   = string.Empty;
            bool   Success   = true;
            string voucherNo = string.Empty;

            try
            {
                _tJournalRepository.DbContext.BeginTransaction();

                //check first
                TJournal journal1 = _tJournalRepository.Get(formCollection["Journal.Id"]);
                voucherNo = journal.JournalVoucherNo;
                if (journal1 != null)
                {
                    _tJournalRepository.Delete(journal1);
                }
                else
                {
                    EnumJournalType journalType = (EnumJournalType)Enum.Parse(typeof(EnumJournalType), journal.JournalType);
                    voucherNo = Helper.CommonHelper.GetVoucherNo(false, journalType);
                }

                if (journal == null)
                {
                    journal = new TJournal();
                }
                journal.SetAssignedIdTo(formCollection["Journal.Id"]);
                journal.CostCenterId     = _mCostCenterRepository.Get(formCollection["Journal.CostCenterId"]);
                journal.JournalVoucherNo = voucherNo;
                journal.CreatedDate      = DateTime.Now;
                journal.CreatedBy        = User.Identity.Name;
                journal.DataStatus       = Enums.EnumDataStatus.New.ToString();
                journal.JournalDets.Clear();

                TJournalDet detToInsert;
                decimal     total = 0;
                foreach (TJournalDet det in ListJournalDet)
                {
                    detToInsert = new TJournalDet(journal);
                    detToInsert.SetAssignedIdTo(Guid.NewGuid().ToString());
                    detToInsert.AccountId = det.AccountId;

                    if (journal.JournalType == EnumJournalType.CashIn.ToString())
                    {
                        detToInsert.JournalDetStatus = EnumJournalStatus.K.ToString();
                    }
                    else if (journal.JournalType == EnumJournalType.CashOut.ToString())
                    {
                        detToInsert.JournalDetStatus = EnumJournalStatus.D.ToString();
                    }
                    else if (journal.JournalType == EnumJournalType.GeneralLedger.ToString())
                    {
                        detToInsert.JournalDetStatus = det.JournalDetStatus;
                    }

                    detToInsert.JournalDetAmmount    = det.JournalDetAmmount;
                    detToInsert.JournalDetNo         = det.JournalDetNo;
                    detToInsert.JournalDetEvidenceNo = det.JournalDetEvidenceNo;
                    detToInsert.JournalDetDesc       = det.JournalDetDesc;
                    detToInsert.CreatedBy            = User.Identity.Name;
                    detToInsert.CreatedDate          = DateTime.Now;
                    detToInsert.DataStatus           = Enums.EnumDataStatus.New.ToString();
                    journal.JournalDets.Add(detToInsert);

                    total += det.JournalDetAmmount.Value;
                }

                //add new detail for cash in / out
                if (journal.JournalType == EnumJournalType.CashIn.ToString() || journal.JournalType == EnumJournalType.CashOut.ToString())
                {
                    detToInsert = new TJournalDet(journal);
                    detToInsert.SetAssignedIdTo(Guid.NewGuid().ToString());
                    detToInsert.AccountId = _mAccountRepository.Get(formCollection["CashAccountId"]);

                    if (journal.JournalType == EnumJournalType.CashIn.ToString())
                    {
                        detToInsert.JournalDetStatus = EnumJournalStatus.D.ToString();
                    }
                    else if (journal.JournalType == EnumJournalType.CashOut.ToString())
                    {
                        detToInsert.JournalDetStatus = EnumJournalStatus.K.ToString();
                    }

                    detToInsert.JournalDetAmmount = total;
                    detToInsert.JournalDetNo      = 0;
                    detToInsert.JournalDetDesc    = journal.JournalDesc;
                    detToInsert.CreatedBy         = User.Identity.Name;
                    detToInsert.CreatedDate       = DateTime.Now;
                    detToInsert.DataStatus        = Enums.EnumDataStatus.New.ToString();
                    journal.JournalDets.Add(detToInsert);
                }
                _tJournalRepository.Save(journal);

                _tJournalRepository.DbContext.CommitTransaction();
                TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Success;
                Message = "Data berhasil disimpan.";
            }
            catch (Exception ex)
            {
                _tJournalRepository.DbContext.RollbackTransaction();
                Success = false;
                Message = ex.GetBaseException().Message;
                TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Failed;
            }
            var e = new
            {
                Success,
                Message,
                voucherNo
            };

            return
                (Json(e, JsonRequestBehavior.AllowGet));
            //View("Status");
            //return RedirectToAction(journal.JournalType);
        }
 public ActionResult GeneralLedger(TJournal journal, FormCollection formCollection)
 {
     return(SaveJournal(journal, formCollection));
 }
 public ActionResult CashIn(TJournal journal, FormCollection formCollection)
 {
     return(SaveJournal(journal, formCollection));
 }
Exemplo n.º 27
0
 public ActionResult CashOut(TJournal journal, FormCollection formCollection)
 {
     return(SaveJournalInterface(journal, formCollection));
 }