public Task <Guid> CreateGenExpense(GenExpenseObject obj)
        {
            return(Task.Run(() =>
            {
                try
                {
                    if (obj.Id == Guid.Empty)
                    {
                        var dataObj = new MapperConfiguration(doj =>
                        {
                            doj.CreateMap <GenExpenseObject, GenExpense>();
                        });

                        IMapper iMapper = dataObj.CreateMapper();

                        var source = new GenExpense();

                        source.Id = IdentityGenerator.NewSequentialGuid();
                        source.Amount = obj.Amount;
                        source.Description = obj.Description;
                        source.Purpose = obj.Purpose;
                        source.ExpenseDate = obj.ExpenseDate;

                        genExpenseRepo.Add(source);
                        genExpenseRepo.UnitofWork.Commit();

                        return source.Id;
                    }
                    else
                    {
                        throw new InvalidOperationException();
                    }
                }
                catch (Exception)
                {
                    throw;
                }
            }));
        }
        public Task <bool> UpdateGenExpense(GenExpenseObject obj)
        {
            return(Task.Run(() =>
            {
                try
                {
                    GenExpense entity = _Mapper.Map <GenExpenseObject, GenExpense>(obj);

                    if (obj.Id != Guid.Empty)
                    {
                        genExpenseRepo.Update(entity);
                    }
                    genExpenseRepo.UnitofWork.Commit();

                    return true;
                }
                catch (Exception ex)
                {
                    throw new InvalidOperationException(ex.Message);
                }
            }));
        }