public HttpResponseMessage GetHourlyContracts(string userId, string statusCode = null)
 {
     using (var contractMgr = new ServiceContractPerHourManager())
     {
         var result = contractMgr.GetUserHourlyContracts(userId, statusCode, Language).ToList();
         return(OkResponse(result));
     }
 }
 public HttpResponseMessage GetHourlyContractDetails(string userId, string contractId)
 {
     using (var contractMgr = new ServiceContractPerHourManager())
     {
         var result = contractMgr.GetUserHourlyContractDetails(userId, contractId, Language);
         return(OkResponse(result));
     }
 }
        public HttpResponseMessage CreateNewContract(RequestServiceContractPerHour contract)
        {
            ServiceContractPerHourManager manager = new ServiceContractPerHourManager();
            Entity contractEntity  = manager.CastToCrmEntity(contract);
            Guid   newContractGuid = GlobalCode.Service.Create(contractEntity);
            Entity newEntity       = manager.GetCrmEntity(newContractGuid.ToString());

            return(OkResponse(contract));
        }
        public HttpResponseMessage GetHourlyContracts_M(string userId, int pageSize, int pageNumber, string statusCode = null)
        {
            using (var contractMgr = new ServiceContractPerHourManager())
            {
                var result = contractMgr.GetUserHourlyContracts(userId, statusCode, Language).ToList();
                // Get's No of Rows Count
                int count = result.Count();

                // Parameter is passed from Query string if it is null then it default Value will be pageNumber:1
                int CurrentPage = pageNumber;

                // Parameter is passed from Query string if it is null then it default Value will be pageSize:20
                int PageSize = pageSize;

                // Display TotalCount to Records to User
                int TotalCount = count;

                // Calculating Totalpage by Dividing (No of Records / Pagesize)
                int TotalPages = (int)Math.Ceiling(count / (double)PageSize);

                // Returns List of Customer after applying Paging
                var items = result.Skip((CurrentPage - 1) * PageSize).Take(PageSize).ToList();

                // if CurrentPage is greater than 1 means it has previousPage
                var previousPage = CurrentPage > 1 ? "Yes" : "No";

                // if TotalPages is greater than CurrentPage means it has nextPage
                var nextPage = CurrentPage < TotalPages ? "Yes" : "No";

                // Object which we are going to send in header
                var paginationMetadata = new
                {
                    totalCount  = TotalCount,
                    pageSize    = PageSize,
                    currentPage = CurrentPage,
                    totalPages  = TotalPages,
                    previousPage,
                    nextPage
                };

                return(OkResponse <ReturnData>(new ReturnData()
                {
                    State = true, Data = new { contracts = items }
                }));
            }
        }
Example #5
0
 public ServiceContractPerHourController()
 {
     Manager        = new ServiceContractPerHourManager();
     GeneralManager = new GeneralManager();
 }