public IHttpActionResult GetAllUserBudgets([FromBody] string userId)
        {
            BudgetDTO          budgetDTO;
            List <BudgetDTO>   budgetDtoList          = new List <BudgetDTO>();
            List <Transaction> budgetTransactionsList = new List <Transaction>();

            List <Budget> listBudget = _budgetDBAccess.FindByUser(userId);

            foreach (Budget budget in listBudget)
            {
                budgetTransactionsList = _transactionDBAccess.FindAllBudgetTransactions(budget);

                decimal expendedAmount = _businessService.GetTotalAmount(budgetTransactionsList);

                budgetDTO = new BudgetDTO
                {
                    BudgetId       = budget.BudgetId,
                    BeginingDate   = DateConverter.DateTimeToLong(budget.BeginingDate),
                    EndDate        = DateConverter.DateTimeToLong(budget.EndDate),
                    Amount         = budget.Amount,
                    ExpendedAmount = expendedAmount,
                    CategoryName   = budget.Category.Label,
                    AccountName    = budget.BankAccount.Name,
                    AccountId      = budget.BankAccount.BankAccountId
                };
                budgetDtoList.Add(budgetDTO);
            }
            return(Ok(budgetDtoList));
        }
Exemple #2
0
 public void SaveOneOverView(BudgetDTO budgetOverview)
 {
     using (ISession session = NHibernateHelper.OpenSession())
         using (ITransaction transaction = session.BeginTransaction())
         {
             session.Save(budgetOverview);
             transaction.Commit();
         }
 }
Exemple #3
0
 public async Task <IActionResult> Create([Bind("Name,Amount,From,To,CreatedDate,ModificationDate,UserId,Id")] BudgetDTO budgetDTO)
 {
     if (ModelState.IsValid)
     {
         _budgetService.AddBudget(budgetDTO);
         return(RedirectToAction(nameof(Index)));
     }
     return(View(budgetDTO));
 }
Exemple #4
0
        public string EditBudget(BudgetDTO budgetDTO)
        {
            Dictionary <string, object> dictionnaire = new Dictionary <string, object>();

            dictionnaire.Add("id", budgetDTO.id.ToString());
            dictionnaire.Add("budget", budgetDTO.budget.ToString());
            dictionnaire.Add("id_sous_classification", budgetDTO.id_sous_classification.ToString());
            dictionnaire.Add("mois_valeur", budgetDTO.periode.Month.ToString());
            dictionnaire.Add("annee", budgetDTO.periode.Year.ToString());
            return(sqlManager.ExecProcedure("EditBudget", dictionnaire));
        }
 public void Generate(BudgetDTO[] budget, Int32 money)
 {
     Chart = new ChartType() { Type = "areaspline" };
     Title = new Title() { Text = "Budget report" };
     Subtitle = new Title() { Text = "Current session" };
     XAxis = new XAxis() { Categories = budget.Select(x => x.Name).ToArray() };
     YAxis = new YAxis() { Title = new Title() { Text = "Budget" } };
     Tooltip = new Tooltip() { Shared = true, ValueSuffix = " money" };
     Series = new ChartSeries[] {
         new ChartSeries() { Name = "Current", Data = budget.Select(x => (Int32)(x.Value)).ToArray() }
     };
 }
Exemple #6
0
        //AddBudget
        public void AddBudget(BudgetDTO budgetDTO, string userName)
        {
            var user   = _repo.GetUserByUserName(userName);
            var budget = new Budget
            {
                Id      = budgetDTO.Id,
                Name    = budgetDTO.Name,
                Amount  = budgetDTO.Amount,
                Current = budgetDTO.Current,
                UserId  = user.Id
            };

            _repo.Add(budget);
        }
Exemple #7
0
        public string SaveBudget(BudgetDTO budgetDTO)
        {
            Dictionary <string, object> dictionnaire = new Dictionary <string, object>();

            dictionnaire.Add("budget", budgetDTO.budget);
            dictionnaire.Add("id_sous_classification", budgetDTO.id_sous_classification);
            dictionnaire.Add("mois_valeur", budgetDTO.periode.Month);
            dictionnaire.Add("annee", budgetDTO.periode.Year);
            if (dictionnaire["budget"] != null)
            {
                dictionnaire["budget"] = ((string)budgetDTO.budget).Split(',')[0].Replace(" ", "").Replace("€", "").Replace("-", "").Trim();
            }
            return(sqlManager.ExecProcedure("SaveBudget", dictionnaire));
        }
