public ActionResult AddNew() { string UserID = User.Identity.GetUserId(); var UserInfo = _unitOfWork.User.GetMyInfo(UserID); var HeadrObj = new Header(); HeadrObj.VoucherDate = DateTime.Now; var TransactionDebitObj = new Transaction(); var TransactionCreditObj = new Transaction(); var Company = _unitOfWork.Company.GetMyCompany(UserInfo.fCompanyId); var CompanyTransactionKindObj = _unitOfWork.NativeSql.GetPaymentVoucherCashFromTransactionKind(UserInfo.fCompanyId); var TransFixedVM = new TransactionFixedVM { Header = HeadrObj, TransactionDebit = TransactionDebitObj, TransactionCredit = TransactionCreditObj, CompanyTransactionKind = CompanyTransactionKindObj, CompanyTransactionKindID = 1, Currency = _unitOfWork.Currency.GetAllCurrency(UserInfo.fCompanyId), CurrencyID = 1, WorkWithCostCenter = Company.WorkWithCostCenter, TheDecimalPointForTheForeignCurrency = Company.TheDecimalPointForTheForeignCurrency, TheDecimalPointForTheLocalCurrency = Company.TheDecimalPointForTheLocalCurrency, CurrentYear = UserInfo.CurrYear }; return(View(TransFixedVM)); }
public ActionResult CopyPaymentVoucherCash(string id, int id2, int id3, int id4) { string UserID = User.Identity.GetUserId(); var UserInfo = _unitOfWork.User.GetMyInfo(UserID); var HeaderObj = _unitOfWork.Header.GetHeaderDataById(id, UserInfo.fCompanyId, id2, id3, id4); var CompanyTransactionKindObj = _unitOfWork.NativeSql.GetPaymentVoucherCashFromTransactionKind(UserInfo.fCompanyId); var CompanyTransactionKindID = HeaderObj.CompanyTransactionKindNo; var Company = _unitOfWork.Company.GetMyCompany(UserInfo.fCompanyId); var TransactionCreditObj = _unitOfWork.NativeSql.GetTransactionsDetailCredit(id, UserInfo.fCompanyId, id2, 1, id4); var TransactionDebitObj = _unitOfWork.NativeSql.GetTransactionsDetailDebit(id, UserInfo.fCompanyId, id2, 2, id4); int iRowNumber = HeaderObj.RowCount; var TransFixedVM = new TransactionFixedVM { }; TransFixedVM.Header = HeaderObj; TransFixedVM.TransactionDebit = TransactionDebitObj; TransFixedVM.TransactionCredit = TransactionCreditObj; TransFixedVM.CompanyTransactionKind = CompanyTransactionKindObj; TransFixedVM.CompanyTransactionKindID = CompanyTransactionKindID; TransFixedVM.Currency = _unitOfWork.Currency.GetAllCurrency(UserInfo.fCompanyId); TransFixedVM.CurrencyID = HeaderObj.FCurrencyID; TransFixedVM.CurrencyNewValue = Math.Round(HeaderObj.ConversionFactor, 3); TransFixedVM.WorkWithCostCenter = Company.WorkWithCostCenter; TransFixedVM.AccountDebitName = _unitOfWork.NativeSql.GetAccountName(UserInfo.fCompanyId, TransactionDebitObj.AccountNumber); TransFixedVM.AccountCreditName = _unitOfWork.NativeSql.GetAccountName(UserInfo.fCompanyId, TransactionCreditObj.AccountNumber); TransFixedVM.CostCenterDebitName = _unitOfWork.NativeSql.GetCostCenterName(UserInfo.fCompanyId, TransactionDebitObj.CostCenter); TransFixedVM.CostCenterCreditName = _unitOfWork.NativeSql.GetCostCenterName(UserInfo.fCompanyId, TransactionCreditObj.CostCenter); TransFixedVM.Amount = Math.Round(TransactionDebitObj.Debit, 3); TransFixedVM.TotalAmount = Math.Round(HeaderObj.TotalDebit, 3); TransFixedVM.ForeignAmount = Math.Round(TransactionDebitObj.DebitForeign, 3); TransFixedVM.TotalForeign = Math.Round(HeaderObj.TotalDebitForeign, 3); TransFixedVM.TheDecimalPointForTheForeignCurrency = Company.TheDecimalPointForTheForeignCurrency; TransFixedVM.TheDecimalPointForTheLocalCurrency = Company.TheDecimalPointForTheLocalCurrency; return(View(TransFixedVM)); }
public ActionResult DeleteReceiptVoucherCash(string id, int id2, int id3, int id4) { string UserID = User.Identity.GetUserId(); var UserInfo = _unitOfWork.User.GetMyInfo(UserID); var HeaderObj = _unitOfWork.Header.GetHeaderDataById(id, UserInfo.fCompanyId, id2, id3, id4); var CompanyTransactionObj = _unitOfWork.CompanyTransactionKind.GetCompanyTransactionKindByID(UserInfo.fCompanyId, HeaderObj.CompanyTransactionKindNo); var CurrencyObj = _unitOfWork.Currency.GetCurrencyByID(UserInfo.fCompanyId, HeaderObj.FCurrencyID); var SalesManObj = _unitOfWork.Sale.GetSaleByID(UserInfo.fCompanyId, HeaderObj.SaleID); var Company = _unitOfWork.Company.GetMyCompany(UserInfo.fCompanyId); var TransactionDebitObj = _unitOfWork.NativeSql.GetTransactionsDetailDebit(id, UserInfo.fCompanyId, id2, 1, id4); var TransactionCreditObj = _unitOfWork.NativeSql.GetTransactionsDetailCredit(id, UserInfo.fCompanyId, id2, 2, id4); int iRowNumber = HeaderObj.RowCount; var TransFixedVM = new TransactionFixedVM { }; TransFixedVM.Header = HeaderObj; TransFixedVM.TransactionDebit = TransactionDebitObj; TransFixedVM.TransactionCredit = TransactionCreditObj; TransFixedVM.CompanyTransactionKindID = HeaderObj.CompanyTransactionKindNo; TransFixedVM.CurrencyID = HeaderObj.FCurrencyID; if (HeaderObj.SaleID == 0) { TransFixedVM.SaleManName = ""; } else { TransFixedVM.SaleManName = SalesManObj.SalesName; } if (Resources.Resource.CurLang == "Arb") { TransFixedVM.CompanyTransactionKindName = CompanyTransactionObj.ArabicName; TransFixedVM.CurrencyName = CurrencyObj.ArabicName; } else { TransFixedVM.CompanyTransactionKindName = CompanyTransactionObj.EnglishName; TransFixedVM.CurrencyName = CurrencyObj.EnglishName; } TransFixedVM.CurrencyNewValue = Math.Round(HeaderObj.ConversionFactor, 3); TransFixedVM.WorkWithCostCenter = Company.WorkWithCostCenter; TransFixedVM.AccountDebitName = _unitOfWork.NativeSql.GetAccountName(UserInfo.fCompanyId, TransactionDebitObj.AccountNumber); TransFixedVM.AccountCreditName = _unitOfWork.NativeSql.GetAccountName(UserInfo.fCompanyId, TransactionCreditObj.AccountNumber); TransFixedVM.CostCenterDebitName = _unitOfWork.NativeSql.GetCostCenterName(UserInfo.fCompanyId, TransactionDebitObj.CostCenter); TransFixedVM.CostCenterCreditName = _unitOfWork.NativeSql.GetCostCenterName(UserInfo.fCompanyId, TransactionCreditObj.CostCenter); TransFixedVM.Amount = Math.Round(TransactionCreditObj.Credit, 3); TransFixedVM.TotalAmount = Math.Round(HeaderObj.TotalDebit, 3); TransFixedVM.ForeignAmount = Math.Round(TransactionCreditObj.CreditForeign, 3); TransFixedVM.TotalForeign = Math.Round(HeaderObj.TotalDebitForeign, 3); TransFixedVM.TheDecimalPointForTheForeignCurrency = Company.TheDecimalPointForTheForeignCurrency; TransFixedVM.TheDecimalPointForTheLocalCurrency = Company.TheDecimalPointForTheLocalCurrency; return(View(TransFixedVM)); }
public JsonResult UpdatePaymentVoucherCash(TransactionFixedVM ObjToUpdate) { MsgUnit Msg = new MsgUnit(); try { var userId = User.Identity.GetUserId(); var UserInfo = _unitOfWork.User.GetMyInfo(userId); var UpdateHeader = ObjToUpdate.Header; UpdateHeader.InsDateTime = DateTime.Now; UpdateHeader.VoucherNumber = ObjToUpdate.Header.VoucherNumber; UpdateHeader.VoucherDate = ObjToUpdate.Header.VoucherDate; UpdateHeader.CompanyTransactionKindNo = ObjToUpdate.CompanyTransactionKindID; UpdateHeader.TransactionKindNo = _unitOfWork.CompanyTransactionKind.GetTransKindForCompanyTransactionKind(UserInfo.fCompanyId, ObjToUpdate.CompanyTransactionKindID); UpdateHeader.InsUserID = userId; UpdateHeader.CompanyID = UserInfo.fCompanyId; UpdateHeader.TotalCredit = ObjToUpdate.Amount; UpdateHeader.TotalDebit = ObjToUpdate.Amount; double TotalDebitForeign = 0; if (UpdateHeader.ConversionFactor == 0) { UpdateHeader.ConversionFactor = 1; } ; if (UpdateHeader.ConversionFactor == 1) { TotalDebitForeign = 0; } else { TotalDebitForeign = UpdateHeader.TotalDebit / UpdateHeader.ConversionFactor; }; UpdateHeader.TotalDebitForeign = TotalDebitForeign; UpdateHeader.TotalCreditForeign = TotalDebitForeign; UpdateHeader.CompanyYear = ObjToUpdate.Header.CompanyYear; UpdateHeader.FCurrencyID = ObjToUpdate.CurrencyID; UpdateHeader.RowCount = 2; var TransactionCredit = new Transaction(); TransactionCredit.CompanyID = UserInfo.fCompanyId; TransactionCredit.CompanyYear = UpdateHeader.CompanyYear; TransactionCredit.CompanyTransactionKindNo = UpdateHeader.CompanyTransactionKindNo; TransactionCredit.TransactionKindNo = UpdateHeader.TransactionKindNo; TransactionCredit.VoucherDate = UpdateHeader.VoucherDate; TransactionCredit.VoucherNumber = UpdateHeader.VoucherNumber; TransactionCredit.InsUserID = UpdateHeader.InsUserID; TransactionCredit.VHI = UpdateHeader.VHI; TransactionCredit.InsDateTime = DateTime.Now; TransactionCredit.AccountNumber = ObjToUpdate.FromAccountNumber; TransactionCredit.CostCenter = ObjToUpdate.FromCostCenter; TransactionCredit.Debit = 0; TransactionCredit.Credit = ObjToUpdate.Amount; TransactionCredit.DebitForeign = 0; if (UpdateHeader.ConversionFactor == 1) { TransactionCredit.CreditForeign = 0; } else { TransactionCredit.CreditForeign = TransactionCredit.Credit / UpdateHeader.ConversionFactor; }; TransactionCredit.CreditDebitForeign = TransactionCredit.CreditForeign; TransactionCredit.Note = UpdateHeader.Note; TransactionCredit.RowNumber = 1; var TransactionDebit = new Transaction(); TransactionDebit.CompanyID = UserInfo.fCompanyId; TransactionDebit.CompanyYear = UpdateHeader.CompanyYear; TransactionDebit.CompanyTransactionKindNo = UpdateHeader.CompanyTransactionKindNo; TransactionDebit.TransactionKindNo = UpdateHeader.TransactionKindNo; TransactionDebit.VoucherDate = UpdateHeader.VoucherDate; TransactionDebit.VoucherNumber = UpdateHeader.VoucherNumber; TransactionDebit.InsUserID = UpdateHeader.InsUserID; TransactionDebit.VHI = UpdateHeader.VHI; TransactionDebit.InsDateTime = DateTime.Now; TransactionDebit.AccountNumber = ObjToUpdate.ToAccountNumber; TransactionDebit.CostCenter = ObjToUpdate.ToCostCenter; TransactionDebit.Debit = ObjToUpdate.Amount; TransactionDebit.Credit = 0; if (UpdateHeader.ConversionFactor == 1) { TransactionDebit.DebitForeign = 0; } else { TransactionDebit.DebitForeign = TransactionDebit.Debit / UpdateHeader.ConversionFactor; }; TransactionDebit.CreditForeign = 0; TransactionDebit.CreditDebitForeign = TransactionDebit.DebitForeign; TransactionDebit.Note = UpdateHeader.Note; TransactionDebit.RowNumber = 2; if (!ModelState.IsValid) { string Err = " "; var errors = ModelState.Values.SelectMany(v => v.Errors); foreach (ModelError error in errors) { Err = Err + error.ErrorMessage + " * "; } Msg.Msg = Resources.Resource.SomthingWentWrong + " : " + Err; Msg.Code = 0; return(Json(Msg, JsonRequestBehavior.AllowGet)); } _unitOfWork.Header.Update(UpdateHeader); _unitOfWork.Transaction.Update(TransactionCredit); _unitOfWork.Transaction.Update(TransactionDebit); _unitOfWork.Complete(); Msg.Code = 1; Msg.Msg = Resources.Resource.UpdatedSuccessfully; Msg.Year = UpdateHeader.CompanyYear; Msg.FCompanyId = UpdateHeader.CompanyID; Msg.VoucherNumber = UpdateHeader.VoucherNumber.ToString(); Msg.TransactionKindNo = UpdateHeader.TransactionKindNo.ToString(); Msg.CompanyTransactionKindNo = UpdateHeader.CompanyTransactionKindNo.ToString(); return(Json(Msg, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Msg.Msg = Resources.Resource.SomthingWentWrong + " : " + ex.Message.ToString(); Msg.Code = 0; return(Json(Msg, JsonRequestBehavior.AllowGet)); } }
public JsonResult SavePaymentVoucherCash(TransactionFixedVM ObjToSave) { MsgUnit Msg = new MsgUnit(); try { var userId = User.Identity.GetUserId(); var UserInfo = _unitOfWork.User.GetMyInfo(userId); var Company = _unitOfWork.Company.GetMyCompany(UserInfo.fCompanyId); var SaveHeader = ObjToSave.Header; SaveHeader.InsDateTime = DateTime.Now; SaveHeader.InsUserID = userId; SaveHeader.CompanyTransactionKindNo = ObjToSave.CompanyTransactionKindID; SaveHeader.TransactionKindNo = _unitOfWork.CompanyTransactionKind.GetTransKindForCompanyTransactionKind(UserInfo.fCompanyId, ObjToSave.CompanyTransactionKindID); SaveHeader.CompanyID = UserInfo.fCompanyId; SaveHeader.TotalCredit = ObjToSave.Amount; SaveHeader.TotalDebit = ObjToSave.Amount; double TotalDebitForeign = 0; if (SaveHeader.ConversionFactor == 0) { SaveHeader.ConversionFactor = 1; } ; if (SaveHeader.ConversionFactor == 1) { TotalDebitForeign = 0; } else { TotalDebitForeign = SaveHeader.TotalDebit / SaveHeader.ConversionFactor; }; SaveHeader.TotalDebitForeign = TotalDebitForeign; SaveHeader.TotalCreditForeign = TotalDebitForeign; SaveHeader.CompanyYear = UserInfo.CurrYear; SaveHeader.FCurrencyID = ObjToSave.CurrencyID; var ObjComapnyTransactionKind = _unitOfWork.CompanyTransactionKind.GetCompanyTransactionKindByID(UserInfo.fCompanyId, SaveHeader.CompanyTransactionKindNo); if (ObjComapnyTransactionKind.AutoSerial) { SaveHeader.VoucherNumber = _unitOfWork.Header.GetMaxVHByKind(UserInfo.fCompanyId, SaveHeader.CompanyTransactionKindNo, SaveHeader.TransactionKindNo, SaveHeader.CompanyYear).ToString(); SaveHeader.VHI = int.Parse(SaveHeader.VoucherNumber); } else { string SerialNumber = ""; int Serial = ObjComapnyTransactionKind.Serial; string Symbol = ObjComapnyTransactionKind.Symbol; DateTime dDate = SaveHeader.VoucherDate; string YearNo = dDate.ToString("yy"); string sMonth = dDate.ToString("MM"); int MonthNo = Int16.Parse(sMonth); int LengthLastSerial = _unitOfWork.CompanyTransactionKindMonthlySerial.GetMaxSerial(UserInfo.fCompanyId, SaveHeader.CompanyTransactionKindNo, MonthNo).ToString().Length; Serial = Serial - LengthLastSerial; for (int i = 0; i <= Serial; i++) { if (i < Serial) { SerialNumber = SerialNumber + "0"; } else if (i == Serial) { SerialNumber = SerialNumber + _unitOfWork.CompanyTransactionKindMonthlySerial.GetMaxSerial(UserInfo.fCompanyId, SaveHeader.CompanyTransactionKindNo, MonthNo).ToString(); } } SaveHeader.VoucherNumber = Symbol + YearNo + sMonth + SerialNumber; SaveHeader.VHI = _unitOfWork.CompanyTransactionKindMonthlySerial.GetMaxSerial(UserInfo.fCompanyId, SaveHeader.CompanyTransactionKindNo, MonthNo); _unitOfWork.CompanyTransactionKindMonthlySerial.Update(UserInfo.fCompanyId, SaveHeader.CompanyTransactionKindNo, MonthNo); } if (Company.DirectExportTheTransactions) { SaveHeader.Exported = 1; } else { SaveHeader.Exported = 0; } SaveHeader.RowCount = 2; var TransactionCredit = new Transaction(); TransactionCredit.CompanyID = UserInfo.fCompanyId; TransactionCredit.CompanyYear = SaveHeader.CompanyYear; TransactionCredit.CompanyTransactionKindNo = SaveHeader.CompanyTransactionKindNo; TransactionCredit.TransactionKindNo = SaveHeader.TransactionKindNo; TransactionCredit.VoucherDate = SaveHeader.VoucherDate; TransactionCredit.VoucherNumber = SaveHeader.VoucherNumber; TransactionCredit.InsUserID = SaveHeader.InsUserID; TransactionCredit.VHI = SaveHeader.VHI; TransactionCredit.InsDateTime = DateTime.Now; TransactionCredit.AccountNumber = ObjToSave.FromAccountNumber; TransactionCredit.CostCenter = ObjToSave.FromCostCenter; TransactionCredit.Debit = 0; TransactionCredit.Credit = ObjToSave.Amount; TransactionCredit.DebitForeign = 0; if (SaveHeader.ConversionFactor == 1) { TransactionCredit.CreditForeign = 0; } else { TransactionCredit.CreditForeign = TransactionCredit.Credit / SaveHeader.ConversionFactor; }; TransactionCredit.CreditDebitForeign = TransactionCredit.CreditForeign; TransactionCredit.Note = SaveHeader.Note; TransactionCredit.RowNumber = 1; var TransactionDebit = new Transaction(); TransactionDebit.CompanyID = UserInfo.fCompanyId; TransactionDebit.CompanyYear = SaveHeader.CompanyYear; TransactionDebit.CompanyTransactionKindNo = SaveHeader.CompanyTransactionKindNo; TransactionDebit.TransactionKindNo = SaveHeader.TransactionKindNo; TransactionDebit.VoucherDate = SaveHeader.VoucherDate; TransactionDebit.VoucherNumber = SaveHeader.VoucherNumber; TransactionDebit.InsUserID = SaveHeader.InsUserID; TransactionDebit.VHI = SaveHeader.VHI; TransactionDebit.InsDateTime = DateTime.Now; TransactionDebit.AccountNumber = ObjToSave.ToAccountNumber; TransactionDebit.CostCenter = ObjToSave.ToCostCenter; TransactionDebit.Debit = ObjToSave.Amount; TransactionDebit.Credit = 0; if (SaveHeader.ConversionFactor == 1) { TransactionDebit.DebitForeign = 0; } else { TransactionDebit.DebitForeign = TransactionDebit.Debit / SaveHeader.ConversionFactor; }; TransactionDebit.CreditForeign = 0; TransactionDebit.CreditDebitForeign = TransactionDebit.DebitForeign; TransactionDebit.Note = SaveHeader.Note; TransactionDebit.RowNumber = 2; if (!ModelState.IsValid) { string Err = " "; var errors = ModelState.Values.SelectMany(v => v.Errors); foreach (ModelError error in errors) { Err = Err + error.ErrorMessage + " * "; } Msg.Msg = Resources.Resource.SomthingWentWrong + " : " + Err; Msg.Code = 0; return(Json(Msg, JsonRequestBehavior.AllowGet)); } _unitOfWork.Header.Add(SaveHeader); _unitOfWork.Transaction.Add(TransactionCredit); _unitOfWork.Transaction.Add(TransactionDebit); _unitOfWork.Complete(); Msg.Code = 1; Msg.Msg = Resources.Resource.AddedSuccessfully; Msg.Year = SaveHeader.CompanyYear; Msg.FCompanyId = SaveHeader.CompanyID; Msg.VoucherNumber = SaveHeader.VoucherNumber.ToString(); Msg.TransactionKindNo = SaveHeader.TransactionKindNo.ToString(); Msg.CompanyTransactionKindNo = SaveHeader.CompanyTransactionKindNo.ToString(); return(Json(Msg, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Msg.Msg = Resources.Resource.SomthingWentWrong + " : " + ex.Message.ToString(); Msg.Code = 0; return(Json(Msg, JsonRequestBehavior.AllowGet)); } }