コード例 #1
0
        public IHttpActionResult CreateMenu([FromBody] MenuCreateDto model)
        {
            //step 1 : validate our incoming model (every asp .net controller will be same)
            if (ModelState.IsValid == false)
            {
                return(BadRequest(ModelState)); //ModelState is built in asp .net.
            }

            //step 2 : pass model to service framework to create in the db

            BmpMenu newobj = new BmpMenu()
            {
                MenuName       = model.MenuName,
                MenuOrder      = model.MenuOrder,
                ParentMenuID   = model.ParentMenuID,
                UiSref         = model.UiSref,
                UiSrefActiveIf = model.UiSrefActiveIf,
                MenuLevel      = model.MenuLevel
            };

            menuService.Create(newobj);

            //step 3 : call save changes
            try
            {
                menuService.SaveChanges();
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }


            return(Ok("all good : " + newobj.MenuName + " has been created."));
        }
コード例 #2
0
        public async Task <int> Create([FromBody] MenuCreateDto menuCreateDto)
        {
            FoodMenu foodMenu = menuCreateDto.ToFoodMenu();

            _db.Entry(foodMenu).State = EntityState.Added;
            await _db.SaveChangesAsync();

            return(foodMenu.Id);
        }
コード例 #3
0
 /// <summary>
 /// 新增菜单信息
 /// </summary>
 /// <param name="dto">新增信息</param>
 /// <returns></returns>
 public async Task <bool> InsertAsync(MenuCreateDto dto)
 {
     dto.NotNull(nameof(MenuCreateDto));
     if (!await _menuRepository.IsExistAsync(op => op.Name == dto.Name || op.Url == dto.Url))
     {
         var menuModel = dto.ToMap <Menu>();
         return(await _menuRepository.InsertAsync(menuModel));
     }
     throw new BusinessException("菜单名称或地址已存在相同数据!!!");
 }
コード例 #4
0
        public ActionResult <MenuReadDto> CreateMenu(MenuCreateDto menuCreateDto)
        {
            var menuModel = _mapper.Map <Menu>(menuCreateDto);

            _menuRepository.CreateMenu(menuModel);
            _menuRepository.SaveChanges();

            var menuReadDto = _mapper.Map <MenuReadDto>(menuModel);

            return(CreatedAtRoute(nameof(GetMenu), new { menuReadDto.Id }, menuReadDto));
        }
コード例 #5
0
        public ActionResult <MenuReadDto> createMenu(MenuCreateDto menuCreateDto)
        {
            //source -> Target
            var menuModel = _mapper.Map <Menu>(menuCreateDto);// from the Dto(source User input ) to target Dto or profile.

            _repository.CreateMenu(menuModel);
            _repository.SaveChanges();
            // var MenuReadDto = _mapper.Map<MenuReadDto>(menuModel);// it need not to display filedname;
            //return Ok(menuModel);
            return(CreatedAtRoute(nameof(GetMenuById), new { Id = menuModel }));//,MenuReadDto);
        }
コード例 #6
0
        public async Task <ActionResult <MenuToReturnDto> > CreateMenu(MenuCreateDto menuToCreate)
        {
            var menu = _mapper.Map <MenuCreateDto, Menu>(menuToCreate);

            menu.Restaurant = await _unitOfWork.Repository <Restaurant>().GetByIdAsync(menuToCreate.RestaurantId);

            _unitOfWork.Repository <Menu>().Add(menu);

            var result = await _unitOfWork.Complete();

            if (result <= 0)
            {
                return(BadRequest(new ApiResponse(400, "Problem creating menu")));
            }

            return(_mapper.Map <Menu, MenuToReturnDto>(menu));
        }
コード例 #7
0
 public async Task <bool> CreateMenu([FromQuery] MenuCreateDto dto)
 => await _menuService.InsertAsync(dto);