diff --git a/src/views/modules/automatedWarehouse/palletAssembly.vue b/src/views/modules/automatedWarehouse/palletAssembly.vue
index f1f9334..f877443 100644
--- a/src/views/modules/automatedWarehouse/palletAssembly.vue
+++ b/src/views/modules/automatedWarehouse/palletAssembly.vue
@@ -24,7 +24,10 @@
style="flex: 0.75;"
clearable
@keyup.enter.native="handlePalletScan"
- @focus.native="$event.target.setAttribute('inputmode', 'none')"
+ inputmode="none"
+ autocomplete="off"
+ autocorrect="off"
+ spellcheck="false"
ref="palletInput"
/>
@@ -833,7 +839,7 @@ export default {
this.scanCode = '';
this.currentSelectedPosition = '';
this.needRefreshOnClose = false;
-
+
// 初始化层数和位置网格 - rqrq
if (this.operationType === 'in') {
this.scanLayer = 1;
@@ -851,7 +857,7 @@ export default {
// 加载层数选项 - rqrq
loadLayerOptions() {
console.log('开始加载层数选项 - rqrq,maxLayer=' + this.currentMaxLayer);
-
+
getPalletDetails({
site: this.site,
palletId: this.palletCode,
@@ -860,13 +866,13 @@ export default {
}).then(({ data }) => {
if (data && data.code === 0) {
const details = data.details || [];
-
+
// 获取当前已有的最大层数 - rqrq
let maxExistingLayer = 0;
if (details.length > 0) {
maxExistingLayer = Math.max(...details.map(d => d.layer || 0));
}
-
+
// 根据maxLayer判断 - rqrq
if (this.currentMaxLayer === 0) {
// maxLayer=0:不限高,可选层数为已有最大层+1层 - rqrq
@@ -879,7 +885,7 @@ export default {
this.scanLayerOptions = Array.from({ length: this.currentMaxLayer }, (_, i) => i + 1);
console.log('限高模式 - maxLayer:' + this.currentMaxLayer + ' - rqrq');
}
-
+
// 加载位置网格 - rqrq
this.loadAvailablePositions();
} else {
@@ -894,11 +900,11 @@ export default {
// 加载可用位置 - rqrq
loadAvailablePositions() {
console.log('开始加载位置网格 - rqrq,layer=' + this.scanLayer);
-
+
// 设置加载状态,禁用所有位置 - rqrq
this.positionGridLoading = true;
this.availablePositions = []; // 清空可用位置,全部禁用
-
+
getAvailablePositionsForLayer({
site: this.site,
palletId: this.palletCode,
@@ -1010,10 +1016,10 @@ export default {
this.$message.success('扫进成功');
this.needRefreshOnClose = true;
this.scanCode = '';
-
+
// 重新加载层数选项(可能新增了层数) - rqrq
this.loadLayerOptions();
-
+
// 保持当前位置选中,聚焦到输入框 - rqrq
this.$refs.scanInput.focus();
} else {
diff --git a/src/views/modules/other-transaction/index.vue b/src/views/modules/other-transaction/index.vue
index c63e368..ed1b736 100644
--- a/src/views/modules/other-transaction/index.vue
+++ b/src/views/modules/other-transaction/index.vue
@@ -59,13 +59,6 @@ export default {
to: "receiveFromTransit",
disabled: false,
},
- {
- icon: "exchange",
- label: "移库",
- iconClass: "inventory-move",
- to: "inventory-move",
- disabled: false,
- },
/* {
icon: "records",
label: "单独CALL料",
@@ -210,10 +203,6 @@ export default {
box-shadow: 0 4px 8px rgba(245, 34, 45, 0.3);
}
-.menu-icon.inventory-move {
- background: linear-gradient(135deg, #722ed1 0%, #9254de 100%);
- box-shadow: 0 4px 8px rgba(114, 46, 209, 0.3);
-}
.menu-text {
font-size: 10px;
diff --git a/src/views/modules/other-transaction/inventory-move.vue b/src/views/modules/other-transaction/inventory-move.vue
index 9e4b38b..c88f0f2 100644
--- a/src/views/modules/other-transaction/inventory-move.vue
+++ b/src/views/modules/other-transaction/inventory-move.vue
@@ -15,6 +15,10 @@
prefix-icon="el-icon-search"
@keyup.enter.native="handleScan"
ref="scanInput"
+ inputmode="none"
+ autocomplete="off"
+ autocorrect="off"
+ spellcheck="false"
/>
0) {
const firstItemExpiryDate = this.scannedItems[0].expiredDate;
const currentExpiryDate = huInfo.expiredDate;
-
+
// 如果两个日期都存在且不相等,则不允许添加
if (firstItemExpiryDate && currentExpiryDate) {
const firstDate = new Date(firstItemExpiryDate).toDateString();
const currentDate = new Date(currentExpiryDate).toDateString();
-
+
if (firstDate !== currentDate) {
this.$message.error(`HandlingUnit的过期日期不一致,无法一起移库。已扫描的过期日期:${firstDate},当前扫描的过期日期:${currentDate}`);
return;
@@ -369,16 +373,16 @@ export default {
moveReason: '',
targetLocationId: ''
};
-
+
// 清空已扫描的物料列表
this.scannedItems = [];
-
+
// 清空扫描框
this.scanCode = '';
-
+
// 重置为添加模式
this.isRemoveMode = false;
-
+
// 让扫描框重新获得焦点
this.$nextTick(() => {
if (this.$refs.scanInput) {
@@ -556,7 +560,7 @@ export default {
/* 物料信息卡片 */
.material-info-card {
background: white;
- margin: 4px 16px;
+ margin: 4px 4px;
padding: 6px 20px;
border-radius: 8px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
@@ -627,7 +631,7 @@ export default {
justify-content: space-between;
padding: 6px 8px;
background: white;
- margin: 0 16px;
+ margin: 0 4px;
margin-top: 4px;
border-radius: 8px 8px 0 0;
border-bottom: 2px solid #17B3A3;
@@ -653,7 +657,7 @@ export default {
/* 标签列表 */
.label-list {
background: white;
- margin: 0 16px 12px;
+ margin: 0 4px 4px;
border-radius: 0 0 8px 8px;
overflow: hidden;
}
@@ -685,7 +689,7 @@ export default {
text-align: center;
color: #999;
background: white;
- margin: 0 16px;
+ margin: 0 4px;
border-radius: 8px;
}
@@ -761,7 +765,7 @@ export default {
}
.material-info-card {
- margin: 4px 12px;
+ margin: 4px 4px;
padding: 6px 16px;
}
diff --git a/src/views/modules/other-transaction/other-inbound.vue b/src/views/modules/other-transaction/other-inbound.vue
index a2ba5e4..54c0299 100644
--- a/src/views/modules/other-transaction/other-inbound.vue
+++ b/src/views/modules/other-transaction/other-inbound.vue
@@ -15,6 +15,10 @@
prefix-icon="el-icon-search"
@keyup.enter.native="handleScan"
ref="scanInput"
+ inputmode="none"
+ autocomplete="off"
+ autocorrect="off"
+ spellcheck="false"
/>
-
+
{{ label.unitId }}
@@ -81,26 +85,26 @@
{{ label.partNo }}
-
-
- {{ label.qty }} {{ label.unit || '个' }}
-
-
{{ label.partDesc }}
-
+
{{ label.batchNo }}
-
+
{{ label.locationId }}
+
+
+ {{ label.qty }} {{ label.unit}}
+
+
@@ -174,17 +178,17 @@ export default {
// 方法1:尝试滚动到底部操作按钮
const bottomActions = document.querySelector('.bottom-actions');
if (bottomActions) {
- bottomActions.scrollIntoView({
- behavior: 'smooth',
- block: 'end'
+ bottomActions.scrollIntoView({
+ behavior: 'smooth',
+ block: 'end'
});
return;
}
// 方法2:查找滚动容器并滚动
- const scrollContainer = document.querySelector('.pda-container > div[style*="overflow-y"]') ||
+ const scrollContainer = document.querySelector('.pda-container > div[style*="overflow-y"]') ||
document.querySelector('.pda-container > div:nth-child(2)');
-
+
if (scrollContainer) {
scrollContainer.scrollTo({
top: scrollContainer.scrollHeight,
@@ -493,7 +497,7 @@ export default {
/* 物料信息卡片 */
.material-info-card {
background: white;
- margin: 4px 16px;
+ margin: 4px 4px;
padding: 6px 20px;
border-radius: 8px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
@@ -564,7 +568,7 @@ export default {
justify-content: space-between;
padding: 6px 8px;
background: white;
- margin: 0 16px;
+ margin: 0 4px;
margin-top: 4px;
border-radius: 8px 8px 0 0;
border-bottom: 2px solid #17B3A3;
@@ -590,7 +594,7 @@ export default {
/* 标签列表 */
.label-list {
background: white;
- margin: 0 16px 12px;
+ margin: 0 4px 4px;
border-radius: 0 0 8px 8px;
overflow: hidden;
}
@@ -622,7 +626,7 @@ export default {
text-align: center;
color: #999;
background: white;
- margin: 0 16px;
+ margin: 0 4px;
border-radius: 8px;
}
@@ -677,7 +681,7 @@ export default {
}
.material-info-card {
- margin: 4px 12px;
+ margin: 4px 4px;
padding: 6px 16px;
}
diff --git a/src/views/modules/other-transaction/other-outbound.vue b/src/views/modules/other-transaction/other-outbound.vue
index 654a182..d96ce0b 100644
--- a/src/views/modules/other-transaction/other-outbound.vue
+++ b/src/views/modules/other-transaction/other-outbound.vue
@@ -15,6 +15,10 @@
prefix-icon="el-icon-search"
@keyup.enter.native="handleScan"
ref="scanInput"
+ inputmode="none"
+ autocomplete="off"
+ autocorrect="off"
+ spellcheck="false"
/>
-
+
{{ label.unitId }}
@@ -71,26 +75,26 @@
{{ label.partNo }}
-
-
- {{ label.qty }} {{ label.unit || '个' }}
-
-
{{ label.partDesc }}
-
+
{{ label.batchNo }}
-
+
{{ label.locationId }}
+
+
+ {{ label.qty }} {{ label.unit}}
+
+
@@ -297,7 +301,7 @@ export default {