Exemple #1
0
        public DataResponse <EntityList <EntityNote> > GetAllNotes(FilterNote filter, int currentBusineId, int take = 10, int skip = 0)
        {
            var response = new DataResponse <EntityList <EntityNote> >();

            if (filter != null)
            {
                take = filter.Take;
                skip = filter.Skip;
            }
            base.DBInit();

            var query = DBEntity.Notes.Where(a => a.ParentTypeId == filter.ParentTypeId & a.ParentId == filter.ParentId && a.IsDeleted != true)
                        .Select(a => new EntityNote
            {
                Id           = a.Id,
                Description  = a.Description,
                ParentTypeId = a.ParentTypeId,
                ParentId     = a.ParentId,
                CreatedBy    = a.CreatedBy,
                CreatedOn    = a.CreatedOn,
                UserDetails  = new UserDetails {
                    UserId = a.CreatedBy, Name = a.User.FirstName + " " + a.User.LastName, date = a.CreatedOn.ToString(), BusinessId = currentBusineId
                }
            }).OrderByDescending(o => o.CreatedOn);

            response = GetList <EntityNote>(query, skip, take);

            response.Model.List.Reverse();

            base.DBClose();

            return(response);
        }
        public IHttpActionResult Index(FilterNote filter)
        {
            var    routeDataValues = ControllerContext.RouteData.Values;
            int    parentId;
            string typeValue   = routeDataValues["Type"].ToString();
            bool   hasParentId = int.TryParse(routeDataValues["ParentId"].ToString(), out parentId);

            if (hasParentId)
            {
                filter.ParentId = parentId;
                switch (typeValue)
                {
                case "tasks":
                    filter.ParentTypeId = (int)NoteType.Task;
                    break;

                case "leads":
                case "accounts":
                    filter.ParentTypeId = (int)NoteType.Lead;
                    break;
                }

                var repository = new RepositoryNote();
                var response   = repository.GetAllNotes(filter, CurrentBusinessId.Value);
                return(Ok <DataResponse <EntityList <EntityNote> > >(response));
            }
            else
            {
                return(Ok());
            }
        }