示例#1
0
        public ActionResult Add(ExpansViewModels model)
        {
            if (!ExpanseReportService.CheckDay(model))
            {
                ModelState.AddModelError("Day", "Ce jour ne fait pas parti de ce mois");
            }

            if (Service.CheckAmount(model) > 0)
            {
                ModelState.AddModelError("Amount_HT", "Vous avez dépassez le plafond pour ce frais de " + Service.CheckAmount(model) + "€");
            }


            if (ModelState.IsValid)
            {
                Service.Add(model);
                ExpanseReportService.UpdateAmount(model.ExpanseReport_ID);
            }

            ExpanseReportViewModels report = ExpanseReportService.GetById(model.ExpanseReport_ID);

            ViewBag.Days = new SelectList(report.Days);

            return(PartialView("_FormCreateExpanse", model));
        }
示例#2
0
        public void Edit(ExpansViewModels model)
        {
            Expans expans = Repository.GetById(model.Id);

            expans = Mapper.ModelToData(expans, model);
            Repository.Save();
        }
示例#3
0
        public void Add(ExpansViewModels model)
        {
            Expans expans = new Expans();

            expans.Expanse_ID = Guid.NewGuid();

            Repository.Add(Mapper.ModelToData(expans, model));
            Repository.Save();
        }
示例#4
0
        public Expans ModelToData(Expans expans, ExpansViewModels model)
        {
            expans.Project_ID       = new Guid(model.Project_ID.ToString());
            expans.ExpanseType_ID   = new Guid(model.ExpanseType_ID.ToString());
            expans.ExpanseReport_ID = new Guid(model.ExpanseReport_ID.ToString());
            expans.Amount_HT        = model.Amount_HT;
            expans.Amount_TTC       = model.Amount_TTC;
            expans.Amount_TVA       = model.Amount_TVA;
            expans.Customer_ID      = new Guid(model.Customer_ID.ToString());
            expans.Day = model.Day;

            return(expans);
        }
示例#5
0
        public ActionResult Edit(string id, string price)
        {
            ExpansViewModels expans = Service.GetById(id);

            expans.Amount_HT = Convert.ToDouble(price);
            if (Service.CheckAmount(expans) > 0)
            {
                string error = " : Vous avez dépassez le plafond pour ce frais de " + Service.CheckAmount(expans) + "€";
                return(Json(new { action = "edit", removed = false, error = error }));
            }

            if (expans.ExpanseReport.Employee_ID == GetEmployeeId())
            {
                Service.Edit(expans);
                ExpanseReportService.UpdateAmount(expans.ExpanseReport_ID);

                return(Json(new { action = "edit", removed = true, error = "" }));
            }

            return(Json(new { action = "edit", removed = false, error = "Ce frais ne correspond pas au votre" }));
        }
示例#6
0
 internal double CheckAmount(ExpansViewModels model)
 {
     return(model.ExpanseType.Ceilling != null ? model.Amount_HT - (double)model.ExpanseType.Ceilling : -1);
 }
示例#7
0
 public bool CheckDay(ExpansViewModels model)
 {
     return(GetById(model.ExpanseReport_ID).Days.Contains(model.Day));
 }