public async Task <IHttpActionResult> GetFuelTypeById(int id)
        {
            FuelType fuelType = await _fuelTypeApplicationService.GetAsync(id);

            FuelTypeViewModel fuelTypeViewModel = Mapper.Map <FuelTypeViewModel>(fuelType);

            return(Ok(fuelTypeViewModel));
        }
        public async Task <object> Update(FuelTypeViewModel model)
        {
            var models = await _context.FuelTypes.ToListAsync();

            var item = models.Where(x => x.IdString == model.IdString.ToLower()).Where(x => x.Deleted == false).FirstOrDefault();

            if (item == null)
            {
                return new
                       {
                           Succeeded = false,
                           Code      = "NotFound"
                       }
            }
            ;
            if (model.FuelName.Length <= 0)
            {
                return new
                       {
                           Succeeded = false,
                           Code      = "EmptyName"
                       }
            }
            ;

            var newIdString = new string(model.FuelName.Select(x => char.IsLetterOrDigit(x) ? x : '-').ToArray()).ToLower();
            var isBusy      = models.Where(x => x.IdString == newIdString).Where(x => x.Deleted == false).FirstOrDefault();

            if (isBusy != null && item.IdString != newIdString)
            {
                return new
                       {
                           Succeeded = false,
                           Code      = "BusyName"
                       }
            }
            ;
            try
            {
                item.IdString = newIdString;

                item.FuelName = model.FuelName;
                var result = _context.FuelTypes.Update(item);
                await _context.SaveChangesAsync();

                return(new
                {
                    Succeeded = true,
                });
            }
            catch (Exception ex)
            {
                return(new
                {
                    Succeeded = false,
                });
            }
        }
 public ActionResult Create(FuelTypeViewModel model)
 {
     if (ModelState.IsValid)
     {
         _fuelTypeManager.Add(_fuelTypeFieldCopier.CopyFields(model, new FuelType()));
         return(RedirectToAction("List"));
     }
     return(View(model));
 }
示例#4
0
        public FuelType CopyFields(FuelTypeViewModel from, FuelType to)
        {
            if (to == null)
            {
                throw new NullReferenceException();
            }
            if (from == null)
            {
                throw new NullReferenceException();
            }

            to.Name = from.Name;
            return(to);
        }
 public ActionResult Edit(FuelTypeViewModel model)
 {
     if (ModelState.IsValid)
     {
         var dbItem = _fuelTypeManager.GetById(model.Id);
         if (dbItem == null)
         {
             throw new NullReferenceException();
         }
         dbItem = _fuelTypeFieldCopier.CopyFields(model, dbItem);
         _fuelTypeManager.Edit(dbItem);
         return(RedirectToAction("List"));
     }
     return(View(model));
 }
        public async Task <object> Save(FuelTypeViewModel model)
        {
            try
            {
                string idString = new string(model.FuelName.Select(x => char.IsLetterOrDigit(x) ? x : '-').ToArray()).ToLower();
                if (await _context.FuelTypes.Where(x => x.IdString == idString).Where(x => x.Deleted == false).FirstOrDefaultAsync() != null)
                {
                    return new
                           {
                               Succeeded = false,
                               Errors    = new[]
                               {
                                   new
                                   {
                                       Code = "BusyName"
                                   }
                               }
                           }
                }
                ;
                FuelType fuelType = new FuelType()
                {
                    Id       = Guid.NewGuid(),
                    FuelName = model.FuelName,
                    IdString = idString,
                    Deleted  = false
                };
                await _context.FuelTypes.AddAsync(fuelType);

                await _context.SaveChangesAsync();

                return(new
                {
                    Succeeded = true
                });
            }
            catch (Exception ex)
            {
                return(new
                {
                    Succeeded = false
                });
            }
        }
示例#7
0
 public JsonResult CheckFuelTypeNameForExist(FuelTypeViewModel model)
 {
     model.Name = model.Name.TrimStart(' ');
     model.Name = model.Name.TrimEnd(' ');
     return(Json(_fuelTypeManager.GetAll().Where(c => c.Name == model.Name).ToList().Count <= 0, JsonRequestBehavior.AllowGet));
 }
示例#8
0
        public async Task <JsonResult> Put(string id, [FromBody] FuelTypeViewModel model)
        {
            var result = await _fuelTypeService.Update(model);

            return(new JsonResult(result));
        }
示例#9
0
        public async Task <object> Post([FromBody] FuelTypeViewModel model)
        {
            var result = await _fuelTypeService.Save(model);

            return(new JsonResult(result));
        }