This commit is contained in:
zc
2026-04-16 00:42:25 +08:00
parent eda31fcffd
commit f88d4d8fe7
19 changed files with 177 additions and 45 deletions

View File

@@ -72,4 +72,9 @@ public class MaterialInfoDO extends BaseDO {
*/
private String batch;
/**
* 标记
*/
private String mark;
}

View File

@@ -36,4 +36,18 @@ public class MaterialInfoQuery implements Serializable {
@Schema(description = "物料编码")
@Query(type = QueryType.EQ)
private String encoding;
/**
* 批次
*/
@Schema(description = "批次")
@Query(type = QueryType.EQ)
private String batch;
/**
* 标记
*/
@Schema(description = "标记")
@Query(type = QueryType.EQ)
private String mark;
}

View File

@@ -30,4 +30,12 @@ public class BatchImportRowReq implements Serializable {
@Length(max = 255, message = "批次长度不能超过 {max} 个字符")
private String batch;
/**
* 标记
*/
@Schema(description = "标记")
@NotBlank(message = "标记不能为空")
@Length(max = 25, message = "标记长度不能超过 {max} 个字符")
private String mark;
}

View File

@@ -92,4 +92,10 @@ public class MaterialInfoReq implements Serializable {
@Schema(description = "批次")
private String batch;
/**
* 标记
*/
@Schema(description = "标记")
private String mark;
}

View File

@@ -113,4 +113,11 @@ public class MaterialInfoResp extends BaseDetailResp {
@ExcelProperty(value = "批次", order = 7)
private String batch;
/**
* 标记
*/
@Schema(description = "标记")
@ExcelProperty(value = "标记", order = 8)
private String mark;
}

View File

@@ -543,6 +543,7 @@ public class MaterialInfoServiceImpl extends BaseServiceImpl<MaterialInfoMapper,
MaterialInfoDO materialInfoDO = new MaterialInfoDO();
materialInfoDO.setEncoding(row.getEncoding());
materialInfoDO.setBatch(row.getBatch());
materialInfoDO.setMark(row.getMark());
materialInfoDO.setUpdateUser(UserContextHolder.getUserId());
return materialInfoDO;
}).toList();

View File

@@ -52,4 +52,14 @@ public class WorkOrderDO extends BaseDO {
*/
private Integer totalCount;
/**
* 批次
*/
private String batch;
/**
* 标记号
*/
private String mark;
}

View File

@@ -56,4 +56,20 @@ public class WorkOrderInfoDO extends BaseDO {
* 计算重量
*/
private BigDecimal calculatedWeight;
/**
* 批次
*/
private String batch;
/**
* 标记号
*/
private String mark;
/**
* 称重数量
*/
private Integer weightQuantity;
}

View File

@@ -3,6 +3,7 @@ package top.wms.admin.weighManage.model.query;
import lombok.Data;
import io.swagger.v3.oas.annotations.media.Schema;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.io.Serializable;
@@ -56,11 +57,19 @@ public class WorkOrderQuery implements Serializable {
* 创建开始时间
*/
@Schema(description = "创建开始时间")
private Date startTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime startDate;
/**
* 创建结束时间
*/
@Schema(description = "创建结束时间")
private Date endTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endDate;
/**
* 批次
*/
private String batch;
}

View File

@@ -65,4 +65,9 @@ public class WorkOrderInfoReq implements Serializable {
@Schema(description = "抓拍的图片")
private String imgUrl;
/**
* 称重数量
*/
private Integer weightQuantity;
}

View File

@@ -52,4 +52,14 @@ public class WorkOrderReq implements Serializable {
*/
private String calculatedWeight;
/**
* 批次
*/
private String batch;
/**
* 标记号
*/
private String mark;
}

View File

@@ -69,4 +69,20 @@ public class WorkOrderInfoResp {
@Schema(description = "抓拍的图片")
private String imgUrl;
/**
* 批次
*/
@Schema(description = "批次")
private String batch;
/**
* 标记号
*/
private String mark;
/**
* 称重数量
*/
private Integer weightQuantity;
}

View File

@@ -108,4 +108,8 @@ public class WorkOrderResp extends BaseDetailResp {
@Schema(description = "批次")
private String batch;
/**
* 标记号
*/
private String mark;
}

View File

