Exemplo n.º 1
0
        public async Task <BaseResponse> GetDeviceHisDataAsync(string DeviceSn, DeviceHisDataPageRequest req)
        {
            var data = _dhr.FindWithDevice(a => a.DeviceSn == DeviceSn);

            //if (!string.IsNullOrWhiteSpace(req.Search))
            //{
            //    data = data.Where(a => a.Name.Contains(req.Search));
            //}
            data = data.Where(a => a.Dt > req.Begin && a.Dt < req.End);
            int    count           = data.Count();
            string OrderExpression = "";

            if (string.IsNullOrEmpty(req.OrderBy))
            {
                OrderExpression = "dt desc";
            }
            else
            {
                OrderExpression = string.Format("{0} {1}", req.OrderBy, req.OrderType);
            }
            var list = await data.OrderBy(OrderExpression).Skip((req.PageNo - 1) * req.PageSize).Take(req.PageSize).ToListAsync();

            var dtos = _mapper.Map <List <DeviceHisDataDto> >(list);
            var br   = new BasePageResponse <List <DeviceHisDataDto> >()
            {
                Success     = true,
                Message     = "获取数据成功",
                PageSize    = req.PageSize,
                CurrentPage = req.PageNo,
                Count       = count,
                TotalPage   = (int)Math.Ceiling((decimal)count / req.PageSize),
                Data        = dtos
            };

            return(br);
        }
Exemplo n.º 2
0
        public async Task <ActionResult <BaseResponse> > GetDeviceHisDataAsync(string GroupId, string DeviceSn, [FromQuery] DeviceHisDataPageRequest req)
        {
            if (req.Begin > req.End)
            {
                return(new BaseResponse {
                    Success = false, Message = "开始时间不能大于结束时间"
                });
            }
            var ret = await _dhs.GetDeviceHisDataAsync(DeviceSn, req);

            return(ret);
        }