/// <summary>
        /// Method for updating an existing finance receipt - RS
        /// </summary>
        /// <param name="currentUserInstituteId"></param>
        /// <returns></returns>
        public async Task <dynamic> UpdateFinanceReceiptAsync(int currentUserInstituteId, FinanceReceipt updatedFinanceReceipt)
        {
            FinanceReceipt existingReceipt = await GetFinanceReceiptByIdAsync(currentUserInstituteId, updatedFinanceReceipt.Id);

            if (existingReceipt == null)
            {
                return(new { Message = "No finance receipt exists with this id", HasError = true });
            }
            else if (await _imsDbContext.FinanceReceipts.AnyAsync(x => x.Id != updatedFinanceReceipt.Id &&
                                                                  x.InstituteId == currentUserInstituteId && x.Code.ToLowerInvariant().Equals(updatedFinanceReceipt.Code.ToLowerInvariant())))
            {
                return(new { Message = "Finance Receipt already exists with this code", HasError = true });
            }

            existingReceipt.Code         = updatedFinanceReceipt.Code;
            existingReceipt.Amount       = updatedFinanceReceipt.Amount;
            existingReceipt.ReceiptDate  = updatedFinanceReceipt.ReceiptDate;
            existingReceipt.ReceivedBy   = updatedFinanceReceipt.ReceivedBy;
            existingReceipt.ReceivedFrom = updatedFinanceReceipt.ReceivedFrom;
            existingReceipt.Remarks      = updatedFinanceReceipt.Remarks;
            _imsDbContext.FinanceReceipts.Update(existingReceipt);
            await _imsDbContext.SaveChangesAsync();

            return(new { Message = "Finance Receipt updated successfully", HasError = false });
        }
Example #2
0
        public async Task <IActionResult> AddNewFinancialReceiptAsync([FromBody] FinanceReceipt addedFinanceReceipt)
        {
            int currentUserInstituteId = await GetUserCurrentSelectedInstituteIdAsync();

            ApplicationUser currentUser = await _userManager.FindByNameAsync(User.Identity.Name);

            return(Ok(await _financeManagementRepository.AddNewFinancialReceiptAsync(currentUserInstituteId, currentUser, addedFinanceReceipt)));
        }
Example #3
0
        public async Task <IActionResult> UpdateFinanceReceiptAsync([FromBody] FinanceReceipt updatedFinanceReceipt)
        {
            int currentUserInstituteId = await GetUserCurrentSelectedInstituteIdAsync();

            return(Ok(await _financeManagementRepository.UpdateFinanceReceiptAsync(currentUserInstituteId, updatedFinanceReceipt)));
        }
        /// <summary>
        /// Method for adding new finance receipt - RS
        /// </summary>
        /// <param name="currentUserInstituteId"></param>
        /// <param name="currentUser"></param>
        /// <returns></returns>
        public async Task <dynamic> AddNewFinancialReceiptAsync(int currentUserInstituteId, ApplicationUser currentUser, FinanceReceipt addedFinanceReceipt)
        {
            if (await _imsDbContext.FinanceReceipts.AnyAsync(x => x.Code.ToLowerInvariant().Equals(addedFinanceReceipt.Code.ToLowerInvariant()) && x.InstituteId == currentUserInstituteId))
            {
                return(new { Message = "Finance Receipt already exists with this code", HasError = true });
            }

            addedFinanceReceipt.InstituteId = currentUserInstituteId;
            addedFinanceReceipt.CreatedOn   = DateTime.UtcNow;
            addedFinanceReceipt.CreatedBy   = currentUser.Id;
            _imsDbContext.FinanceReceipts.Add(addedFinanceReceipt);
            await _imsDbContext.SaveChangesAsync();

            return(new { Message = "Finance Receipt added successfully", HasError = false });
        }