示例#1
0
        public IHttpActionResult ViewCustomerDetailsByPage(int max, int page, string sort_col, string sort_dir, string search = null)
        {
            Paged_ACRF_CustomerDetailsModel objList = new Paged_ACRF_CustomerDetailsModel();

            try
            {
                objList = objCustomerDetailsVM.ListCustomerDetailsByPagination(max, page, search, sort_col, sort_dir);
            }
            catch (Exception ex)
            {
                ErrorHandlerClass.LogError(ex);
            }
            return(Ok(new { results = objList }));
        }
        public Paged_ACRF_CustomerDetailsModel ListCustomerDetailsByPagination(int max, int page, string search, string sort_col, string sort_dir)
        {
            Paged_ACRF_CustomerDetailsModel  objPaged = new Paged_ACRF_CustomerDetailsModel();
            List <ACRF_CustomerDetailsModel> objList  = new List <ACRF_CustomerDetailsModel>();

            try
            {
                if (search == null)
                {
                    search = "";
                }
                int startIndex = max * (page - 1);

                string sqlstr = "ACRF_GetCustomerByPage";

                var connection = gConnection.Connection();
                connection.Open();
                SqlCommand cmd = new SqlCommand(sqlstr, connection);
                cmd.CommandType = System.Data.CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@startRowIndex", startIndex);
                cmd.Parameters.AddWithValue("@pageSize", max);
                cmd.Parameters.AddWithValue("@search", search);
                cmd.Parameters.AddWithValue("@sort_col", sort_col);
                cmd.Parameters.AddWithValue("@sort_dir", sort_dir);
                SqlDataReader sdr = cmd.ExecuteReader();

                while (sdr.Read())
                {
                    ACRF_CustomerDetailsModel tempobj = new ACRF_CustomerDetailsModel();
                    tempobj.Id           = Convert.ToInt32(sdr["Id"].ToString());
                    tempobj.VendorId     = Convert.ToInt32(sdr["VendorId"].ToString());
                    tempobj.CustomerName = sdr["CustomerName"].ToString();
                    tempobj.Address      = sdr["Address"].ToString();
                    tempobj.ContactName  = sdr["ContactName"].ToString();
                    tempobj.Mobile       = sdr["Mobile"].ToString();
                    tempobj.Email        = sdr["Email"].ToString();
                    tempobj.FAX          = sdr["FAX"].ToString();
                    tempobj.SkypeId      = sdr["SkypeId"].ToString();
                    tempobj.MiscInfo     = sdr["MiscInfo"].ToString();
                    tempobj.CountryId    = Convert.ToInt32(sdr["CountryId"].ToString());
                    tempobj.PostalCode   = sdr["PostalCode"].ToString();
                    //tempobj.LastLogin = Convert.ToDateTime(sdr["LastLogin"].ToString());

                    //tempobj.CreatedBy = sdr["CreatedBy"].ToString();
                    //tempobj.CreatedOn = Convert.ToDateTime(sdr["CreatedOn"].ToString());
                    tempobj.Country    = sdr["Country"].ToString();
                    tempobj.VendorName = sdr["VendorName"].ToString();
                    objList.Add(tempobj);
                }
                sdr.Close();
                objPaged.ACRF_CustomerDetailsModelList = objList;


                sqlstr = "select count(*) as cnt from ACRF_CustomerDetails where CustomerName like @search ";
                cmd.Parameters.Clear();
                cmd.CommandText = sqlstr;
                cmd.Connection  = connection;
                cmd.CommandType = System.Data.CommandType.Text;
                cmd.Parameters.AddWithValue("@search", '%' + @search + '%');
                sdr = cmd.ExecuteReader();
                while (sdr.Read())
                {
                    objPaged.PageCount = Convert.ToInt32(sdr["cnt"].ToString());
                }

                connection.Close();
            }
            catch (Exception ex)
            {
                ErrorHandlerClass.LogError(ex);
            }
            return(objPaged);
        }