opt: 任务完成点位载具类型的设置

This commit is contained in:
2026-02-06 18:02:49 +08:00
parent 64c7849213
commit 2e62f0f862
8 changed files with 74 additions and 11 deletions

View File

@@ -6,8 +6,10 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.nl.common.exception.BadRequestException;
import org.nl.wms.basedata_manage.service.IMdMeMaterialbaseService;
import org.nl.wms.basedata_manage.service.IMdPbStoragevehicleinfoService;
import org.nl.wms.basedata_manage.service.IStructattrService;
import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbase;
import org.nl.wms.basedata_manage.service.dao.Structattr;
import org.nl.wms.ext_manage.service.util.AcsResponse;
import org.nl.wms.pda_manage.sch_manage.service.PdaSchTaskService;
@@ -22,10 +24,14 @@ import org.nl.wms.sch_manage.service.util.TaskFactory;
import org.nl.wms.sch_manage.service.util.tasks.PdaPointTask;
import org.nl.wms.warehouse_manage.enums.IOSConstant;
import org.nl.wms.warehouse_manage.enums.IOSEnum;
import org.nl.wms.warehouse_manage.service.IMdPbGroupplateService;
import org.nl.wms.warehouse_manage.service.dao.GroupPlate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
* <p>
* 手持任务操作 实现类
@@ -60,6 +66,10 @@ public class PdaSchTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
*/
@Autowired
private PdaPointTask pdaPointTask;
@Autowired
private IMdPbGroupplateService groupplateService;
@Autowired
private IMdMeMaterialbaseService materialbaseService;
/**
* 任务工厂服务
@@ -85,7 +95,28 @@ public class PdaSchTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
@Override
public PdaResponse queryTask(JSONObject whereJson) {
return PdaResponse.requestParamOk(this.baseMapper.queryPdaTask(whereJson));
List<JSONObject> objectList = this.baseMapper.queryPdaTask(whereJson);
for (JSONObject object : objectList) {
// 最多两个托盘
String vehicleCode = object.getString("vehicle_code");
String vehicleCode2 = object.getString("vehicle_code2");
GroupPlate groupPlateInfoOne = groupplateService.getGroupPlateInfoOne(vehicleCode, false);
if (ObjectUtil.isEmpty(groupPlateInfoOne)) {
groupPlateInfoOne = groupplateService.getGroupPlateInfoOne(vehicleCode2, false);
}
if (ObjectUtil.isNotEmpty(groupPlateInfoOne)) {
MdMeMaterialbase materialbase = materialbaseService.getById(groupPlateInfoOne.getMaterial_id());
if (ObjectUtil.isNotEmpty(materialbase)) {
object.put("material_code", materialbase.getMaterial_code());
object.put("material_name", materialbase.getMaterial_name());
object.put("material_spec", materialbase.getMaterial_spec());
object.put("material_model", materialbase.getMaterial_model());
object.put("pcsn", groupPlateInfoOne.getPcsn());
object.put("qty", groupPlateInfoOne.getQty());
}
}
}
return PdaResponse.requestParamOk(objectList);
}
@Override

View File

@@ -26,6 +26,7 @@ public class PmFormDataDto implements Serializable {
* 主键
*/
private String id;
private String stor_id;
/**
* 编号
*/

View File

@@ -79,6 +79,7 @@
task_id,
task_code,
vehicle_code,
vehicle_code2,
point_code1,
point_code2,
point_code3,

View File

@@ -12,7 +12,9 @@ import org.nl.common.exception.BadRequestException;
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.IMdPbStoragevehicleinfoService;
import org.nl.wms.basedata_manage.service.IStructattrService;
import org.nl.wms.basedata_manage.service.dao.MdPbStoragevehicleinfo;
import org.nl.wms.basedata_manage.service.dao.Structattr;
import org.nl.wms.pm_manage.service.IPmFormDataService;
import org.nl.wms.pm_manage.service.dao.PmFormData;
@@ -75,6 +77,9 @@ public class InBillTask extends AbstractTask {
@Autowired
private IPmFormDataService iPmFormDataService;
@Autowired
private IMdPbStoragevehicleinfoService storagevehicleinfoService;
/**
* 仓位服务
@@ -181,11 +186,15 @@ public class InBillTask extends AbstractTask {
taskService.updateById(taskObj);
rawAssistIStorService.taskFinish(taskObj);
MdPbStoragevehicleinfo storagevehicleinfo = storagevehicleinfoService.getByCode(taskObj.getVehicle_code());
MdPbStoragevehicleinfo storagevehicleinfo2 = storagevehicleinfoService.getByCode(taskObj.getVehicle_code2());
//更改点位的托盘信息,空托盘的点位 2为空托盘放置点位
pointService.update(new LambdaUpdateWrapper<SchBasePoint>()
.set(SchBasePoint::getVehicle_code, taskObj.getVehicle_code())
.set(SchBasePoint::getPoint_status, "2")
.set(SchBasePoint::getVehicle_qty,1)
.set(SchBasePoint::getVehicle_type, storagevehicleinfo.getStoragevehicle_type())
.set(SchBasePoint::getUpdate_id, SecurityUtils.getCurrentUserId())
.set(SchBasePoint::getUpdate_name, SecurityUtils.getCurrentNickName())
.set(SchBasePoint::getUpdate_time, DateUtil.now())
@@ -195,6 +204,7 @@ public class InBillTask extends AbstractTask {
pointService.update(new LambdaUpdateWrapper<SchBasePoint>()
.set(SchBasePoint::getVehicle_code, null)
.set(SchBasePoint::getPoint_status, "1")
.set(SchBasePoint::getVehicle_type, "")
.set(SchBasePoint::getUpdate_id, SecurityUtils.getCurrentUserId())
.set(SchBasePoint::getUpdate_name, SecurityUtils.getCurrentNickName())
.set(SchBasePoint::getUpdate_time, DateUtil.now())

View File

@@ -48,4 +48,12 @@ public interface IMdPbGroupplateService extends IService<GroupPlate> {
* }
*/
void updateIvt(List<JSONObject> updateIvtList);
/**
* 根据载具号获取组盘信息
* @param vehicleCode 托盘码
* @param flag 找到多条是否抛出异常
* @return
*/
GroupPlate getGroupPlateInfoOne(String vehicleCode, boolean flag);
}

View File

@@ -1,11 +1,13 @@
package org.nl.wms.warehouse_manage.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.nl.common.domain.query.PageQuery;
import org.nl.wms.warehouse_manage.enums.IOSEnum;
import org.nl.wms.warehouse_manage.service.IMdPbGroupplateService;
import org.nl.wms.warehouse_manage.service.dao.GroupPlate;
import org.nl.wms.warehouse_manage.service.dao.mapper.MdPbGroupplateMapper;
@@ -68,4 +70,12 @@ public class MdPbGroupplateServiceImpl extends ServiceImpl<MdPbGroupplateMapper,
updateIvtUtils.updateIvt(json);
}
}
@Override
public GroupPlate getGroupPlateInfoOne(String vehicleCode, boolean flag) {
LambdaQueryWrapper<GroupPlate> lam = new LambdaQueryWrapper<>();
lam.eq(GroupPlate::getStoragevehicle_code, vehicleCode)
.ne(GroupPlate::getStatus, "03");
return this.getOne(lam, flag);
}
}