From 4391af490bdc1ecbe0d0e949dc4fc3b95bead0cf Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期三, 06 八月 2025 19:07:09 +0800
Subject: [PATCH] 8-6问题修复
---
zy-asrs-admin/src/components/print/orderPrint/template/template1.vue | 12 ++++-
zy-asrs-admin/src/components/print/orderPrint/index.vue | 4 +
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/OrderMapper.java | 2
zy-asrs-admin/src/components/order/order/orderIn.vue | 2 +
zy-asrs-admin/src/components/orderDetl/show.vue | 5 +-
zy-asrs-wms/src/main/resources/mapper/asrs/OrderMapper.xml | 4 +-
zy-asrs-admin/src/views/loc/locDetl/index.vue | 14 +++---
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java | 26 ++++++++++--
8 files changed, 48 insertions(+), 21 deletions(-)
diff --git a/zy-asrs-admin/src/components/order/order/orderIn.vue b/zy-asrs-admin/src/components/order/order/orderIn.vue
index fbcac4e..c8fd6d6 100644
--- a/zy-asrs-admin/src/components/order/order/orderIn.vue
+++ b/zy-asrs-admin/src/components/order/order/orderIn.vue
@@ -215,6 +215,7 @@
const showDetl = (item) => {
showOrderDetlChild.value.openDetl = true;
showOrderDetlChild.value.orderId = item.id;
+ showOrderDetlChild.value.inModel = 'in';
}
const printChild = ref(null);
@@ -237,6 +238,7 @@
printChild.value.printData = printData;
printChild.value.orderNo = record.__v_raw.orderNo
printChild.value.open = true;
+ printChild.value.inModel = "in";
}
const handleExport = async (intl) => {
diff --git a/zy-asrs-admin/src/components/orderDetl/show.vue b/zy-asrs-admin/src/components/orderDetl/show.vue
index f9153ba..78062f8 100644
--- a/zy-asrs-admin/src/components/orderDetl/show.vue
+++ b/zy-asrs-admin/src/components/orderDetl/show.vue
@@ -18,6 +18,7 @@
let tableData = ref([]);
let openDetl = ref(false);
const orderId = ref(null);
+const inModel = ref('');
const orderInfo = ref({
orderInfo: '',
orderType$: '',
@@ -213,6 +214,7 @@
orderId,
openDetl,
showWidth,
+ inModel,
})
</script>
@@ -257,7 +259,7 @@
鑱旂郴鐢佃瘽锛歿{ orderInfo.phone }}
</h3>
</div>
- <div>
+ <div v-if="inModel != 'in'">
<h2>
鍑虹珯鍙o細{{ orderInfo.site }}
</h2>
@@ -272,7 +274,6 @@
<template v-if="column.dataIndex === 'workQty'">
<a-button type="link" @click="openWorkTask(record)">{{ text }}</a-button>
</template>
-
<template v-if="column.dataIndex === 'qty'">
<a-button type="link" @click="openCompleteQty(record)">{{ text }}</a-button>
</template>
diff --git a/zy-asrs-admin/src/components/print/orderPrint/index.vue b/zy-asrs-admin/src/components/print/orderPrint/index.vue
index d77db27..3eb942b 100644
--- a/zy-asrs-admin/src/components/print/orderPrint/index.vue
+++ b/zy-asrs-admin/src/components/print/orderPrint/index.vue
@@ -11,6 +11,7 @@
const selectTemplate = ref('Template1');
let open = ref(false);
let data = ref({})
+let inModel = ref('');
let printData = ref([]);
let repeatNum = ref(1);
let orderNo = ref('');
@@ -36,6 +37,7 @@
open,
orderNo,
data,
+ inModel,
printData
})
</script>
@@ -44,7 +46,7 @@
<a-modal v-model:open="open" :title="formatMessage('', '璁㈠崟鎵撳嵃')" @ok="handleOk" :width="'80%'" v-if="open">
<div style="height: 500px;overflow-x: hidden;overflow-y: scroll;">
<div style="margin-top: 20px;">
- <Component :is="template[selectTemplate]" ref="printChild" :list="printData" :repeatNum="repeatNum" :orderNo="orderNo" :data="data"/>
+ <Component :is="template[selectTemplate]" ref="printChild" :list="printData" :repeatNum="repeatNum" :inModel="inModel" :orderNo="orderNo" :data="data"/>
</div>
</div>
<template #footer>
diff --git a/zy-asrs-admin/src/components/print/orderPrint/template/template1.vue b/zy-asrs-admin/src/components/print/orderPrint/template/template1.vue
index cc9e101..b788655 100644
--- a/zy-asrs-admin/src/components/print/orderPrint/template/template1.vue
+++ b/zy-asrs-admin/src/components/print/orderPrint/template/template1.vue
@@ -19,9 +19,13 @@
data: {
type: Object,
default: {}
+ },
+ inModel: {
+ type: String,
+ default: ''
}
});
-const { orderNo, list, repeatNum, data } = toRefs(props)
+const { orderNo, list, repeatNum, data, inModel } = toRefs(props)
</script>
<template>
@@ -31,15 +35,17 @@
<tr style="height: 40px">
<td align="center" colspan="2">瀹㈡埛鍚嶇О</td>
<td align="center" colspan="2">鑱旂郴鐢佃瘽</td>
- <td align="center" colspan="3">蹇�掑崟鍙�</td>
+ <td align="center" :colspan="inModel == 'in' ? '3' : '2'">蹇�掑崟鍙�</td>
<td align="center" colspan="4">鏀惰揣鍦板潃</td>
+ <td align="center" colspan="1" v-if="inModel != 'in'">鍑哄簱鍙�</td>
</tr>
<template v-for="(item, index) in list" :key="index">
<tr style="height: 40px" v-if="index == 0">
<td align="center" colspan="2">{{ data.customer }}</td>
<td align="center" colspan="2">{{ data.phone }}</td>
- <td align="center" colspan="3">{{ data.logistics }}</td>
+ <td align="center" :colspan="inModel == 'in' ? '3' : '2'">{{ data.logistics }}</td>
<td align="center" colspan="4">{{ data.address }}</td>
+ <td align="center" colspan="1" v-if="inModel != 'in'">{{ data.site }}</td>
</tr>
</template>
<tr style="height: 100px">
diff --git a/zy-asrs-admin/src/views/loc/locDetl/index.vue b/zy-asrs-admin/src/views/loc/locDetl/index.vue
index 99a27c4..66a2c7c 100644
--- a/zy-asrs-admin/src/views/loc/locDetl/index.vue
+++ b/zy-asrs-admin/src/views/loc/locDetl/index.vue
@@ -159,13 +159,13 @@
ellipsis: true,
...getColumnSearchProps('anfme'),
},
- // {
- // title: formatMessage('db.man_loc_detl.freeze', '鏄惁鍐荤粨'),
- // dataIndex: 'freeze$',
- // width: 140,
- // ellipsis: true,
- // ...getColumnSearchProps('freeze$'),
- // },
+ {
+ title: formatMessage('db.man_loc_detl.freeze', '鏄惁鍐荤粨'),
+ dataIndex: 'freeze$',
+ width: 140,
+ ellipsis: true,
+ ...getColumnSearchProps('freeze$'),
+ },
{
title: formatMessage('db.man_loc_detl.status', '鐘舵��'),
dataIndex: 'status$',
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/OrderMapper.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/OrderMapper.java
index 32e9915..463f53b 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/OrderMapper.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/OrderMapper.java
@@ -13,5 +13,5 @@
@Repository
public interface OrderMapper extends BaseMapper<Order> {
- List<OrderInfoDto> getDetlForOrderId(@Param("orderId") Long orderId, @Param("matId") Long matId);
+ List<OrderInfoDto> getDetlForOrderId(@Param("orderId") Long orderId, @Param("matnr") String matnr);
}
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java
index e22e623..c8d37ea 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/OrderServiceImpl.java
@@ -40,6 +40,8 @@
private OrderUtils orderUtils;
@Autowired
private WaitPakinService waitPakinService;
+ @Autowired
+ private LocDetlService locDetlService;
@Override
@Transactional
@@ -82,7 +84,7 @@
}
for (HashMap<String, Object> map : param.getList()) {
- double anfme = Double.parseDouble(map.get("anfme").toString());
+ Double anfme = Double.parseDouble(map.get("anfme").toString());
String batch = map.get("batch").toString();
String matnr = map.get("matnr").toString();
Double qty = 0D;
@@ -93,6 +95,20 @@
if (map.containsKey("workQty")) {
workQty = Double.parseDouble(map.get("workQty").toString());
}
+
+ if (param.getOrderType() == 2) {
+ List<LocDetl> detls = locDetlService.list(new LambdaQueryWrapper<LocDetl>()
+ .eq(StringUtils.isNotBlank(batch), LocDetl::getBatch, batch)
+ .eq(StringUtils.isNotBlank(matnr), LocDetl::getMatnr, matnr));
+ if (detls.isEmpty()) {
+ throw new CoolException("鐗╂枡锛�" + matnr + "鍓╀綑搴撳瓨浣欎笅锛�0" + "锛屾棤娉曠敓鎴愬嚭搴撳崟!!");
+ }
+ Double sum = detls.stream().mapToDouble(LocDetl::getAnfme).sum();
+ if (anfme.compareTo(sum) > 0) {
+ throw new CoolException("鐗╂枡锛�" + matnr + "鍓╀綑搴撳瓨浣欎笅锛�" + sum + "锛屾棤娉曠敓鎴愬嚭搴撳崟!!");
+ }
+ }
+
String memo = map.getOrDefault("memo", "").toString();
Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, matnr));
if (mat == null) {
@@ -307,12 +323,12 @@
@Override
public List<OrderInfoDto> getDetlForOrderId(Long id, String matnr) {
if (!Objects.isNull(matnr)) {
- Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>()
- .eq(StringUtils.isNotBlank(matnr), Mat::getMatnr, matnr), false);
- if (Objects.isNull(mat)) {
+// Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>()
+// .eq(StringUtils.isNotBlank(matnr), Mat::getMatnr, matnr), false);
+ if (Objects.isNull(matnr)) {
return this.baseMapper.getDetlForOrderId(id, null);
} else {
- return this.baseMapper.getDetlForOrderId(id, mat.getId());
+ return this.baseMapper.getDetlForOrderId(id, matnr);
}
} else {
return this.baseMapper.getDetlForOrderId(id, null);
diff --git a/zy-asrs-wms/src/main/resources/mapper/asrs/OrderMapper.xml b/zy-asrs-wms/src/main/resources/mapper/asrs/OrderMapper.xml
index a8688c6..0eaa250 100644
--- a/zy-asrs-wms/src/main/resources/mapper/asrs/OrderMapper.xml
+++ b/zy-asrs-wms/src/main/resources/mapper/asrs/OrderMapper.xml
@@ -24,8 +24,8 @@
<if test="orderId != null">
AND odl.order_id = #{orderId}
</if>
- <if test="matId != null">
- AND odl.mat_id = #{matId}
+ <if test="matnr != null">
+ AND mm.matnr LIKE CONCAT('%', #{matnr}, '%')
</if>
ORDER BY
work_qty ASC
--
Gitblit v1.9.1