From 60058e963fe6233588aa0664d861daedabd70d89 Mon Sep 17 00:00:00 2001
From: liuxy
Date: Fri, 11 Aug 2023 18:56:01 +0800
Subject: [PATCH] =?UTF-8?q?rev=EF=BC=9A1.=E6=B5=B7=E6=9F=94=E5=8D=8A?=
=?UTF-8?q?=E6=88=90=E5=93=81acs=E4=B8=8Emes=E6=8E=A5=E5=8F=A3=202.?=
=?UTF-8?q?=E5=8D=8A=E6=88=90=E5=93=81=E3=80=81=E6=88=90=E5=93=81=E5=BA=93?=
=?UTF-8?q?=E5=AD=98=E5=A2=9E=E5=8A=A0=E5=8D=95=E6=8D=AE=E7=B1=BB=E5=9E=8B?=
=?UTF-8?q?=E5=AD=97=E6=AE=B5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/org/nl/common/enums/AcsTaskEnum.java | 4 +-
.../acs/rest/AcsToWmsController.java | 8 +
.../acs/service/AcsToWmsService.java | 13 +
.../acs/service/impl/AcsToWmsServiceImpl.java | 94 +++++-
.../org/nl/wms/storage_manage/IOSEnum.java | 6 +-
.../structIvt/dao/StIvtStructivtCp.java | 5 +
.../dao/mapper/StIvtStructivtCpMapper.xml | 1 +
.../impl/StIvtStructivtCpServiceImpl.java | 1 +
.../productmanage/util/RuleUtil.java | 6 +
.../util/impl/DivRuleCpServiceImpl.java | 15 +
.../storage_manage/semimanage/TASKEnum.java | 9 +
.../impl/StIvtIostorinvBcpServiceImpl.java | 1 +
.../structIvt/dao/StIvtStructivtBcp.java | 5 +
.../IStIvtIostorinvEmpBcpService.java | 47 +++
.../IStIvtIostorinvHrBcpInService.java | 10 +
.../IStIvtIostorinvOrderService.java | 16 +
.../iostorInv/dao/StIvtIostorinvOrder.java | 102 +++++++
.../dao/mapper/StIvtIostorinvOrderMapper.java | 17 ++
.../mapper/xml/StIvtIostorinvOrderMapper.xml | 4 +
.../impl/StIvtIostorinvEmpBcpServiceImpl.java | 286 ++++++++++++++++++
.../StIvtIostorinvHrBcpInServiceImpl.java | 73 +++++
.../impl/StIvtIostorinvOrderServiceImpl.java | 19 ++
.../java/org/nl/wms/storage_manage/stivt.xls | Bin 432128 -> 436224 bytes
.../product/productIvt/index.vue | 5 +
.../semiproduct/semiproductIvt/index.vue | 5 +
25 files changed, 745 insertions(+), 7 deletions(-)
create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/IStIvtIostorinvEmpBcpService.java
create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/IStIvtIostorinvOrderService.java
create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/StIvtIostorinvOrder.java
create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/mapper/StIvtIostorinvOrderMapper.java
create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/mapper/xml/StIvtIostorinvOrderMapper.xml
create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvEmpBcpServiceImpl.java
create mode 100644 mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvOrderServiceImpl.java
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java
index 99c52985..acce4100 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java
@@ -43,7 +43,9 @@ public enum AcsTaskEnum {
TASK_STRUCT_HR_IN("26","入库-海柔半成品-生产入库"),
TASK_STRUCT_HR_OUT("27","出库-海柔半成品-生产出库"),
TASK_STRUCT_HR_CHECK("28","海柔半成品-盘点"),
- TASK_STRUCT_CP_CHECK("13","-盘点"),
+ TASK_STRUCT_HR_EMP_IN("29","入库-海柔半成品-空托盘"),
+ TASK_STRUCT_HR_EMP_OUT("30","出库-海柔半成品-空托盘"),
+ TASK_STRUCT_CP_CHECK("13","成品-盘点"),
TASK_WASH_LACK("20","清洗机-缺料请求"),
TASK_WASH_EMP("21","清洗机-空框请求"),
TASK_WASH_FULL_AUTO("22","清洗机-满料请求自动"),//去半成品入库:参数不全也去异常处理位
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext_manage/acs/rest/AcsToWmsController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext_manage/acs/rest/AcsToWmsController.java
index 20472e0a..0fa7616e 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext_manage/acs/rest/AcsToWmsController.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/ext_manage/acs/rest/AcsToWmsController.java
@@ -120,6 +120,14 @@ public class AcsToWmsController {
return new ResponseEntity<>( HttpStatus.OK);
}
+ @PostMapping("/deviceApply")
+ @Log("海柔半成品任务申请")
+ //("海柔半成品任务申请")
+ @SaIgnore
+ public ResponseEntity
+ *
+ * @author generator
+ * @since 2023-08-01
+ */
+public interface IStIvtIostorinvEmpBcpService {
+
+ /**
+ * acs申请入空箱
+ * @param json {
+ * device_code: 设备
+ * barcode: 条码
+ * }
+ */
+ void InEmp(JSONObject json);
+
+ /**
+ * 入空托盘任务反馈
+ * @param form /
+ */
+ void taskOperateIn(JSONObject form);
+
+
+ /**
+ * acs申请出空箱
+ * @param json {
+ * device_code: 设备
+ * }
+ */
+ void OutEmp(JSONObject json);
+
+ /**
+ * 出空托盘任务反馈
+ * @param form /
+ */
+ void taskOperateOut(JSONObject form);
+
+}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/IStIvtIostorinvHrBcpInService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/IStIvtIostorinvHrBcpInService.java
index 4794ea8c..841f0727 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/IStIvtIostorinvHrBcpInService.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/IStIvtIostorinvHrBcpInService.java
@@ -59,4 +59,14 @@ public interface IStIvtIostorinvHrBcpInService extends IService getPdaAll(JSONObject form);
+ /**
+ * acs 申请入满箱任务
+ * @param /
+ * {
+ * device_code : 设备
+ * barcode : 条码
+ * }
+ */
+ void fullIn(JSONObject json);
+
}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/IStIvtIostorinvOrderService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/IStIvtIostorinvOrderService.java
new file mode 100644
index 00000000..2ac3d2d2
--- /dev/null
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/IStIvtIostorinvOrderService.java
@@ -0,0 +1,16 @@
+package org.nl.wms.storage_manage.semimanagehr.service.iostorInv;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.StIvtIostorinvOrder;
+
+/**
+ *
+ * 出入库顺序表 服务类
+ *
+ *
+ * @author generator
+ * @since 2023-08-01
+ */
+public interface IStIvtIostorinvOrderService extends IService {
+
+}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/StIvtIostorinvOrder.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/StIvtIostorinvOrder.java
new file mode 100644
index 00000000..224b7fa3
--- /dev/null
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/StIvtIostorinvOrder.java
@@ -0,0 +1,102 @@
+package org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ *
+ * 出入库顺序表
+ *
+ *
+ * @author generator
+ * @since 2023-08-01
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("st_ivt_iostorinv_order_bcp")
+public class StIvtIostorinvOrder implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 顺序标识
+ */
+ @TableId(value = "order_id")
+ private String order_id;
+
+ /**
+ * 车间
+ */
+ private String workshop_id;
+
+ /**
+ * 仓库标识
+ */
+ private String stor_id;
+
+ /**
+ * 输送设备
+ */
+ private String out_device;
+
+ /**
+ * 来源设备
+ */
+ private String in_device;
+
+ /**
+ * 条码
+ */
+ private String bar_code;
+
+ /**
+ * 业务日期
+ */
+ private String biz_date;
+
+ /**
+ * 物料标识
+ */
+ private String material_id;
+
+ /**
+ * 订单
+ */
+ private String sale_id;
+
+ /**
+ * 工单
+ */
+ private String workorder_id;
+
+ /**
+ * 重量
+ */
+ private BigDecimal weight;
+
+ /**
+ * 数量
+ */
+ private BigDecimal qty;
+
+ /**
+ * 出入类型
+ */
+ private String type;
+
+ /**
+ * 是否删除
+ */
+ private boolean is_delete;
+
+ /**
+ * 创建时间
+ */
+ private String create_time;
+
+}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/mapper/StIvtIostorinvOrderMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/mapper/StIvtIostorinvOrderMapper.java
new file mode 100644
index 00000000..d02d6f9e
--- /dev/null
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/mapper/StIvtIostorinvOrderMapper.java
@@ -0,0 +1,17 @@
+package org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.nl.common.anno.Datazhuazhua;
+import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.StIvtIostorinvOrder;
+
+/**
+ *
+ * 出入库顺序表 Mapper 接口
+ *
+ *
+ * @author generator
+ * @since 2023-05-10
+ */
+@Datazhuazhua
+public interface StIvtIostorinvOrderMapper extends BaseMapper {
+}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/mapper/xml/StIvtIostorinvOrderMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/mapper/xml/StIvtIostorinvOrderMapper.xml
new file mode 100644
index 00000000..29ec6dc7
--- /dev/null
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/dao/mapper/xml/StIvtIostorinvOrderMapper.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvEmpBcpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvEmpBcpServiceImpl.java
new file mode 100644
index 00000000..13ad6406
--- /dev/null
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvEmpBcpServiceImpl.java
@@ -0,0 +1,286 @@
+package org.nl.wms.storage_manage.semimanagehr.service.iostorInv.impl;
+
+import cn.hutool.core.map.MapUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.json.JSONUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import org.nl.common.enums.AcsTaskEnum;
+import org.nl.common.publish.BussEventMulticaster;
+import org.nl.common.publish.event.PointEvent;
+import org.nl.common.utils.IdUtil;
+import org.nl.common.utils.MapOf;
+import org.nl.modules.common.exception.BadRequestException;
+import org.nl.modules.wql.util.SpringContextHolder;
+import org.nl.wms.ext_manage.acs.service.WmsToAcsService;
+import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtSectattrService;
+import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService;
+import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtSectattr;
+import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr;
+import org.nl.wms.scheduler_manage.service.extendtask.manage.TaskStatusEnum;
+import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService;
+import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask;
+import org.nl.wms.storage_manage.IOSEnum;
+import org.nl.wms.storage_manage.productmanage.util.DivRuleCpService;
+import org.nl.wms.storage_manage.productmanage.util.RuleUtil;
+import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.IStIvtIostorinvEmpBcpService;
+import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.StIvtIostorinvHrBcp;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Map;
+import java.util.function.Consumer;
+
+/**
+ *
+ * 半成品空载具 服务实现类
+ *
+ *
+ * @author generator
+ * @since 2023-05-10
+ */
+@Service
+public class StIvtIostorinvEmpBcpServiceImpl implements IStIvtIostorinvEmpBcpService {
+
+ @Autowired
+ private IStIvtSectattrService sectattrService; // 库区服务
+
+ @Autowired
+ protected IStIvtStructattrService iStIvtStructattrService; // 仓位属性服务
+
+ @Autowired
+ private DivRuleCpService divRuleCpService; // 分配规则服务
+
+ @Autowired
+ private ISchBaseTaskService iSchBaseTaskService; // 任务表服务
+
+ @Override
+ @Transactional
+ public void InEmp(JSONObject json) {
+ /*
+ * 1.找一个空货位
+ * 2.生成任务
+ * 3.下发任务
+ * 4.锁住货位
+ */
+ String device_code = json.getString("device_code"); // 设备
+ String barcode = json.getString("barcode"); // 条码
+
+ if (ObjectUtil.isEmpty(device_code)) throw new BadRequestException("设备不能为空!");
+ if (ObjectUtil.isEmpty(barcode)) throw new BadRequestException("条码不能为空!");
+
+ // 1.找一个空货位
+ StIvtSectattr sect = sectattrService.getOne(
+ new QueryWrapper().lambda()
+ .eq(StIvtSectattr::getSect_name, "海柔半成品库区")
+ );
+
+ JSONObject jo = new JSONObject();
+ jo.put("sect_id", sect.getSect_id());
+ jo.put("stor_id", sect.getStor_id());
+ jo.put("rule_type", RuleUtil.PRODUCTION_IN_1);
+
+ // 调用服务
+ StIvtStructattr arrtDao = divRuleCpService.divRuleIn(jo);
+
+ if (ObjectUtil.isEmpty(arrtDao)) {
+ throw new BadRequestException("无可分配货位");
+ }
+
+ // 2.生成任务
+ SchBaseTask taskDao = new SchBaseTask();
+ PointEvent event = PointEvent.builder()
+ .type(AcsTaskEnum.TASK_STRUCT_HR_EMP_IN)
+ .acs_task_type("7")
+ .task_group_id(IdUtil.getStringId())
+ .point_code1(device_code)
+ .point_code3(barcode)
+ .vehicle_code(barcode)
+ .product_area("A3")
+ .callback((Consumer) taskDao::setTask_id)
+ .build();
+ BussEventMulticaster.Publish(event);
+
+ // 3.下发任务
+ sendTask(taskDao.getTask_id());
+
+ // 4.锁定货位
+ arrtDao.setLock_type(IOSEnum.LOCK_TYPE.code("其他锁"));
+ iStIvtStructattrService.updateById(arrtDao);
+ }
+
+ @Override
+ @Transactional
+ public void taskOperateIn(JSONObject form) {
+ String task_id = form.getString("task_id");
+ String status = form.getString("status");
+ SchBaseTask taskDao = iSchBaseTaskService.getById(task_id);
+
+ if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) {
+ /* 完成 */
+
+ // 1.更新任务为完成
+ taskDao.setTask_status(TaskStatusEnum.FINISHED.getCode());
+ iSchBaseTaskService.updateById(taskDao);
+
+ // 2.更新仓位:解锁仓位、更新载具、更新是否是空载具
+ iStIvtStructattrService.update(
+ new UpdateWrapper().lambda()
+ .set(StIvtStructattr::getStoragevehicle_code, taskDao.getVehicle_code())
+ .set(StIvtStructattr::getLock_type,IOSEnum.LOCK_TYPE.code("未锁定"))
+ .set(StIvtStructattr::getIs_emptyvehicle, true)
+ .eq(StIvtStructattr::getStruct_code, taskDao.getPoint_code3())
+ );
+
+ } else if (status.equals(AcsTaskEnum.STATUS_START.getCode())){
+ /* 执行中 */
+
+ // 1.更新任务为执行中
+ taskDao.setTask_status(TaskStatusEnum.EXECUTING.getCode());
+ iSchBaseTaskService.updateById(taskDao);
+
+ }else if (status.equals(AcsTaskEnum.STATUS_CANNEL.getCode())){
+ /* 取消 */
+
+ // 1.更新任务为取消
+ taskDao.setTask_status(TaskStatusEnum.CANCEL.getCode());
+ iSchBaseTaskService.updateById(taskDao);
+
+ // 2.更新仓位:解锁仓位
+ iStIvtStructattrService.update(
+ new UpdateWrapper().lambda()
+ .set(StIvtStructattr::getLock_type,IOSEnum.LOCK_TYPE.code("未锁定"))
+ .eq(StIvtStructattr::getStruct_code, taskDao.getPoint_code3())
+ );
+
+ }
+ }
+
+ @Override
+ @Transactional
+ public void OutEmp(JSONObject json) {
+ /*
+ * 1.找一个空载具的货位
+ * 2.生成任务
+ * 3.下发任务
+ */
+ String device_code = json.getString("device_code");
+
+ // 1.找一个空载具的货位
+ StIvtSectattr sect = sectattrService.getOne(
+ new QueryWrapper().lambda()
+ .eq(StIvtSectattr::getSect_name, "海柔半成品库区")
+ );
+
+ JSONObject jo = new JSONObject();
+ jo.put("sect_id", sect.getSect_id());
+ jo.put("stor_id", sect.getStor_id());
+ jo.put("rule_type", RuleUtil.PRODUCTION_EMP_OUT_1);
+
+ // 调用服务
+ StIvtStructattr arrtDao = divRuleCpService.divRuleIn(jo);
+
+ if (ObjectUtil.isEmpty(arrtDao)) {
+ throw new BadRequestException("没有可用的空托盘!");
+ }
+
+ // 2.生成任务
+ SchBaseTask taskDao = new SchBaseTask();
+ PointEvent event = PointEvent.builder()
+ .type(AcsTaskEnum.TASK_STRUCT_HR_EMP_OUT)
+ .acs_task_type("7")
+ .task_group_id(IdUtil.getStringId())
+ .point_code1(arrtDao.getStruct_code())
+ .point_code3(device_code)
+ .vehicle_code(arrtDao.getStoragevehicle_code())
+ .product_area("A3")
+ .callback((Consumer) taskDao::setTask_id)
+ .build();
+ BussEventMulticaster.Publish(event);
+
+ // 3.下发任务
+ sendTask(taskDao.getTask_id());
+
+ // 4.锁定货位
+ arrtDao.setLock_type(IOSEnum.LOCK_TYPE.code("其他锁"));
+ iStIvtStructattrService.updateById(arrtDao);
+
+ }
+
+ @Override
+ @Transactional
+ public void taskOperateOut(JSONObject form) {
+ String task_id = form.getString("task_id");
+ String status = form.getString("status");
+ SchBaseTask taskDao = iSchBaseTaskService.getById(task_id);
+
+ if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) {
+ /* 完成 */
+
+ // 1.更新任务为完成
+ taskDao.setTask_status(TaskStatusEnum.FINISHED.getCode());
+ iSchBaseTaskService.updateById(taskDao);
+
+ // 2.更新仓位:解锁仓位、更新载具、更新是否是空载具
+ iStIvtStructattrService.update(
+ new UpdateWrapper().lambda()
+ .set(StIvtStructattr::getStoragevehicle_code, "")
+ .set(StIvtStructattr::getLock_type,IOSEnum.LOCK_TYPE.code("未锁定"))
+ .set(StIvtStructattr::getIs_emptyvehicle, false)
+ .eq(StIvtStructattr::getStruct_code, taskDao.getPoint_code1())
+ );
+
+ } else if (status.equals(AcsTaskEnum.STATUS_START.getCode())){
+ /* 执行中 */
+
+ // 1.更新任务为执行中
+ taskDao.setTask_status(TaskStatusEnum.EXECUTING.getCode());
+ iSchBaseTaskService.updateById(taskDao);
+
+ }else if (status.equals(AcsTaskEnum.STATUS_CANNEL.getCode())){
+ /* 取消 */
+
+ // 1.更新任务为取消
+ taskDao.setTask_status(TaskStatusEnum.CANCEL.getCode());
+ iSchBaseTaskService.updateById(taskDao);
+
+ // 2.更新仓位:解锁仓位
+ iStIvtStructattrService.update(
+ new UpdateWrapper().lambda()
+ .set(StIvtStructattr::getLock_type,IOSEnum.LOCK_TYPE.code("未锁定"))
+ .eq(StIvtStructattr::getStruct_code, taskDao.getPoint_code3())
+ );
+
+ }
+ }
+
+ /**
+ * 下发任务
+ * @param task_id /
+ */
+ private void sendTask(String task_id) {
+
+ SchBaseTask taskDao = iSchBaseTaskService.getById(task_id);
+ JSONArray param = new JSONArray();
+ param.add(JSON.parseObject(JSONUtil.toJsonStr(taskDao)));
+
+ // 1.下发任务
+ WmsToAcsService bean = SpringContextHolder.getBean(WmsToAcsService.class);
+ Map result = bean.issueTaskToAcs3(param);
+
+ // 反馈失败报错
+ if (!ObjectUtil.equal(MapUtil.getStr(result, "status"),"200")) {
+ throw new BadRequestException("下发失败:"+MapUtil.getStr(result, "message"));
+ }
+
+ // 2.更新任务状态
+ taskDao.setTask_status(TaskStatusEnum.ISSUE.getCode());
+ iSchBaseTaskService.updateById(taskDao);
+ }
+
+
+}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpInServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpInServiceImpl.java
index 575c8c64..3a1b69a3 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpInServiceImpl.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpInServiceImpl.java
@@ -27,6 +27,8 @@ import org.nl.modules.common.exception.BadRequestException;
import org.nl.modules.system.util.CodeUtil;
import org.nl.modules.wql.util.SpringContextHolder;
import org.nl.wms.ext_manage.acs.service.WmsToAcsService;
+import org.nl.wms.masterdata_manage.service.master.IMdPbMeasureunitService;
+import org.nl.wms.masterdata_manage.service.master.dao.MdPbMeasureunit;
import org.nl.wms.masterdata_manage.service.material.IMdMeMaterialbaseService;
import org.nl.wms.masterdata_manage.service.material.dao.MdMeMaterialbase;
import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleextService;
@@ -49,7 +51,9 @@ import org.nl.wms.storage_manage.productmanage.util.ChangeIvtUtil;
import org.nl.wms.storage_manage.productmanage.util.DivRuleCpService;
import org.nl.wms.storage_manage.productmanage.util.RuleUtil;
import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.IStIvtIostorinvHrBcpInService;
+import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.IStIvtIostorinvOrderService;
import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.StIvtIostorinvHrBcp;
+import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.StIvtIostorinvOrder;
import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.mapper.StIvtIostorinvHrBcpMapper;
import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dto.HrBcpIostorInvQuery;
import org.nl.wms.storage_manage.semimanagehr.service.structIvt.IStIvtStructivtHrBcpService;
@@ -104,6 +108,15 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl page = PageHelper.startPage(pageQuery.getPage() + 1, pageQuery.getSize());
@@ -420,6 +433,66 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl().lambda()
+ .eq(StIvtIostorinvOrder::getIn_device, device_code)
+ .eq(StIvtIostorinvOrder::getBar_code, barcode)
+ .eq(StIvtIostorinvOrder::getType, IOSEnum.IO_TYPE.code("入库"))
+ .orderByDesc(StIvtIostorinvOrder::getCreate_time)
+ , false
+ );
+
+ if (ObjectUtil.isEmpty(orderDao)) throw new BadRequestException("此条码在系统中不存在记录");
+
+ // 2.创建入库单
+ JSONObject jsonMst = new JSONObject();
+ jsonMst.put("biz_date", DateUtil.today());
+ jsonMst.put("bill_type", IOSEnum.BILL_TYPE_HR.code("生产入库"));
+ jsonMst.put("remark", "" );
+ jsonMst.put("product_code", "A3" );
+ jsonMst.put("point_code", device_code );
+ jsonMst.put("stor_id", IOSEnum.STOR_CODE.code("海柔半成品"));
+ jsonMst.put("auto_send", "1"); // 是否自动创建任务并下发
+
+ JSONArray tableData = new JSONArray();
+
+ JSONObject jsonDtl = new JSONObject();
+ jsonDtl.put("material_id", orderDao.getMaterial_id());
+ jsonDtl.put("pcsn", "");
+ jsonDtl.put("plan_qty", orderDao.getWeight());
+ jsonDtl.put("quality_scode", IVTEnum.QUALITY_SCODE.code("合格品"));
+
+ 物料信息:
+ {
+ MdMeMaterialbase materDao = iMdMeMaterialbaseService.getById(orderDao.getMaterial_id());
+ MdPbMeasureunit untiDao = iMdPbMeasureunitService.getById(materDao.getBase_unit_id());
+
+ jsonDtl.put("base_unit_id", untiDao.getMeasure_unit_id());
+ jsonDtl.put("base_unit_name", untiDao.getUnit_name());
+ jsonDtl.put("unit_weight", materDao.getNet_weight());
+ jsonDtl.put("storagevehicle_code", barcode);
+ }
+ tableData.add(jsonDtl);
+ jsonMst.put("tableData",tableData);
+
+ // 调用创建方法并自动创建任务下发
+ create(jsonMst);
+ }
+
private void delTask(String task_id) {
StIvtIostorinvHrBcp mstDao = this.getOne(
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvOrderServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvOrderServiceImpl.java
new file mode 100644
index 00000000..1bf0b451
--- /dev/null
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvOrderServiceImpl.java
@@ -0,0 +1,19 @@
+package org.nl.wms.storage_manage.semimanagehr.service.iostorInv.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.IStIvtIostorinvOrderService;
+import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.StIvtIostorinvOrder;
+import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.mapper.StIvtIostorinvOrderMapper;
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ * 出入库顺序表 服务实现类
+ *
+ *
+ * @author generator
+ * @since 2023-05-10
+ */
+@Service
+public class StIvtIostorinvOrderServiceImpl extends ServiceImpl implements IStIvtIostorinvOrderService {
+}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/stivt.xls b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/stivt.xls
index 620e21b7103a3e10b5b87dfbea5febad857a9c93..ff3593955c606e4a24d744094316912e90150efd 100644
GIT binary patch
delta 14442
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
+
@@ -140,6 +141,7 @@ export default {
},
mixins: [presenter(), header(), crud()],
// 数据字典
+ dicts: ['ST_INV_CP_IN_TYPE'],
data() {
return {
height: document.documentElement.clientHeight - 180 + 'px;',
@@ -160,6 +162,9 @@ export default {
})
},
methods: {
+ formatBillType(row, column) {
+ return this.dict.label.ST_INV_CP_IN_TYPE[row.bill_type]
+ }
}
}
diff --git a/mes/qd/src/views/wms/storage_manage/semiproduct/semiproductIvt/index.vue b/mes/qd/src/views/wms/storage_manage/semiproduct/semiproductIvt/index.vue
index 29f91a1d..ddfb78e1 100644
--- a/mes/qd/src/views/wms/storage_manage/semiproduct/semiproductIvt/index.vue
+++ b/mes/qd/src/views/wms/storage_manage/semiproduct/semiproductIvt/index.vue
@@ -88,6 +88,7 @@
+
@@ -126,6 +127,7 @@ export default {
},
mixins: [presenter(), header(), crud()],
// 数据字典
+ dicts: ['ST_INV_BCP_IN_TYPE'],
data() {
return {
height: document.documentElement.clientHeight - 180 + 'px;',
@@ -151,6 +153,9 @@ export default {
this.crud.notify('导出成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
})
},
+ formatBillType(row, column) {
+ return this.dict.label.ST_INV_BCP_IN_TYPE[row.bill_type]
+ }
}
}