diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/material/dao/MdMeMaterialbase.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/material/dao/MdMeMaterialbase.java
index fa52e5f3..e98f1d4e 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/material/dao/MdMeMaterialbase.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/material/dao/MdMeMaterialbase.java
@@ -1,6 +1,8 @@
package org.nl.wms.masterdata_manage.service.material.dao;
import java.math.BigDecimal;
+
+import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
@@ -26,6 +28,7 @@ public class MdMeMaterialbase implements Serializable {
/**
* 物料标识
*/
+ @TableId
private String material_id;
/**
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbBucketrecord.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbBucketrecord.java
index edee1353..a56b0198 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbBucketrecord.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbBucketrecord.java
@@ -3,8 +3,11 @@ package org.nl.wms.masterdata_manage.service.vehicle.dao;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
+
+import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
/**
*
@@ -15,6 +18,7 @@ import lombok.EqualsAndHashCode;
* @since 2023-05-10
*/
@Data
+@Builder
@EqualsAndHashCode(callSuper = false)
@TableName("md_pb_bucketrecord")
public class MdPbBucketrecord implements Serializable {
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpServiceImpl.java
index 7d72874b..72586305 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpServiceImpl.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpServiceImpl.java
@@ -19,8 +19,10 @@ import org.nl.common.utils.IdUtil;
import org.nl.common.utils.SecurityUtils;
import org.nl.modules.common.exception.BadRequestException;
import org.nl.modules.system.util.CodeUtil;
+import org.nl.wms.masterdata_manage.service.vehicle.IMdPbBucketrecordService;
import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleextService;
import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleinfoService;
+import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbBucketrecord;
import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleext;
import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleinfo;
import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattrService;
@@ -34,8 +36,6 @@ 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.CHANGE_BILL_TYPE_ENUM;
import org.nl.wms.storage_manage.IOSEnum;
-import org.nl.wms.storage_manage.basedata.service.record.dto.StIvtStructivtflowDto;
-import org.nl.wms.storage_manage.basedata.service.record.service.IStIvtStructivtflowService;
import org.nl.wms.storage_manage.productmanage.service.iostorInv.IStIvtIostorinvCpService;
import org.nl.wms.storage_manage.productmanage.service.iostorInv.IStIvtIostorinvdisCpService;
import org.nl.wms.storage_manage.productmanage.service.iostorInv.IStIvtIostorinvdisdtlCpService;
@@ -46,6 +46,8 @@ import org.nl.wms.storage_manage.productmanage.service.iostorInv.dao.StIvtIostor
import org.nl.wms.storage_manage.productmanage.service.iostorInv.dao.StIvtIostorinvdtlCp;
import org.nl.wms.storage_manage.productmanage.service.iostorInv.dao.mapper.StIvtIostorinvCpMapper;
import org.nl.wms.storage_manage.productmanage.service.iostorInv.dto.IostorInvQuery;
+import org.nl.wms.storage_manage.productmanage.service.structIvt.IStIvtStructivtCpService;
+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.springframework.beans.factory.annotation.Autowired;
@@ -94,20 +96,23 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl pageQuery = this.page(page.build(), query.build());
@@ -231,7 +236,7 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl disDtlList = iStIvtIostorinvdisdtlCpService.list(
+ new QueryWrapper().lambda()
+ .eq(StIvtIostorinvdisdtlCp::getIostorinv_id, whereJson.getString("iostorinv_id"))
+ );
+
+ for (StIvtIostorinvdisdtlCp disDtlDao : disDtlList) {
+ // 更新箱记录表
+ iMdPbBucketrecordService.update(
+ MdPbBucketrecord.builder()
+ .status("03") // TODO 暂时写死
+ .instor_optid(Long.getLong(SecurityUtils.getCurrentUserId()))
+ .instor_optname(SecurityUtils.getCurrentNickName())
+ .instor_time(DateUtil.now())
+ .build(),
+ new QueryWrapper().lambda()
+ .eq(MdPbBucketrecord::getBucketunique, disDtlDao.getBucketunique())
+ );
+ }
+
+ // 5.更新任务为完成、更新库存、解锁点位
List disDaoList = iostorinvdisCpService.list(
new QueryWrapper().lambda()
.eq(StIvtIostorinvdisCp::getIostorinv_id, whereJson.getString("iostorinv_id"))
);
- Map> collect = disDaoList.stream()
- .collect(Collectors.groupingBy(StIvtIostorinvdisCp::getTask_id));
-
- for (String task_id : collect.keySet()) {
+ for (StIvtIostorinvdisCp dao : disDaoList) {
// 1)更新任务为完成
- SchBaseTask taskDao = iSchBaseTaskService.getById(task_id);
- // 已完成则不更新
- if (StrUtil.equals(taskDao.getTask_id(), TaskStatusEnum.FINISHED.getCode())) continue;
+ SchBaseTask taskDao = iSchBaseTaskService.getById(dao.getTask_id());
- taskDao.setTask_status(TaskStatusEnum.FINISHED.getCode());
- iSchBaseTaskService.updateById(taskDao);
+ if (ObjectUtil.isNotEmpty(taskDao)) {
+ // 更新有任务分配
+ if (!StrUtil.equals(taskDao.getTask_id(), TaskStatusEnum.FINISHED.getCode())) {
+ taskDao.setTask_status(TaskStatusEnum.FINISHED.getCode());
+ iSchBaseTaskService.updateById(taskDao);
+ }
+ }
// 2)更新库存
- List disList = collect.get(task_id);
- for (StIvtIostorinvdisCp dao : disList) {
- // 根据托盘对应货位更新
- structivtflowService.recordStructivtFlow(
- StIvtStructivtflowDto.builder()
- .bill_code(mstDao.getBill_code())
- .change_type_scode(CHANGE_BILL_TYPE_ENUM.IOSTORINV_IN_SEND)
- .bill_table("st_ivt_iostorinv_cp")
- .material_id(dao.getMaterial_id())
- .pcsn(dao.getPcsn())
- .struct_code(dao.getStruct_code())
- .result_qty(dao.getReal_qty())
- .change_qty(dao.getReal_qty())
- .task_id(dao.getTask_id())
- .storagevehicle_code(dao.getStoragevehicle_code())
- .build()
- );
- }
+ iStIvtStructivtCpService.UpdateIvt(ivtDataParam(dao,ChangeIvtUtil.SUBWAREHOUSING_ADDIVT_QTY));
+
+ // 3)解锁终点
+ unLockNext(dao.getStruct_id(),dao.getStoragevehicle_code());
}
}
@@ -721,4 +738,34 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl list) {
if (!CollectionUtils.isEmpty(list)){
@@ -67,13 +73,18 @@ public class StIvtIostorinvdisdtlCpServiceImpl extends ServiceImpl().lambda()
+ .eq(MdMeMaterialbase::getMaterial_code, item.getString("material_code"))
+ );
+
StIvtIostorinvdisdtlCp disDtlDao = new StIvtIostorinvdisdtlCp()
.setIostorinv_id(json.getString("iostorinv_id"))
.setIostorinvdtl_id(json.getString("iostorinvdtl_id"))
.setIostorinvdis_id(json.getString("iostorinvdis_id"))
.setIostorinvdisdtl_id(IdUtil.getStringId())
.setSeq_no(new BigDecimal(1))
- .setMaterial_id(item.getString("material_id"))
+ .setMaterial_id(mataDao.getMaterial_id())
.setPcsn(item.getString("pcsn"))
.setQuality_scode("00") // TODO 暂时写
.setIvt_level("01") // TODO 暂时写
@@ -88,16 +99,17 @@ public class StIvtIostorinvdisdtlCpServiceImpl extends ServiceImpl().eq("bucketunique", item.getString("bucketunique"))
+ MdPbBucketrecord.builder()
+ .storagevehicle_id(Long.getLong(vehicleDao.getStoragevehicle_id()))
+ .status("02") // TODO 暂时写死
+ .storagevehicle_code(vehicleDao.getStoragevehicle_code())
+ .makeup_optid(Long.getLong(SecurityUtils.getCurrentUserId()))
+ .makeup_optname(SecurityUtils.getCurrentNickName())
+ .makeup_time(DateUtil.now())
+ .build(),
+ new QueryWrapper()
+ .eq("bucketunique", item.getString("bucketunique"))
);
});
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvdtlCpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvdtlCpServiceImpl.java
index 42adae4b..fd967cce 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvdtlCpServiceImpl.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvdtlCpServiceImpl.java
@@ -1,5 +1,6 @@
package org.nl.wms.storage_manage.productmanage.service.iostorInv.impl;
+import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -65,7 +66,9 @@ public class StIvtIostorinvdtlCpServiceImpl extends ServiceImpl {
+ /**
+ * 成品库存更新
+ * @param json
+ * {
+ * struct_id:仓位标识
+ * material_id:物料标识
+ * pcsn:批次
+ * quality_scode:品质类型
+ * ivt_level:库存等级
+ * change_qty:变动数量
+ * change_type:变动类型
+ * }
+ */
+ void UpdateIvt(JSONObject json);
+
}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/StIvtStructivtCp.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/StIvtStructivtCp.java
index 71c89e21..fb3a2e03 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/StIvtStructivtCp.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/StIvtStructivtCp.java
@@ -1,5 +1,6 @@
package org.nl.wms.storage_manage.productmanage.service.structIvt.dao;
+import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -25,6 +26,7 @@ public class StIvtStructivtCp implements Serializable {
/**
* 库存记录标识
*/
+ @TableId
private String stockrecord_id;
/**
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/impl/StIvtStructivtCpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/impl/StIvtStructivtCpServiceImpl.java
index 0c942fe7..284bfffb 100644
--- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/impl/StIvtStructivtCpServiceImpl.java
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/impl/StIvtStructivtCpServiceImpl.java
@@ -1,10 +1,26 @@
package org.nl.wms.storage_manage.productmanage.service.structIvt.impl;
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.NumberUtil;
+import cn.hutool.core.util.ObjectUtil;
+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.utils.IdUtil;
+import org.nl.modules.common.exception.BadRequestException;
+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.storage.service.storage.IStIvtStructattrService;
+import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr;
import org.nl.wms.storage_manage.productmanage.service.structIvt.IStIvtStructivtCpService;
import org.nl.wms.storage_manage.productmanage.service.structIvt.dao.StIvtStructivtCp;
import org.nl.wms.storage_manage.productmanage.service.structIvt.dao.mapper.StIvtStructivtCpMapper;
+import org.nl.wms.storage_manage.productmanage.util.ChangeIvtUtil;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
/**
*
@@ -17,4 +33,173 @@ import org.springframework.stereotype.Service;
@Service
public class StIvtStructivtCpServiceImpl extends ServiceImpl implements IStIvtStructivtCpService {
+ @Autowired
+ protected IStIvtStructattrService iStIvtStructattrService; // 仓位属性服务
+
+ @Autowired
+ protected IMdMeMaterialbaseService iMdMeMaterialbaseService; // 物料服务
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void UpdateIvt(JSONObject json) {
+ // 校验数据
+ checkParam(json);
+
+ String change_type = json.getString("change_type"); // 变动类型
+
+ switch (change_type) {
+ case ChangeIvtUtil.ADDWAREHOUSING_QTY:
+ // 加待入
+ addWrehousingQty(json);
+ break;
+ case ChangeIvtUtil.SUBWAREHOUSING_QTY:
+ // 减待入
+ subWrehousingQty(json);
+ break;
+ case ChangeIvtUtil.SUBWAREHOUSING_ADDIVT_QTY:
+ // 减待入、加库存、加可用
+ subWrehousingAddQty(json);
+ break;
+ default:
+ throw new BadRequestException("变动类型异常!");
+ }
+
+
+ }
+
+ /*
+ 加待入
+ */
+ private void addWrehousingQty(JSONObject json) {
+
+ // 查询是否有库存
+ StIvtStructivtCp ivtDao = this.getOne(
+ new QueryWrapper().lambda()
+ .eq(StIvtStructivtCp::getStruct_id, json.getString("struct_id"))
+ .eq(StIvtStructivtCp::getMaterial_id, json.getString("material_id"))
+ .eq(StIvtStructivtCp::getPcsn, json.getString("pcsn"))
+ );
+
+ if (ObjectUtil.isEmpty(ivtDao)) {
+ // 为空插入
+ StIvtStructattr attrDao = iStIvtStructattrService.getById(json.getString("struct_id"));
+
+ MdMeMaterialbase materDao = iMdMeMaterialbaseService.getById(json.getString("material_id"));
+
+ StIvtStructivtCp dao = new StIvtStructivtCp();
+ dao.setStockrecord_id(org.nl.common.utils.IdUtil.getStringId());
+ dao.setStruct_id(attrDao.getStruct_id());
+ dao.setStruct_code(attrDao.getStruct_code());
+ dao.setStruct_name(attrDao.getStruct_name());
+ dao.setMaterial_id(materDao.getMaterial_id());
+ dao.setQuality_scode(json.getString("quality_scode"));
+ dao.setIvt_level(json.getString("ivt_level"));
+ dao.setIs_active(true);
+ dao.setPcsn(json.getString("pcsn"));
+ dao.setCanuse_qty(BigDecimal.valueOf(0));
+ dao.setFrozen_qty(BigDecimal.valueOf(0));
+ dao.setIvt_qty(BigDecimal.valueOf(0));
+ dao.setWarehousing_qty(json.getBigDecimal("change_qty"));
+ dao.setQty_unit_id(materDao.getBase_unit_id());
+ this.save(dao);
+
+ } else {
+ // 更新待入数
+ ivtDao.setWarehousing_qty(NumberUtil.add(ivtDao.getWarehousing_qty(),json.getDoubleValue("change_qty")));
+ this.updateById(ivtDao);
+ }
+ }
+
+ /*
+ 减待入
+ */
+ private void subWrehousingQty(JSONObject json) {
+
+ // 查询是否有库存
+ StIvtStructivtCp ivtDao = this.getOne(
+ new QueryWrapper().lambda()
+ .eq(StIvtStructivtCp::getStruct_id, json.getString("struct_id"))
+ .eq(StIvtStructivtCp::getMaterial_id, json.getString("material_id"))
+ .eq(StIvtStructivtCp::getPcsn, json.getString("pcsn"))
+ );
+
+ if (ObjectUtil.isEmpty(ivtDao)) {
+ // 为空报错
+ throw new BadRequestException("库存不存在,请检查!");
+ } else {
+ // 判断库存是否异常
+ double change_qty = NumberUtil.sub(ivtDao.getWarehousing_qty(), json.getDoubleValue("change_qty")).doubleValue();
+
+ if (change_qty < 0) {
+ throw new BadRequestException("库存异常,请检查!");
+ } else if (change_qty == 0 && ivtDao.getCanuse_qty().doubleValue() == 0 &&
+ ivtDao.getFrozen_qty().doubleValue() == 0 && ivtDao.getIvt_qty().doubleValue() == 0) {
+ // 待入数、库存数、冻结数、可用数都为0时删除库存记录
+ this.removeById(ivtDao.getStockrecord_id());
+ } else {
+ ivtDao.setWarehousing_qty(BigDecimal.valueOf(change_qty));
+ this.updateById(ivtDao);
+ }
+ }
+ }
+
+ /*
+ 减待入、加库存、加可用
+ */
+ private void subWrehousingAddQty(JSONObject json) {
+ // 查询是否有库存
+ StIvtStructivtCp ivtDao = this.getOne(
+ new QueryWrapper().lambda()
+ .eq(StIvtStructivtCp::getStruct_id, json.getString("struct_id"))
+ .eq(StIvtStructivtCp::getMaterial_id, json.getString("material_id"))
+ .eq(StIvtStructivtCp::getPcsn, json.getString("pcsn"))
+ );
+
+ if (ObjectUtil.isEmpty(ivtDao)) {
+ throw new BadRequestException("库存不存在,请检查!");
+ } else {
+ double change_qty = NumberUtil.sub(ivtDao.getWarehousing_qty(), json.getDoubleValue("change_qty")).doubleValue();
+
+ // 判断待入数是否为负数
+ if (change_qty < 0) throw new BadRequestException("库存异常,请检查!");
+ // 减去待入
+ ivtDao.setWarehousing_qty(BigDecimal.valueOf(change_qty));
+ // 加库存
+ BigDecimal ivt_qty = NumberUtil.add(ivtDao.getIvt_qty(), json.getDoubleValue("change_qty"));
+ // 加可用
+ BigDecimal canuse_qty = NumberUtil.add(ivtDao.getCanuse_qty(), json.getDoubleValue("change_qty"));
+
+ ivtDao.setCanuse_qty(canuse_qty);
+ ivtDao.setIvt_qty(ivt_qty);
+ ivtDao.setInstorage_time(DateUtil.now());
+ this.updateById(ivtDao);
+ }
+ }
+
+ /*
+ 校验数据
+ */
+ private void checkParam(JSONObject json) {
+
+ if (ObjectUtil.isEmpty(json.getString("struct_id")))
+ throw new BadRequestException("更新库存失败:仓位不能为空!");
+
+ if (ObjectUtil.isEmpty(json.getString("material_id")))
+ throw new BadRequestException("更新库存失败:物料不能为空!");
+
+ if (ObjectUtil.isEmpty(json.getString("pcsn")))
+ throw new BadRequestException("更新库存失败:批次不能为空!");
+
+ if (ObjectUtil.isEmpty(json.getString("quality_scode")))
+ throw new BadRequestException("更新库存失败:品质类型不能为空!");
+
+ if (ObjectUtil.isEmpty(json.getString("ivt_level")))
+ throw new BadRequestException("更新库存失败:库存等级不能为空!");
+
+ if (ObjectUtil.isEmpty(json.getString("change_qty")))
+ throw new BadRequestException("更新库存失败:变动数量不能为空!");
+
+ if (ObjectUtil.isEmpty(json.getString("change_type")))
+ throw new BadRequestException("更新库存失败:变动类型不能为空!");
+ }
}
diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/ChangeIvtUtil.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/ChangeIvtUtil.java
new file mode 100644
index 00000000..1e196734
--- /dev/null
+++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/ChangeIvtUtil.java
@@ -0,0 +1,21 @@
+package org.nl.wms.storage_manage.productmanage.util;
+
+public class ChangeIvtUtil {
+
+ /*
+ * 加待入
+ */
+ public static final String ADDWAREHOUSING_QTY = "1";
+
+ /*
+ * 减待入
+ */
+ public static final String SUBWAREHOUSING_QTY = "2";
+
+ /*
+ * 减待入、加库存、加可用
+ */
+ public static final String SUBWAREHOUSING_ADDIVT_QTY = "3";
+
+}
+
diff --git a/mes/qd/src/views/wms/pub/StructDialog.vue b/mes/qd/src/views/wms/pub/StructDialog.vue
index 5ee7e394..e4164b9f 100644
--- a/mes/qd/src/views/wms/pub/StructDialog.vue
+++ b/mes/qd/src/views/wms/pub/StructDialog.vue
@@ -47,10 +47,10 @@
@select-all="onSelectAll"
>
-
-
-
-
+
+
+
+
@@ -66,20 +66,20 @@
import CRUD, { header, presenter } from '@crud/crud'
import rrOperation from '@crud/RR.operation'
import pagination from '@crud/Pagination'
-import crudRegion from '@/views/wms/scheduler_manage/region/region'
+import crudStructattr from '@/api/wms/basedata/st/structattr'
export default {
name: 'StructDialog',
components: { rrOperation, pagination },
cruds() {
return CRUD({
- title: '点位',
+ title: '仓位',
optShow: {},
- url: 'api/region/getPointQuery',
- idField: 'region_code',
- sort: 'region_code,desc',
+ url: 'api/structattr',
+ idField: 'struct_code',
+ sort: 'struct_code,ASC',
query: { search: '', is_lock: '1', lock_type: '', sect_id: '', stor_id: '' },
- crudMethod: { ...crudRegion }
+ crudMethod: { ...crudStructattr }
})
},
mixins: [presenter(), header()],
diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/AddDtl.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/AddDtl.vue
index 7ffabf69..78bb9632 100644
--- a/mes/qd/src/views/wms/storage_manage/product/productIn/AddDtl.vue
+++ b/mes/qd/src/views/wms/storage_manage/product/productIn/AddDtl.vue
@@ -104,7 +104,7 @@ export default {
cruds() {
return CRUD({
title: '用户',
- url: '/api/in/rawAssist/getBillDtl',
+ url: '/api/mdPbBucketrecord',
crudMethod: {},
optShow: {
reset: true
diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue
index 38604026..5063f875 100644
--- a/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue
+++ b/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue
@@ -208,6 +208,18 @@
+
+
+
+
+
@@ -285,6 +297,14 @@ export default {
}
},
methods: {
+ disabledIos(row) {
+ debugger
+ if (row.iostorinvdis_id === undefined) {
+ return false
+ } else {
+ return true
+ }
+ },
open() {
crudSectattr.getSect({ 'stor_id': this.storId }).then(res => {
this.sects = res.content
@@ -381,6 +401,9 @@ export default {
this.form.tableMater.splice(-1, 0, item)
}
},
+ deleteRow(index, rows) {
+ rows.splice(index, 1)
+ },
tableRowClassName({ row, rowIndex }) {
row.index = rowIndex
},
@@ -441,9 +464,14 @@ export default {
return
}
crudProductIn.confirmvehicle(this.form).then(res => {
- this.crud.notify('组盘成功!', CRUD.NOTIFICATION_TYPE.SUCCESS)
- this.form.vehicle_code = ''
- this.form.bucketunique = ''
+ crudProductIn.getIosInvDtl({ 'iostorinv_id': this.form.dtl_row.iostorinv_id }).then(res => {
+ this.form.vehicle_code = ''
+ this.form.bucketunique = ''
+ this.openParam = res
+ this.form.tableMater = []
+ this.dis_row = null
+ this.crud.notify('组盘成功!', CRUD.NOTIFICATION_TYPE.SUCCESS)
+ })
})
},
diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/ViewDialog.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/ViewDialog.vue
index 95aaa188..f426a84b 100644
--- a/mes/qd/src/views/wms/storage_manage/product/productIn/ViewDialog.vue
+++ b/mes/qd/src/views/wms/storage_manage/product/productIn/ViewDialog.vue
@@ -235,13 +235,13 @@ export default {
this.currentDis = current
},
queryTableDtl() {
- crudProductIn.getIODtl({ 'iostorinv_id': this.form.iostorinv_id }).then(res => {
+ crudProductIn.getIosInvDtl({ 'iostorinv_id': this.form.iostorinv_id }).then(res => {
this.tableDtl = res
})
},
queryTableDdis() {
if (this.currentdtl !== null) {
- crudProductIn.getDisTask({ 'iostorinvdtl_id': this.currentdtl.iostorinvdtl_id }).then(res => {
+ crudProductIn.getIosInvDis({ "iostorinvdtl_id": this.currentdtl.iostorinvdtl_id }).then(res => {
this.tabledis = res
}).catch(() => {
this.tabledis = []
diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/index.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/index.vue
index 072d186d..9a8eda45 100644
--- a/mes/qd/src/views/wms/storage_manage/product/productIn/index.vue
+++ b/mes/qd/src/views/wms/storage_manage/product/productIn/index.vue
@@ -141,7 +141,7 @@
>
分配
-
作业任务
-
+ -->