Exemple #8
0
        public void SaveAndGetBudget()
        {
            var budgetDAO   = new BudgetDAO(sqlManager);
            var listClassif = JsonConvert.DeserializeObject <Dictionary <string, List <SousClassificationDTO> > >(
                new ClassificationDAO(sqlManager).GetClassification());
            var budgetDTO = new BudgetDTO()
            {
                budget = "2",
                id_sous_classification = listClassif["EQUIPEMENTS_FOURNITURES_REPARATION"][1].id,
                periode = DateTime.Parse("25/02/2019", CultureInfo.CurrentCulture)
            };

            budgetDAO.SaveBudget(budgetDTO);
            var result = JsonConvert.DeserializeObject <Dictionary <string, List <DTO.BudgetDTO> > >(
                budgetDAO.GetBudget("2019", "EQUIPEMENTS_FOURNITURES_REPARATION"));

            Assert.AreEqual(Double.Parse(result["1"][0].budget.Replace('.', ',')), Double.Parse(budgetDTO.budget.Replace('.', ',')));
        }
 public IHttpActionResult Get(int id)
 {
     try
     {
         var       result    = _budgetService.Get(id);
         BudgetDTO budgetDTO = BudgetDTO.From(result);
         return(Ok(budgetDTO));
     }
     catch (Exception ex)
     {
         if (ex.InnerException == null)
         {
             return(Content(HttpStatusCode.InternalServerError, ex.Message));
         }
         else
         {
             return(Content(HttpStatusCode.InternalServerError, ex.InnerException.Message));
         }
     }
 }
Exemple #10
0
        public void EditBudget()
        {
            var budgetDAO   = new BudgetDAO(sqlManager);
            var listClassif = JsonConvert.DeserializeObject <Dictionary <string, List <SousClassificationDTO> > >(
                new ClassificationDAO(sqlManager).GetClassification());
            var budgetDTO1 = new BudgetDTO()
            {
                budget = "2",
                id_sous_classification = listClassif["EQUIPEMENTS_FOURNITURES_REPARATION"][1].id,
                periode = DateTime.Parse("25/02/2019", CultureInfo.CurrentCulture)
            };

            budgetDAO.SaveBudget(budgetDTO1);
            var result = JsonConvert.DeserializeObject <Dictionary <string, List <BudgetDTO> > >(
                budgetDAO.GetBudget("2019", "EQUIPEMENTS_FOURNITURES_REPARATION"));
            var budgetDTO2 = new BudgetDTO()
            {
                budget = "3",
                id     = result["1"][0].id,
                id_sous_classification = listClassif["EQUIPEMENTS_FOURNITURES_REPARATION"][0].id,
                sous_classification    = listClassif["EQUIPEMENTS_FOURNITURES_REPARATION"][0].name,
                periode = DateTime.Parse("23/11/2019", CultureInfo.CurrentCulture)
            };

            budgetDAO.EditBudget(budgetDTO2);
            result = JsonConvert.DeserializeObject <Dictionary <string, List <BudgetDTO> > >(
                budgetDAO.GetBudget("2019", "EQUIPEMENTS_FOURNITURES_REPARATION"));
            var budgetDTO3 = new BudgetDTO()
            {
                id     = result["10"][0].id,
                budget = result["10"][0].budget,
                sous_classification    = result["10"][0].sous_classification,
                id_sous_classification = result["10"][0].id_sous_classification
            };

            Assert.AreEqual(budgetDTO2.id, budgetDTO3.id);
            Assert.AreEqual(budgetDTO2.id_sous_classification, budgetDTO3.id_sous_classification);
            Assert.AreEqual(budgetDTO2.sous_classification, budgetDTO3.sous_classification);
            Assert.AreEqual(double.Parse(budgetDTO2.budget), double.Parse(budgetDTO3.budget.Replace('.', ',')));
        }
Exemple #11
0
        public void DeleteBudget()
        {
            var budgetDAO   = new BudgetDAO(sqlManager);
            var listClassif = JsonConvert.DeserializeObject <Dictionary <string, List <SousClassificationDTO> > >(
                new ClassificationDAO(sqlManager).GetClassification());
            var budgetDTO1 = new BudgetDTO()
            {
                budget = "2",
                id_sous_classification = listClassif["EQUIPEMENTS_FOURNITURES_REPARATION"][1].id,
                periode = DateTime.Parse("25/02/2019", CultureInfo.CurrentCulture)
            };

            budgetDAO.SaveBudget(budgetDTO1);
            var result = JsonConvert.DeserializeObject <Dictionary <string, List <BudgetDTO> > >(
                budgetDAO.GetBudget("2019", "EQUIPEMENTS_FOURNITURES_REPARATION"));

            Assert.IsTrue(result["1"].Count > 0);
            budgetDAO.DeleteBudget(new Guid(result["1"][0].id));
            result = JsonConvert.DeserializeObject <Dictionary <string, List <BudgetDTO> > >(
                budgetDAO.GetBudget("2019", "EQUIPEMENTS_FOURNITURES_REPARATION"));
            Assert.IsTrue(result["1"].Count == 0);
        }
 public void UpdateBudget(BudgetDTO dto)
 {
     _budgetRepository.UpdateBudget(dto.Budget);
 }
