二维码接口优化

This commit is contained in:
dzl 2025-05-27 17:33:32 +08:00
parent 9ef7dd6f0a
commit 2031367a21
12 changed files with 226 additions and 36 deletions

View File

@ -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<EbikeBatteryQrcode> pageRecords = ebikeBatteryQrcodeService.getPageRecords(reqEbikeBatteryQrcodeDto);
Page<EbikeBatteryQrcodeDto> pageRecords = ebikeBatteryQrcodeService.getPageRecords(reqEbikeBatteryQrcodeDto);
return JsonResult.success(pageRecords);
}
/**

View File

@ -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<EbikeBikeQrcode> pageRecords = ebikeBikeQrcodeService.getPageRecords(reqEbikeBikeQrcodeDto);
Page<EbikeBikeQrcodeDto> pageRecords = ebikeBikeQrcodeService.getPageRecords(reqEbikeBikeQrcodeDto);
return JsonResult.success(pageRecords);
}
/**

View File

@ -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<EbikeHelmetQrcode> pageRecords = ebikeHelmetQrcodeService.getPageRecords(reqEbikeHelmetQrcodeDto);
Page<EbikeHelmetQrcodeDto> pageRecords = ebikeHelmetQrcodeService.getPageRecords(reqEbikeHelmetQrcodeDto);
return JsonResult.success(pageRecords);
}
/**

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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<EbikeBatteryQrcode>
* @param reqEbikeBatteryQrcodeDto 电池二维码查询请求
* @return 电池二维码分页数据
*/
Page<EbikeBatteryQrcode> getPageRecords(ReqEbikeBatteryQrcodeDto reqEbikeBatteryQrcodeDto);
Page<EbikeBatteryQrcodeDto> getPageRecords(ReqEbikeBatteryQrcodeDto reqEbikeBatteryQrcodeDto);
}

View File

@ -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<EbikeBikeQrcode> {
* @param reqEbikeBikeQrcodeDto 分页查询条件
* @return 分页对象
*/
Page<EbikeBikeQrcode> getPageRecords(ReqEbikeBikeQrcodeDto reqEbikeBikeQrcodeDto);
Page<EbikeBikeQrcodeDto> getPageRecords(ReqEbikeBikeQrcodeDto reqEbikeBikeQrcodeDto);
}

View File

@ -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<EbikeHelmetQrcode> {
* @param reqEbikeHelmetQrcodeDto 头盔二维码查询对象
* @return 分页结果
*/
Page<EbikeHelmetQrcode> getPageRecords(ReqEbikeHelmetQrcodeDto reqEbikeHelmetQrcodeDto);
Page<EbikeHelmetQrcodeDto> getPageRecords(ReqEbikeHelmetQrcodeDto reqEbikeHelmetQrcodeDto);
}

View File

@ -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<EbikeBatteryQrcodeMapper, EbikeBatteryQrcode> implements EbikeBatteryQrcodeService{
public class EbikeBatteryQrcodeServiceImpl extends ServiceImpl<EbikeBatteryQrcodeMapper, EbikeBatteryQrcode> implements EbikeBatteryQrcodeService {
@Autowired
private EbikeBatteryQrcodeMapper ebikeBatteryQrcodeMapper;
@Override
public Page<EbikeBatteryQrcode> getPageRecords(ReqEbikeBatteryQrcodeDto reqEbikeBatteryQrcodeDto) {
public Page<EbikeBatteryQrcodeDto> 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<EbikeBatteryQrcode> page = reqEbikeBatteryQrcodeDto.getPageParam().getPage();
return ebikeBatteryQrcodeMapper.paginate(page, query);
Page<EbikeBatteryQrcodeDto> page = reqEbikeBatteryQrcodeDto.getPageParam().getPage();
Page<EbikeBatteryQrcodeDto> paginate = ebikeBatteryQrcodeMapper.paginateAs(page, query, EbikeBatteryQrcodeDto.class);
List<EbikeBatteryQrcodeDto> records = paginate.getRecords();
for (EbikeBatteryQrcodeDto record : records) {
String s = QRGenUtil.generateQRCodeBase64(record.getBatteryCode(), record.getBatteryCode());
record.setBase64QrCode("data:image/png;base64," + s);
}
return paginate;
}
}

View File

@ -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<EbikeBikeQrcodeMapper, EbikeBikeQrcode> implements EbikeBikeQrcodeService{
public class EbikeBikeQrcodeServiceImpl extends ServiceImpl<EbikeBikeQrcodeMapper, EbikeBikeQrcode> implements EbikeBikeQrcodeService {
@Autowired
private EbikeBikeQrcodeMapper ebikeBikeQrcodeMapper;
@Override
public Page<EbikeBikeQrcode> getPageRecords(ReqEbikeBikeQrcodeDto reqEbikeBikeQrcodeDto) {
public Page<EbikeBikeQrcodeDto> 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<EbikeBikeQrcode> page = reqEbikeBikeQrcodeDto.getPageParam().getPage();
return ebikeBikeQrcodeMapper.paginate(page, query);
Page<EbikeBikeQrcodeDto> page = reqEbikeBikeQrcodeDto.getPageParam().getPage();
Page<EbikeBikeQrcodeDto> paginate = ebikeBikeQrcodeMapper.paginateAs(page, query, EbikeBikeQrcodeDto.class);
List<EbikeBikeQrcodeDto> 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;
}
}

View File

@ -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<EbikeHelmetQrcodeMapper, EbikeHelmetQrcode> implements EbikeHelmetQrcodeService{
public class EbikeHelmetQrcodeServiceImpl extends ServiceImpl<EbikeHelmetQrcodeMapper, EbikeHelmetQrcode> implements EbikeHelmetQrcodeService {
@Autowired
private EbikeHelmetQrcodeMapper ebikeHelmetQrcodeMapper;
@Override
public Page<EbikeHelmetQrcode> getPageRecords(ReqEbikeHelmetQrcodeDto reqEbikeHelmetQrcodeDto) {
public Page<EbikeHelmetQrcodeDto> 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<EbikeHelmetQrcode> page = reqEbikeHelmetQrcodeDto.getPageParam().getPage();
return ebikeHelmetQrcodeMapper.paginate(page, query);
Page<EbikeHelmetQrcodeDto> page = reqEbikeHelmetQrcodeDto.getPageParam().getPage();
Page<EbikeHelmetQrcodeDto> paginate = ebikeHelmetQrcodeMapper.paginateAs(page, query, EbikeHelmetQrcodeDto.class);
List<EbikeHelmetQrcodeDto> records = paginate.getRecords();
for (EbikeHelmetQrcodeDto record : records) {
String s = QRGenUtil.generateQRCodeBase64(record.getHelmetCode(), record.getHelmetCode());
record.setBase64QrCode("data:image/png;base64," + s);
}
return paginate;
}
}