@@ -20,7 +20,6 @@ import top.wms.admin.material.mapper.MaterialInfoMapper;
import top.wms.admin.material.model.entity.MaterialInfoDO;
import top.wms.admin.materialType.mapper.MaterialTypeMapper;
import top.wms.admin.materialType.model.entity.MaterialTypeDO;
import top.wms.admin.system.service.ConfigService;
import top.wms.admin.weighManage.mapper.WorkOrderInfoMapper;
import top.wms.admin.weighManage.mapper.WorkOrderMapper;
import top.wms.admin.weighManage.model.entity.WorkOrderDO;
@@ -55,13 +54,17 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
private final MaterialTypeMapper materialTypeMapper;
private final ConfigService configService;
@Override
public PageResp<WorkOrderResp> page(WorkOrderQuery query, PageQuery pageQuery) {
QueryWrapper<WorkOrderDO> queryWrapper = new QueryWrapper<>();
queryWrapper.like(StrUtil.isNotBlank(query.getMaterialName()), "m.material_name", query.getMaterialName());
queryWrapper.eq(null != query.getOrderNo(), "w.order_no", query.getOrderNo());
queryWrapper.eq(StrUtil.isNotBlank(query.getBatch()), "w.batch", query.getBatch());
queryWrapper.eq(StrUtil.isNotBlank(query.getUserName()), "u.username", query.getUserName());
queryWrapper.eq(StrUtil.isNotBlank(query.getCarNo()), "u.card_no", query.getCarNo());
queryWrapper.eq(StrUtil.isNotBlank(query.getEncoding()), "m.encoding", query.getEncoding());
queryWrapper.ge(null != query.getStartDate(), "w.create_time", query.getStartDate());
queryWrapper.le(null != query.getEndDate(), "w.create_time", query.getEndDate());
this.sort(queryWrapper, pageQuery);
IPage<WorkOrderResp> page = baseMapper.selectWorkOrderPage(new Page<>(pageQuery.getPage(), pageQuery
@@ -78,9 +81,12 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
MaterialInfoDO materialInfoDO = materialInfoMapper.selectById(workOrderDO.getMaterialId());
workOrderResp.setMaterialName(materialInfoDO.getMaterialName());
workOrderResp.setEncoding(materialInfoDO.getEncoding());
workOrderResp.setBatch(materialInfoDO.getBatch());
}
List<WorkOrderInfoDO> infos = workOrderInfoMapper.selectList(new QueryWrapper<WorkOrderInfoDO>()
.eq("work_order_id", id));
if (CollUtil.isNotEmpty(infos)) {
workOrderResp.setWorkOrderInfos(BeanUtil.copyToList(infos, WorkOrderInfoResp.class));
}
return workOrderResp;
}
@@ -118,6 +124,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
.getUsername() + "-" + materialInfoDO.getMaterialName();
workOrder.setTitle(title);
workOrder.setMaterialId(req.getMaterialId());
workOrder.setBatch(materialInfoDO.getBatch());
workOrder.setMark(materialInfoDO.getMark());
workOrder.setTotalWeight(totalWeight);
workOrder.setTotalCount(totalCount);
workOrder.setTotalCalculatedWeight(materialInfoDO.getUnitWeight().multiply(BigDecimal.valueOf(totalCount)));
@@ -125,7 +133,11 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
//新增工单详情列表信息
List<WorkOrderInfoDO> workOrderInfoDOList = BeanUtil.copyToList(req.getWorkOrderInfos(), WorkOrderInfoDO.class);
workOrderInfoDOList.forEach(workOrderInfoDO -> workOrderInfoDO.setWorkOrderId(workOrder.getId()));
workOrderInfoDOList.forEach(workOrderInfoDO -> {
workOrderInfoDO.setWorkOrderId(workOrder.getId());
workOrderInfoDO.setBatch(materialInfoDO.getBatch());
workOrderInfoDO.setMark(materialInfoDO.getMark());
});
workOrderInfoMapper.insertBatch(workOrderInfoDOList);
return BeanUtil.copyProperties(workOrder, WorkOrderResp.class);
@@ -162,7 +174,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
if (ratio.compareTo(upFloatRatio) > 0) {
log.info("比值超过 {}%", upFloatRatio);
map.put("code", "502");
map.put("msg", "数量不足");
map.put("msg", "数量过多,请减少");
return map;
}
@@ -170,7 +182,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
if (ratio.compareTo(downFloatRatio) < 0) {
log.info("比值超过下限 {}%", downFloatRatio);
map.put("code", "501");
map.put("msg", "数量过多");
map.put("msg", "数量不足,请添加");
return map;
}

View File

@@ -78,7 +78,7 @@
</update>
<update id="updateBatchNull">
UPDATE sys_material_info SET batch = null
UPDATE sys_material_info SET batch = null, mark = null
</update>
<update id="updateBatchByCode">
@@ -93,6 +93,14 @@
</foreach>
ELSE batch
END,
mark = CASE
<foreach collection="list" item="item" separator="">
<if test="item.mark != null and item.mark != ''">
WHEN encoding = #{item.encoding} THEN #{item.mark}
</if>
</foreach>
ELSE mark
END,
update_user = CASE
<foreach collection="list" item="item" separator="">
<if test="item.updateUser != null">