@@ -316,7 +315,7 @@ export default {
enterCoilNo: null,
currentCoilNo: null
},
- // 表单参数
+ // 表单参数
form: {
materialType: null,
enterCoilNo: null,
@@ -332,7 +331,7 @@ export default {
pageNum: 1,
pageSize: 10,
},
-
+
// 待操作列表相关
actionLoading: false,
pendingActionList: [],
@@ -356,7 +355,7 @@ export default {
})
return acidAction ? parseInt(acidAction.value) : null
},
- // 动态显示标签
+ // 动态显示标签
getItemLabel() {
if (this.form.materialType === '成品') {
return '产品类型';
@@ -381,7 +380,7 @@ export default {
created() {
// 立即加载物料列表(不依赖字典)
// this.getMaterialCoil()
-
+
// 尝试加载待操作列表(如果字典已加载)
// this.$nextTick(() => {
// if (this.acidRollingActionType) {
@@ -406,14 +405,14 @@ export default {
this.getMaterialCoil()
},
- // 取消操作
+ // 取消操作
cancel() {
this.form = {};
this.$refs.form.resetFields();
this.buttonLoading = false;
},
- // 处理材料类型变化
+ // 处理材料类型变化
handleMaterialTypeChange(value) {
// 清空物品选择
this.form.itemId = null;
@@ -424,7 +423,7 @@ export default {
this.form.itemType = 'raw_material';
}
},
-
+
// ========== 物料列表相关方法 ==========
/** 查询物料列表 */
getMaterialCoil() {
@@ -455,9 +454,9 @@ export default {
this.$message.error('未找到酸连轧工序操作类型,请检查字典配置')
return
}
-
+
this.$set(row, 'picking', true)
-
+
const pendingData = {
coilId: row.coilId,
currentCoilNo: row.currentCoilNo,
@@ -468,7 +467,7 @@ export default {
priority: 0, // 默认普通优先级
remark: `PC端领料创建-酸连轧工序`
}
-
+
addPendingAction(pendingData).then(response => {
if (response.code === 200) {
this.$message.success('领料成功,已创建待操作任务')
@@ -483,7 +482,7 @@ export default {
this.$set(row, 'picking', false)
})
},
-
+
// ========== 待操作列表相关方法 ==========
/** 查询待操作列表 */
getPendingAction() {
@@ -495,7 +494,7 @@ export default {
this.actionLoading = false
return
}
-
+
this.actionLoading = true
// 强制使用酸连轧工序的 actionType,忽略查询参数中的 actionType
const queryParams = {
@@ -533,20 +532,20 @@ export default {
/** 处理操作 - 跳转到对应页面 */
handleProcess(row) {
const actionType = parseInt(row.actionType)
-
+
// 特殊处理:发货和移库操作不需要跳转
if (actionType >= 400) {
this.$message.info('特殊操作序在对应页面完成')
return
}
-
+
// 根据操作类型跳转到不同页面
let path = ''
-
+
// 分条操作:100-199
if (actionType >= 100 && actionType <= 199) {
path = '/wms/split'
- }
+ }
// 合卷操作:200-299
else if (actionType == 200) {
path = '/wms/merge'
@@ -555,19 +554,19 @@ export default {
else {
path = '/wms/typing'
}
-
+
if (!path) {
this.$message.error('未知的操作类型: ' + row.actionType)
return
}
-
+
// 更新状态为处理中
startProcess(row.actionId).then(response => {
if (response.code !== 200) {
this.$message.error(response.msg || '更新状态失败')
return
}
-
+
// 跳转并传递参数
this.$router.push({
path: path,
@@ -592,7 +591,7 @@ export default {
}).then(() => {
this.$message.success('操作已取消')
this.getPendingAction()
- }).catch(() => {})
+ }).catch(() => { })
},
/** 删除待操作 */
handleDeleteAction(row) {
@@ -606,7 +605,7 @@ export default {
}).then(() => {
this.getPendingAction()
this.$message.success('删除成功')
- }).catch(() => {})
+ }).catch(() => { })
},
/** 获取物品名称 */
getItemName(item) {
@@ -656,6 +655,7 @@ export default {
.section-header {
border-bottom-color: #409eff;
}
+
.section-title {
color: #409eff;
}
@@ -665,6 +665,7 @@ export default {
.section-header {
border-bottom-color: #67c23a;
}
+
.section-title {
color: #67c23a;
}
@@ -686,25 +687,25 @@ export default {
max-height: calc(100vh - 320px);
overflow-y: auto;
padding-right: 4px;
-
+
&::-webkit-scrollbar {
width: 6px;
}
-
+
&::-webkit-scrollbar-track {
background: #f1f1f1;
border-radius: 3px;
}
-
+
&::-webkit-scrollbar-thumb {
background: #c1c1c1;
border-radius: 3px;
-
+
&:hover {
background: #a8a8a8;
}
}
-
+
@media (min-width: 1600px) {
grid-template-columns: repeat(4, 1fr);
}
@@ -715,14 +716,14 @@ export default {
text-align: center;
padding: 60px 20px;
color: #909399;
-
+
i {
font-size: 48px;
margin-bottom: 16px;
display: block;
color: #c0c4cc;
}
-
+
p {
margin: 0;
font-size: 14px;
@@ -738,51 +739,51 @@ export default {
flex-direction: column;
transition: all 0.3s ease;
height: 100%;
-
+
&:hover {
border-color: #409eff;
box-shadow: 0 2px 6px rgba(64, 158, 255, 0.12);
}
-
+
.card-header {
padding: 6px 8px;
border-bottom: 1px solid #e4e7ed;
background-color: #fafafa;
-
+
.header-left {
display: flex;
align-items: center;
gap: 6px;
}
-
+
.coil-no-tag {
font-weight: 600;
font-size: 11px;
padding: 2px 6px;
}
-
+
.material-type {
font-size: 11px;
color: #606266;
font-weight: 500;
}
-
+
.param-icon {
font-size: 13px;
color: #909399;
cursor: pointer;
transition: color 0.3s;
-
+
&:hover {
color: #409eff;
}
}
}
-
+
.card-body {
padding: 8px;
flex: 1;
-
+
.info-list {
.info-item {
display: flex;
@@ -790,11 +791,11 @@ export default {
margin-bottom: 4px;
font-size: 11px;
line-height: 1.4;
-
+
&:last-child {
margin-bottom: 0;
}
-
+
.info-label {
color: #909399;
white-space: nowrap;
@@ -802,7 +803,7 @@ export default {
min-width: 40px;
font-size: 11px;
}
-
+
.info-value {
color: #303133;
flex: 1;
@@ -814,14 +815,14 @@ export default {
}
}
}
-
+
.card-footer {
padding: 6px 8px;
border-top: 1px solid #e4e7ed;
background-color: #fafafa;
display: flex;
justify-content: center;
-
+
.action-btn {
width: 100%;
padding: 5px 10px;
@@ -839,32 +840,32 @@ export default {
flex-direction: column;
transition: all 0.3s ease;
height: 100%;
-
+
&:hover {
border-color: #67c23a;
box-shadow: 0 2px 8px rgba(103, 194, 58, 0.15);
}
-
+
&.urgent-card {
border-left: 4px solid #f56c6c;
background-color: #fef0f0;
-
+
&:hover {
border-color: #f56c6c;
box-shadow: 0 2px 8px rgba(245, 108, 108, 0.2);
}
}
-
+
&.important-card {
border-left: 4px solid #e6a23c;
background-color: #fdf6ec;
-
+
&:hover {
border-color: #e6a23c;
box-shadow: 0 2px 8px rgba(230, 162, 60, 0.2);
}
}
-
+
.card-header {
padding: 10px 12px;
border-bottom: 1px solid #e4e7ed;
@@ -872,41 +873,41 @@ export default {
display: flex;
justify-content: space-between;
align-items: center;
-
+
.coil-no-tag {
font-weight: 600;
font-size: 12px;
}
-
+
.status-tags {
display: flex;
gap: 4px;
flex-wrap: wrap;
}
}
-
+
.card-body {
padding: 12px;
flex: 1;
-
+
.info-list {
.info-item {
display: flex;
align-items: center;
margin-bottom: 8px;
font-size: 12px;
-
+
&:last-child {
margin-bottom: 0;
}
-
+
.info-label {
color: #909399;
white-space: nowrap;
margin-right: 6px;
min-width: 50px;
}
-
+
.info-value {
color: #303133;
flex: 1;
@@ -914,14 +915,14 @@ export default {
text-overflow: ellipsis;
white-space: nowrap;
}
-
+
.action-type-tag {
font-size: 11px;
}
}
}
}
-
+
.card-footer {
padding: 10px 12px;
border-top: 1px solid #e4e7ed;
@@ -929,7 +930,7 @@ export default {
display: flex;
justify-content: center;
gap: 6px;
-
+
.action-btn {
flex: 1;
font-size: 12px;
@@ -958,7 +959,7 @@ export default {
padding-bottom: 8px;
border-bottom: 1px solid #e4e7ed;
}
-
+
.params-list {
.param-item {
.param-row {
@@ -966,17 +967,17 @@ export default {
margin-bottom: 6px;
font-size: 12px;
line-height: 1.5;
-
+
&:last-child {
margin-bottom: 0;
}
-
+
.param-label {
color: #909399;
min-width: 70px;
margin-right: 8px;
}
-
+
.param-value {
color: #303133;
flex: 1;
@@ -984,7 +985,7 @@ export default {
}
}
}
-
+
.param-divider {
height: 1px;
background-color: #e4e7ed;
diff --git a/klp-ui/src/views/wms/coil/do/warehousing.vue b/klp-ui/src/views/wms/coil/do/warehousing.vue
index 842dfd80..63a5f6d9 100644
--- a/klp-ui/src/views/wms/coil/do/warehousing.vue
+++ b/klp-ui/src/views/wms/coil/do/warehousing.vue
@@ -80,14 +80,27 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
+
+
@@ -98,8 +111,12 @@
-
-
+
+
+
+
+
@@ -484,8 +501,8 @@ export default {
itemName: itemName,
updateTime: row.updateTime?.split(' ')[0] || '',
};
- })
-
+ })
+
},
handleDelete(row) {
this.$modal.confirm("确认删除吗?", "删除确认", {
diff --git a/klp-ui/src/views/wms/coil/panels/base.vue b/klp-ui/src/views/wms/coil/panels/base.vue
index a35ab720..a21348cf 100644
--- a/klp-ui/src/views/wms/coil/panels/base.vue
+++ b/klp-ui/src/views/wms/coil/panels/base.vue
@@ -35,8 +35,8 @@
-
+
导出
- 批量打印标签
+ 批量打印标签
@@ -120,8 +121,7 @@
-
+
@@ -186,13 +186,24 @@
请先选择材料类型
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
+
+
@@ -201,8 +212,11 @@
-
-
+
+
+
+
+
@@ -240,7 +254,8 @@
@@ -453,7 +468,7 @@ export default {
{ label: '打包状态', prop: 'packingStatus' },
{ label: '切边要求', prop: 'edgeRequirement' },
{ label: '包装要求', prop: 'packagingRequirement' },
- { label: '厂家', prop: 'itemManufacturer' },
+ { label: '厂家', prop: 'itemManufacturer' },
],
title: '详细信息'
}
diff --git a/klp-ui/src/views/wms/product/index.vue b/klp-ui/src/views/wms/product/index.vue
index 9e50205b..dc294bd8 100644
--- a/klp-ui/src/views/wms/product/index.vue
+++ b/klp-ui/src/views/wms/product/index.vue
@@ -321,11 +321,7 @@ export default {
this.buttonLoading = true;
if (this.form.productId != null) {
- updateProduct({
- ...this.form,
- productCode: this.form.material + this.form.zincLayer + new Date().getTime(),
-
- }).then(response => {
+ updateProduct(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
@@ -334,7 +330,10 @@ export default {
this.buttonLoading = false;
});
} else {
- addProductWithBom(this.form).then(response => {
+ addProductWithBom({
+ ...this.form,
+ productCode: this.form.material + this.form.zincLayer + new Date().getTime(),
+ }).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
diff --git a/klp-ui/src/views/wms/receive/detail/index.vue b/klp-ui/src/views/wms/receive/detail/index.vue
index 90d9b895..81340274 100644
--- a/klp-ui/src/views/wms/receive/detail/index.vue
+++ b/klp-ui/src/views/wms/receive/detail/index.vue
@@ -91,6 +91,8 @@
@click="handleReject(scope.row)" v-loading="buttonLoading">拒签
+
diff --git a/klp-ui/src/views/wms/report/delivery.vue b/klp-ui/src/views/wms/report/delivery.vue
index f6896390..0c036583 100644
--- a/klp-ui/src/views/wms/report/delivery.vue
+++ b/klp-ui/src/views/wms/report/delivery.vue
@@ -74,6 +74,7 @@