public IHttpActionResult GetTenantPriceGroups(DateTime reqDate, string serialNo)
        {
            serialNo = serialNo.Trim().ToLower();

            var terminal = TerminalServices.GetTerminalBySerial(serialNo);

            if (terminal == null)
            {
                return(Unauthorized());
            }

            var result = new TenantPriceGroupsSyncCollection();

            var allGroups = _productPriceService.GetAllTenantPriceGroups(terminal.TenantId, true).Where(x => (x.DateUpdated ?? x.DateCreated) >= reqDate).ToList();

            var groups = new List <TenantPriceGroupsSync>();

            foreach (var p in allGroups)
            {
                var group = new TenantPriceGroupsSync();
                AutoMapper.Mapper.Map(p, group);
                groups.Add(group);
            }

            result.Count                 = groups.Count;
            result.TerminalLogId         = TerminalServices.CreateTerminalLog(reqDate, terminal.TenantId, groups.Count(), terminal.TerminalId, TerminalLogTypeEnum.TenantPriceGroupsSync).TerminalLogId;
            result.TenantPriceGroupsSync = groups;
            return(Ok(result));
        }