代码更新:

1. 增加日期筛选功能
2. 增加站台拣选任务配置:每个站台最大箱子
This commit is contained in:
梁州 2024-11-19 16:50:07 +08:00
parent da4074dcf9
commit 5175a8841f
10 changed files with 80 additions and 9 deletions

View File

@ -13,7 +13,8 @@ public enum ConfigMapKeyEnum {
SEND_TASK("SEND_TASK"), SEND_TASK("SEND_TASK"),
ALLOW_EMPTY_BACK("ALLOW_EMPTY_BACK"), ALLOW_EMPTY_BACK("ALLOW_EMPTY_BACK"),
SEND_PICK_OUT_TASK("SEND_PICK_OUT_TASK"), SEND_PICK_OUT_TASK("SEND_PICK_OUT_TASK"),
MAX_VEHICLE_NUMS("MAX_VEHICLE_NUMS"), MAX_VEHICLE_NUMS("MAX_VEHICLE_NUMS"),// 线体上最大箱子数
MAX_STAND_VEHICLE_NUMS("MAX_STAND_VEHICLE_NUMS"),// 每个站台最大箱子数
MAX_WCS_ACCEPT_NUMS("MAX_WCS_ACCEPT_NUMS"), MAX_WCS_ACCEPT_NUMS("MAX_WCS_ACCEPT_NUMS"),
SLOC_FILTER_STRING("SLOC_FILTER_STRING"), SLOC_FILTER_STRING("SLOC_FILTER_STRING"),
URL_WCS_CHANGE_TASK("URL_WCS_CHANGE_TASK"), URL_WCS_CHANGE_TASK("URL_WCS_CHANGE_TASK"),

View File

@ -507,12 +507,16 @@ public class ExcelController {
// 内容样式 // 内容样式
HorizontalCellStyleStrategy horizontalCellStyleStrategy = ExcelContentStyle.getContentStyle(); HorizontalCellStyleStrategy horizontalCellStyleStrategy = ExcelContentStyle.getContentStyle();
// 查询参数 // 查询参数
List<Stock> stockPoList = stockService.list(new LambdaQueryWrapper<Stock>() LambdaQueryWrapper<Stock> queryWrapper = new LambdaQueryWrapper<Stock>()
.like(StringUtils.isNotEmpty(stockQuery.getVehicleId()), Stock::getVehicleId, stockQuery.getVehicleId()) .like(StringUtils.isNotEmpty(stockQuery.getVehicleId()), Stock::getVehicleId, stockQuery.getVehicleId())
.like(StringUtils.isNotEmpty(stockQuery.getLocationId()), Stock::getLocationId, stockQuery.getLocationId()) .like(StringUtils.isNotEmpty(stockQuery.getLocationId()), Stock::getLocationId, stockQuery.getLocationId())
.eq(stockQuery.getStockStatus() != null, Stock::getStockStatus, stockQuery.getStockStatus()) .eq(stockQuery.getStockStatus() != null, Stock::getStockStatus, stockQuery.getStockStatus())
.apply(StringUtils.isNotEmpty(stockQuery.getGoodsId()), "goods_related ->> '$.goodsId' like concat('%', {0}, '%')" + MYSQL_JSON_CI, stockQuery.getGoodsId()) .apply(StringUtils.isNotEmpty(stockQuery.getGoodsId()), "goods_related ->> '$.goodsId' like concat('%', {0}, '%')" + MYSQL_JSON_CI, stockQuery.getGoodsId())
.apply(StringUtils.isNotEmpty(stockQuery.getGoodsName()), "goods_related ->> '$.goodsName' like concat('%', {0}, '%')" + MYSQL_JSON_CI, stockQuery.getGoodsName())); .apply(StringUtils.isNotEmpty(stockQuery.getGoodsName()), "goods_related ->> '$.goodsName' like concat('%', {0}, '%')" + MYSQL_JSON_CI, stockQuery.getGoodsName());
if (stockQuery.getCreateTime() != null) {
queryWrapper.between(Stock::getCreateTime, stockQuery.getCreateTime().toLocalDate().atStartOfDay(), stockQuery.getCreateTime().toLocalDate().plusDays(1).atStartOfDay().minusSeconds(1));
}
List<Stock> stockPoList = stockService.list(queryWrapper);
EasyExcel.write(response.getOutputStream(), StockExcelVo.class) EasyExcel.write(response.getOutputStream(), StockExcelVo.class)
.excelType(ExcelTypeEnum.XLSX) .excelType(ExcelTypeEnum.XLSX)
.registerWriteHandler(horizontalCellStyleStrategy) .registerWriteHandler(horizontalCellStyleStrategy)

View File

@ -64,6 +64,12 @@ public class RecordController {
.like(StringUtils.isNotEmpty(taskRecordQuery.getVehicleId()), TaskRecord::getVehicleId, taskRecordQuery.getVehicleId()) .like(StringUtils.isNotEmpty(taskRecordQuery.getVehicleId()), TaskRecord::getVehicleId, taskRecordQuery.getVehicleId())
.apply(StringUtils.isNotEmpty(taskRecordQuery.getGoodsId()), "goods_related ->> '$.goodsId' like concat('%', {0}, '%')" + MYSQL_JSON_CI, taskRecordQuery.getGoodsId()) .apply(StringUtils.isNotEmpty(taskRecordQuery.getGoodsId()), "goods_related ->> '$.goodsId' like concat('%', {0}, '%')" + MYSQL_JSON_CI, taskRecordQuery.getGoodsId())
.apply(StringUtils.isNotEmpty(taskRecordQuery.getGoodsName()), "goods_related ->> '$.goodsName' like concat('%', {0}, '%')" + MYSQL_JSON_CI, taskRecordQuery.getGoodsName()); .apply(StringUtils.isNotEmpty(taskRecordQuery.getGoodsName()), "goods_related ->> '$.goodsName' like concat('%', {0}, '%')" + MYSQL_JSON_CI, taskRecordQuery.getGoodsName());
if (taskRecordQuery.getCreateTime() != null) {
lambdaQueryWrapper.between(TaskRecord::getCreateTime, taskRecordQuery.getCreateTime().toLocalDate().atStartOfDay(), taskRecordQuery.getCreateTime().toLocalDate().plusDays(1).atStartOfDay().minusSeconds(1));
}
if (taskRecordQuery.getFinishTime() != null) {
lambdaQueryWrapper.between(TaskRecord::getFinishTime, taskRecordQuery.getFinishTime().toLocalDate().atStartOfDay(), taskRecordQuery.getFinishTime().toLocalDate().plusDays(1).atStartOfDay().minusSeconds(1));
}
Page<TaskRecord> taskRecordPage = taskRecordService.page(page, lambdaQueryWrapper); Page<TaskRecord> taskRecordPage = taskRecordService.page(page, lambdaQueryWrapper);
// 生成数据 // 生成数据
PageDto<TaskRecordVO> pageDto = PageDto.of(taskRecordPage, records -> BeanUtil.copyProperties(records, TaskRecordVO.class)); PageDto<TaskRecordVO> pageDto = PageDto.of(taskRecordPage, records -> BeanUtil.copyProperties(records, TaskRecordVO.class));

View File

@ -107,13 +107,17 @@ public class StockController {
ResponseEntity response = new ResponseEntity(); ResponseEntity response = new ResponseEntity();
try { try {
Page<Stock> page = stockQuery.toMpPage(); Page<Stock> page = stockQuery.toMpPage();
Page<Stock> stockPage = stockService.page(page, new LambdaQueryWrapper<Stock>() LambdaQueryWrapper<Stock> lambdaQueryWrapper = new LambdaQueryWrapper<Stock>()
.like(StringUtils.isNotEmpty(stockQuery.getVehicleId()), Stock::getVehicleId, stockQuery.getVehicleId()) .like(StringUtils.isNotEmpty(stockQuery.getVehicleId()), Stock::getVehicleId, stockQuery.getVehicleId())
.like(StringUtils.isNotEmpty(stockQuery.getLocationId()), Stock::getLocationId, stockQuery.getLocationId()) .like(StringUtils.isNotEmpty(stockQuery.getLocationId()), Stock::getLocationId, stockQuery.getLocationId())
.eq(stockQuery.getStockStatus() != null, Stock::getStockStatus, stockQuery.getStockStatus()) .eq(stockQuery.getStockStatus() != null, Stock::getStockStatus, stockQuery.getStockStatus())
.apply(StringUtils.isNotEmpty(stockQuery.getGoodsId()), "goods_related ->> '$.goodsId' like concat('%', {0}, '%')" + MYSQL_JSON_CI, stockQuery.getGoodsId()) .apply(StringUtils.isNotEmpty(stockQuery.getGoodsId()), "goods_related ->> '$.goodsId' like concat('%', {0}, '%')" + MYSQL_JSON_CI, stockQuery.getGoodsId())
.apply(StringUtils.isNotEmpty(stockQuery.getGoodsName()), "goods_related ->> '$.goodsName' like concat('%', {0}, '%')" + MYSQL_JSON_CI, stockQuery.getGoodsName()) .apply(StringUtils.isNotEmpty(stockQuery.getGoodsName()), "goods_related ->> '$.goodsName' like concat('%', {0}, '%')" + MYSQL_JSON_CI, stockQuery.getGoodsName())
.orderByDesc(Stock::getLastUpdateTime)); .orderByDesc(Stock::getLastUpdateTime);
if (stockQuery.getCreateTime() != null) {
lambdaQueryWrapper.between(Stock::getCreateTime, stockQuery.getCreateTime().toLocalDate().atStartOfDay(), stockQuery.getCreateTime().toLocalDate().plusDays(1).atStartOfDay().minusSeconds(1));
}
Page<Stock> stockPage = stockService.page(page, lambdaQueryWrapper);
PageDto<StockVo> pageDto = PageDto.of(stockPage, StockVo::of); PageDto<StockVo> pageDto = PageDto.of(stockPage, StockVo::of);
response.setCode(ResponseCode.OK.getCode()); response.setCode(ResponseCode.OK.getCode());
@ -334,11 +338,15 @@ public class StockController {
ResponseEntity response = new ResponseEntity(); ResponseEntity response = new ResponseEntity();
try { try {
Page<StockUpdateRecord> page = stockUpdateRecordQuery.toMpPage(); Page<StockUpdateRecord> page = stockUpdateRecordQuery.toMpPage();
Page<StockUpdateRecord> recordsPage = stockUpdateRecordService.page(page, new LambdaQueryWrapper<StockUpdateRecord>() LambdaQueryWrapper<StockUpdateRecord> stockLambdaQueryWrapper = new LambdaQueryWrapper<StockUpdateRecord>()
.like(StringUtils.isNotEmpty(stockUpdateRecordQuery.getReason()), StockUpdateRecord::getReason, stockUpdateRecordQuery.getReason()) .like(StringUtils.isNotEmpty(stockUpdateRecordQuery.getReason()), StockUpdateRecord::getReason, stockUpdateRecordQuery.getReason())
.like(StringUtils.isNotEmpty(stockUpdateRecordQuery.getVehicleId()), StockUpdateRecord::getVehicleId, stockUpdateRecordQuery.getVehicleId()) .like(StringUtils.isNotEmpty(stockUpdateRecordQuery.getVehicleId()), StockUpdateRecord::getVehicleId, stockUpdateRecordQuery.getVehicleId())
.like(StringUtils.isNotEmpty(stockUpdateRecordQuery.getGoodsId()), StockUpdateRecord::getGoodsId, stockUpdateRecordQuery.getGoodsId()) .like(StringUtils.isNotEmpty(stockUpdateRecordQuery.getGoodsId()), StockUpdateRecord::getGoodsId, stockUpdateRecordQuery.getGoodsId())
.orderByDesc(StockUpdateRecord::getUpdateTime)); .orderByDesc(StockUpdateRecord::getUpdateTime);
if (stockUpdateRecordQuery.getUpdateTime() != null) {
stockLambdaQueryWrapper.between(StockUpdateRecord::getUpdateTime, stockUpdateRecordQuery.getUpdateTime().toLocalDate().atStartOfDay(), stockUpdateRecordQuery.getUpdateTime().toLocalDate().plusDays(1).atStartOfDay().minusSeconds(1));
}
Page<StockUpdateRecord> recordsPage = stockUpdateRecordService.page(page, stockLambdaQueryWrapper);
PageDto<StockUpdateRecordVo> pageDto = PageDto.of(recordsPage, updateRecord -> BeanUtil.copyProperties(updateRecord, StockUpdateRecordVo.class)); PageDto<StockUpdateRecordVo> pageDto = PageDto.of(recordsPage, updateRecord -> BeanUtil.copyProperties(updateRecord, StockUpdateRecordVo.class));
logger.info("查询库存更新记录成功。"); logger.info("查询库存更新记录成功。");
response.setCode(ResponseCode.OK.getCode()); response.setCode(ResponseCode.OK.getCode());

View File

@ -1,8 +1,10 @@
package com.wms.entity.app.request; package com.wms.entity.app.request;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@ -64,6 +66,8 @@ public class StockUpdateRecordQuery extends PageQuery {
* 更新时间 * 更新时间
*/ */
@JsonProperty("updateTime") @JsonProperty("updateTime")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime; private LocalDateTime updateTime;
/** /**
* 更新用户 * 更新用户

View File

@ -1,11 +1,15 @@
package com.wms.entity.app.request; package com.wms.entity.app.request;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import com.wms.entity.app.dto.extend.TaskDetailInfo; import com.wms.entity.app.dto.extend.TaskDetailInfo;
import com.wms.entity.table.TaskRecord; import com.wms.entity.table.TaskRecord;
import com.wms.utils.StringUtils; import com.wms.utils.StringUtils;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
/** /**
* 任务记录查询 * 任务记录查询
@ -33,6 +37,18 @@ public class TaskRecordQuery extends PageQuery {
*/ */
@JsonProperty("goodsName") @JsonProperty("goodsName")
private String goodsName; private String goodsName;
/**
* 创建时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
/**
* 完成时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime finishTime;
/** /**
* 根据客户端查询生成数据库查询条件 * 根据客户端查询生成数据库查询条件
@ -42,6 +58,8 @@ public class TaskRecordQuery extends PageQuery {
TaskRecord recordPO = new TaskRecord(); TaskRecord recordPO = new TaskRecord();
recordPO.setTaskType(taskType);// 任务类型 recordPO.setTaskType(taskType);// 任务类型
recordPO.setVehicleId(vehicleId);// 载具号 recordPO.setVehicleId(vehicleId);// 载具号
recordPO.setCreateTime(createTime);
recordPO.setFinishTime(finishTime);
if (StringUtils.isNotEmpty(goodsId) || StringUtils.isNotEmpty(goodsName)) {// 包含物料详细信息 if (StringUtils.isNotEmpty(goodsId) || StringUtils.isNotEmpty(goodsName)) {// 包含物料详细信息
TaskDetailInfo goodsRelatedPO = new TaskDetailInfo(); TaskDetailInfo goodsRelatedPO = new TaskDetailInfo();
goodsRelatedPO.setGoodsId(goodsId); goodsRelatedPO.setGoodsId(goodsId);

View File

@ -1,7 +1,9 @@
package com.wms.entity.app.vo; package com.wms.entity.app.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@ -65,6 +67,8 @@ public class StockUpdateRecordVo {
* 更新时间 * 更新时间
*/ */
@JsonProperty("updateTime") @JsonProperty("updateTime")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime; private LocalDateTime updateTime;
/** /**
* 更新用户 * 更新用户

View File

@ -1,7 +1,9 @@
package com.wms.entity.app.vo; package com.wms.entity.app.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.wms.entity.app.dto.extend.TaskDetailInfo; import com.wms.entity.app.dto.extend.TaskDetailInfo;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@ -54,10 +56,14 @@ public class TaskRecordVO {
/** /**
* 创建时间 * 创建时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime; private LocalDateTime createTime;
/** /**
* 完成时间 * 完成时间
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime finishTime; private LocalDateTime finishTime;
/** /**
* 用户名 * 用户名

View File

@ -169,12 +169,14 @@ public class WmsJobServiceImplements implements IWmsJobService {
if (!allTasks.isEmpty()) { if (!allTasks.isEmpty()) {
String max_vehicle_nums = configMap.get(ConfigMapKeyEnum.MAX_VEHICLE_NUMS.getConfigKey()); String max_vehicle_nums = configMap.get(ConfigMapKeyEnum.MAX_VEHICLE_NUMS.getConfigKey());
String max_wcs_accept_nums = configMap.get(ConfigMapKeyEnum.MAX_WCS_ACCEPT_NUMS.getConfigKey()); String max_wcs_accept_nums = configMap.get(ConfigMapKeyEnum.MAX_WCS_ACCEPT_NUMS.getConfigKey());
if (StringUtils.isEmpty(max_vehicle_nums) || StringUtils.isEmpty(max_wcs_accept_nums)) { String max_stand_vehicle_nums = configMap.get(ConfigMapKeyEnum.MAX_STAND_VEHICLE_NUMS.getConfigKey());
if (StringUtils.isEmpty(max_vehicle_nums) || StringUtils.isEmpty(max_wcs_accept_nums) || StringUtils.isEmpty(max_stand_vehicle_nums)) {
logger.error("配置未生成"); logger.error("配置未生成");
return; return;
} }
int maxVehicleNums = Integer.parseInt(max_vehicle_nums); int maxVehicleNums = Integer.parseInt(max_vehicle_nums);// 线体最大箱子数量
int maxWcsAcceptNums = Integer.parseInt(max_wcs_accept_nums);// wcs最大一次性可接受任务数量 int maxWcsAcceptNums = Integer.parseInt(max_wcs_accept_nums);// wcs最大一次性可接受任务数量
int maxStandVehicleNums = Integer.parseInt(max_stand_vehicle_nums);// 每个站台最大箱子数量
List<String> outsideVehicles = outsideVehiclesService.selectDistinctVehicles(); List<String> outsideVehicles = outsideVehiclesService.selectDistinctVehicles();
if (outsideVehicles == null || outsideVehicles.isEmpty()) { if (outsideVehicles == null || outsideVehicles.isEmpty()) {
outsideVehicles = Collections.emptyList(); outsideVehicles = Collections.emptyList();
@ -245,6 +247,10 @@ public class WmsJobServiceImplements implements IWmsJobService {
// 超过wcs一次可接受数量 // 超过wcs一次可接受数量
break; break;
} }
if (outPickTaskMap.isEmpty()) {
// 没有站台可以使用
break;
}
// 先找出目前数量最少的站台 // 先找出目前数量最少的站台
String standId = outPickTaskMap.entrySet().stream() String standId = outPickTaskMap.entrySet().stream()
.min(Comparator.comparingInt(Map.Entry::getValue)) .min(Comparator.comparingInt(Map.Entry::getValue))
@ -252,6 +258,11 @@ public class WmsJobServiceImplements implements IWmsJobService {
.orElse(""); .orElse("");
List<String> vehicleIds; List<String> vehicleIds;
if (StringUtils.isNotEmpty(standId)) { if (StringUtils.isNotEmpty(standId)) {
// 如果这个站台箱子数量超过最大每个站台的箱子数量则跳过
if (outPickTaskMap.get(standId) >= maxStandVehicleNums) {
outPickTaskMap.remove(standId);
continue;
}
// 查找这个站台未下发的料箱 // 查找这个站台未下发的料箱
vehicleIds = standPickTasks.stream() vehicleIds = standPickTasks.stream()
.filter(pickTask -> pickTask.getStandId().equals(standId) && pickTask.getPickStatus().equals(PickTaskStatusEnum.TEMP.getCode()) .filter(pickTask -> pickTask.getStandId().equals(standId) && pickTask.getPickStatus().equals(PickTaskStatusEnum.TEMP.getCode())
@ -340,6 +351,7 @@ public class WmsJobServiceImplements implements IWmsJobService {
runningTaskNumToEquipmentMap.replace(equipmentId, runningTaskNumToEquipmentMap.get(equipmentId) + 1); runningTaskNumToEquipmentMap.replace(equipmentId, runningTaskNumToEquipmentMap.get(equipmentId) + 1);
// 已经发送过的vehicleId // 已经发送过的vehicleId
pickVehicleIds.add(maxVehicleId); pickVehicleIds.add(maxVehicleId);
vehicleStandsMap.remove(maxVehicleId);
// 剩余线体可继续出库料箱数量 // 剩余线体可继续出库料箱数量
remainVehicleNums--; remainVehicleNums--;
} }
@ -410,6 +422,7 @@ public class WmsJobServiceImplements implements IWmsJobService {
runningTaskNumToEquipmentMap.replace(equipmentId, runningTaskNumToEquipmentMap.get(equipmentId) + 1); runningTaskNumToEquipmentMap.replace(equipmentId, runningTaskNumToEquipmentMap.get(equipmentId) + 1);
// 已经发送过的vehicleId // 已经发送过的vehicleId
pickVehicleIds.add(minVehicleId); pickVehicleIds.add(minVehicleId);
vehicleStandsMap.remove(minVehicleId);
// 剩余线体可继续出库料箱数量 // 剩余线体可继续出库料箱数量
remainVehicleNums--; remainVehicleNums--;
} }

View File

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.wms.constants.enums.TaskType; import com.wms.constants.enums.TaskType;
import com.wms.entity.app.dto.TaskRecordDto; import com.wms.entity.app.dto.TaskRecordDto;
import com.wms.entity.table.Stock;
import com.wms.entity.table.TaskRecord; import com.wms.entity.table.TaskRecord;
import com.wms.mapper.TaskRecordMapper; import com.wms.mapper.TaskRecordMapper;
import com.wms.service.TaskRecordService; import com.wms.service.TaskRecordService;
@ -53,6 +54,12 @@ public class TaskRecordServiceImplements extends ServiceImpl<TaskRecordMapper, T
// 物料名称/描述 // 物料名称/描述
.apply(StringUtils.isNotEmpty(query.getGoodsRelated().getGoodsName()), "goods_related ->> '$.goodsName' like concat('%', {0}, '%')" + MYSQL_JSON_CI, query.getGoodsRelated().getGoodsName()); .apply(StringUtils.isNotEmpty(query.getGoodsRelated().getGoodsName()), "goods_related ->> '$.goodsName' like concat('%', {0}, '%')" + MYSQL_JSON_CI, query.getGoodsRelated().getGoodsName());
} }
if (query.getCreateTime() != null) {
queryWrapper.between(TaskRecord::getCreateTime, query.getCreateTime().toLocalDate().atStartOfDay(), query.getCreateTime().toLocalDate().plusDays(1).atStartOfDay().minusSeconds(1));
}
if (query.getFinishTime() != null) {
queryWrapper.between(TaskRecord::getFinishTime, query.getFinishTime().toLocalDate().atStartOfDay(), query.getFinishTime().toLocalDate().plusDays(1).atStartOfDay().minusSeconds(1));
}
return super.list(queryWrapper); return super.list(queryWrapper);
} }
} }