From a62bcf4338ba5af1d43e2ddb99be6247cbf2aee8 Mon Sep 17 00:00:00 2001
From: liuxy
Date: Tue, 25 Nov 2025 20:12:13 +0800
Subject: [PATCH] =?UTF-8?q?add=EF=BC=9A=E5=A2=9E=E5=8A=A0=E5=BA=93?=
=?UTF-8?q?=E5=8C=BA=E7=AD=96=E7=95=A5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../org/nl/config/SpringContextHolder.java | 6 ++
.../service/IStructattrService.java | 13 +++
.../mapper/MdPbStoragevehicleextMapper.xml | 24 +----
.../service/dto/StrategyStructParam.java | 4 +
.../service/impl/StructattrServiceImpl.java | 95 +++++++++++++++++++
.../service/dao/StSectStrategy.java | 2 +-
.../decisioner/impl/base/FIFORuleHandler.java | 31 +++---
.../impl/base/NearbyRuleHandler.java | 34 +++++++
.../service/util/tasks/EmpVehicleInTask.java | 20 ----
.../service/util/tasks/PdaPointTask.java | 13 ---
.../enums/IOSConstant.java | 48 ----------
.../warehouse_management/enums/IOSEnum.java | 31 ++----
.../service/IStIvtPieceBoxDtlService.java | 40 --------
.../service/dao/mapper/IOStorInvMapper.xml | 5 +-
.../dao/mapper/MdPbGroupplateMapper.xml | 3 +-
.../service/impl/OutBillServiceImpl.java | 88 ++++++++++-------
.../impl/RawAssistIStorServiceImpl.java | 46 ++++++---
.../impl/StIvtCheckmstServiceImpl.java | 6 +-
.../impl/StIvtPieceBoxDtlServiceImpl.java | 86 -----------------
.../service/impl/VehicleOutServiceImpl.java | 2 +-
.../main/resources/config/application-dev.yml | 4 +-
.../src/views/wms/basedata/group/AddDtl.vue | 12 +--
.../src/views/wms/basedata/group/index.vue | 20 ++--
.../wms/decision_manage/strategy/index.vue | 7 +-
.../src/views/wms/st/inbill/AddDtl.vue | 10 +-
.../src/views/wms/st/outbill/AddDialog.vue | 7 +-
.../views/wms/statement/structivt/index.vue | 3 -
27 files changed, 310 insertions(+), 350 deletions(-)
create mode 100644 wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/decision_manage/service/decisioner/impl/base/NearbyRuleHandler.java
delete mode 100644 wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/IStIvtPieceBoxDtlService.java
delete mode 100644 wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/warehouse_management/service/impl/StIvtPieceBoxDtlServiceImpl.java
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/config/SpringContextHolder.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/config/SpringContextHolder.java
index 3ca72c1..ab9c634 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/config/SpringContextHolder.java
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/config/SpringContextHolder.java
@@ -22,6 +22,7 @@ import org.springframework.context.ApplicationContextAware;
import org.springframework.core.env.Environment;
import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
/**
* @author Jie
@@ -154,4 +155,9 @@ public class SpringContextHolder implements ApplicationContextAware, DisposableB
}
SpringContextHolder.addCallback = false;
}
+
+ public static Map getBeansOfType(Class requiredType) {
+ assertContextInjected();
+ return applicationContext.getBeansOfType(requiredType);
+ }
}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/IStructattrService.java b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/IStructattrService.java
index 96db26e..c16dcb9 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/IStructattrService.java
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/IStructattrService.java
@@ -6,6 +6,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.nl.common.domain.query.PageQuery;
import org.nl.wms.basedata_manage.service.dao.Structattr;
+import org.nl.wms.basedata_manage.service.dto.MdPbStoragevehicleextDto;
+import org.nl.wms.basedata_manage.service.dto.StrategyStructMaterialVO;
+import org.nl.wms.basedata_manage.service.dto.StrategyStructParam;
import org.nl.wms.warehouse_management.service.dao.IOStorInv;
import org.springframework.data.domain.Pageable;
@@ -111,4 +114,14 @@ public interface IStructattrService extends IService {
*/
Structattr getByCode(String struct_code);
+ /**
+ * 入库规则
+ */
+ List inBoundSectDiv(StrategyStructParam param);
+
+ /**
+ * 出库规则
+ */
+ List outBoundSectDiv(StrategyStructParam param);
+
}
diff --git a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdPbStoragevehicleextMapper.xml b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdPbStoragevehicleextMapper.xml
index 5f1d562..9ac03ca 100644
--- a/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdPbStoragevehicleextMapper.xml
+++ b/wms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/basedata_manage/service/dao/mapper/MdPbStoragevehicleextMapper.xml
@@ -127,25 +127,12 @@
mater.material_id,
mater.material_code,
mater.material_name,
- mater.material_spec,
- late.quality_time,
- late.produce_time,
- late.quality_type,
- late.quality_type AS old_quality_type,
- late.bake_num,
- false AS edit,
- (
- CASE late.quality_type
- WHEN '1' THEN '待检'
- WHEN '2' THEN '合格'
- WHEN '3' THEN '不合格'
- END
- ) AS quality_name
+ mater.material_spec
FROM
md_pb_storagevehicleext ext
INNER JOIN st_ivt_structattr attr ON ext.storagevehicle_code = attr.storagevehicle_code
INNER JOIN md_me_materialbase mater ON mater.material_id = ext.material_id
- LEFT JOIN md_pb_groupplate late ON late.material_id = ext.material_id and late.pcsn = ext.pcsn and late.storagevehicle_code = ext.storagevehicle_code
+ LEFT JOIN md_pb_groupplate late ON late.material_id = ext.material_id and late.pcsn = ext.pcsn and late.vehicle_code = ext.storagevehicle_code
1 = 1
@@ -208,12 +195,11 @@
st.sect_name,
st.struct_id,
st.struct_code,
- st.struct_name,
- TIMESTAMPDIFF(DAY,CURDATE(),late.quality_time) AS quality_day
+ st.struct_name
FROM
md_pb_storagevehicleext ex
INNER JOIN st_ivt_structattr st on ex.storagevehicle_code = st.storagevehicle_code
- INNER JOIN md_pb_groupplate late on ex.storagevehicle_code = late.storagevehicle_code
+ INNER JOIN md_pb_groupplate late on ex.storagevehicle_code = late.vehicle_code
AND ex.material_id = late.material_id AND ex.pcsn = late.pcsn AND late.status = '2'
ex.material_id = #{material_id}
@@ -230,7 +216,7 @@
st.sect_id = #{sect_code}
- ORDER BY quality_day,ex.insert_time,ex.canuse_qty
+ ORDER BY ex.insert_time
- *
- * @author Liuxy
- * @since 2025-08-26
- */
-@Service
-public class StIvtPieceBoxDtlServiceImpl extends ServiceImpl implements IStIvtPieceBoxDtlService {
-
- /**
- * 仓位服务
- */
- @Autowired
- private IStructattrService iStructattrService;
-
- @Override
- public void insertDtl(PieceBoxMstDto dto) {
- List tableData = dto.getTableData();
- // 校验库区是否一致
- List attrList = iStructattrService.list(
- new QueryWrapper().lambda()
- .in(Structattr::getStruct_code, tableData.stream()
- .map(row -> row.getString("struct_code"))
- .collect(Collectors.toList())
- )
- );
- boolean is_like = attrList.stream()
- .allMatch(row -> row.getSect_code().equals(attrList.get(0).getSect_code()));
- if (!is_like) {
- throw new BadRequestException("拼箱库区不一致,不允许拼箱!");
- }
-
- // 需插入的明细记录
- List dtlList = new ArrayList<>();
- for (JSONObject json : tableData) {
- StIvtPieceBoxDtl dtlDao = new StIvtPieceBoxDtl();
- dtlDao.setId(IdUtil.getStringId());
- dtlDao.setPiece_id(dto.getId());
- dtlDao.setMaterial_id(json.getString("material_id"));
- dtlDao.setPcsn(json.getString("pcsn"));
- dtlDao.setVehicle_code(json.getString("storagevehicle_code"));
- dtlDao.setQty(json.getBigDecimal("qty"));
- dtlDao.setStruct_code(json.getString("struct_code"));
- dtlDao.setBill_status(IOSEnum.PIECE_DTL_STATUS.code("生成"));
- dtlList.add(dtlDao);
- }
- this.saveBatch(dtlList);
- }
-
- @Override
- public List queryPieceDtl(PieceBoxMstDto dto) {
- return this.baseMapper.queryPieceDtl(dto);
- }
-
- @Override
- public List getByMstId(String id) {
- return this.list(
- new QueryWrapper().lambda()
- .eq(StIvtPieceBoxDtl::getPiece_id, id)
- );
- }
-}
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 09c73c7..edfb7b0 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
@@ -79,7 +79,7 @@ public class VehicleOutServiceImpl implements VehicleOutService {
// 创建任务
JSONObject jsonTask = new JSONObject();
jsonTask.put("point_code1", structattr.getStruct_code());
- jsonTask.put("point_code2", IOSConstant.CZW_POINT);
+ jsonTask.put("point_code2", whereJson.getString("point_code"));
jsonTask.put("vehicle_code", structattr.getStoragevehicle_code());
String task_id = empVehicleOutTask.create(jsonTask);
}
diff --git a/wms/nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml b/wms/nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml
index 670ab45..edb7774 100644
--- a/wms/nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml
+++ b/wms/nladmin-system/nlsso-server/src/main/resources/config/application-dev.yml
@@ -8,12 +8,12 @@ nl:
# port: 3306
# username: root
# password: root
-# database: wms_base
+# database: huadongyiyao_wms
ip: 192.168.81.251
port: 3306
username: root
password: P@ssw0rd.
- database: wms2.0
+ database: huadongyiyao_wms
redis:
ip: 127.0.0.1
port: 6379
diff --git a/wms/nladmin-ui/src/views/wms/basedata/group/AddDtl.vue b/wms/nladmin-ui/src/views/wms/basedata/group/AddDtl.vue
index a82fc1a..b1a4767 100644
--- a/wms/nladmin-ui/src/views/wms/basedata/group/AddDtl.vue
+++ b/wms/nladmin-ui/src/views/wms/basedata/group/AddDtl.vue
@@ -32,8 +32,8 @@
-
-
+
+
@@ -187,7 +187,7 @@ export default {
handler(newValue, oldValue) {
this.dialogVisible = newValue
this.formMst = this.openParam
- this.formMst.storagevehicle_code = ''
+ this.formMst.vehicle_code = ''
this.formMst.pcsn = null
this.formMst.qty = 1
}
@@ -197,7 +197,7 @@ export default {
return {
formMst: {
group_id: null,
- storagevehicle_code: null,
+ vehicle_code: null,
material_id: null,
pcsn: null,
qty_unit_id: null,
@@ -225,7 +225,7 @@ export default {
material_code: [
{ required: true, message: '物料不能为空', trigger: 'blur' }
],
- storagevehicle_code: [
+ vehicle_code: [
{ required: true, message: '载具不能为空', trigger: 'blur' }
],
supp_code: [
@@ -263,7 +263,7 @@ export default {
})
},
copySave() {
- if (this.formMst.storagevehicle_code === '') {
+ if (this.formMst.vehicle_code === '') {
this.crud.notify('载具不能为空!', CRUD.NOTIFICATION_TYPE.INFO)
return
}
diff --git a/wms/nladmin-ui/src/views/wms/basedata/group/index.vue b/wms/nladmin-ui/src/views/wms/basedata/group/index.vue
index fadd7c1..ae09b04 100644
--- a/wms/nladmin-ui/src/views/wms/basedata/group/index.vue
+++ b/wms/nladmin-ui/src/views/wms/basedata/group/index.vue
@@ -112,8 +112,8 @@
-
-
+
+
@@ -232,7 +232,7 @@
@selection-change="crud.selectionChangeHandler"
>
-
+
@@ -240,12 +240,6 @@
-
-
-
-
-
-
@@ -285,7 +279,7 @@ import { getLodop } from '@/assets/js/lodop/LodopFuncs'
const defaultForm = {
group_id: null,
- storagevehicle_code: null,
+ vehicle_code: null,
material_id: null,
pcsn: null,
qty_unit_id: null,
@@ -338,7 +332,7 @@ export default {
material_code: [
{ required: true, message: '物料不能为空', trigger: 'blur' }
],
- storagevehicle_code: [
+ vehicle_code: [
{ required: true, message: '载具不能为空', trigger: 'blur' }
],
pcsn: [
@@ -379,9 +373,9 @@ export default {
})
},
checkVehicle(value) {
- crudGroup.checkVehicle({ 'storagevehicle_code': value }).then(row => {
+ crudGroup.checkVehicle({ 'vehicle_code': value }).then(row => {
}).catch(() => {
- this.form.storagevehicle_code = ''
+ this.form.vehicle_code = ''
})
},
formattStatus(row) {
diff --git a/wms/nladmin-ui/src/views/wms/decision_manage/strategy/index.vue b/wms/nladmin-ui/src/views/wms/decision_manage/strategy/index.vue
index d15b942..236b654 100644
--- a/wms/nladmin-ui/src/views/wms/decision_manage/strategy/index.vue
+++ b/wms/nladmin-ui/src/views/wms/decision_manage/strategy/index.vue
@@ -45,7 +45,7 @@
-
+
@@ -95,7 +95,7 @@ import pagination from '@crud/Pagination'
export default {
name: 'Strategy',
- dicts: [],
+ dicts: ['STRATEGY_TYPE'],
components: { pagination, crudOperation, rrOperation, udOperation, AddDialog },
mixins: [presenter(), header(), crud()],
cruds() {
@@ -130,6 +130,9 @@ export default {
format_is_used(is_used) {
return is_used==true
},
+ strateyType(row) {
+ return this.dict.label.STRATEGY_TYPE[row.strategy_type]
+ },
changeEnabled(data, val) {
let msg = '此操作将停用,是否继续!'
if (val !== '1') {
diff --git a/wms/nladmin-ui/src/views/wms/st/inbill/AddDtl.vue b/wms/nladmin-ui/src/views/wms/st/inbill/AddDtl.vue
index 1036027..60856ef 100644
--- a/wms/nladmin-ui/src/views/wms/st/inbill/AddDtl.vue
+++ b/wms/nladmin-ui/src/views/wms/st/inbill/AddDtl.vue
@@ -52,7 +52,7 @@
@selection-change="crud.selectionChangeHandler"
>
-
+
@@ -60,9 +60,6 @@
-
-
-
@@ -88,7 +85,7 @@ const start = new Date()
export default {
name: 'AddDtl',
components: { crudOperation, rrOperation, pagination, DateRangePicker },
- dicts: ['BOX_TYPE'],
+ dicts: [],
cruds() {
return CRUD({
title: '用户',
@@ -149,9 +146,6 @@ export default {
close() {
this.$emit('update:dialogShow', false)
},
- formattBoxType(row) {
- return this.dict.label.BOX_TYPE[row.box_type]
- },
submit() {
this.$emit('update:dialogShow', false)
this.rows = this.$refs.multipleTable.selection
diff --git a/wms/nladmin-ui/src/views/wms/st/outbill/AddDialog.vue b/wms/nladmin-ui/src/views/wms/st/outbill/AddDialog.vue
index cccba91..39bdb79 100644
--- a/wms/nladmin-ui/src/views/wms/st/outbill/AddDialog.vue
+++ b/wms/nladmin-ui/src/views/wms/st/outbill/AddDialog.vue
@@ -120,7 +120,7 @@
>
添加库内库存
-
添加生产工单
-
+ -->
@@ -163,7 +163,7 @@
-
+
@@ -178,7 +178,6 @@
-
diff --git a/wms/nladmin-ui/src/views/wms/statement/structivt/index.vue b/wms/nladmin-ui/src/views/wms/statement/structivt/index.vue
index 4e318f1..527c1b3 100644
--- a/wms/nladmin-ui/src/views/wms/statement/structivt/index.vue
+++ b/wms/nladmin-ui/src/views/wms/statement/structivt/index.vue
@@ -94,9 +94,6 @@
-
-
-