rows = whereJson.getJSONArray("rows").toJavaList(JSONObject.class);
+ JSONObject group = rows.get(0);
+
+ JSONObject paramTask = new JSONObject();
+ paramTask.put("point_code1", whereJson.getString("point_code"));
+ paramTask.put("point_code2", IOSConstant.CZW_POINT);
+ paramTask.put("vehicle_code", group.getString("storagevehicle_code"));
+ paramTask.put("material_id", group.getString("material_id"));
+ paramTask.put("material_qty", group.getString("qty"));
+ kwzdInTask.create(paramTask);
+ }
+ return PdaResponse.requestOk();
+ }
+
+ /**
+ * 下发入库任务
+ *
+ * @param whereJson {
+ *
+ * }
+ */
+ private void createSmallBoxIn(JSONObject whereJson) {
+
+ List rows = whereJson.getJSONArray("rows").toJavaList(JSONObject.class);
+ JSONObject group = rows.get(0);
+
+ // 组织主表数据
+ Map jsonMst = new HashMap<>();
+ // 仓库默认焊材库
+ jsonMst.put("stor_id", IOSConstant.STOR_ID);
+ jsonMst.put("bill_status", IOSEnum.BILL_STATUS.code("生成"));
+ jsonMst.put("total_qty", group.getString("qty"));
+ jsonMst.put("detail_count", 1);
+ jsonMst.put("bill_type", whereJson.getString("bill_type"));
+ jsonMst.put("biz_date", DateUtil.now());
+
+ // 组织明细数据
+ ArrayList tableData = new ArrayList<>();
+ HashMap dtl = new HashMap<>();
+ dtl.put("storagevehicle_code", group.getString("storagevehicle_code"));
+ dtl.put("pcsn", group.getString("pcsn"));
+ dtl.put("qty_unit_id", group.getString("qty_unit_id"));
+ dtl.put("qty_unit_name", group.getString("qty_unit_name"));
+ dtl.put("qty", group.getString("qty"));
+ dtl.put("material_code", group.getString("material_code"));
+ dtl.put("material_name", group.getString("material_name"));
+ dtl.put("material_id", group.getString("material_id"));
+ dtl.put("plan_qty", group.getString("qty"));
+ // 调用新增
+ tableData.add(dtl);
+ jsonMst.put("tableData", tableData);
+ String iostorinv_id = iRawAssistIStorService.insertDtl(jsonMst);
+
+ // 调用分配
+ // 组织主数据
+ Map jsonDivMst = new HashMap<>();
+ jsonDivMst.put("checked", true);
+ jsonDivMst.put("sect_id", getSect_code(group.getString("quality_type")));
+ jsonDivMst.put("stor_id", IOSConstant.STOR_ID);
+ // 组织明细数据
+ IOStorInvDtl dtlDao = ioStorInvDtlMapper.selectOne(
+ new QueryWrapper().lambda()
+ .eq(IOStorInvDtl::getIostorinv_id, iostorinv_id)
+ );
+ // 查找分配明细
+ Map map = new HashMap<>();
+ map.put("iostorinvdtl_id", dtlDao.getIostorinvdtl_id());
+ List disDtl = iRawAssistIStorService.getDisDtl(map);
+ // 类型转换
+ ArrayList tableMater = new ArrayList<>();
+ disDtl.forEach(item -> {
+ tableMater.add(JSONObject.parseObject(JSONObject.toJSONString(item), LinkedHashMap.class));
+ });
+ jsonDivMst.put("tableMater", tableMater);
+ // 调用分配
+ iRawAssistIStorService.divStruct(jsonDivMst);
+
+ // 返回数据
+ JSONObject result = new JSONObject();
+ result.put("storagevehicle_code", disDtl.get(0).getStoragevehicle_code());
+ result.put("point_code", IOSConstant.CZW_POINT);
+ result.put("sect_id", disDtl.get(0).getSect_id());
+ result.put("iostorinv_id", disDtl.get(0).getIostorinv_id());
+ // 下发入库任务
+ sendTask(result);
+ }
+
+ /**
+ * 下发入库任务
+ *
+ * @param whereJson {
+ * storagevehicle_code:载具编码
+ * point_code:点位编码
+ * sect_id:库区
+ * iostorinv_id: id
+ * }
+ */
+ private void sendTask(JSONObject whereJson) {
+ // 组织主数据
+ Map jsonMst = new HashMap<>();
+ jsonMst.put("point_code", whereJson.getString("point_code"));
+ // 组织明细数据
+ IOStorInvDtl dtlDao = ioStorInvDtlMapper.selectOne(
+ new QueryWrapper().lambda()
+ .eq(IOStorInvDtl::getIostorinv_id, whereJson.getString("iostorinv_id"))
+ );
+ // 查找分配明细
+ Map map = new HashMap<>();
+ map.put("iostorinvdtl_id", dtlDao.getIostorinvdtl_id());
+ List disDtl = iRawAssistIStorService.getDisDtl(map);
+ // 类型转换
+ ArrayList tableMater = new ArrayList<>();
+ disDtl.forEach(item -> {
+ tableMater.add(JSONObject.parseObject(JSONObject.toJSONString(item), LinkedHashMap.class));
+ });
+ jsonMst.put("tableMater", tableMater);
+
+ iRawAssistIStorService.divPoint(jsonMst);
+ }
+
+ /**
+ * 根据品质类型获取库区
+ * @param quality_type 品质类型
+ * @return sect_id
+ */
+ private String getSect_code(String quality_type) {
+ String sect_code = "";
+ switch (quality_type) {
+ case "1" :
+ sect_code = IOSEnum.SECT_CODE.code("待检区");
+ break;
+ case "2" :
+ sect_code = IOSEnum.SECT_CODE.code("合格区");
+ break;
+ case "3" :
+ sect_code = IOSEnum.SECT_CODE.code("不合格区");
+ break;
+ }
+ Sectattr sectattr = sectattrMapper.selectOne(
+ new QueryWrapper().lambda()
+ .eq(Sectattr::getSect_code, sect_code)
+ );
+
+ return sectattr.getSect_id();
+ }
+}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/smallbox_management/service/impl/PdaSmallBoxPublicServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/smallbox_management/service/impl/PdaSmallBoxPublicServiceImpl.java
new file mode 100644
index 0000000..3436463
--- /dev/null
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/smallbox_management/service/impl/PdaSmallBoxPublicServiceImpl.java
@@ -0,0 +1,45 @@
+package org.nl.wms.pda.smallbox_management.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import org.nl.wms.pda.smallbox_management.service.PdaSmallBoxPublicService;
+import org.nl.wms.pda.util.PDAEnum;
+import org.nl.wms.pda.util.PdaResponse;
+import org.nl.wms.warehouse_management.enums.IOSEnum;
+import org.nl.wms.warehouse_management.service.dao.mapper.MdPbGroupplateMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ *
+ * 平板小料箱公共接口 实现类
+ *
+ *
+ * @author Liuxy
+ * @since 2025-09-03
+ */
+@Service
+public class PdaSmallBoxPublicServiceImpl implements PdaSmallBoxPublicService {
+
+ /**
+ * 组盘mapper服务
+ */
+ @Autowired
+ private MdPbGroupplateMapper mdPbGroupplateMapper;
+
+ @Override
+ public List queryGroupInfo(JSONObject whereJSON) {
+ return mdPbGroupplateMapper.pdaQueryGroupInfo(whereJSON);
+ }
+
+ @Override
+ public PdaResponse querySectCode() {
+ return PdaResponse.requestParamOk(PDAEnum.SECT_CODE.getDict());
+ }
+
+ @Override
+ public PdaResponse queryInBillType() {
+ return PdaResponse.requestParamOk(PDAEnum.IN_BILL_TYPE.getDict());
+ }
+}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/smallbox_management/service/impl/PdaVehicleInServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/smallbox_management/service/impl/PdaVehicleInServiceImpl.java
new file mode 100644
index 0000000..4c78229
--- /dev/null
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/smallbox_management/service/impl/PdaVehicleInServiceImpl.java
@@ -0,0 +1,35 @@
+package org.nl.wms.pda.smallbox_management.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import org.nl.wms.pda.smallbox_management.service.PdaVehicleInService;
+import org.nl.wms.pda.util.PdaResponse;
+import org.nl.wms.warehouse_management.service.VehicleInService;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+
+/**
+ *
+ * 平板空载具入库 实现类
+ *
+ *
+ * @author Liuxy
+ * @since 2025-09-02
+ */
+@Service
+public class PdaVehicleInServiceImpl implements PdaVehicleInService {
+
+ /**
+ * 空载具入库服务类
+ */
+ @Resource
+ private VehicleInService vehicleInService;
+
+ @Override
+ @Transactional
+ public PdaResponse vehicleIn(JSONObject whereJson) {
+ vehicleInService.create(whereJson);
+ return PdaResponse.requestOk();
+ }
+}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/smallbox_management/service/impl/PdaVehicleOutServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/smallbox_management/service/impl/PdaVehicleOutServiceImpl.java
new file mode 100644
index 0000000..eae31c6
--- /dev/null
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/smallbox_management/service/impl/PdaVehicleOutServiceImpl.java
@@ -0,0 +1,31 @@
+package org.nl.wms.pda.smallbox_management.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import org.nl.wms.pda.smallbox_management.service.PdaVehicleOutService;
+import org.nl.wms.pda.util.PdaResponse;
+import org.nl.wms.warehouse_management.service.VehicleOutService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ *
+ * 平板空载具出库 实现类
+ *
+ *
+ * @author Liuxy
+ * @since 2025-09-03
+ */
+@Service
+public class PdaVehicleOutServiceImpl implements PdaVehicleOutService {
+
+ @Autowired
+ private VehicleOutService vehicleOutService;
+
+ @Override
+ @Transactional
+ public PdaResponse vehicleOut(JSONObject whereJson) {
+ vehicleOutService.create(whereJson);
+ return PdaResponse.requestOk();
+ }
+}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/util/PDAEnum.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/util/PDAEnum.java
new file mode 100644
index 0000000..306a178
--- /dev/null
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pda/util/PDAEnum.java
@@ -0,0 +1,64 @@
+package org.nl.wms.pda.util;
+
+import com.alibaba.fastjson.JSONObject;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import org.apache.commons.lang3.StringUtils;
+import org.nl.common.exception.BadRequestException;
+import org.nl.common.utils.MapOf;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 手持枚举类
+ *
+ * @author Liuxy
+ * @Date 2025/05/23
+ */
+@AllArgsConstructor
+@Getter
+public enum PDAEnum {
+
+ // 入库业务类型
+ IN_BILL_TYPE(MapOf.of("收货入库","0001", "退料入库","0002", "其他入库", "0009"
+ )),
+
+ // 库区编码
+ SECT_CODE(MapOf.of("合格区", "HG01", "待检区", "DJ01", "不合格区", "BHG01")),
+
+ ;
+
+ private Map code;
+
+ public String code(String desc) {
+ String code = this.getCode().get(desc);
+ if (StringUtils.isNotEmpty(code)) {
+ return code;
+ }
+ throw new BadRequestException(this.name() + "对应类型" + desc + "未定义");
+ }
+
+ public String check(String code) {
+ for (Map.Entry entry : this.getCode().entrySet())
+ if (entry.getValue().equals("code")) {
+ return entry.getValue();
+ }
+ throw new BadRequestException(this.name() + "对应类型" + code + "未定义");
+ }
+
+ public List getDict() {
+ Map code = this.getCode();
+
+ List list = new ArrayList<>();
+ for (String key : code.keySet()) {
+ JSONObject json = new JSONObject();
+ json.put("label", key);
+ json.put("value", code.get(key));
+ list.add(json);
+ }
+
+ return list;
+ }
+}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/BackInTask.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/BackInTask.java
index 2783c55..516ca86 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/BackInTask.java
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/BackInTask.java
@@ -129,10 +129,7 @@ public class BackInTask extends AbstractTask {
if (ObjectUtil.isEmpty(taskObj)) {
throw new BadRequestException("该任务不存在");
}
- rawAssistIStorService.taskFinish(taskObj);
- taskObj.setTask_status(TaskStatus.FINISHED.getCode());
- taskObj.setRemark("已完成");
- taskService.updateById(taskObj);
+ this.finishTask(taskObj);
}
@Override
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/KwzdInTask.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/KwzdInTask.java
new file mode 100644
index 0000000..c2cf0eb
--- /dev/null
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch_manage/service/util/tasks/KwzdInTask.java
@@ -0,0 +1,223 @@
+package org.nl.wms.sch_manage.service.util.tasks;
+
+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.config.IdUtil;
+import org.nl.wms.basedata_manage.enums.BaseDataEnum;
+import org.nl.wms.pda.smallbox_management.service.PdaSmallBoxInService;
+import org.nl.wms.pda.smallbox_management.service.PdaSmallBoxPublicService;
+import org.nl.wms.sch_manage.enums.TaskEnum;
+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;
+import org.nl.wms.sch_manage.service.util.TaskType;
+import org.nl.wms.warehouse_management.enums.IOSConstant;
+import org.nl.wms.warehouse_management.enums.IOSEnum;
+import org.nl.wms.warehouse_management.service.IRawAssistIStorService;
+import org.nl.wms.warehouse_management.service.dao.IOStorInvDis;
+import org.nl.wms.warehouse_management.service.dao.mapper.IOStorInvDisMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ *
+ * 库外站点入库任务类
+ *
+ *
+ * @author Liuxy
+ * @since 2025-09-03
+ */
+@Component(value = "KwzdInTask")
+@TaskType("KwzdInTask")
+public class KwzdInTask extends AbstractTask {
+ @Autowired
+ private ISchBaseTaskService taskService;
+
+ /**
+ * 平板小料箱公共接口服务
+ */
+ @Resource
+ private PdaSmallBoxPublicService pdaSmallBoxPublicService;
+
+ /**
+ * 点位服务
+ */
+ @Autowired
+ private ISchBasePointService iSchBasePointService;
+
+ /**
+ * 小料箱入库服务
+ */
+ @Autowired
+ private PdaSmallBoxInService pdaSmallBoxInService;
+
+ @Override
+ public String create(JSONObject json) {
+ SchBaseTask task = new SchBaseTask();
+ task.setTask_id(IdUtil.getStringId());
+ task.setTask_code(CodeUtil.getNewCode("TASK_CODE"));
+ task.setTask_status(TaskStatus.CREATE.getCode());
+ task.setConfig_code(KwzdInTask.class.getSimpleName());
+ task.setPoint_code1(json.getString("point_code1"));
+ task.setPoint_code2(json.getString("point_code2"));
+ task.setVehicle_code(json.getString("vehicle_code"));
+ task.setMaterial_id(json.getString("material_id"));
+ task.setMaterial_qty(json.getBigDecimal("material_qty"));
+ task.setGroup_id(json.getString("group_id"));
+ task.setRequest_param(json.toString());
+ task.setTask_type(TaskEnum.TASK_TYPE.code("料箱"));
+ task.setPriority(json.getString("Priority"));
+ task.setCreate_id(SecurityUtils.getCurrentUserId());
+ task.setCreate_name(SecurityUtils.getCurrentNickName());
+ task.setCreate_time(DateUtil.now());
+ taskService.save(task);
+
+ // 下发任务
+ this.sendTaskOne(task.getTask_id());
+ return task.getTask_id();
+ }
+
+ @Override
+ public AcsTaskDto sendAcsParam(String taskId) {
+ SchBaseTask taskDao = taskService.getById(taskId);
+
+ // 组织下发给acs的数据
+ AcsTaskDto acsTaskDto = new AcsTaskDto();
+ acsTaskDto.setExt_task_id(taskDao.getTask_id());
+ acsTaskDto.setTask_code(taskDao.getTask_code());
+ acsTaskDto.setStart_device_code(taskDao.getPoint_code1());
+ acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
+ acsTaskDto.setPriority(taskDao.getPriority());
+ acsTaskDto.setVehicle_code(taskDao.getVehicle_code());
+ acsTaskDto.setTask_type("1");
+
+ return acsTaskDto;
+ }
+
+ @Override
+ protected void updateStatus(String task_code, TaskStatus status) {
+ // 校验任务
+ SchBaseTask taskObj = taskService.getByCode(task_code);
+ if (taskObj.getTask_status().equals(TaskStatus.FINISHED.getCode())) {
+ throw new BadRequestException("该任务已完成!");
+ }
+ if (taskObj.getTask_status().equals(TaskStatus.CANCELED.getCode())) {
+ throw new BadRequestException("该任务已取消!");
+ }
+ // 根据传来的类型去对任务进行操作
+ if (status.equals(TaskStatus.EXECUTING)) {
+ taskObj.setTask_status(TaskStatus.EXECUTING.getCode());
+ taskObj.setRemark("执行中");
+ taskService.updateById(taskObj);
+ }
+ if (status.equals(TaskStatus.FINISHED)) {
+ this.finishTask(taskObj);
+ }
+ if (status.equals(TaskStatus.CANCELED)) {
+ this.cancelTask(taskObj);
+ }
+
+ }
+
+ @Override
+ public void forceFinish(String task_code) {
+ SchBaseTask taskObj = taskService.getByCode(task_code);
+ if (ObjectUtil.isEmpty(taskObj)) {
+ throw new BadRequestException("该任务不存在");
+ }
+ this.finishTask(taskObj);
+ }
+
+ @Override
+ public void cancel(String task_code) {
+ SchBaseTask taskObj = taskService.getByCode(task_code);
+ if (ObjectUtil.isEmpty(taskObj)) {
+ throw new BadRequestException("该任务不存在");
+ }
+ if (!TaskStatus.CREATE.getCode().equals(taskObj.getTask_status())) {
+ throw new BadRequestException("任务状态必须为生成才能取消任务");
+ }
+ this.cancelTask(taskObj);
+
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public void finishTask(SchBaseTask taskObj) {
+ // 任务完成
+ taskObj.setTask_status(TaskStatus.FINISHED.getCode());
+ taskObj.setRemark("已完成");
+ taskService.updateById(taskObj);
+ // 更新起点
+ iSchBasePointService.update(
+ new UpdateWrapper().lambda()
+ .set(SchBasePoint::getVehicle_code, "")
+ .set(SchBasePoint::getIng_task_code, "")
+ .set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("空位"))
+ .eq(SchBasePoint::getPoint_code, taskObj.getPoint_code1())
+
+ );
+ // 更新终点
+ iSchBasePointService.update(
+ new UpdateWrapper().lambda()
+ .set(SchBasePoint::getVehicle_code, taskObj.getVehicle_code())
+ .set(SchBasePoint::getIng_task_code, taskObj.getTask_id())
+ .set(SchBasePoint::getPoint_status, IOSEnum.POINT_STATUS.code("有箱有料"))
+ .eq(SchBasePoint::getPoint_code, taskObj.getPoint_code2())
+
+ );
+ this.taskConfirm(taskObj.getTask_code());
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public void cancelTask(SchBaseTask taskObj) {
+ // 取消任务
+ taskService.update(new LambdaUpdateWrapper()
+ .set(SchBaseTask::getIs_delete, BaseDataEnum.IS_YES_NOT.code("是"))
+ .set(SchBaseTask::getTask_status, TaskStatus.CANCELED.getCode())
+ .set(SchBaseTask::getRemark, "已取消")
+ .eq(SchBaseTask::getTask_id, taskObj.getTask_id())
+ );
+
+ // 更新任务状态
+ taskObj.setTask_status(TaskStatus.CANCELED.getCode());
+ taskObj.setRemark("已取消");
+ taskService.updateById(taskObj);
+ }
+
+ @Override
+ public void taskConfirm(String task_code) {
+ SchBaseTask taskObj = taskService.getByCode(task_code);
+ // 查询组盘信息
+ JSONObject json = new JSONObject();
+ json.put("storagevehicle_code", taskObj.getVehicle_code());
+ List rows = pdaSmallBoxPublicService.queryGroupInfo(json);
+
+ if (ObjectUtil.isEmpty(rows)) {
+ throw new BadRequestException("此载具没有生成状态的组盘信息【"+taskObj.getVehicle_code()+"】");
+ }
+
+ // 组织入库数据
+ JSONObject jsonInParam = new JSONObject();
+ jsonInParam.put("bill_type",IOSEnum.IN_BILL_TYPE.code("收货入库"));
+ jsonInParam.put("point_code", IOSConstant.CZW_POINT);
+ jsonInParam.put("rows", rows);
+
+ // 调用平板服务
+ pdaSmallBoxInService.confirmIn(jsonInParam);
+ }
+}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/enums/IOSConstant.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/enums/IOSConstant.java
index a0df44c..aaee171 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/enums/IOSConstant.java
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/enums/IOSConstant.java
@@ -106,6 +106,11 @@ public class IOSConstant {
*/
public final static String CZW_POINT = "CZW01";
+ /**
+ * 仓库ID
+ */
+ public final static String STOR_ID = "1582991156504039424";
+
/**
* 物料id:焊丝(盘状)
*/
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/enums/IOSEnum.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/enums/IOSEnum.java
index 48081e8..4a99329 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/enums/IOSEnum.java
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/enums/IOSEnum.java
@@ -1,11 +1,14 @@
package org.nl.wms.warehouse_management.enums;
+import com.alibaba.fastjson.JSONObject;
import lombok.AllArgsConstructor;
import lombok.Getter;
import org.apache.commons.lang3.StringUtils;
import org.nl.common.exception.BadRequestException;
import org.nl.common.utils.MapOf;
+import java.util.ArrayList;
+import java.util.List;
import java.util.Map;
/**
@@ -133,4 +136,18 @@ public enum IOSEnum {
}
throw new BadRequestException(this.name() + "对应类型" + code + "未定义");
}
+
+ public List getDict() {
+ Map code = this.getCode();
+
+ List list = new ArrayList<>();
+ for (String key : code.keySet()) {
+ JSONObject json = new JSONObject();
+ json.put("label", key);
+ json.put("value", code.get(key));
+ list.add(json);
+ }
+
+ return list;
+ }
}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.java
index 86ca69d..8b9571f 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.java
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.java
@@ -36,4 +36,13 @@ public interface MdPbGroupplateMapper extends BaseMapper {
* @return IPage
*/
IPage queryAllByPage(Page page, @Param("param") Map whereJson);
+
+ /**
+ * 手持小料箱公共查询
+ * @param whereJson {
+ * storagevehicle_code: 载具编码
+ * }
+ * @return List
+ */
+ List pdaQueryGroupInfo(@Param("param") JSONObject whereJson);
}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.xml b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.xml
index 0ba8121..785a439 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.xml
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/dao/mapper/MdPbGroupplateMapper.xml
@@ -54,4 +54,29 @@
ORDER BY late.create_time Desc
+
+
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/VehicleInServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/VehicleInServiceImpl.java
index 1e162ed..c64c4a4 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/VehicleInServiceImpl.java
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/VehicleInServiceImpl.java
@@ -131,7 +131,7 @@ public class VehicleInServiceImpl implements VehicleInService {
}
// 根据库区查询对应库位
- Structattr structattr = iStructattrService.getOne(new LambdaQueryWrapper<>(Structattr.class)
+ List structattr = iStructattrService.list(new LambdaQueryWrapper<>(Structattr.class)
.eq(Structattr::getSect_code, whereJson.getString("sect_code"))
.eq(Structattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定"))
.eq(Structattr::getIs_delete, IOSConstant.IS_DELETE_NO)
@@ -143,6 +143,6 @@ public class VehicleInServiceImpl implements VehicleInService {
if (ObjectUtil.isEmpty(structattr)) {
throw new BadRequestException("未找到满足的仓位");
}
- return structattr;
+ return structattr.get(0);
}
}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/VehicleOutServiceImpl.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/VehicleOutServiceImpl.java
index 89088c7..d1d9649 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/VehicleOutServiceImpl.java
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/VehicleOutServiceImpl.java
@@ -19,6 +19,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import java.util.List;
import java.util.Map;
/**
@@ -88,7 +89,7 @@ public class VehicleOutServiceImpl implements VehicleOutService {
private Structattr autoDivStruct(JSONObject whereJson) {
// 根据库区查询对应载具
- Structattr structattr = iStructattrService.getOne(new LambdaQueryWrapper<>(Structattr.class)
+ List structattr = iStructattrService.list(new LambdaQueryWrapper<>(Structattr.class)
.eq(Structattr::getSect_code, whereJson.getString("sect_code"))
.eq(Structattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定"))
.eq(Structattr::getIs_delete, IOSConstant.IS_DELETE_NO)
@@ -101,6 +102,6 @@ public class VehicleOutServiceImpl implements VehicleOutService {
if (ObjectUtil.isEmpty(structattr)) {
throw new BadRequestException("未找到满足的仓位");
}
- return structattr;
+ return structattr.get(0);
}
}