From 2031367a21a3f77e04cd44822c60a7856befad3e Mon Sep 17 00:00:00 2001 From: dzl <863620989@qq.com> Date: Tue, 27 May 2025 17:33:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../EbikeBatteryQrcodeController.java | 3 +- .../controller/EbikeBikeQrcodeController.java | 3 +- .../EbikeHelmetQrcodeController.java | 3 +- .../dto/response/EbikeBatteryQrcodeDto.java | 51 ++++++++++++++++++ .../dto/response/EbikeBikeQrcodeDto.java | 52 +++++++++++++++++++ .../dto/response/EbikeHelmetQrcodeDto.java | 52 +++++++++++++++++++ .../service/EbikeBatteryQrcodeService.java | 3 +- .../service/EbikeBikeQrcodeService.java | 3 +- .../service/EbikeHelmetQrcodeService.java | 3 +- .../impl/EbikeBatteryQrcodeServiceImpl.java | 30 +++++++---- .../impl/EbikeBikeQrcodeServiceImpl.java | 30 +++++++---- .../impl/EbikeHelmetQrcodeServiceImpl.java | 29 +++++++---- 12 files changed, 226 insertions(+), 36 deletions(-) create mode 100644 ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeBatteryQrcodeDto.java create mode 100644 ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeBikeQrcodeDto.java create mode 100644 ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeHelmetQrcodeDto.java diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeBatteryQrcodeController.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeBatteryQrcodeController.java index 1a7a8b28..7c656154 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeBatteryQrcodeController.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeBatteryQrcodeController.java @@ -3,6 +3,7 @@ package com.cdzy.ebikeoperate.controller; import com.cdzy.common.model.JsonResult; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeBatteryQrcodeBatchDto; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeBatteryQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeBatteryQrcodeDto; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; import org.springframework.web.bind.annotation.*; @@ -101,7 +102,7 @@ public class EbikeBatteryQrcodeController { */ @PostMapping("list") public JsonResult list(@RequestBody ReqEbikeBatteryQrcodeDto reqEbikeBatteryQrcodeDto) { - Page pageRecords = ebikeBatteryQrcodeService.getPageRecords(reqEbikeBatteryQrcodeDto); + Page pageRecords = ebikeBatteryQrcodeService.getPageRecords(reqEbikeBatteryQrcodeDto); return JsonResult.success(pageRecords); } /** diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeBikeQrcodeController.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeBikeQrcodeController.java index b3b2ae60..361674c0 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeBikeQrcodeController.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeBikeQrcodeController.java @@ -3,6 +3,7 @@ package com.cdzy.ebikeoperate.controller; import com.cdzy.common.model.JsonResult; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeBikeQrcodeBatchDto; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeBikeQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeBikeQrcodeDto; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; import org.springframework.web.bind.annotation.*; @@ -102,7 +103,7 @@ public class EbikeBikeQrcodeController { */ @PostMapping("list") public JsonResult list(@RequestBody ReqEbikeBikeQrcodeDto reqEbikeBikeQrcodeDto) { - Page pageRecords = ebikeBikeQrcodeService.getPageRecords(reqEbikeBikeQrcodeDto); + Page pageRecords = ebikeBikeQrcodeService.getPageRecords(reqEbikeBikeQrcodeDto); return JsonResult.success(pageRecords); } /** diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeHelmetQrcodeController.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeHelmetQrcodeController.java index bc55e32f..7197bd4d 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeHelmetQrcodeController.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/controller/EbikeHelmetQrcodeController.java @@ -3,6 +3,7 @@ package com.cdzy.ebikeoperate.controller; import com.cdzy.common.model.JsonResult; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeHelmetQrcodeBatchDto; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeHelmetQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeHelmetQrcodeDto; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; import org.springframework.web.bind.annotation.*; @@ -99,7 +100,7 @@ public class EbikeHelmetQrcodeController { */ @PostMapping("list") public JsonResult list(@RequestBody ReqEbikeHelmetQrcodeDto reqEbikeHelmetQrcodeDto) { - Page pageRecords = ebikeHelmetQrcodeService.getPageRecords(reqEbikeHelmetQrcodeDto); + Page pageRecords = ebikeHelmetQrcodeService.getPageRecords(reqEbikeHelmetQrcodeDto); return JsonResult.success(pageRecords); } /** diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeBatteryQrcodeDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeBatteryQrcodeDto.java new file mode 100644 index 00000000..ccb048cd --- /dev/null +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeBatteryQrcodeDto.java @@ -0,0 +1,51 @@ +package com.cdzy.ebikeoperate.model.dto.response; + +import com.mybatisflex.annotation.Id; +import com.mybatisflex.annotation.Table; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + * 电池二维码 实体类。 + * + * @author dingchao + * @since 2025-03-25 + */ +@Data +public class EbikeBatteryQrcodeDto implements Serializable { + + private String batteryCodeId; + + /** + * 部件生产记录主键 + */ + private String componentProId; + + /** + * 电池编号 + */ + private String batteryCode; + /** + * 状态; 0:未绑定,1:已绑定 + */ + private String state; + /** + * 绑定时间 + */ + private LocalDateTime boundTime; + /** + * 绑定人 + */ + private String operator; + + /** + * 二维码base64数据 + */ + private String base64QrCode; +} diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeBikeQrcodeDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeBikeQrcodeDto.java new file mode 100644 index 00000000..fd521ebc --- /dev/null +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeBikeQrcodeDto.java @@ -0,0 +1,52 @@ +package com.cdzy.ebikeoperate.model.dto.response; + +import com.mybatisflex.annotation.Id; +import com.mybatisflex.annotation.Table; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + * 车辆二维码 实体类。 + * + * @author dingchao + * @since 2025-03-25 + */ +@Data +public class EbikeBikeQrcodeDto implements Serializable { + + + private String bikeQrcodeId; + + /** + * 部件生产记录主键 + */ + private String componentProId; + + /** + * 车辆编号 + */ + private String bikeCode; + /** + * 状态; 0:未绑定,1:已绑定 + */ + private String state; + /** + * 绑定时间 + */ + private LocalDateTime boundTime; + /** + * 绑定人 + */ + private String operator; + + /** + * 二维码base64数据 + */ + private String base64QrCode; +} diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeHelmetQrcodeDto.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeHelmetQrcodeDto.java new file mode 100644 index 00000000..fc12fcc3 --- /dev/null +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/model/dto/response/EbikeHelmetQrcodeDto.java @@ -0,0 +1,52 @@ +package com.cdzy.ebikeoperate.model.dto.response; + +import com.mybatisflex.annotation.Id; +import com.mybatisflex.annotation.Table; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serial; +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + * 头盔二维码 实体类。 + * + * @author dingchao + * @since 2025-03-25 + */ +@Data +public class EbikeHelmetQrcodeDto implements Serializable { + + + private String helmetCodeId; + + /** + * 部件生产记录主键 + */ + private String componentProId; + + /** + * 头盔编号 + */ + private String helmetCode; + /** + * 状态; 0:未绑定,1:已绑定 + */ + private String state; + /** + * 绑定时间 + */ + private LocalDateTime boundTime; + /** + * 绑定人 + */ + private String operator; + + /** + * 二维码base64数据 + */ + private String base64QrCode; +} diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeBatteryQrcodeService.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeBatteryQrcodeService.java index 0b274b7b..679c0368 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeBatteryQrcodeService.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeBatteryQrcodeService.java @@ -1,6 +1,7 @@ package com.cdzy.ebikeoperate.service; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeBatteryQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeBatteryQrcodeDto; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.service.IService; import com.cdzy.ebikeoperate.model.pojo.EbikeBatteryQrcode; @@ -18,5 +19,5 @@ public interface EbikeBatteryQrcodeService extends IService * @param reqEbikeBatteryQrcodeDto 电池二维码查询请求 * @return 电池二维码分页数据 */ - Page getPageRecords(ReqEbikeBatteryQrcodeDto reqEbikeBatteryQrcodeDto); + Page getPageRecords(ReqEbikeBatteryQrcodeDto reqEbikeBatteryQrcodeDto); } diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeBikeQrcodeService.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeBikeQrcodeService.java index 694d8ad1..96896994 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeBikeQrcodeService.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeBikeQrcodeService.java @@ -1,6 +1,7 @@ package com.cdzy.ebikeoperate.service; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeBikeQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeBikeQrcodeDto; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.service.IService; import com.cdzy.ebikeoperate.model.pojo.EbikeBikeQrcode; @@ -18,6 +19,6 @@ public interface EbikeBikeQrcodeService extends IService { * @param reqEbikeBikeQrcodeDto 分页查询条件 * @return 分页对象 */ - Page getPageRecords(ReqEbikeBikeQrcodeDto reqEbikeBikeQrcodeDto); + Page getPageRecords(ReqEbikeBikeQrcodeDto reqEbikeBikeQrcodeDto); } diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeHelmetQrcodeService.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeHelmetQrcodeService.java index fafb4ff1..b3a4e240 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeHelmetQrcodeService.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/EbikeHelmetQrcodeService.java @@ -1,6 +1,7 @@ package com.cdzy.ebikeoperate.service; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeHelmetQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeHelmetQrcodeDto; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.service.IService; import com.cdzy.ebikeoperate.model.pojo.EbikeHelmetQrcode; @@ -18,5 +19,5 @@ public interface EbikeHelmetQrcodeService extends IService { * @param reqEbikeHelmetQrcodeDto 头盔二维码查询对象 * @return 分页结果 */ - Page getPageRecords(ReqEbikeHelmetQrcodeDto reqEbikeHelmetQrcodeDto); + Page getPageRecords(ReqEbikeHelmetQrcodeDto reqEbikeHelmetQrcodeDto); } diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeBatteryQrcodeServiceImpl.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeBatteryQrcodeServiceImpl.java index 9bcc7d5e..edda23a1 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeBatteryQrcodeServiceImpl.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeBatteryQrcodeServiceImpl.java @@ -1,6 +1,9 @@ package com.cdzy.ebikeoperate.service.impl; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeBatteryQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeBatteryQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeHelmetQrcodeDto; +import com.cdzy.ebikeoperate.utils.QRGenUtil; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.spring.service.impl.ServiceImpl; @@ -11,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.time.LocalDateTime; +import java.util.List; import static com.cdzy.ebikeoperate.model.pojo.table.EbikeBatteryQrcodeTableDef.EBIKE_BATTERY_QRCODE; @@ -21,33 +25,39 @@ import static com.cdzy.ebikeoperate.model.pojo.table.EbikeBatteryQrcodeTableDef. * @since 2025-03-25 */ @Service -public class EbikeBatteryQrcodeServiceImpl extends ServiceImpl implements EbikeBatteryQrcodeService{ +public class EbikeBatteryQrcodeServiceImpl extends ServiceImpl implements EbikeBatteryQrcodeService { @Autowired private EbikeBatteryQrcodeMapper ebikeBatteryQrcodeMapper; @Override - public Page getPageRecords(ReqEbikeBatteryQrcodeDto reqEbikeBatteryQrcodeDto) { + public Page getPageRecords(ReqEbikeBatteryQrcodeDto reqEbikeBatteryQrcodeDto) { QueryWrapper query = QueryWrapper.create(); String componentId = reqEbikeBatteryQrcodeDto.getComponentProId(); - if(componentId!=null&&!componentId.isEmpty()) + if (componentId != null && !componentId.isEmpty()) query.where(EBIKE_BATTERY_QRCODE.COMPONENT_PRO_ID.eq(componentId)); String batteryCode = reqEbikeBatteryQrcodeDto.getBatteryCode(); - if(batteryCode!=null&&!batteryCode.isEmpty()) + if (batteryCode != null && !batteryCode.isEmpty()) query.where(EBIKE_BATTERY_QRCODE.BATTERY_CODE.like(batteryCode)); String state = reqEbikeBatteryQrcodeDto.getState(); - if(state!=null&&!state.isEmpty()) + if (state != null && !state.isEmpty()) query.where(EBIKE_BATTERY_QRCODE.STATE.eq(state)); LocalDateTime startTime = reqEbikeBatteryQrcodeDto.getStartBoundTime(); - if(startTime!=null) + if (startTime != null) query.where(EBIKE_BATTERY_QRCODE.BOUND_TIME.ge(startTime)); LocalDateTime endTime = reqEbikeBatteryQrcodeDto.getEndBoundTime(); - if(endTime!=null) + if (endTime != null) query.where(EBIKE_BATTERY_QRCODE.BOUND_TIME.le(endTime)); String operator = reqEbikeBatteryQrcodeDto.getOperator(); - if(operator!=null&&!operator.isEmpty()) + if (operator != null && !operator.isEmpty()) query.where(EBIKE_BATTERY_QRCODE.OPERATOR.like(operator)); - Page page = reqEbikeBatteryQrcodeDto.getPageParam().getPage(); - return ebikeBatteryQrcodeMapper.paginate(page, query); + Page page = reqEbikeBatteryQrcodeDto.getPageParam().getPage(); + Page paginate = ebikeBatteryQrcodeMapper.paginateAs(page, query, EbikeBatteryQrcodeDto.class); + List records = paginate.getRecords(); + for (EbikeBatteryQrcodeDto record : records) { + String s = QRGenUtil.generateQRCodeBase64(record.getBatteryCode(), record.getBatteryCode()); + record.setBase64QrCode("data:image/png;base64," + s); + } + return paginate; } } diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeBikeQrcodeServiceImpl.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeBikeQrcodeServiceImpl.java index 75c1cfad..b56432bc 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeBikeQrcodeServiceImpl.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeBikeQrcodeServiceImpl.java @@ -1,6 +1,9 @@ package com.cdzy.ebikeoperate.service.impl; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeBikeQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeBatteryQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeBikeQrcodeDto; +import com.cdzy.ebikeoperate.utils.QRGenUtil; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.spring.service.impl.ServiceImpl; @@ -11,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.time.LocalDateTime; +import java.util.List; import static com.cdzy.ebikeoperate.model.pojo.table.EbikeBikeQrcodeTableDef.EBIKE_BIKE_QRCODE; @@ -21,33 +25,39 @@ import static com.cdzy.ebikeoperate.model.pojo.table.EbikeBikeQrcodeTableDef.EBI * @since 2025-03-25 */ @Service -public class EbikeBikeQrcodeServiceImpl extends ServiceImpl implements EbikeBikeQrcodeService{ +public class EbikeBikeQrcodeServiceImpl extends ServiceImpl implements EbikeBikeQrcodeService { @Autowired private EbikeBikeQrcodeMapper ebikeBikeQrcodeMapper; @Override - public Page getPageRecords(ReqEbikeBikeQrcodeDto reqEbikeBikeQrcodeDto) { + public Page getPageRecords(ReqEbikeBikeQrcodeDto reqEbikeBikeQrcodeDto) { QueryWrapper query = QueryWrapper.create(); String componentId = reqEbikeBikeQrcodeDto.getComponentProId(); - if(componentId!=null&&!componentId.isEmpty()) + if (componentId != null && !componentId.isEmpty()) query.where(EBIKE_BIKE_QRCODE.COMPONENT_PRO_ID.eq(componentId)); String bikeCode = reqEbikeBikeQrcodeDto.getBikeCode(); - if(bikeCode!=null&&!bikeCode.isEmpty()) + if (bikeCode != null && !bikeCode.isEmpty()) query.where(EBIKE_BIKE_QRCODE.BIKE_CODE.like(bikeCode)); String state = reqEbikeBikeQrcodeDto.getState(); - if(state!=null&&!state.isEmpty()) + if (state != null && !state.isEmpty()) query.where(EBIKE_BIKE_QRCODE.STATE.eq(state)); LocalDateTime startTime = reqEbikeBikeQrcodeDto.getStartBoundTime(); - if(startTime!=null) + if (startTime != null) query.where(EBIKE_BIKE_QRCODE.BOUND_TIME.ge(startTime)); LocalDateTime endTime = reqEbikeBikeQrcodeDto.getEndBoundTime(); - if(endTime!=null) + if (endTime != null) query.where(EBIKE_BIKE_QRCODE.BOUND_TIME.le(endTime)); String operator = reqEbikeBikeQrcodeDto.getOperator(); - if(operator!=null&&!operator.isEmpty()) + if (operator != null && !operator.isEmpty()) query.where(EBIKE_BIKE_QRCODE.OPERATOR.like(operator)); - Page page = reqEbikeBikeQrcodeDto.getPageParam().getPage(); - return ebikeBikeQrcodeMapper.paginate(page, query); + Page page = reqEbikeBikeQrcodeDto.getPageParam().getPage(); + Page paginate = ebikeBikeQrcodeMapper.paginateAs(page, query, EbikeBikeQrcodeDto.class); + List records = paginate.getRecords(); + for (EbikeBikeQrcodeDto record : records) { + String s = QRGenUtil.generateQRCodeBase64("https://yrenyche-qrcode.36bike.com/?number=" + record.getBikeCode() + "&_tbScancodeApproach_=scan", record.getBikeCode()); + record.setBase64QrCode("data:image/png;base64," + s); + } + return paginate; } } diff --git a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeHelmetQrcodeServiceImpl.java b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeHelmetQrcodeServiceImpl.java index 973e4a13..921140f4 100644 --- a/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeHelmetQrcodeServiceImpl.java +++ b/ebike-operate/src/main/java/com/cdzy/ebikeoperate/service/impl/EbikeHelmetQrcodeServiceImpl.java @@ -1,6 +1,8 @@ package com.cdzy.ebikeoperate.service.impl; import com.cdzy.ebikeoperate.model.dto.request.ReqEbikeHelmetQrcodeDto; +import com.cdzy.ebikeoperate.model.dto.response.EbikeHelmetQrcodeDto; +import com.cdzy.ebikeoperate.utils.QRGenUtil; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; import com.mybatisflex.spring.service.impl.ServiceImpl; @@ -11,6 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.time.LocalDateTime; +import java.util.List; import static com.cdzy.ebikeoperate.model.pojo.table.EbikeHelmetQrcodeTableDef.EBIKE_HELMET_QRCODE; @@ -21,33 +24,39 @@ import static com.cdzy.ebikeoperate.model.pojo.table.EbikeHelmetQrcodeTableDef.E * @since 2025-03-25 */ @Service -public class EbikeHelmetQrcodeServiceImpl extends ServiceImpl implements EbikeHelmetQrcodeService{ +public class EbikeHelmetQrcodeServiceImpl extends ServiceImpl implements EbikeHelmetQrcodeService { @Autowired private EbikeHelmetQrcodeMapper ebikeHelmetQrcodeMapper; @Override - public Page getPageRecords(ReqEbikeHelmetQrcodeDto reqEbikeHelmetQrcodeDto) { + public Page getPageRecords(ReqEbikeHelmetQrcodeDto reqEbikeHelmetQrcodeDto) { QueryWrapper query = QueryWrapper.create(); String componentId = reqEbikeHelmetQrcodeDto.getComponentProId(); - if(componentId!=null&&!componentId.isEmpty()) + if (componentId != null && !componentId.isEmpty()) query.where(EBIKE_HELMET_QRCODE.COMPONENT_PRO_ID.eq(componentId)); String helmetCode = reqEbikeHelmetQrcodeDto.getHelmetCode(); - if(helmetCode!=null&&!helmetCode.isEmpty()) + if (helmetCode != null && !helmetCode.isEmpty()) query.where(EBIKE_HELMET_QRCODE.HELMET_CODE.like(helmetCode)); String state = reqEbikeHelmetQrcodeDto.getState(); - if(state!=null&&!state.isEmpty()) + if (state != null && !state.isEmpty()) query.where(EBIKE_HELMET_QRCODE.STATE.eq(state)); LocalDateTime startTime = reqEbikeHelmetQrcodeDto.getStartBoundTime(); - if(startTime!=null) + if (startTime != null) query.where(EBIKE_HELMET_QRCODE.BOUND_TIME.ge(startTime)); LocalDateTime endTime = reqEbikeHelmetQrcodeDto.getEndBoundTime(); - if(endTime!=null) + if (endTime != null) query.where(EBIKE_HELMET_QRCODE.BOUND_TIME.le(endTime)); String operator = reqEbikeHelmetQrcodeDto.getOperator(); - if(operator!=null&&!operator.isEmpty()) + if (operator != null && !operator.isEmpty()) query.where(EBIKE_HELMET_QRCODE.OPERATOR.like(operator)); - Page page = reqEbikeHelmetQrcodeDto.getPageParam().getPage(); - return ebikeHelmetQrcodeMapper.paginate(page, query); + Page page = reqEbikeHelmetQrcodeDto.getPageParam().getPage(); + Page paginate = ebikeHelmetQrcodeMapper.paginateAs(page, query, EbikeHelmetQrcodeDto.class); + List records = paginate.getRecords(); + for (EbikeHelmetQrcodeDto record : records) { + String s = QRGenUtil.generateQRCodeBase64(record.getHelmetCode(), record.getHelmetCode()); + record.setBase64QrCode("data:image/png;base64," + s); + } + return paginate; } }