コード例 #1
0
        public override DTO.SearchFormDataDTO GetDataWithFilter(System.Collections.Hashtable filters, int pageSize, int pageIndex, string orderBy, string orderDirection, out int totalRows, out Library.DTO.Notification notification)
        {
            notification = new Library.DTO.Notification()
            {
                Type = Library.DTO.NotificationType.Success
            };
            DTO.SearchFormDataDTO data = new DTO.SearchFormDataDTO();
            data.Data = new List <DTO.SampleItemSearchResultDTO>();
            totalRows = 0;

            string SampleOrderUD         = null;
            string Season                = null;
            string ClientUD              = null;
            int?   SampleProductStatusID = null;
            int    UserID;
            string SampleItemCode = null;
            string SampleItemName = null;

            if (filters.ContainsKey("SampleOrderUD") && !string.IsNullOrEmpty(filters["SampleOrderUD"].ToString()))
            {
                SampleOrderUD = filters["SampleOrderUD"].ToString().Replace("'", "''");
            }
            if (filters.ContainsKey("Season") && filters["Season"] != null && !string.IsNullOrEmpty(filters["Season"].ToString()))
            {
                Season = filters["Season"].ToString().Replace("'", "''");
            }
            if (filters.ContainsKey("ClientUD") && !string.IsNullOrEmpty(filters["ClientUD"].ToString()))
            {
                ClientUD = filters["ClientUD"].ToString().Replace("'", "''");
            }
            if (filters.ContainsKey("SampleProductStatusID") && filters["SampleProductStatusID"] != null && !string.IsNullOrEmpty(filters["SampleProductStatusID"].ToString()))
            {
                SampleProductStatusID = Convert.ToInt32(filters["SampleProductStatusID"].ToString());
            }
            if (filters.ContainsKey("SampleItemCode") && !string.IsNullOrEmpty(filters["SampleItemCode"].ToString()))
            {
                SampleItemCode = filters["SampleItemCode"].ToString().Replace("'", "''");
            }
            if (filters.ContainsKey("SampleItemName") && !string.IsNullOrEmpty(filters["SampleItemName"].ToString()))
            {
                SampleItemName = filters["SampleItemName"].ToString().Replace("'", "''");
            }
            UserID = Convert.ToInt32(filters["UserID"].ToString());

            try
            {
                using (SampleItemMngEntities context = CreateContext())
                {
                    totalRows = context.SampleItemMng_function_SearchSampleItem(SampleOrderUD, Season, ClientUD, SampleProductStatusID, UserID, orderBy, orderDirection, SampleItemCode, SampleItemName).Count();
                    var result = context.SampleItemMng_function_SearchSampleItem(SampleOrderUD, Season, ClientUD, SampleProductStatusID, UserID, orderBy, orderDirection, SampleItemCode, SampleItemName);
                    data.Data = converter.DB2DTO_SampleItemSearchResultDTOs(result.Skip(pageSize * (pageIndex - 1)).Take(pageSize).ToList());
                }
            }
            catch (Exception ex)
            {
                notification.Type    = Library.DTO.NotificationType.Error;
                notification.Message = Library.Helper.HandleExceptionSingleLine(ex);
            }

            return(data);
        }