public IList <string> GetSsccNumbers(int retailerChainId = -1) { log.Info(string.Format(LogMessages.RequestMethod, RequestContext.Principal.Identity.Name, $"sscc\\Get?retailerchainId={retailerChainId}")); UserRepository userRepository = new UserRepository(); var request = new SSCCListRequest { SsccStatusNew = true, SsccStatusProcessed = true, SsccStatusValidated = true, ValidationOpen = true, ValidationExceeded = true, ValidationPassed = true, CountingOK = true, CountingNOK = true, SlaOK = true, SlaNOK = true, RetailerChainId = retailerChainId, OrderNr = null }; //For customer show only validated SSCCs if (userRepository.IsExternalUser(RequestContext.Principal.Identity.Name)) { request.SsccStatusNew = false; request.SsccStatusProcessed = false; request.SsccStatusValidated = true; } return(_ssccListRepository.GetSSCCNumberList(request, RequestContext.Principal.Identity.Name).Select(x => x.SSCC).Distinct().ToList()); }
public int GetApprovedSSCCsCount(string userEmail, int retailerChainId) { var request = new SSCCListRequest { SsccStatusNew = true, SsccStatusProcessed = true, SsccStatusValidated = true, ValidationOpen = true, ValidationExceeded = true, ValidationPassed = true, CountingOK = true, CountingNOK = true, SlaOK = true, SlaNOK = true, RetailerChainId = retailerChainId, OrderNr = null }; //Return count of validated SSCCs return(GetSSCCNumberList(request, userEmail).Where(s => s.SSCC_STATUS == 3).Count()); }
//to get search result public IEnumerable <API_SSCC_OVERVIEW_Result> GetSSCCList(SSCCListRequest request, string userEmail) { if (string.IsNullOrEmpty(request.ActorID) && string.IsNullOrEmpty(request.ActorOriginId)) { UserRepository userRepository = new UserRepository(); //Fetch actors assigned to the user List <int> actorIdList = userRepository.GetActorIdList(userEmail); request.ActorOriginId = string.Join(",", actorIdList.Select(n => n).ToArray()); } using (var dbEntity = new BACKUP_SRL_20180613Entities()) { dbEntity.Configuration.ProxyCreationEnabled = false; List <API_SSCC_OVERVIEW_Result> result = dbEntity.API_SSCC_OVERVIEW( request.ActorID, request.ActorOriginId, request.SsccStatusNew, request.SsccStatusProcessed, request.SsccStatusValidated, request.SsccDateFrom, request.SsccDateTo, request.CiDateFrom, request.CiDateTo, request.ValidationOpen, request.ValidationExceeded, request.ValidationPassed, request.SsccNr, request.OrderNr, request.CountingOK, request.CountingNOK, request.SlaOK, request.SlaNOK, request.RetailerChainId, request.ShipmentNumber) .Take(1000) .ToList <API_SSCC_OVERVIEW_Result>(); return(result); } }
public CheckYourToday FetchSSCCOrderCounts() { string loggedInUser = RequestContext.Principal.Identity.Name; log.Info(string.Format(LogMessages.RequestMethod, loggedInUser, "sscc\\FetchSSCCOrderCounts")); SSCCListRequest request = new SSCCListRequest() { RetailerChainId = -1, SsccStatusNew = true, SsccStatusProcessed = true, SsccStatusValidated = false, ValidationOpen = true, ValidationExceeded = true, ValidationPassed = true, SlaOK = true, SlaNOK = true, CountingOK = true, CountingNOK = true, OrderNr = null }; return(_ssccListRepository.GetSSCCList(request, loggedInUser).ToList().GetCheckYourToday()); }
public IList <SSCCListModel> Index( [FromBody] SSCCListRequest request ) { log.Info(string.Format(LogMessages.RequestMethod, RequestContext.Principal.Identity.Name, "sscc\\filter")); if (request == null) { throw new ArgumentNullException(nameof(SSCCListRequest), "Request is not valid."); } //Block filtering SSCC list based on SSCC status and validation deadline for customer/external user UserRepository userRepository = new UserRepository(); if (userRepository.IsExternalUser(RequestContext.Principal.Identity.Name)) { //For customer show only validated SSCCs request.SsccStatusNew = false; request.SsccStatusProcessed = false; request.SsccStatusValidated = true; //For customer do not apply validation deadline filter request.ValidationOpen = true; request.ValidationExceeded = true; request.ValidationPassed = true; } else { // Filter functionality checkbox groups: Select none = See all if (!request.SsccStatusNew && !request.SsccStatusProcessed && !request.SsccStatusValidated) { request.SsccStatusNew = true; request.SsccStatusProcessed = true; request.SsccStatusValidated = true; } if (!request.ValidationOpen && !request.ValidationExceeded && !request.ValidationPassed) { request.ValidationOpen = true; request.ValidationExceeded = true; request.ValidationPassed = true; } } if (!request.CountingOK && !request.CountingNOK) { request.CountingOK = true; request.CountingNOK = true; } if (!request.SlaOK && !request.SlaNOK) { request.SlaOK = true; request.SlaNOK = true; } // Filter functionality Dates: If date from is not null and date to is null, get only selected date. if (request.SsccDateFrom != null && request.SsccDateTo == null) { // request.SsccDateFrom = new DateTime(request.SsccDateFrom.Value.Day, request.SsccDateFrom.Value.Month, request.SsccDateFrom.Value.Year); request.SsccDateTo = request.SsccDateFrom.Value.AddDays(1); } if (request.CiDateFrom != null && request.CiDateTo == null) { request.CiDateTo = request.CiDateFrom.Value.AddDays(1); } var response = SSCCListAdapter.ConvertSsccList(_ssccListRepository.GetSSCCList(request, RequestContext.Principal.Identity.Name)); return(response); }