public static int?Create(HuntingEntities dataContext, CreateMapItemModel model, int userId) { try { MapItem updateItem = new MapItem() { SysCreated = DateTime.Now, SysCreator = userId, TerritoryId = model.TerritoryId, MapItemType = model.MapItemTypeId, }; dataContext.MapItems.Add(updateItem); updateItem.Name = model.Name; updateItem.Description = model.Description; updateItem.LocationX = model.LocationX; updateItem.LocationY = model.LocationY; updateItem.SysEditor = userId; updateItem.SysUpdated = DateTime.Now; dataContext.SaveChanges(); return(updateItem.Id); } catch (Exception exception) { logger.Error(exception, "Create"); return(null); } }
public IHttpActionResult CreateMapItem(CreateMapItemModel model) { try { using (var dataContext = new HuntingEntities()) { var session = GetSession(); if (session == null) { return(Content(HttpStatusCode.Unauthorized, SESSION_INVALID_MESSAGE)); } var userSession = AclUserContext.GetUserSession(dataContext, session); if (userSession == null) { return(Content(HttpStatusCode.Unauthorized, SESSION_INVALID_MESSAGE)); } var territory = TerritoryContext.GetDetail(dataContext, model.TerritoryId); if (userSession.AclUser.CanUpdateTerritory(territory) == false) { return(Content(HttpStatusCode.Forbidden, FORBIDDEN_MESSAGE)); } var mapItemType = MapItemTypeContext.GetDetail(dataContext, model.MapItemTypeId); if (mapItemType == null || mapItemType.TerritoryId != territory.Id) { return(Content(HttpStatusCode.BadRequest, BAD_REQUEST_MESSAGE)); } if (model.IsValid() == false) { return(Content(HttpStatusCode.BadRequest, BAD_REQUEST_MESSAGE)); } var pointId = MapItemContext.Create(dataContext, model, userSession.AclUserId); if (pointId == null) { return(Content(HttpStatusCode.InternalServerError, FAILED_MESSAGE)); } return(Ok(pointId.Value.ToString())); } } catch (Exception exception) { logger.Error(exception, "MobileController"); return(InternalServerError()); } }