fix: 修复一些bug

This commit is contained in:
2023-06-12 16:33:17 +08:00
parent 4d7cc13dd8
commit 3ceb2dab53
11 changed files with 226 additions and 21 deletions

View File

@@ -48,10 +48,10 @@ public class MdBaseMaterial implements Serializable {
private String remark;
@ApiModelProperty(value = "是否启用")
private Integer is_used;
private Boolean is_used;
@ApiModelProperty(value = "是否删除")
private Integer is_delete;
private Boolean is_delete;
@ApiModelProperty(value = "创建人")
private String create_id;

View File

@@ -46,6 +46,8 @@ public class PdmBdWorkorderServiceImpl extends ServiceImpl<PdmBdWorkorderMapper,
String nickName = SecurityUtils.getCurrentNickName();
String now = DateUtil.now();
// 点位编码和点位名称为父点位
entity.setWorkorder_id(IdUtil.getSnowflake(1, 1).nextIdStr());
entity.setWorkorder_code(CodeUtil.getNewCode("PDM_SHIFTORDER"));
entity.setCreate_id(currentUserId);

View File

@@ -49,6 +49,11 @@ public interface ISchBasePointService extends IService<SchBasePoint> {
*/
void changeUsed(JSONObject jsonObject);
/**
* 获取点位
* @param region
* @return
*/
List<SchBasePoint> getPointList(SchBasePoint region);
}

View File

@@ -54,6 +54,7 @@ public class SchBasePointServiceImpl extends ServiceImpl<SchBasePointMapper, Sch
String point_status = ObjectUtil.isNotEmpty(whereJson.get("point_status")) ? whereJson.get("point_status").toString() : null;
Boolean is_used = ObjectUtil.isNotEmpty(whereJson.get("is_used")) ? Boolean.valueOf(whereJson.get("is_used").toString()) : null;
Boolean lock_type = ObjectUtil.isNotEmpty(whereJson.get("lock_type")) ? Boolean.valueOf(whereJson.get("lock_type").toString()) : false;
Boolean parent_point = ObjectUtil.isNotEmpty(whereJson.get("parent_point")) ? Boolean.valueOf(whereJson.get("parent_point").toString()) : false;
LambdaQueryWrapper<SchBasePoint> lam = new LambdaQueryWrapper<>();
lam.like(ObjectUtil.isNotEmpty(blurry), SchBasePoint::getPoint_code, blurry)
.or(ObjectUtil.isNotEmpty(blurry), lam1 -> lam1.like(SchBasePoint::getPoint_name, blurry))
@@ -66,7 +67,8 @@ public class SchBasePointServiceImpl extends ServiceImpl<SchBasePointMapper, Sch
.or()
.eq(SchBasePoint::getIng_task_code, ""))
.and(lock_type, slam -> slam.isNotNull(SchBasePoint::getIng_task_code)
.ne(SchBasePoint::getIng_task_code, ""));
.ne(SchBasePoint::getIng_task_code, ""))
.apply(parent_point, "point_code = parent_point_code");
IPage<SchBasePoint> pages = new Page<>(page.getPage() + 1, page.getSize());
pointMapper.selectPage(pages, lam);
// 可以存放的载具类型
@@ -102,8 +104,10 @@ public class SchBasePointServiceImpl extends ServiceImpl<SchBasePointMapper, Sch
entity.setParent_point_code(entity.getPoint_code());
}
String can_vehicle_type = String.join(",", entity.getCan_vehicle_types());
entity.setCan_vehicle_type(can_vehicle_type);
if (ObjectUtil.isNotEmpty(entity.getCan_vehicle_types())) {
String can_vehicle_type = String.join(",", entity.getCan_vehicle_types());
entity.setCan_vehicle_type(can_vehicle_type);
}
String currentUserId = SecurityUtils.getCurrentUserId();
String nickName = SecurityUtils.getCurrentNickName();
@@ -130,6 +134,9 @@ public class SchBasePointServiceImpl extends ServiceImpl<SchBasePointMapper, Sch
entity.setUpdate_id(currentUserId);
entity.setUpdate_name(nickName);
entity.setUpdate_time(now);
// 获取region_name
SchBaseRegion baseRegion = regionMapper.selectById(entity.getRegion_code());
entity.setRegion_name(baseRegion.getRegion_name());
if (ObjectUtil.isNotEmpty(entity.getCan_vehicle_types())) {
String can_vehicle_type = String.join(",", entity.getCan_vehicle_types());
entity.setCan_vehicle_type(can_vehicle_type);

View File

@@ -174,6 +174,7 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
String type = ObjectUtil.isNotEmpty(param.getString("type")) ? param.getString("type") : null;
String vehicle_code = ObjectUtil.isNotEmpty(param.getString("vehicle_code")) ? param.getString("vehicle_code") : null;
String vehicle_qty = ObjectUtil.isNotEmpty(param.getString("vehicle_qty")) ? param.getString("vehicle_qty") : null;
String configCode = param.getString("config_code");
// 校验设备编码
if (ObjectUtil.isEmpty(device_code)) {
throw new BadRequestException("设备编码不能为空!");
@@ -188,7 +189,7 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
//...
//4、叫空载具
//...
AbstractTask task = taskFactory.getTask("HNMLTask");
AbstractTask task = taskFactory.getTask(configCode); //"HNMLTask"
// 执行创建任务
task.apply(param);
}

View File

@@ -160,7 +160,7 @@ public abstract class AbstractTask {
// 申请任务
SchBaseTask task = new SchBaseTask(); // 任务实体
String apply_point_code = param.getString("device_code");
String config_code = "HNMLTask";
String config_code = param.getString("config_code"); // "HNMLTask"
// 1、校验数据
SchBaseTaskconfig taskConfig = taskConfigService.getOne(new LambdaQueryWrapper<SchBaseTaskconfig>()
.eq(SchBaseTaskconfig::getConfig_code, config_code));
@@ -170,14 +170,14 @@ public abstract class AbstractTask {
.findUnFinishTasksByTaskConfig(taskConfig.getConfig_code(), apply_point_code, taskConfig.getTask_direction());
Assert.isFalse(unFinishTasksByTaskConfig.size() >= tcmn, "该点位申请的任务未完成数已超过上限,无法申请任务");
// 获取设备
// 获取对接位点位对象
SchBasePoint pointObj = pointService.getOne(new LambdaQueryWrapper<SchBasePoint>().eq(SchBasePoint::getPoint_code, apply_point_code));
// 判断是否校验工单
if (taskConfig.getIs_check_workorder()) {
// 校验工单
// 根据设备的父点位编码找到工单设备
SchBasePoint one = pointService
.getOne(new LambdaQueryWrapper<SchBasePoint>().eq(SchBasePoint::getPoint_code, pointObj.getParent_point_code()));
// 根据对接位的父点位编码(设备)找到工单设备
SchBasePoint one = pointService.getOne(new LambdaQueryWrapper<SchBasePoint>()
.eq(SchBasePoint::getPoint_code, pointObj.getParent_point_code()));
// 查找当前设备、生产中、
PdmBdWorkorder workorder = workorderService.getOne(new LambdaQueryWrapper<PdmBdWorkorder>()
.eq(PdmBdWorkorder::getPoint_code, one.getPoint_code())
@@ -189,6 +189,11 @@ public abstract class AbstractTask {
// 设置任务数据
task.setVehicle_type(workorder.getVehicle_type());
}
// 校验是否需要自动agv
if (!pointObj.getIs_auto()) {
// 如果不需要自动,则不创建任务
return;
}
// 2、创建申请任务
task.setAcs_trace_id(param.getString("acs_trace_id"));
task.setConfig_code(config_code);