feat: 优化

dev_fifo_z
chenhc 6 months ago
parent fe4445e184
commit bbdc772231

@ -177,6 +177,7 @@ public class IoCodeTempController extends BaseController {
if (collectOrder == null) {
//查询原始单据查到为异常提示
IoCollectOrderOrigin ioCollectOrigin = collectOriginService.getOrderByCode(code);
if (ioCollectOrigin != null) {
//进行删除 重新匹配
collectOrderOriginService.remove(new LambdaQueryWrapper<IoCollectOrderOrigin>().eq(IoCollectOrderOrigin::getBillNo, ioCollectOrigin.getBillNo()));

@ -70,5 +70,14 @@ public class SysWorkplaceQueueViewResponse {
private Integer height;
private List<SysWorkplaceQueueViewResponse> sysWorkplaceQueues;
//产品名称
private String cpmctymc;
//当前库存
private Integer reCount;
//最大库存
private Integer maxDrugCount;
//预警数量
private Integer remindCount;
}

@ -229,23 +229,32 @@ public class SysWorkplaceQueueService extends ServiceImpl<SysWorkplaceQueueMappe
public List<SysWorkplaceQueueViewResponse> getListByFreightCodeView(String freightCode) {
List<SysWorkplaceQueueViewResponse> respList = new ArrayList<>();
List<SysWorkplaceQueueViewResponse> sortedRespList = new ArrayList<>();
List<SysWorkplaceQueueViewResponse> list = sysWorkplaceQueueMapper.getListByFreightCodeView(freightCode);
if (CollUtil.isNotEmpty(list)){
// 使用Stream API根据layerCode字段进行分组
Map<String, List<SysWorkplaceQueueViewResponse>> groupedByLayerCode = list.stream()
.collect(Collectors.groupingBy(SysWorkplaceQueueViewResponse::getLayerCode));
final int[] i = {1};
groupedByLayerCode.forEach((layerCode, responseList) -> {
SysWorkplaceQueueViewResponse sysWorkplaceQueueViewResponse = new SysWorkplaceQueueViewResponse();
sysWorkplaceQueueViewResponse.setSysWorkplaceQueues(responseList);
sysWorkplaceQueueViewResponse.setHeight(80);
sysWorkplaceQueueViewResponse.setRow(i[0]);
sysWorkplaceQueueViewResponse.setHeight(140);
sysWorkplaceQueueViewResponse.setRow(Integer.parseInt(layerCode.split("-")[1]));
sysWorkplaceQueueViewResponse.setLayerCode(layerCode);
respList.add(sysWorkplaceQueueViewResponse);
i[0]++;
});
}
return respList;
if (CollUtil.isNotEmpty(respList)) {
// 使用 Stream API 对列表进行排序
sortedRespList = respList.stream()
.sorted(Comparator.comparing(SysWorkplaceQueueViewResponse::getRow).reversed())
.collect(Collectors.toList());
}
return sortedRespList;
}
}

@ -206,9 +206,16 @@
<select id="getListByFreightCodeView" resultType="com.glxp.api.res.basic.SysWorkplaceQueueViewResponse">
select swq.id,swq.code,swq.name,swq.layerCode ,lg.`red` , lg.`orange` , lg.`blue` , lg.`green`
select swq.id,swq.code,swq.name,swq.layerCode ,lg.`red` , lg.`orange` , lg.`blue` , lg.`green`,bp.cpmctymc,swq.maxDrugCount
,swq.remindCount,ifnull(a.reCount,0) as reCount
from sys_workplace_queue swq
LEFT JOIn io_collect_led_group lg ON lg.mac = swq.mac
LEFT JOIn basic_udirel bu ON bu.id = swq.relId
LEFT JOIn basic_products bp on bu.uuid = bp.uuid and diType= 1
LEFT JOIn (
select sum(reCount) as reCount,workPlaceQueueCode from io_split_fifo_inv isfi
group by workPlaceQueueCode
) as a on a.workPlaceQueueCode = swq.code
<where>
<if test="freightCode != null and freightCode != ''">
AND swq.freightCode = #{freightCode}

Loading…
Cancel
Save