Exemple #13
0
 public Budget FromDTO(BudgetDTO dto)
 {
     throw new NotImplementedException();
 }
        public IHttpActionResult Get([FromUri] BudgetListParameter param)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    IList <Budget> budgets = _budgetService.GetAll().ToList();
                    if (param.IsPagination())
                    {
                        string keyword = string.Empty;
                        string field   = string.Empty;

                        param.Validate();
                        keyword = param.Search;
                        field   = param.SearchBy;

                        int skip = 0;
                        if (param.PageNo > 0)
                        {
                            skip = (param.PageNo - 1) * param.PageSize;
                        }

                        int totalRows  = _budgetService.GetAll().Count();
                        var totalPage  = totalRows / param.PageSize;
                        var totalPages = (int)Math.Ceiling((double)totalRows / param.PageSize);
                        if (totalPages < 0)
                        {
                            totalPages = 0;
                        }

                        var result = budgets.Skip(skip).Take(param.PageSize).ToList();

                        IList <BudgetDTO> colls = BudgetDTO.From(result);

                        PaginationDTO page = new PaginationDTO();
                        page.PageCount = totalPages;
                        page.PageNo    = param.PageNo;
                        page.PageSize  = param.PageSize;
                        page.results   = colls;

                        return(Ok(page));
                    }
                    else
                    {
                        IList <BudgetDTO> dto = BudgetDTO.From(budgets);
                        return(Ok(dto));
                    }
                }
                else
                {
                    string errorResult = string.Join(" ", ModelState.Values.SelectMany(x => x.Errors).Select(x => x.ErrorMessage));
                    return(Content(HttpStatusCode.BadRequest, errorResult));
                }
            }
            catch (Exception ex)
            {
                if (ex.InnerException == null)
                {
                    return(Content(HttpStatusCode.InternalServerError, ex.Message));
                }
                else
                {
                    return(Content(HttpStatusCode.InternalServerError, ex.InnerException.Message));
                }
            }
        }
 public void Put(BudgetDTO budget)
 {
     _budgetService.UpdateBudget(budget);
 }
        public bool Post([FromBody] BudgetDTO data)
        {
            if (data != null)
            {
                Budget budget = Budget.NewBudget();
                if (data.BudgetID > 0)
                {
                    budget = Budget.GetByBudgetID(data.BudgetID);
                }
                else
                {
                    budget.CreatedOn = DateTime.Now;
                    budget.CreatedBy = CurrentUserID;
                }

                data.CopyDTO(budget);
                if (budget.IsNew)
                {
                    budget.IsActive = true;
                }
                else
                {
                    if (budget.IsDirty)
                    {
                        budget.UpdatedOn = DateTime.Now;
                        budget.UpdatedBy = CurrentUserID;
                    }
                }

                foreach (BudgetLineDTO dataBudgetLine in data.BudgetLines)
                {
                    BudgetLine budgetLine =
                        budget.BudgetLines.FirstOrDefault(x => x.BudgetLineID == dataBudgetLine.BudgetLineID);
                    if (budgetLine == null)
                    {
                        budgetLine           = BudgetLine.NewBudgetLine();
                        budgetLine.CreatedOn = DateTime.Now;
                        budgetLine.CreatedBy = CurrentUserID;
                        budget.BudgetLines.Add(budgetLine);
                    }

                    dataBudgetLine.CopyDTO(budgetLine);
                    if (budgetLine.IsNew)
                    {
                        budgetLine.IsActive = true;
                    }
                    else
                    {
                        if (budgetLine.IsDirty)
                        {
                            budgetLine.UpdatedOn = DateTime.Now;
                            budgetLine.UpdatedBy = CurrentUserID;
                        }
                    }
                }

                budget.Save();
                return(true);
            }


            return(false);
        }
 public void Post([FromBody] BudgetDTO budgetDTO)
 {
     _service.AddBudget(budgetDTO, User.Identity.Name);
 }