Example #1
0
        //-- private function --//

        //-> ListingForMasterDetail
        private async Task <GetListDTO <ItemViewForMasterDTO> > ListingForMasterDetail(int currentPage, IQueryable <dynamic> items, string search = null)
        {
            int startRow = Helper.Helper.GetStartRow(currentPage);
            List <ItemViewForMasterDTO> itemViewForMasters = new List <ItemViewForMasterDTO>();
            var myItems = await items.Skip(startRow).Take(Helper.Helper.pageSize).ToListAsync();

            foreach (var item in myItems)
            {
                var itemViewForMaster = new ItemViewForMasterDTO();
                itemViewForMaster           = Helper.Helper.MapDBClassToDTO <tblItem, ItemViewForMasterDTO>(item.item);
                itemViewForMaster.documents = Helper.Helper.GetDocuments(item.document);
                itemViewForMasters.Add(itemViewForMaster);
            }
            var getList = new GetListDTO <ItemViewForMasterDTO>();

            getList.metaData = await Helper.Helper.GetMetaData(currentPage, items, "name", "asc", search);

            getList.results = itemViewForMasters;
            return(getList);
        }
Example #2
0
        //-> GetItemsForGroup
        private async Task <List <ItemViewForMasterDTO> > GetItemsForGroup(int itemGroupID)
        {
            var items = from i in db.tblItems
                        join d in db.sm_doc.Where(x => x.docs_Deleted == null && x.tableID == Helper.Helper.document_ItemTableID)
                        on i.id.ToString() equals d.value into document
                            where i.item_Deleted == null && i.itemGroupID == itemGroupID
                        orderby i.name ascending
                        select new { item = i, document = document };

            List <ItemViewForMasterDTO> itemViewForMasters = new List <ItemViewForMasterDTO>();
            var myItem = await items.Take(Helper.Helper.pageSize).ToListAsync(); // here no skip record, becos we want to take 20 tblItems for every single Item group;

            foreach (var item in items.Take(Helper.Helper.pageSize))
            {
                var itemViewForMaster = new ItemViewForMasterDTO();
                itemViewForMaster           = Helper.Helper.MapDBClassToDTO <tblItem, ItemViewForMasterDTO>(item.item);
                itemViewForMaster.documents = Helper.Helper.GetDocuments(item.document.ToList());
                itemViewForMasters.Add(itemViewForMaster);
            }
            return(itemViewForMasters);
        }