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); }
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); }
public static string GetVoucherNo(bool automatedIncrease, EnumJournalType journalType) { TReference refer = GetReference(EnumReferenceType.VoucherNo); decimal no = Convert.ToDecimal(refer.ReferenceValue) + 1; refer.ReferenceValue = no.ToString(); if (automatedIncrease) { ITReferenceRepository referenceRepository = new TReferenceRepository(); referenceRepository.DbContext.BeginTransaction(); referenceRepository.Update(refer); referenceRepository.DbContext.CommitTransaction(); } string formatFactur = "GRAHA/[TYPE]/[XXX]/[MONTH]/[YEAR]"; StringBuilder result = new StringBuilder(); result.Append(formatFactur); result.Replace("[TYPE]", GetStringValue(journalType)); result.Replace("[XXX]", GetFactur(5, no)); result.Replace("[MONTH]", DateTime.Today.ToString("MMM").ToUpper()); result.Replace("[YEAR]", DateTime.Now.Year.ToString()); return(result.ToString()); }
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); }