public IActionResult globalparam() { var model = new AppGlobalSettingsRepo(db).GetAll(); return(View(model)); }
public async Task <IActionResult> MyReport(MoneyTransferMyReportDto param) { try { if (!Utility.IsValidDate(param.StartDate)) { return(BadRequest(new ApiResponse(-3011, $"Sorry, start date is invalid {param.StartDate}"))); } if (!Utility.IsValidDate(param.EndDate)) { return(BadRequest(new ApiResponse(-3012, $"Sorry, end date is invalid {param.EndDate}"))); } var startDate = DateTime.ParseExact(param.StartDate, "dd/MM/yyyy", null); //DateTime.Parse(param.StartDate); var endDate = DateTime.ParseExact(param.EndDate, "dd/MM/yyyy", null); // DateTime.Parse(param.EndDate); var maxDaysSettings = new AppGlobalSettingsRepo(_db).GetSingle("API.MoneyTransfer.Report.MaxDays"); if (maxDaysSettings != null) { if ((endDate - startDate).TotalDays > int.Parse(maxDaysSettings.SettingValue) && int.Parse(maxDaysSettings.SettingValue) > 0) { return(BadRequest(new ApiResponse(-3013, $"Sorry, The report period is greater than the limit {int.Parse(maxDaysSettings.SettingValue)} day(s)"))); } } var currentUser = _partnerManager.GetPartnerById(this.HttpContext.User.Identity.Name); if (currentUser == null) { return(Unauthorized(new ApiResponse(-3003, "Sorry, re-login required"))); } var permission = _partnerActivity.GetPartAct("MoneyTransfer.API.MyReport", currentUser.Role.Id); if (permission == null) { return(Unauthorized(new ApiResponse(401))); } var maxRecordsSettings = new AppGlobalSettingsRepo(_db).GetSingle("API.MoneyTransfer.Report.MaxResults"); int maxRecords = maxRecordsSettings == null ? 200 : int.Parse(maxRecordsSettings.SettingValue); var results = await new MoneyTransferRepo(_db, _partnerManager, _partnerActivity).GetMoneyTransfers( currentUser.Account, startDate, endDate, maxRecords); if (results == null || results.Count <= 0) { return(Ok( new { resultCode = 0, resultDesc = "No data", success = "yes", queryTime = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"), data = new object() })); } var retResults = new List <object>(); foreach (var obj in results) { retResults.Add(new { transferTime = obj.CreatedOn, transferId = obj.Id, seq = obj.ApiTransaction, sourceAccount = obj.CreatedBy.Account, sourceMobile = obj.CreatedBy.Id, sourceName = obj.CreatedBy.Name, sourceBalance = obj.CreatedBy.Balance, targetAccount = obj.Partner.Account, targetMobile = obj.Partner.Id, targetName = obj.Partner.Name, targetBalance = obj.Partner.Balance, amount = obj.Amount, netAmount = obj.NetAmount, taxPercent = obj.TaxPercent, taxAmount = obj.TaxAmount, bonusPercent = obj.BonusPercent, bounsAmount = obj.BounsAmount, bounsTaxPercent = obj.BounsTaxPercent, bounsTaxAmount = obj.BounsTaxAmount, note = obj.Note }); } return(Ok( new { resultCode = 0, resultDesc = "OK", success = "yes", queryTime = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"), data = retResults })); } catch (Exception ex) { return(BadRequest(new ApiResponse(-9999, ex.Message))); } }