Merge remote-tracking branch 'origin/wms_dev' into wms_dev

This commit is contained in:
zhou-hongcheng
2026-02-06 16:31:09 +08:00
28 changed files with 379 additions and 42 deletions
@@ -398,7 +398,7 @@ public class StockShelfOrderApplicationService {
//设置容器信息 //设置容器信息
// setContainerInfo(returnShelfMaterialDetailDOChild); // setContainerInfo(returnShelfMaterialDetailDOChild);
//上架后 设置该记录不允许被修改 //上架后 设置该记录不允许被修改
shelfMaterialDetailDO.setAllowModify(2); returnShelfMaterialDetailDOChild.setAllowModify(2);
returnShelfMaterialDetailDOChild.setMaterialDetailSerialNumberList(shelfMaterialDetailDOChild.getMaterialDetailSerialNumberList()); returnShelfMaterialDetailDOChild.setMaterialDetailSerialNumberList(shelfMaterialDetailDOChild.getMaterialDetailSerialNumberList());
returnShelfMaterialDetailDOChild.setUniqueId(idGenerator.snowflakeId(SnowFlakeConstants.wmsId)); returnShelfMaterialDetailDOChild.setUniqueId(idGenerator.snowflakeId(SnowFlakeConstants.wmsId));
returnShelfMaterialDetailDOChild.setLevel(2); returnShelfMaterialDetailDOChild.setLevel(2);
@@ -410,6 +410,8 @@ public class StockShelfOrderApplicationService {
} }
} }
returnShelfMaterialDetailDOChild.setMaterialDetailSerialNumberList(shelfMaterialDetailDO.getMaterialDetailSerialNumberList()); returnShelfMaterialDetailDOChild.setMaterialDetailSerialNumberList(shelfMaterialDetailDO.getMaterialDetailSerialNumberList());
//设置子项的实际数量(等于上架数量)
returnShelfMaterialDetailDOChild.setActualQuantity(returnShelfMaterialDetailDOChild.getShelvesQuantity());
returnShelfMaterialDetailDOChildList.add(returnShelfMaterialDetailDOChild); returnShelfMaterialDetailDOChildList.add(returnShelfMaterialDetailDOChild);
actualQuantity = actualQuantity.add(returnShelfMaterialDetailDOChild.getShelvesQuantity()); actualQuantity = actualQuantity.add(returnShelfMaterialDetailDOChild.getShelvesQuantity());
} }
@@ -455,8 +457,8 @@ public class StockShelfOrderApplicationService {
* @param shelfMaterialDetailDO * @param shelfMaterialDetailDO
*/ */
private void setStorageLocationInfo(ShelfMaterialDetailDO shelfMaterialDetailDO){ private void setStorageLocationInfo(ShelfMaterialDetailDO shelfMaterialDetailDO){
if (shelfMaterialDetailDO.getStorageLocationId() == null) { if (shelfMaterialDetailDO.getStorageLocationId() == null || shelfMaterialDetailDO.getStorageLocationId() == 0) {
throw new ServiceException("库位ID不能为空"); throw new ServiceException("库位ID不能为空或0");
} }
AjaxResult storageLocationResult = systemServiceFeign.getStorageLocationInfoByStorageLocationId(shelfMaterialDetailDO.getStorageLocationId()); AjaxResult storageLocationResult = systemServiceFeign.getStorageLocationInfoByStorageLocationId(shelfMaterialDetailDO.getStorageLocationId());
if (storageLocationResult == null) { if (storageLocationResult == null) {
@@ -471,19 +473,31 @@ public class StockShelfOrderApplicationService {
if (dataObj == null) { if (dataObj == null) {
throw new ServiceException("获取上架库位信息失败:返回数据为空,库位ID:" + shelfMaterialDetailDO.getStorageLocationId()); throw new ServiceException("获取上架库位信息失败:返回数据为空,库位ID:" + shelfMaterialDetailDO.getStorageLocationId());
} }
StorageLocationFeignPO storageLocationFeignPO = JSON.parseObject(JSONObject.toJSONString(dataObj), StorageLocationFeignPO.class); try {
if (storageLocationFeignPO == null) { String jsonString = JSONObject.toJSONString(dataObj);
throw new ServiceException("获取上架库位信息失败:数据解析失败,库位ID:" + shelfMaterialDetailDO.getStorageLocationId()); if (jsonString == null || jsonString.trim().isEmpty() || "null".equals(jsonString)) {
throw new ServiceException("获取上架库位信息失败:数据序列化失败,库位ID:" + shelfMaterialDetailDO.getStorageLocationId());
}
StorageLocationFeignPO storageLocationFeignPO = JSON.parseObject(jsonString, StorageLocationFeignPO.class);
if (storageLocationFeignPO == null) {
throw new ServiceException("获取上架库位信息失败:数据解析失败,库位ID:" + shelfMaterialDetailDO.getStorageLocationId());
}
shelfMaterialDetailDO.setWarehouseId(storageLocationFeignPO.getWarehouseId());
shelfMaterialDetailDO.setWarehouseCode(storageLocationFeignPO.getWarehouseCode());
shelfMaterialDetailDO.setWarehouseName(storageLocationFeignPO.getWarehouseName());
shelfMaterialDetailDO.setStorageSectionId(storageLocationFeignPO.getStorageSectionId());
shelfMaterialDetailDO.setStorageCode(storageLocationFeignPO.getStorageCode());
shelfMaterialDetailDO.setStorageName(storageLocationFeignPO.getStorageName());
shelfMaterialDetailDO.setStorageLocationId(storageLocationFeignPO.getStorageLocationId());
shelfMaterialDetailDO.setStorageLocationCode(storageLocationFeignPO.getStorageLocationCode());
shelfMaterialDetailDO.setStorageLocationName(storageLocationFeignPO.getStorageLocationName());
} catch (Exception e) {
log.error("解析库位信息失败,库位ID:{},错误:{}", shelfMaterialDetailDO.getStorageLocationId(), e.getMessage(), e);
if (e instanceof ServiceException) {
throw e;
}
throw new ServiceException("获取上架库位信息失败:数据解析异常,库位ID:" + shelfMaterialDetailDO.getStorageLocationId() + ",错误信息:" + e.getMessage());
} }
shelfMaterialDetailDO.setWarehouseId(storageLocationFeignPO.getWarehouseId());
shelfMaterialDetailDO.setWarehouseCode(storageLocationFeignPO.getWarehouseCode());
shelfMaterialDetailDO.setWarehouseName(storageLocationFeignPO.getWarehouseName());
shelfMaterialDetailDO.setStorageSectionId(storageLocationFeignPO.getStorageSectionId());
shelfMaterialDetailDO.setStorageCode(storageLocationFeignPO.getStorageCode());
shelfMaterialDetailDO.setStorageName(storageLocationFeignPO.getStorageName());
shelfMaterialDetailDO.setStorageLocationId(storageLocationFeignPO.getStorageLocationId());
shelfMaterialDetailDO.setStorageLocationCode(storageLocationFeignPO.getStorageLocationCode());
shelfMaterialDetailDO.setStorageLocationName(storageLocationFeignPO.getStorageLocationName());
} }
/** /**
@@ -3,6 +3,7 @@ package com.mhd.wms.domain.receiptMaterialDetail.entity;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.mhd.common.core.annotation.Excel; import com.mhd.common.core.annotation.Excel;
@@ -11,6 +12,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
/** /**
@@ -247,6 +249,41 @@ public class ReceiptMaterialDetail extends BaseVOEntity {
@Excel(name = "箱号/卡板号") @Excel(name = "箱号/卡板号")
private String boxPalletNo; private String boxPalletNo;
@ApiModelProperty("生产日期")
@Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date productionDate;
@ApiModelProperty("过期日期")
@Excel(name = "过期日期", width = 30, dateFormat = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date expiryDate;
@ApiModelProperty("存货日期")
@Excel(name = "存货日期", width = 30, dateFormat = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date inventoryDate;
@ApiModelProperty("扩展属性1")
@Excel(name = "扩展属性1")
@TableField("ext_attr_1")
private String extAttr1;
@ApiModelProperty("扩展属性2")
@Excel(name = "扩展属性2")
@TableField("ext_attr_2")
private String extAttr2;
@ApiModelProperty("扩展属性3")
@Excel(name = "扩展属性3")
@TableField("ext_attr_3")
private String extAttr3;
@ApiModelProperty("扩展属性4")
@Excel(name = "扩展属性4")
@TableField("ext_attr_4")
private String extAttr4;
@ApiModelProperty("申报数量") @ApiModelProperty("申报数量")
@Excel(name = "申报数量") @Excel(name = "申报数量")
@TableField(exist = false) @TableField(exist = false)
@@ -293,4 +330,4 @@ public class ReceiptMaterialDetail extends BaseVOEntity {
private BigDecimal pieceCount; private BigDecimal pieceCount;
} }
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mhd.common.core.constant.SnowFlakeConstants; import com.mhd.common.core.constant.SnowFlakeConstants;
import com.mhd.common.core.exception.ServiceException; import com.mhd.common.core.exception.ServiceException;
import com.mhd.common.core.utils.DateUtils;
import com.mhd.common.core.utils.IgnoreNullUtil; import com.mhd.common.core.utils.IgnoreNullUtil;
import com.mhd.common.core.utils.OrderSequence; import com.mhd.common.core.utils.OrderSequence;
import com.mhd.common.core.utils.uuid.IdGenerator; import com.mhd.common.core.utils.uuid.IdGenerator;
@@ -243,6 +244,70 @@ public class ReceiptMaterialDetailImpl extends ServiceImpl<ReceiptMaterialDetail
List<MaterialMoreDetail> materialMoreDetailList = new ArrayList<>(); List<MaterialMoreDetail> materialMoreDetailList = new ArrayList<>();
List<InMaterialDetailSerialNumber> materialDetailSerialNumberList = new ArrayList<>(); List<InMaterialDetailSerialNumber> materialDetailSerialNumberList = new ArrayList<>();
for (ReceiptMaterialDetailDO receiptMaterialDetailDO : receiptMaterialDetailDOList){ for (ReceiptMaterialDetailDO receiptMaterialDetailDO : receiptMaterialDetailDOList){
List<MaterialMoreDetailDO> materialMoreDetailList1 = receiptMaterialDetailDO.getMaterialMoreDetailList();
for (MaterialMoreDetailDO materialMoreDetailDO : materialMoreDetailList1) {
String batchLabels = materialMoreDetailDO.getBatchLabels();
String attributeValue = materialMoreDetailDO.getAttributeValue();
if (attributeValue != null && !attributeValue.isEmpty() && attributeValue != "" && attributeValue.length() > 0 ) {
attributeValue = attributeValue.trim();
switch (batchLabels) {
case "扩展字段4":
receiptMaterialDetailDO.setExtAttr4(attributeValue);
break;
case "扩展字段3":
receiptMaterialDetailDO.setExtAttr3(attributeValue);
break;
case "扩展字段2":
receiptMaterialDetailDO.setExtAttr2(attributeValue);
break;
case "扩展字段1":
receiptMaterialDetailDO.setExtAttr1(attributeValue);
break;
case "箱号/卡板号":
receiptMaterialDetailDO.setBoxPalletNo(attributeValue);
break;
case "Sheet Ref NO's":
receiptMaterialDetailDO.setSheetRefNo(attributeValue);
break;
case "Batch Ref NO's":
receiptMaterialDetailDO.setBatchRefNo(attributeValue);
break;
case "存货日期":
// 判断是否是日期格式再赋值避免报错
try {
if (attributeValue.matches("\\d{4}-\\d{2}-\\d{2}.*")) {
receiptMaterialDetailDO.setInventoryDate(DateUtils.parseDate(attributeValue));
}
} catch (Exception e) {
log.warn("库存日期格式转换失败,物料:{},原始值:{}", receiptMaterialDetailDO.getMaterialName(), attributeValue);
}
//receiptMaterialDetailDO.setInventoryDate(DateUtils.parseDate(attributeValue));
break;
case "过期日期":
// 判断是否是日期格式再赋值避免报错
try {
if (attributeValue.matches("\\d{4}-\\d{2}-\\d{2}.*")) {
receiptMaterialDetailDO.setExpiryDate(DateUtils.parseDate(attributeValue));
}
} catch (Exception e) {
log.warn("库存日期格式转换失败,物料:{},原始值:{}", receiptMaterialDetailDO.getMaterialName(), attributeValue);
}
//receiptMaterialDetailDO.setExpiryDate(DateUtils.parseDate(attributeValue));
break;
case "生产日期":
// 判断是否是日期格式再赋值避免报错
try {
if (attributeValue.matches("\\d{4}-\\d{2}-\\d{2}.*")) {
receiptMaterialDetailDO.setProductionDate(DateUtils.parseDate(attributeValue));
}
} catch (Exception e) {
log.warn("库存日期格式转换失败,物料:{},原始值:{}", receiptMaterialDetailDO.getMaterialName(), attributeValue);
}
//receiptMaterialDetailDO.setProductionDate(DateUtils.parseDate(attributeValue));
break;
}
}
}
// 自动生成批次号并校验唯一性(包括子项) // 自动生成批次号并校验唯一性(包括子项)
generateAndValidateBatchNumber(receiptMaterialDetailDO, shipperId); generateAndValidateBatchNumber(receiptMaterialDetailDO, shipperId);
//更多属性 //更多属性
@@ -802,4 +867,4 @@ public class ReceiptMaterialDetailImpl extends ServiceImpl<ReceiptMaterialDetail
} }
} }
} }
@@ -192,7 +192,7 @@ public class ShelfMaterialDetailImpl extends ServiceImpl<ShelfMaterialDetailMapp
} }
materialDetailSerialNumberList.addAll(genMaterialDetailSerialNumber(shelfMaterialDetailDO)); materialDetailSerialNumberList.addAll(genMaterialDetailSerialNumber(shelfMaterialDetailDO));
} }
BigDecimal totalActualQuantity = shelfMaterialDetailDO.getActualQuantity(); BigDecimal totalActualQuantity = shelfMaterialDetailDO.getActualQuantity() != null ? shelfMaterialDetailDO.getActualQuantity() : BigDecimal.ZERO;
//判断是否存在子项 //判断是否存在子项
List<ShelfMaterialDetailDO> inMaterialDetailDOChildList = shelfMaterialDetailDO.getChildren(); List<ShelfMaterialDetailDO> inMaterialDetailDOChildList = shelfMaterialDetailDO.getChildren();
List<ShelfMaterialDetail> shelfMaterialDetailChildList = new ArrayList<>(); List<ShelfMaterialDetail> shelfMaterialDetailChildList = new ArrayList<>();
@@ -212,7 +212,8 @@ public class ShelfMaterialDetailImpl extends ServiceImpl<ShelfMaterialDetailMapp
} }
materialDetailSerialNumberList.addAll(genMaterialDetailSerialNumber(shelfMaterialDetailDOChild)); materialDetailSerialNumberList.addAll(genMaterialDetailSerialNumber(shelfMaterialDetailDOChild));
} }
totalActualQuantity = totalActualQuantity.add(shelfMaterialDetailDOChild.getActualQuantity()); BigDecimal childActualQuantity = shelfMaterialDetailDOChild.getActualQuantity() != null ? shelfMaterialDetailDOChild.getActualQuantity() : BigDecimal.ZERO;
totalActualQuantity = totalActualQuantity.add(childActualQuantity);
} }
} }
ShelfMaterialDetail shelfMaterialDetail = new ShelfMaterialDetail(); ShelfMaterialDetail shelfMaterialDetail = new ShelfMaterialDetail();
@@ -340,4 +340,10 @@ public class StockInOrderDO extends BaseVOEntity {
@DateTimeFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd")
@Excel(name = "下单日期", width = 30, dateFormat = "yyyy-MM-dd") @Excel(name = "下单日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date orderDate; private Date orderDate;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
} }
@@ -393,4 +393,15 @@ public class StockOutOrderDO extends BaseVOEntity {
@Excel(name = "是否需要运输") @Excel(name = "是否需要运输")
private String needTransportFlag; private String needTransportFlag;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
@ApiModelProperty(name = "审核时间查询条件开始日期")
private String auditTimeStart;
@ApiModelProperty(name = "审核时间查询条件结束日期")
private String auditTimeEnd;
} }
@@ -165,4 +165,19 @@ public class StockOutTaskOrderDO extends BaseVOEntity {
@ApiModelProperty("大于指定状态值:1-待收货 2-部分收货 3-已收货 4-已关闭") @ApiModelProperty("大于指定状态值:1-待收货 2-部分收货 3-已收货 4-已关闭")
private Integer gtStatus; private Integer gtStatus;
@ApiModelProperty("集货库位ID集合")
private List<Long> storageLocationList;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
@ApiModelProperty(name = "作业完成时间查询条件开始日期")
private String operatorsEndTimeStart;
@ApiModelProperty(name = "作业完成时间查询条件结束日期")
private String operatorsEndTimeEnd;
} }
@@ -161,4 +161,9 @@ public class StockReceiptOrderDO extends StockInOrderBaseDO {
@ApiModelProperty("仓库绑定的用户ID列表(用于任务下发时筛选操作人员)") @ApiModelProperty("仓库绑定的用户ID列表(用于任务下发时筛选操作人员)")
private List<Long> warehouseUserIds; private List<Long> warehouseUserIds;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
} }
@@ -125,4 +125,10 @@ public class StockShelfOrderDO extends StockInOrderBaseDO {
@ApiModelProperty("物料明细") @ApiModelProperty("物料明细")
private List<ShelfMaterialDetailDO> materialDetailList; private List<ShelfMaterialDetailDO> materialDetailList;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
} }
@@ -31,6 +31,10 @@ public class ImmediateInventoryAssembler {
if (ObjectUtil.isNull(loginUser)) { if (ObjectUtil.isNull(loginUser)) {
throw new DigitalLogisticsException(UserError.TIMEOUT); throw new DigitalLogisticsException(UserError.TIMEOUT);
} }
immediateInventoryDO.setAllocationQuantityStart(immediateInventoryDTO.getAllocationQuantityBegin());
immediateInventoryDO.setFreezeQuantityStart(immediateInventoryDTO.getFreezeQuantityBegin());
immediateInventoryDO.setPickQuantityStart(immediateInventoryDTO.getPickQuantityBegin());
immediateInventoryDO.setReceivedQuantityStart(immediateInventoryDTO.getReceivedQuantityBegin());
return immediateInventoryDO; return immediateInventoryDO;
} }
@@ -48,4 +52,4 @@ public class ImmediateInventoryAssembler {
return immediateInventoryDO; return immediateInventoryDO;
} }
} }
@@ -30,6 +30,9 @@ public class StockInOrderAssembler {
StockInOrderDO stockInOrderDO = new StockInOrderDO(); StockInOrderDO stockInOrderDO = new StockInOrderDO();
// 拷贝 // 拷贝
BeanUtils.copyProperties(stockInOrderDTO, stockInOrderDO, IgnoreNullUtil.getNullPropertyNames(stockInOrderDTO)); BeanUtils.copyProperties(stockInOrderDTO, stockInOrderDO, IgnoreNullUtil.getNullPropertyNames(stockInOrderDTO));
// 确保查询条件字段被正确传递查询条件字段需要明确传递避免被IgnoreNullUtil忽略
stockInOrderDO.setCreateTimeStart(stockInOrderDTO.getCreateTimeStart());
stockInOrderDO.setCreateTimeEnd(stockInOrderDTO.getCreateTimeEnd());
return stockInOrderDO; return stockInOrderDO;
} }
@@ -30,6 +30,11 @@ public class StockOutOrderAssembler {
StockOutOrderDO stockOutOrderDO = new StockOutOrderDO(); StockOutOrderDO stockOutOrderDO = new StockOutOrderDO();
// 拷贝 // 拷贝
BeanUtils.copyProperties(stockOutOrderDTO, stockOutOrderDO, IgnoreNullUtil.getNullPropertyNames(stockOutOrderDTO)); BeanUtils.copyProperties(stockOutOrderDTO, stockOutOrderDO, IgnoreNullUtil.getNullPropertyNames(stockOutOrderDTO));
// 确保查询条件字段被正确传递查询条件字段需要明确传递避免被IgnoreNullUtil忽略
stockOutOrderDO.setCreateTimeStart(stockOutOrderDTO.getCreateTimeStart());
stockOutOrderDO.setCreateTimeEnd(stockOutOrderDTO.getCreateTimeEnd());
stockOutOrderDO.setAuditTimeStart(stockOutOrderDTO.getAuditTimeStart());
stockOutOrderDO.setAuditTimeEnd(stockOutOrderDTO.getAuditTimeEnd());
return stockOutOrderDO; return stockOutOrderDO;
} }
@@ -32,6 +32,12 @@ public class StockOutTaskOrderAssembler {
StockOutTaskOrderDO stockOutTaskOrderDO = new StockOutTaskOrderDO(); StockOutTaskOrderDO stockOutTaskOrderDO = new StockOutTaskOrderDO();
// 拷贝 // 拷贝
BeanUtils.copyProperties(stockOutTaskOrderDTO, stockOutTaskOrderDO, IgnoreNullUtil.getNullPropertyNames(stockOutTaskOrderDTO)); BeanUtils.copyProperties(stockOutTaskOrderDTO, stockOutTaskOrderDO, IgnoreNullUtil.getNullPropertyNames(stockOutTaskOrderDTO));
// 确保查询条件字段被正确传递查询条件字段需要明确传递避免被IgnoreNullUtil忽略
stockOutTaskOrderDO.setStorageLocationList(stockOutTaskOrderDTO.getStorageLocationList());
stockOutTaskOrderDO.setCreateTimeStart(stockOutTaskOrderDTO.getCreateTimeStart());
stockOutTaskOrderDO.setCreateTimeEnd(stockOutTaskOrderDTO.getCreateTimeEnd());
stockOutTaskOrderDO.setOperatorsEndTimeStart(stockOutTaskOrderDTO.getOperatorsEndTimeStart());
stockOutTaskOrderDO.setOperatorsEndTimeEnd(stockOutTaskOrderDTO.getOperatorsEndTimeEnd());
return stockOutTaskOrderDO; return stockOutTaskOrderDO;
} }
@@ -23,6 +23,9 @@ public class StockReceiptOrderAssembler {
StockReceiptOrderDO stockReceiptOrderDO = new StockReceiptOrderDO(); StockReceiptOrderDO stockReceiptOrderDO = new StockReceiptOrderDO();
// 拷贝 // 拷贝
BeanUtils.copyProperties(stockReceiptOrderDTO, stockReceiptOrderDO, IgnoreNullUtil.getNullPropertyNames(stockReceiptOrderDTO)); BeanUtils.copyProperties(stockReceiptOrderDTO, stockReceiptOrderDO, IgnoreNullUtil.getNullPropertyNames(stockReceiptOrderDTO));
// 确保查询条件字段被正确传递查询条件字段需要明确传递避免被IgnoreNullUtil忽略
stockReceiptOrderDO.setCreateTimeStart(stockReceiptOrderDTO.getCreateTimeStart());
stockReceiptOrderDO.setCreateTimeEnd(stockReceiptOrderDTO.getCreateTimeEnd());
return stockReceiptOrderDO; return stockReceiptOrderDO;
} }
@@ -23,6 +23,9 @@ public class StockShelfOrderAssembler {
StockShelfOrderDO stockShelfOrderDO = JSONUtil.toBean(JSONUtil.toJsonStr(stockShelfOrderDTO), StockShelfOrderDO.class); StockShelfOrderDO stockShelfOrderDO = JSONUtil.toBean(JSONUtil.toJsonStr(stockShelfOrderDTO), StockShelfOrderDO.class);
// 拷贝 // 拷贝
BeanUtils.copyProperties(stockShelfOrderDTO, stockShelfOrderDO, IgnoreNullUtil.getNullPropertyNames(stockShelfOrderDTO)); BeanUtils.copyProperties(stockShelfOrderDTO, stockShelfOrderDO, IgnoreNullUtil.getNullPropertyNames(stockShelfOrderDTO));
// 确保查询条件字段被正确传递查询条件字段需要明确传递避免被IgnoreNullUtil忽略
stockShelfOrderDO.setCreateTimeStart(stockShelfOrderDTO.getCreateTimeStart());
stockShelfOrderDO.setCreateTimeEnd(stockShelfOrderDTO.getCreateTimeEnd());
return stockShelfOrderDO; return stockShelfOrderDO;
} }
@@ -144,4 +144,10 @@ public class ImmediateInventoryDTO {
@ApiModelProperty("拣货数量结束") @ApiModelProperty("拣货数量结束")
@Excel(name = "拣货数量结束") @Excel(name = "拣货数量结束")
private BigDecimal pickQuantityEnd; private BigDecimal pickQuantityEnd;
}
private BigDecimal pickQuantityBegin;
private BigDecimal receivedQuantityBegin;
private BigDecimal freezeQuantityBegin;
private BigDecimal allocationQuantityBegin;
private BigDecimal checkQuantity;
}
@@ -337,4 +337,10 @@ public class StockInOrderDTO extends StockInOrderBaseDTO {
@DateTimeFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd")
@Excel(name = "下单日期", width = 30, dateFormat = "yyyy-MM-dd") @Excel(name = "下单日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date orderDate; private Date orderDate;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
} }
@@ -380,4 +380,16 @@ public class StockOutOrderDTO extends StockOutOrderBaseDTO {
@ApiModelProperty("是否需要运输") @ApiModelProperty("是否需要运输")
@Excel(name = "是否需要运输") @Excel(name = "是否需要运输")
private String needTransportFlag; private String needTransportFlag;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
@ApiModelProperty(name = "审核时间查询条件开始日期")
private String auditTimeStart;
@ApiModelProperty(name = "审核时间查询条件结束日期")
private String auditTimeEnd;
} }
@@ -159,4 +159,19 @@ public class StockOutTaskOrderDTO extends BaseVOEntity {
@ApiModelProperty("大于指定状态值:1-待收货 2-部分收货 3-已收货 4-已关闭") @ApiModelProperty("大于指定状态值:1-待收货 2-部分收货 3-已收货 4-已关闭")
private Integer gtStatus; private Integer gtStatus;
@ApiModelProperty("集货库位ID集合")
private List<Long> storageLocationList;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
@ApiModelProperty(name = "作业完成时间查询条件开始日期")
private String operatorsEndTimeStart;
@ApiModelProperty(name = "作业完成时间查询条件结束日期")
private String operatorsEndTimeEnd;
} }
@@ -146,4 +146,10 @@ public class StockReceiptOrderDTO extends StockInOrderBaseDTO {
@ApiModelProperty("物料明细") @ApiModelProperty("物料明细")
private List<ReceiptMaterialDetailDTO> materialDetailList; private List<ReceiptMaterialDetailDTO> materialDetailList;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
} }
@@ -117,4 +117,10 @@ public class StockShelfOrderDTO extends StockInOrderBaseDTO {
@ApiModelProperty("物料明细") @ApiModelProperty("物料明细")
private List<ShelfMaterialDetailDTO> materialDetailList; private List<ShelfMaterialDetailDTO> materialDetailList;
@ApiModelProperty(name = "创建时间查询条件开始日期")
private String createTimeStart;
@ApiModelProperty(name = "创建时间查询条件结束日期")
private String createTimeEnd;
} }
@@ -397,10 +397,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
AND d.del_flag = 1 AND d.del_flag = 1
LEFT JOIN stock_in_order e ON d.in_order_number = e.in_order_number LEFT JOIN stock_in_order e ON d.in_order_number = e.in_order_number
WHERE WHERE
c.del_flag = 1 and d.STATUS = 1 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 3
AND e.warehouse_id = a.warehouse_id AND e.warehouse_id = a.warehouse_id
AND (a.shipper_id IS NULL OR e.shipper_id = a.shipper_id) AND (a.shipper_id IS NULL OR e.shipper_id = a.shipper_id)
AND c.material_base_info_id = a.material_base_info_id AND c.material_base_info_id = a.material_base_info_id
and (c.BATCH_REF_NO = a.batch_ref_no or (c.BATCH_REF_NO is null and a.BATCH_REF_NO is null))
and (c.SHEET_REF_NO = a.sheet_ref_no or (c.SHEET_REF_NO is null and a.SHEET_REF_NO is null))
and (c.BOX_PALLET_NO = a.BOX_PALLET_NO or (c.BOX_PALLET_NO is null and a.BOX_PALLET_NO is null))
and (c.EXT_ATTR_1 = a.EXT_ATTR_1 or (c.EXT_ATTR_1 is null and a.EXT_ATTR_1 is null))
and (c.EXT_ATTR_2 = a.EXT_ATTR_2 or (c.EXT_ATTR_2 is null and a.EXT_ATTR_2 is null))
and (c.EXT_ATTR_3 = a.EXT_ATTR_3 or (c.EXT_ATTR_3 is null and a.EXT_ATTR_3 is null))
and (c.EXT_ATTR_4 = a.EXT_ATTR_4 or (c.EXT_ATTR_4 is null and a.EXT_ATTR_4 is null))
and (c.PRODUCTION_DATE = a.PRODUCTION_DATE or (c.PRODUCTION_DATE is null and a.PRODUCTION_DATE is null))
and (c.EXPIRY_DATE = a.EXPIRY_DATE or (c.EXPIRY_DATE is null and a.EXPIRY_DATE is null))
and (c.INVENTORY_DATE = a.INVENTORY_DATE or (c.INVENTORY_DATE is null and a.INVENTORY_DATE is null))
), ),
0 0
) received_quantity, ) received_quantity,
@@ -430,10 +440,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER
left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER
WHERE WHERE
c.del_flag = 1 and d.STATUS = 1 and e.STATUS = 7 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id) AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id)
AND c.material_base_info_id = a.material_base_info_id AND c.material_base_info_id = a.material_base_info_id
AND c.MATERIAL_INVENTORY_ID = a.MATERIAL_INVENTORY_ID
), ),
0 0
) pick_quantity, ) pick_quantity,
@@ -444,13 +455,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
FROM FROM
OUT_MATERIAL_DETAIL c OUT_MATERIAL_DETAIL c
LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER
LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER
WHERE WHERE
d.CHECK_STATUS = 2 d.CHECK_STATUS = 2 and e.STATUS = 1
AND d.DEL_FLAG = 1 AND d.DEL_FLAG = 1
AND c.DEL_FLAG = 1 AND c.DEL_FLAG = 1
and e.del_flag = 1
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id) AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id)
AND c.material_base_info_id = a.material_base_info_id AND c.material_base_info_id = a.material_base_info_id
AND c.MATERIAL_INVENTORY_ID = a.MATERIAL_INVENTORY_ID
), ),
0 0
) CHECK_QUANTITY, ) CHECK_QUANTITY,
@@ -519,10 +533,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
AND d.del_flag = 1 AND d.del_flag = 1
LEFT JOIN stock_in_order e ON d.in_order_number = e.in_order_number LEFT JOIN stock_in_order e ON d.in_order_number = e.in_order_number
WHERE WHERE
c.del_flag = 1 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 3
AND e.warehouse_id = a.warehouse_id AND e.warehouse_id = a.warehouse_id
AND (a.shipper_id IS NULL OR e.shipper_id = a.shipper_id) AND (a.shipper_id IS NULL OR e.shipper_id = a.shipper_id)
AND c.material_base_info_id = a.material_base_info_id AND c.material_base_info_id = a.material_base_info_id
and (c.BATCH_REF_NO = a.batch_ref_no or (c.BATCH_REF_NO is null and a.BATCH_REF_NO is null))
and (c.SHEET_REF_NO = a.sheet_ref_no or (c.SHEET_REF_NO is null and a.SHEET_REF_NO is null))
and (c.BOX_PALLET_NO = a.BOX_PALLET_NO or (c.BOX_PALLET_NO is null and a.BOX_PALLET_NO is null))
and (c.EXT_ATTR_1 = a.EXT_ATTR_1 or (c.EXT_ATTR_1 is null and a.EXT_ATTR_1 is null))
and (c.EXT_ATTR_2 = a.EXT_ATTR_2 or (c.EXT_ATTR_2 is null and a.EXT_ATTR_2 is null))
and (c.EXT_ATTR_3 = a.EXT_ATTR_3 or (c.EXT_ATTR_3 is null and a.EXT_ATTR_3 is null))
and (c.EXT_ATTR_4 = a.EXT_ATTR_4 or (c.EXT_ATTR_4 is null and a.EXT_ATTR_4 is null))
and (c.PRODUCTION_DATE = a.PRODUCTION_DATE or (c.PRODUCTION_DATE is null and a.PRODUCTION_DATE is null))
and (c.EXPIRY_DATE = a.EXPIRY_DATE or (c.EXPIRY_DATE is null and a.EXPIRY_DATE is null))
and (c.INVENTORY_DATE = a.INVENTORY_DATE or (c.INVENTORY_DATE is null and a.INVENTORY_DATE is null))
), ),
0 0
)> #{receivedQuantityStart} )> #{receivedQuantityStart}
@@ -539,10 +563,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
AND d.del_flag = 1 AND d.del_flag = 1
LEFT JOIN stock_in_order e ON d.in_order_number = e.in_order_number LEFT JOIN stock_in_order e ON d.in_order_number = e.in_order_number
WHERE WHERE
c.del_flag = 1 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 3
AND e.warehouse_id = a.warehouse_id AND e.warehouse_id = a.warehouse_id
AND (a.shipper_id IS NULL OR e.shipper_id = a.shipper_id) AND (a.shipper_id IS NULL OR e.shipper_id = a.shipper_id)
AND c.material_base_info_id = a.material_base_info_id AND c.material_base_info_id = a.material_base_info_id
and (c.BATCH_REF_NO = a.batch_ref_no or (c.BATCH_REF_NO is null and a.BATCH_REF_NO is null))
and (c.SHEET_REF_NO = a.sheet_ref_no or (c.SHEET_REF_NO is null and a.SHEET_REF_NO is null))
and (c.BOX_PALLET_NO = a.BOX_PALLET_NO or (c.BOX_PALLET_NO is null and a.BOX_PALLET_NO is null))
and (c.EXT_ATTR_1 = a.EXT_ATTR_1 or (c.EXT_ATTR_1 is null and a.EXT_ATTR_1 is null))
and (c.EXT_ATTR_2 = a.EXT_ATTR_2 or (c.EXT_ATTR_2 is null and a.EXT_ATTR_2 is null))
and (c.EXT_ATTR_3 = a.EXT_ATTR_3 or (c.EXT_ATTR_3 is null and a.EXT_ATTR_3 is null))
and (c.EXT_ATTR_4 = a.EXT_ATTR_4 or (c.EXT_ATTR_4 is null and a.EXT_ATTR_4 is null))
and (c.PRODUCTION_DATE = a.PRODUCTION_DATE or (c.PRODUCTION_DATE is null and a.PRODUCTION_DATE is null))
and (c.EXPIRY_DATE = a.EXPIRY_DATE or (c.EXPIRY_DATE is null and a.EXPIRY_DATE is null))
and (c.INVENTORY_DATE = a.INVENTORY_DATE or (c.INVENTORY_DATE is null and a.INVENTORY_DATE is null))
), ),
0 0
) &lt; #{receivedQuantityEnd} ) &lt; #{receivedQuantityEnd}
@@ -595,12 +629,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
sum( c.picking_quantity ) sum( c.picking_quantity )
FROM FROM
picking_material_detail c picking_material_detail c
LEFT JOIN picking_order d ON c.picking_order_number = d.order_number LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER
left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER
WHERE WHERE
c.del_flag = 1 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id) AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id)
AND c.material_base_info_id = a.material_base_info_id AND c.material_base_info_id = a.material_base_info_id
AND c.MATERIAL_INVENTORY_ID = a.MATERIAL_INVENTORY_ID
), ),
0 0
) > #{pickQuantityStart} ) > #{pickQuantityStart}
@@ -613,12 +649,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
sum( c.picking_quantity ) sum( c.picking_quantity )
FROM FROM
picking_material_detail c picking_material_detail c
LEFT JOIN picking_order d ON c.picking_order_number = d.order_number LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER
left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER
WHERE WHERE
c.del_flag = 1 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id) AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id)
AND c.material_base_info_id = a.material_base_info_id AND c.material_base_info_id = a.material_base_info_id
AND c.MATERIAL_INVENTORY_ID = a.MATERIAL_INVENTORY_ID
), ),
0 0
) &lt; #{pickQuantityEnd} ) &lt; #{pickQuantityEnd}
@@ -639,13 +677,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
FROM FROM
OUT_MATERIAL_DETAIL c OUT_MATERIAL_DETAIL c
LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER
LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER
WHERE WHERE
d.CHECK_STATUS = 2 d.CHECK_STATUS = 2 and e.STATUS = 1
AND d.DEL_FLAG = 1 AND d.DEL_FLAG = 1
AND c.DEL_FLAG = 1 AND c.DEL_FLAG = 1
and e.del_flag = 1
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id) AND (a.shipper_id IS NULL OR d.shipper_id = a.shipper_id)
AND c.material_base_info_id = a.material_base_info_id AND c.material_base_info_id = a.material_base_info_id
AND c.MATERIAL_INVENTORY_ID = a.MATERIAL_INVENTORY_ID
), ),
0 0
) = #{checkQuantity} ) = #{checkQuantity}
@@ -59,10 +59,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and a.warehouse_name like concat('%', #{warehouseName}, '%') and a.warehouse_name like concat('%', #{warehouseName}, '%')
</if> </if>
<if test="orderNumber != null and orderNumber != '' "> <if test="orderNumber != null and orderNumber != '' ">
and a.order_number = #{orderNumber} and a.order_number like concat('%', #{orderNumber}, '%')
</if> </if>
<if test="pickingOrderNumber != null and pickingOrderNumber != ''"> <if test="pickingOrderNumber != null and pickingOrderNumber != ''">
and a.picking_order_number = #{pickingOrderNumber} and a.picking_order_number like concat('%', #{pickingOrderNumber}, '%')
</if> </if>
<if test="status != null "> <if test="status != null ">
and a.status = #{status} and a.status = #{status}
@@ -105,7 +105,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and b.notice_number = #{noticeNumber} and b.notice_number = #{noticeNumber}
</if> </if>
<if test="inOrderNumber != null and inOrderNumber != ''"> <if test="inOrderNumber != null and inOrderNumber != ''">
and b.in_order_number = #{inOrderNumber} and b.in_order_number like concat('%', #{inOrderNumber}, '%')
</if> </if>
<if test="warehouseId != null "> <if test="warehouseId != null ">
and b.warehouse_id = #{warehouseId} and b.warehouse_id = #{warehouseId}
@@ -363,6 +363,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="orderDate != null"> <if test="orderDate != null">
and a.ORDER_DATE = #{orderDate} and a.ORDER_DATE = #{orderDate}
</if> </if>
<if test="createTimeStart != null and createTimeStart != ''">
and date_format(a.create_time,'%Y-%m-%d') &gt;= #{createTimeStart}
</if>
<if test="createTimeEnd != null and createTimeEnd != ''">
and date_format(a.create_time,'%Y-%m-%d') &lt;= #{createTimeEnd}
</if>
<choose> <choose>
<when test="delFlag != null"> and a.del_flag = #{delFlag} </when> <when test="delFlag != null"> and a.del_flag = #{delFlag} </when>
<otherwise> and a.del_flag = 1 </otherwise> <otherwise> and a.del_flag = 1 </otherwise>
@@ -124,7 +124,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and a.notice_number = #{noticeNumber} and a.notice_number = #{noticeNumber}
</if> </if>
<if test="outOrderNumber != null and outOrderNumber != ''"> <if test="outOrderNumber != null and outOrderNumber != ''">
and a.out_order_number = #{outOrderNumber} and a.out_order_number like concat('%', #{outOrderNumber}, '%')
</if> </if>
<!-- 出库状态: 1-已创建 2-已审核 3-部分分配 4-已分配 5-拣货中 6-波次中 7-拣货完成 8-复核中 9-已出库 10-已取消 11-已关闭 --> <!-- 出库状态: 1-已创建 2-已审核 3-部分分配 4-已分配 5-拣货中 6-波次中 7-拣货完成 8-复核中 9-已出库 10-已取消 11-已关闭 -->
<if test="status != null "> <if test="status != null ">
@@ -151,6 +151,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="auditRemark != null and auditRemark != ''"> <if test="auditRemark != null and auditRemark != ''">
and a.audit_remark = #{auditRemark} and a.audit_remark = #{auditRemark}
</if> </if>
<if test="checkTaskDistribution != null ">
and a.check_task_distribution = #{checkTaskDistribution}
</if>
<if test="auditBy != null "> <if test="auditBy != null ">
and a.audit_by = #{auditBy} and a.audit_by = #{auditBy}
</if> </if>
@@ -265,6 +268,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="createTimeStart != null and createTimeStart != ''">
and date_format(a.create_time,'%Y-%m-%d') &gt;= #{createTimeStart}
</if>
<if test="createTimeEnd != null and createTimeEnd != ''">
and date_format(a.create_time,'%Y-%m-%d') &lt;= #{createTimeEnd}
</if>
<if test="auditTimeStart != null and auditTimeStart != ''">
and date_format(a.audit_time,'%Y-%m-%d') &gt;= #{auditTimeStart}
</if>
<if test="auditTimeEnd != null and auditTimeEnd != ''">
and date_format(a.audit_time,'%Y-%m-%d') &lt;= #{auditTimeEnd}
</if>
<choose> <choose>
<when test="delFlag != null"> and a.del_flag = #{delFlag} </when> <when test="delFlag != null"> and a.del_flag = #{delFlag} </when>
<otherwise> and a.del_flag = 1 </otherwise> <otherwise> and a.del_flag = 1 </otherwise>
@@ -56,7 +56,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and a.serial_number = #{serialNumber} and a.serial_number = #{serialNumber}
</if> </if>
<if test="taskNumber != null and taskNumber != ''"> <if test="taskNumber != null and taskNumber != ''">
and a.task_number = #{taskNumber} and a.task_number like concat('%', #{taskNumber}, '%')
</if> </if>
<if test="status != null "> <if test="status != null ">
and a.status = #{status} and a.status = #{status}
@@ -86,10 +86,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and a.shipper_name like concat('%', #{shipperName}, '%') and a.shipper_name like concat('%', #{shipperName}, '%')
</if> </if>
<if test="orderNumber != null and orderNumber != ''"> <if test="orderNumber != null and orderNumber != ''">
and a.order_number = #{orderNumber} and a.order_number like concat('%', #{orderNumber}, '%')
</if> </if>
<if test="pickingOrderNumber != null and pickingOrderNumber != ''"> <if test="pickingOrderNumber != null and pickingOrderNumber != ''">
and a.picking_order_number = #{pickingOrderNumber} and a.picking_order_number like concat('%', #{pickingOrderNumber}, '%')
</if> </if>
<if test="abnormal != null "> <if test="abnormal != null ">
and a.abnormal = #{abnormal} and a.abnormal = #{abnormal}
@@ -100,6 +100,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="operatorsName != null and operatorsName != ''"> <if test="operatorsName != null and operatorsName != ''">
and a.operators_name like concat('%', #{operatorsName}, '%') and a.operators_name like concat('%', #{operatorsName}, '%')
</if> </if>
<if test="pickingQuantity != null ">
and a.picking_quantity = #{pickingQuantity}
</if>
<if test="operatorsEndTime != null "> <if test="operatorsEndTime != null ">
and a.operators_end_time = #{operatorsEndTime} and a.operators_end_time = #{operatorsEndTime}
</if> </if>
@@ -109,6 +112,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="updateByName != null and updateByName != ''"> <if test="updateByName != null and updateByName != ''">
and a.update_by_name like concat('%', #{updateByName}, '%') and a.update_by_name like concat('%', #{updateByName}, '%')
</if> </if>
<if test="storageLocationId != null ">
and a.storage_location_id = #{storageLocationId}
</if>
<if test="storageLocationList != null and storageLocationList.size > 0 ">
and a.storage_location_id in
<foreach collection="storageLocationList" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
<if test="createTimeStart != null and createTimeStart != ''">
and date_format(a.create_time,'%Y-%m-%d') &gt;= #{createTimeStart}
</if>
<if test="createTimeEnd != null and createTimeEnd != ''">
and date_format(a.create_time,'%Y-%m-%d') &lt;= #{createTimeEnd}
</if>
<if test="operatorsEndTimeStart != null and operatorsEndTimeStart != ''">
and date_format(a.operators_end_time,'%Y-%m-%d') &gt;= #{operatorsEndTimeStart}
</if>
<if test="operatorsEndTimeEnd != null and operatorsEndTimeEnd != ''">
and date_format(a.operators_end_time,'%Y-%m-%d') &lt;= #{operatorsEndTimeEnd}
</if>
<choose> <choose>
<when test="delFlag != null"> and a.del_flag = #{delFlag} </when> <when test="delFlag != null"> and a.del_flag = #{delFlag} </when>
<otherwise> and a.del_flag = 1 </otherwise> <otherwise> and a.del_flag = 1 </otherwise>
@@ -60,11 +60,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and a.top_organization_id = #{topOrganizationId} and a.top_organization_id = #{topOrganizationId}
</if> </if>
<if test="inOrderNumber != null and inOrderNumber != '' "> <if test="inOrderNumber != null and inOrderNumber != '' ">
and a.in_order_number = #{inOrderNumber} and a.in_order_number like concat('%', #{inOrderNumber}, '%')
</if> </if>
<if test="receiptOrderNumber != null and receiptOrderNumber != ''"> <if test="receiptOrderNumber != null and receiptOrderNumber != ''">
and a.receipt_order_number like concat('%', #{receiptOrderNumber}, '%') and a.receipt_order_number like concat('%', #{receiptOrderNumber}, '%')
</if> </if>
-- taskDistributionMerge
<if test="taskDistributionMerge != null ">
and a.task_distribution_merge = #{taskDistributionMerge}
</if>
<if test="status != null "> <if test="status != null ">
and a.status = #{status} and a.status = #{status}
</if> </if>
@@ -119,6 +123,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="createTimeStart != null and createTimeStart != ''">
and date_format(a.create_time,'%Y-%m-%d') &gt;= #{createTimeStart}
</if>
<if test="createTimeEnd != null and createTimeEnd != ''">
and date_format(a.create_time,'%Y-%m-%d') &lt;= #{createTimeEnd}
</if>
<choose> <choose>
<when test="delFlag != null"> and a.del_flag = #{delFlag} </when> <when test="delFlag != null"> and a.del_flag = #{delFlag} </when>
<otherwise> and a.del_flag = 1 </otherwise> <otherwise> and a.del_flag = 1 </otherwise>
@@ -52,13 +52,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and a.in_order_number = #{inOrderNumber} and a.in_order_number = #{inOrderNumber}
</if> </if>
<if test="receiptOrderNumber != null and receiptOrderNumber != ''"> <if test="receiptOrderNumber != null and receiptOrderNumber != ''">
and a.receipt_order_number = #{receiptOrderNumber} and a.receipt_order_number like concat('%', #{receiptOrderNumber}, '%')
</if> </if>
<if test="receiptTaskNumber != null and receiptTaskNumber != ''"> <if test="receiptTaskNumber != null and receiptTaskNumber != ''">
and a.receipt_task_number = #{receiptTaskNumber} and a.receipt_task_number = #{receiptTaskNumber}
</if> </if>
<if test="shelfOrderNumber != null and shelfOrderNumber != ''"> <if test="shelfOrderNumber != null and shelfOrderNumber != ''">
and a.shelf_order_number = #{shelfOrderNumber} and a.shelf_order_number like concat('%', #{shelfOrderNumber}, '%')
</if> </if>
<if test="status != null "> <if test="status != null ">
and a.status = #{status} and a.status = #{status}
@@ -93,6 +93,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="createTimeStart != null and createTimeStart != ''">
and date_format(a.create_time,'%Y-%m-%d') &gt;= #{createTimeStart}
</if>
<if test="createTimeEnd != null and createTimeEnd != ''">
and date_format(a.create_time,'%Y-%m-%d') &lt;= #{createTimeEnd}
</if>
<choose> <choose>
<when test="delFlag != null"> and a.del_flag = #{delFlag} </when> <when test="delFlag != null"> and a.del_flag = #{delFlag} </when>
<otherwise> and a.del_flag = 1 </otherwise> <otherwise> and a.del_flag = 1 </otherwise>
@@ -101,7 +107,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<sql id="joinStockReceiptOrderWhere"> <sql id="joinStockReceiptOrderWhere">
<if test="receiptOrderNumber != null and receiptOrderNumber != ''"> <if test="receiptOrderNumber != null and receiptOrderNumber != ''">
and c.receipt_order_number = #{receiptOrderNumber} and c.receipt_order_number like concat('%', #{receiptOrderNumber}, '%')
</if> </if>
</sql> </sql>