|
|
|
@ -16,6 +16,7 @@
|
|
|
|
|
*/ |
|
|
|
|
package com.logpm.warehouse.service.impl; |
|
|
|
|
|
|
|
|
|
import cn.hutool.log.Log; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
@ -308,6 +309,9 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
//先判定盘点任务是否已结束
|
|
|
|
|
//当前登录人选择的仓库
|
|
|
|
|
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse(); |
|
|
|
|
if(ObjectUtils.isNull(myCurrentWarehouse)){ |
|
|
|
|
return Resp.scanFail("请选择仓库!","请选择仓库!"); |
|
|
|
|
} |
|
|
|
|
verifyTask(taskSearchDTO.getTaskId(),myCurrentWarehouse.getId()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -334,12 +338,15 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
int taskInventory = getTaskInventory(taskSearchDTO.getTaskId(), collect.get(0), trayByTrayCode); |
|
|
|
|
switch (taskInventory){ |
|
|
|
|
case 0: |
|
|
|
|
return Resp.scanFail("没有盘点信息!","没有盘点信息!"); |
|
|
|
|
log.debug("全仓盘点"); |
|
|
|
|
//返回托盘信息
|
|
|
|
|
return getTrayInfo(trayByTrayCode.getId(),myCurrentWarehouse.getId(),trayByTrayCode.getPalletCode()); |
|
|
|
|
case 1: |
|
|
|
|
List<QuestDetailEntity> questDetailList = getQuestDetailList(taskSearchDTO,myCurrentWarehouse.getId(),trayByTrayCode.getId()); |
|
|
|
|
return R.data(getTaskTrayInfo(questDetailList)); |
|
|
|
|
case 2: |
|
|
|
|
return Resp.scanFail("托盘信息未找到!","托盘信息未找到!"); |
|
|
|
|
//返回托盘信息
|
|
|
|
|
return getTrayInfo(trayByTrayCode.getId(),myCurrentWarehouse.getId(),trayByTrayCode.getPalletCode()); |
|
|
|
|
case 3: |
|
|
|
|
return Resp.scanFail("无包件信息!","无包件信息!"); |
|
|
|
|
default: |
|
|
|
@ -359,6 +366,40 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//查询托盘信息
|
|
|
|
|
public R getTrayInfo(Long trayId,Long warehouseId, String taryCode){ |
|
|
|
|
//返回托盘信息
|
|
|
|
|
List<TaskTrayVO> trayVO = new ArrayList<>(); |
|
|
|
|
WarehouseTrayTypeEntity one = trayTypeService.getOne(Wrappers.<WarehouseTrayTypeEntity>query().lambda() |
|
|
|
|
.eq(WarehouseTrayTypeEntity::getTrayId, trayId) |
|
|
|
|
.eq(WarehouseTrayTypeEntity::getIsDeleted, 0) |
|
|
|
|
); |
|
|
|
|
TaskTrayVO taskTrayVO = new TaskTrayVO(); |
|
|
|
|
if(ObjectUtils.isNotNull(one)){ |
|
|
|
|
//判断是否在同一个仓库
|
|
|
|
|
if(one.getWarehouseId().equals(warehouseId)){ |
|
|
|
|
//是
|
|
|
|
|
taskTrayVO.setTrayId(trayId); |
|
|
|
|
taskTrayVO.setTrayCode(taryCode); |
|
|
|
|
taskTrayVO.setTotal(0); |
|
|
|
|
taskTrayVO.setUnTotal(0); |
|
|
|
|
taskTrayVO.setGoodsType(one.getType()); // 没有类型
|
|
|
|
|
}else{ |
|
|
|
|
//不是
|
|
|
|
|
return Resp.scanFail("此托盘不在当前仓库!","此托盘不在当前仓库!"); |
|
|
|
|
} |
|
|
|
|
}else{ |
|
|
|
|
//没有绑定可以使用
|
|
|
|
|
taskTrayVO.setTrayId(trayId); |
|
|
|
|
taskTrayVO.setTrayCode(taryCode); |
|
|
|
|
taskTrayVO.setTotal(0); |
|
|
|
|
taskTrayVO.setUnTotal(0); |
|
|
|
|
taskTrayVO.setGoodsType("定制品"); // 定制品
|
|
|
|
|
} |
|
|
|
|
trayVO.add(taskTrayVO); |
|
|
|
|
return R.data(trayVO); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 出来托盘信息 |
|
|
|
@ -631,6 +672,10 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
} |
|
|
|
|
}else{ |
|
|
|
|
log.debug("托盘盘点:没有当前盘点任务!"); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|