fix:测试接口优化
This commit is contained in:
@@ -11,6 +11,7 @@ import org.nl.gateway.voice.service.dto.MoveTaskRequest;
|
||||
import org.nl.gateway.voice.service.dto.OutboundTaskRequest;
|
||||
import org.nl.gateway.voice.service.dto.QueryBoundRequest;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
@@ -39,29 +40,36 @@ public class VoiceTaskController {
|
||||
System.out.println("接收任务" + JSON.toJSONString(voiceDto));
|
||||
|
||||
String commandType = voiceDto.getString("commandType");
|
||||
JSONObject commandParam = voiceDto.getJSONObject("commandParam");
|
||||
|
||||
JSONObject result;
|
||||
switch (commandType) {
|
||||
case "taskIssue":
|
||||
String taskType = voiceDto.getString("taskType");
|
||||
final String taskType = commandParam.getString("taskType");
|
||||
switch (taskType) {
|
||||
case "inbound":
|
||||
InboundTaskRequest inboundRequest = JSON.toJavaObject(voiceDto, InboundTaskRequest.class);
|
||||
InboundTaskRequest inboundRequest = JSON.toJavaObject(commandParam, InboundTaskRequest.class);
|
||||
result = voiceTaskService.handleInboundTask(inboundRequest);
|
||||
break;
|
||||
case "move":
|
||||
MoveTaskRequest moveRequest = JSON.toJavaObject(voiceDto, MoveTaskRequest.class);
|
||||
MoveTaskRequest moveRequest = JSON.toJavaObject(commandParam, MoveTaskRequest.class);
|
||||
result = voiceTaskService.handleMoveTask(moveRequest);
|
||||
break;
|
||||
case "outbound":
|
||||
OutboundTaskRequest outboundRequest = JSON.toJavaObject(voiceDto, OutboundTaskRequest.class);
|
||||
OutboundTaskRequest outboundRequest = JSON.toJavaObject(commandParam, OutboundTaskRequest.class);
|
||||
result = voiceTaskService.handleOutboundTask(outboundRequest);
|
||||
break;
|
||||
default:
|
||||
throw new BadRequestException("未知的指令类型: " + commandType);
|
||||
|
||||
}
|
||||
break;
|
||||
case "InventoryQuery":
|
||||
QueryBoundRequest queryRequest = JSON.toJavaObject(voiceDto, QueryBoundRequest.class);
|
||||
QueryBoundRequest queryRequest = JSON.toJavaObject(commandParam, QueryBoundRequest.class);
|
||||
result = voiceTaskService.handleQueryTask(queryRequest);
|
||||
break;
|
||||
default:
|
||||
throw new BadRequestException("未知的指令类型: " + commandType);
|
||||
}
|
||||
return new ResponseEntity<>(result, HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -93,7 +93,7 @@ public class VoiceTaskService {
|
||||
|
||||
GroupPlate groupDao = GroupPlate.builder()
|
||||
.group_id(IdUtil.getStringId())
|
||||
.material_id(meMaterialbase.getMaterial_code())
|
||||
.material_id(meMaterialbase.getMaterial_id())
|
||||
.storagevehicle_code(one.getVehicle_code())
|
||||
.pcsn("111")
|
||||
.qty_unit_id(meMaterialbase.getQty_unit_id())
|
||||
@@ -134,6 +134,7 @@ public class VoiceTaskService {
|
||||
whereJson.put("point_code1", schBasePoint.getPoint_code());
|
||||
//确定终点
|
||||
whereJson.put("point_code2", attrDao.getStruct_code());
|
||||
whereJson.put("vehicle_code", one.getVehicle_code());
|
||||
//创建任务
|
||||
String taskId = applyTaskMap.get("VehicleInTask").create(whereJson);
|
||||
// 更新起点绑定id
|
||||
@@ -161,6 +162,7 @@ public class VoiceTaskService {
|
||||
whereJson.put("material_code", meMaterialbase.getMaterial_code());
|
||||
whereJson.put("stor_code", "BGK");
|
||||
whereJson.put("sect_code", "BG01");
|
||||
whereJson.put("siteCode", "CKD01");
|
||||
StrategyMater mater = new StrategyMater();
|
||||
mater.setQty(BigDecimal.valueOf(outboundTaskRequest.getQty()));
|
||||
mater.setMaterial_id(meMaterialbase.getMaterial_id());
|
||||
@@ -181,12 +183,12 @@ public class VoiceTaskService {
|
||||
//创建任务
|
||||
JSONObject taskForm = new JSONObject();
|
||||
taskForm.put("task_type", IOSConstant.VEHICLE_OUT_TASK);
|
||||
taskForm.put("config_code", IOSConstant.VEHICLE_IN_TASK);
|
||||
taskForm.put("config_code", IOSConstant.VEHICLE_OUT_TASK);
|
||||
taskForm.put("TaskCode", CodeUtil.getNewCode("TASK_CODE"));
|
||||
taskForm.put("PickingLocation", r.getStruct_code());
|
||||
taskForm.put("PlacedLocation", whereJson.getString("siteCode"));
|
||||
taskForm.put("vehicle_code", r.getStoragevehicle_code());
|
||||
applyTaskMap.get(IOSConstant.VEHICLE_OUT_TASK).create(whereJson);
|
||||
applyTaskMap.get(IOSConstant.VEHICLE_OUT_TASK).create(taskForm);
|
||||
});
|
||||
//更新组盘记录表
|
||||
Set<String> vehicleCodeSet = structList.stream()
|
||||
@@ -213,25 +215,27 @@ public class VoiceTaskService {
|
||||
return null;
|
||||
};
|
||||
public JSONObject handleMoveTask(MoveTaskRequest moveTaskRequest){
|
||||
String taskId = applyTaskMap.get("VehicleInTask").create((JSONObject) JSONObject.toJSON(moveTaskRequest));
|
||||
String taskId = applyTaskMap.get("StructMoveTask").create((JSONObject) JSONObject.toJSON(moveTaskRequest));
|
||||
return null;
|
||||
};
|
||||
|
||||
public JSONObject handleQueryTask(QueryBoundRequest queryBoundRequest){
|
||||
List<StructattrVechielDto> structCode = iStructattrService.collectVechicle(MapOf.of("struct_code", queryBoundRequest.getLocation(), "search", queryBoundRequest.getMaterial()));
|
||||
StringBuffer stringBuffer = new StringBuffer();
|
||||
stringBuffer.append("当前仓库库位")
|
||||
.append(queryBoundRequest.getLocation()).append("有物料");
|
||||
stringBuffer.append("当前仓库物料有物料");
|
||||
for (StructattrVechielDto vechielDtos : structCode) {
|
||||
stringBuffer.append(vechielDtos.getMaterial_name()).append(vechielDtos.getQty())
|
||||
.append(vechielDtos.getQty_unit_name());
|
||||
stringBuffer.append(vechielDtos.getMaterial_name()).append("共计")
|
||||
.append(vechielDtos.getQty())
|
||||
.append("个");
|
||||
}
|
||||
String text = stringBuffer.toString();
|
||||
try {
|
||||
voiceService.speechTts(text);
|
||||
// voiceService.speechTts(text);
|
||||
}catch (Exception ex){
|
||||
ex.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
JSONObject result = new JSONObject();
|
||||
result.put("has",text);
|
||||
return result ;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ public class StructMoveTask extends AbstractTask {
|
||||
task.setTask_id(IdUtil.getStringId());
|
||||
task.setTask_code(CodeUtil.getNewCode("TASK_CODE"));
|
||||
task.setTask_status(TaskStatus.CREATE.getCode());
|
||||
task.setConfig_code(json.getString("task_type"));
|
||||
task.setConfig_code(this.getClass().getSimpleName());
|
||||
task.setPoint_code1(moveTaskRequest.getLocationFrom());
|
||||
task.setPoint_code2(moveTaskRequest.getLocationTo());
|
||||
task.setVehicle_code(structattr.getStoragevehicle_code());
|
||||
|
||||
@@ -56,7 +56,7 @@ public class VehicleInTask extends AbstractTask {
|
||||
task.setTask_id(IdUtil.getStringId());
|
||||
task.setTask_code(CodeUtil.getNewCode("TASK_CODE"));
|
||||
task.setTask_status(TaskStatus.CREATE.getCode());
|
||||
task.setConfig_code(json.getString("config_code"));
|
||||
task.setConfig_code(this.getClass().getSimpleName());
|
||||
task.setPoint_code1(json.getString("point_code1"));
|
||||
task.setPoint_code2(json.getString("point_code2"));
|
||||
task.setVehicle_code(json.getString("vehicle_code"));
|
||||
|
||||
@@ -4,12 +4,18 @@ import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.common.utils.CodeUtil;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.common.utils.IdUtil;;
|
||||
import org.nl.wms.basedata_manage.enums.BaseDataEnum;
|
||||
import org.nl.wms.basedata_manage.service.IStructattrService;
|
||||
import org.nl.wms.basedata_manage.service.dao.Structattr;
|
||||
import org.nl.wms.sch_manage.enums.TaskStatus;
|
||||
import org.nl.wms.sch_manage.service.ISchBasePointService;
|
||||
import org.nl.wms.sch_manage.service.ISchBaseTaskService;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBasePoint;
|
||||
import org.nl.wms.sch_manage.service.dao.SchBaseTask;
|
||||
import org.nl.wms.sch_manage.service.util.AbstractTask;
|
||||
import org.nl.wms.sch_manage.service.util.AcsTaskDto;
|
||||
@@ -35,8 +41,17 @@ public class VehicleOutTask extends AbstractTask {
|
||||
@Autowired
|
||||
private ISchBaseTaskService taskService;
|
||||
|
||||
@Resource
|
||||
private IOutBillService outBillService;
|
||||
/**
|
||||
* 点位服务
|
||||
*/
|
||||
@Autowired
|
||||
private ISchBasePointService iSchBasePointService;
|
||||
|
||||
/**
|
||||
* 仓位服务
|
||||
*/
|
||||
@Autowired
|
||||
private IStructattrService iStructattrService;
|
||||
|
||||
@Resource
|
||||
private IOStorInvDisMapper ioStorInvDisMapper;
|
||||
@@ -45,9 +60,9 @@ public class VehicleOutTask extends AbstractTask {
|
||||
public String create(JSONObject json) {
|
||||
SchBaseTask task = new SchBaseTask();
|
||||
task.setTask_id(IdUtil.getStringId());
|
||||
task.setTask_code(json.getString("TaskCode"));
|
||||
task.setTask_code(CodeUtil.getNewCode("TASK_CODE"));
|
||||
task.setTask_status(TaskStatus.CREATE.getCode());
|
||||
task.setConfig_code(json.getString("task_type"));
|
||||
task.setConfig_code(this.getClass().getSimpleName());
|
||||
task.setPoint_code1(json.getString("PickingLocation"));
|
||||
task.setPoint_code2(json.getString("PlacedLocation"));
|
||||
task.setVehicle_code(json.getString("vehicle_code"));
|
||||
@@ -131,11 +146,23 @@ public class VehicleOutTask extends AbstractTask {
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void finishTask(SchBaseTask taskObj) {
|
||||
// 任务完成
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
iStructattrService.update(
|
||||
new UpdateWrapper<Structattr>().lambda()
|
||||
.eq(Structattr::getStruct_code, taskObj.getPoint_code1())
|
||||
.set(Structattr::getStoragevehicle_code, null)
|
||||
.set(Structattr::getTask_code, null)
|
||||
.set(Structattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定"))
|
||||
);
|
||||
// 更新终点
|
||||
iSchBasePointService.update(
|
||||
new UpdateWrapper<SchBasePoint>().lambda()
|
||||
.eq(SchBasePoint::getPoint_code, taskObj.getPoint_code2())
|
||||
.set(SchBasePoint::getVehicle_code, taskObj.getVehicle_code())
|
||||
);
|
||||
// 更新任务
|
||||
taskObj.setRemark("已完成");
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskService.updateById(taskObj);
|
||||
outBillService.taskFinish(taskObj);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
|
||||
Reference in New Issue
Block a user