Example #1
0
        public async Task <PopularResult <byte[]> > GetBytesAsync(InsuranceQueryDto dto)
        {
            var result = new PopularResult <byte[]>();

            var query = _insuranceRepository.Where(x => x.IsDelete == dto.IsDelete);

            var insurances = await AsyncExecuter.ToListAsync(query);

            //转换为导出对象
            var dtos = ObjectMapper.Map <List <InsuranceEntity>, List <InsuranceDto> >(insurances);

            var stream = EPPlusHelper.GetMemoryStream(dtos);

            result.Success(stream.ToArray());

            return(result);
        }
Example #2
0
 public async Task <PopularResult <byte[]> > GetExportAsync(InsuranceQueryDto dto)
 {
     return(await _insuranceService.GetBytesAsync(dto));
 }
Example #3
0
        public async Task <PopularResult <PagedResultDto <InsuranceDto> > > GetListAsync(InsuranceQueryDto dto)
        {
            var result = new PopularResult <PagedResultDto <InsuranceDto> >();

            var countQuery = _insuranceRepository.Where(x => x.IsDelete == dto.IsDelete)
                             .WhereIf(!dto.License.IsNullOrWhiteSpace(), insurance => insurance.Vehicle.License.Contains(dto.License));

            var query = from m in countQuery.OrderBy(x => x.CreateTime).PageBy(dto.ToSkipCount(), dto.ToMaxResultCount())
                        join v in _vehicleRepository on m.VehicleId equals v.Id into cls
                        from c in cls.DefaultIfEmpty()
                        select new InsuranceEntity(m.Id)
            {
                EndDate       = m.EndDate,
                StartDate     = m.StartDate,
                Expend        = m.Expend,
                InsureCompany = m.InsureCompany,
                InsureName    = m.InsureName,
                InsureNote    = m.InsureNote,
                InsureType    = m.InsureType,
                Vehicle       = c,
                VehicleId     = m.VehicleId,
                //IsDelete = m.IsDelete,
                CreateTime = m.CreateTime,
                Creator    = m.Creator,
                Remark     = m.Remark,
            };

            var insurances = await AsyncExecuter.ToListAsync(query);

            var totalCount = await AsyncExecuter.CountAsync(countQuery);

            var dtos = ObjectMapper.Map <List <InsuranceEntity>, List <InsuranceDto> >(insurances);

            result.Success(new PagedResultDto <InsuranceDto>(totalCount, dtos));
            return(result);
        }
Example #4
0
 public async Task <PopularResult <PagedResultDto <InsuranceDto> > > GetPageAsync([FromQuery] InsuranceQueryDto dto)
 {
     return(await _insuranceService.GetListAsync(dto));
 }