From a26e834d87b2f03dd7768fddb1c3ba946a08c314 Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期五, 05 七月 2024 18:20:25 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/ERP_override
---
north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue | 22 +++
north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml | 20 +++
north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml | 81 ++++++++++++-
north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml | 6
north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet1.vue | 2
north-glass-erp/src/main/java/com/example/erp/controller/mm/FinishedGoodsInventoryController.java | 10 +
north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet3.vue | 17 +-
north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java | 6 +
north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue | 15 +-
north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet2.vue | 8
north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue | 2
north-glass-erp/northglass-erp/src/views/sd/order/OrderProductSummaryReport.vue | 2
north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java | 48 +++++++
north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java | 6
north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue | 23 ++-
north-glass-erp/src/main/java/com/example/erp/controller/sd/OrderController.java | 2
north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderDetailMapper.java | 3
north-glass-erp/northglass-erp/src/components/sd/order/PrintFoot.vue | 2
north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue | 2
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java | 10 +
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java | 14 -
north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml | 35 +++++
north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedOperateLogMapper.java | 3
23 files changed, 274 insertions(+), 65 deletions(-)
diff --git a/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue b/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue
index 995873f..270243e 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheet1.vue
@@ -10,6 +10,7 @@
let otherMoney = ref([])
let delivery = ref([])
let money = ref("")
+let otherMoneys = 0
let takeCare = "娉ㄦ剰:璇峰Ε鍠勪繚绠″ソ鎴戝徃鐨勭幓鐠冩灦锛屽鏈変涪澶辨垨鎹熷潖锛屾寜1500鍏冨彧璧斿伩銆傝阿璋㈤厤鍚�!"
let remark = "澶囨敞:鏈壒鐜荤拑涓轰紭绛夊悎鏍煎搧锛岃鍦ㄥ嵏璐ф椂,褰撻潰娑堢偣楠屾敹銆佸鏈夎川閲忛棶棰樺湪涓�鍛ㄥ唴涓庢湰鍏徃鑱旂郴,鍚﹀垯姒備笉璐熻矗锛�"
@@ -33,7 +34,9 @@
delivery.value=deepClone(res.data.delivery)
money.value=deepClone(res.data.money)
otherMoney.value=deepClone(res.data.otherMoney)
-
+ otherMoney.value.forEach(item => {
+ otherMoneys+=item.DeliveryDetailOtherMoney.monery
+ })
}else{
ElMessage.warning(res.msg)
router.push("/login")
@@ -157,7 +160,7 @@
<td>{{delivery.quantity}}</td>
<td>{{delivery.area}}</td>
<td></td>
- <td>{{delivery.money}}</td>
+ <td>{{delivery.money-otherMoneys}}</td>
<td></td>
</tr>
<tr class="day-in">
@@ -174,10 +177,10 @@
<tr class="day-in">
<td style="text-align: left;border-width: 0 1px 0 0; border-style: solid; border-color: #d3dce6;" colspan="4" >
<div style="display: flex;font-size: 10px;text-align: center" v-for="(item, index2) in otherMoney" :key="index2">
- <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].alias}}</div>
- <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].price}}</div>
- <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].count}}</div>
- <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].monery}}</div>
+ <div style="width: 25%">{{item.DeliveryDetailOtherMoney.alias}}</div>
+ <div style="width: 25%">{{item.DeliveryDetailOtherMoney.price}}</div>
+ <div style="width: 25%">{{item.DeliveryDetailOtherMoney.count}}</div>
+ <div style="width: 25%">{{item.DeliveryDetailOtherMoney.monery}}</div>
</div>
</td>
<td style="text-align: left;border:none;font-size: 15px;" colspan="5">澶у啓閲戦: {{money}}</td>
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/PrintFoot.vue b/north-glass-erp/northglass-erp/src/components/sd/order/PrintFoot.vue
index 2d080bd..6397611 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/PrintFoot.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/PrintFoot.vue
@@ -13,7 +13,7 @@
</el-row>
<el-row style="text-align: left ">
<el-col :span="4">鍒涘缓鏃堕棿锛歿{props.order.createTime}}</el-col>
- <el-col :span="4">瀹℃牳鏃堕棿锛�</el-col>
+ <el-col :span="4">瀹℃牳鏃堕棿锛歿{props.order.updateTime}}</el-col>
<el-col :span="4">鎵撳嵃鏃堕棿锛�</el-col>
</el-row>
</div>
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet1.vue b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet1.vue
index 48b3296..20fb35e 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet1.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet1.vue
@@ -131,7 +131,7 @@
<th class="title-1">璁㈠崟绫诲瀷</th>
<th colspan="4">{{data.order.orderType}}</th>
<th class="title-1">璺熷崟鍛�</th>
- <th colspan="3">{{data.order.creator}}</th>
+ <th colspan="3">{{data.order.salesman}}</th>
</tr>
<tr>
<th>纾ㄨ竟</th>
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet2.vue b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet2.vue
index 26bd38a..bac71f4 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet2.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet2.vue
@@ -115,7 +115,7 @@
<th class="title-1">璁㈠崟绫诲瀷</th>
<th colspan="4">{{data.order.orderType}}</th>
<th class="title-1">璺熷崟鍛�</th>
- <th colspan="3">{{data.order.creator}}</th>
+ <th colspan="3">{{data.order.salesman}}</th>
</tr>
<tr>
<th>纾ㄨ竟</th>
@@ -141,8 +141,7 @@
<th>鍗婂緞</th>
<th>妤煎彿</th>
<th>鍔犲伐瑕佹眰</th>
- <th>澶囨敞</th>
- <th>搴忓彿</th>
+ <th colspan="2">澶囨敞</th>
<th>澶囨敞1</th>
<th>澶囨敞2</th>
<th>澶囨敞3</th>
@@ -168,8 +167,7 @@
<td>{{item1.bendRadius}}</td>
<td>{{item1.buildingNumber}}</td>
<td>{{item1.processingNote}}</td>
- <td>{{item1.remarks}}</td>
- <td></td>
+ <td colspan="2">{{item1.remarks}}</td>
<td>{{((item1.otherColumns?.S04)?item1.otherColumns.S04:'')}}</td>
<td>{{((item1.otherColumns?.S05)?item1.otherColumns.S05:'')}}</td>
<td>{{((item1.otherColumns?.S06)?item1.otherColumns.S06:'')}}</td>
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet3.vue b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet3.vue
index 27b5482..1172d0b 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet3.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet3.vue
@@ -10,6 +10,7 @@
let delivery = ref([])
let otherMoney = ref([])
let money = ref("")
+let otherMoneys = 0
let takeCare = "娉ㄦ剰:璇峰Ε鍠勪繚绠″ソ鎴戝徃鐨勭幓鐠冩灦锛屽鏈変涪澶辨垨鎹熷潖锛屾寜1500鍏冨彧璧斿伩銆傝阿璋㈤厤鍚�!"
let remark = "澶囨敞:鏈壒鐜荤拑涓轰紭绛夊悎鏍煎搧锛岃鍦ㄥ嵏璐ф椂,褰撻潰娑堢偣楠屾敹銆佸鏈夎川閲忛棶棰樺湪涓�鍛ㄥ唴涓庢湰鍏徃鑱旂郴,鍚﹀垯姒備笉璐熻矗锛�"
@@ -33,7 +34,9 @@
delivery.value=deepClone(res.data.delivery)
money.value=deepClone(res.data.money)
otherMoney.value=deepClone(res.data.otherMoney)
-
+ otherMoney.value.forEach(item => {
+ otherMoneys+=item.DeliveryDetailOtherMoney.monery
+ })
}else{
ElMessage.warning(res.msg)
router.push("/login")
@@ -114,7 +117,7 @@
<td>{{item.DeliveryDetail.quantity}}</td>
<td>{{item.DeliveryDetail.area}}</td>
<td></td>
- <td>{{item.DeliveryDetail.money}}</td>
+ <td>{{item.DeliveryDetail.grossAmount}}</td>
<td></td>
</tr>
@@ -124,7 +127,7 @@
<td>{{delivery.quantity}}</td>
<td>{{delivery.area}}</td>
<td></td>
- <td>{{delivery.money}}</td>
+ <td>{{delivery.money-otherMoneys}}</td>
<td></td>
</tr>
<tr class="day-in">
@@ -141,10 +144,10 @@
<tr class="day-in">
<td style="text-align: left;border-width: 0 1px 0 0; border-style: solid; border-color: #d3dce6;" colspan="4" >
<div style="display: flex;font-size: 10px;text-align: center" v-for="(item, index2) in otherMoney" :key="index2">
- <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].alias}}</div>
- <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].price}}</div>
- <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].count}}</div>
- <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].monery}}</div>
+ <div style="width: 25%">{{item.DeliveryDetailOtherMoney.alias}}</div>
+ <div style="width: 25%">{{item.DeliveryDetailOtherMoney.price}}</div>
+ <div style="width: 25%">{{item.DeliveryDetailOtherMoney.count}}</div>
+ <div style="width: 25%">{{item.DeliveryDetailOtherMoney.monery}}</div>
</div>
</td>
<td style="text-align: left;border:none;font-size: 15px;font-weight: bold;" colspan="5">澶у啓閲戦: {{money}}</td>
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue
index a20caa4..7d5f960 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/PrintSheet4.vue
@@ -46,9 +46,9 @@
stringToJson(item.productDetail)
})
- grossNum.value.quantity = parseFloat(grossNum.value.quantity.toFixed(3))
- grossNum.value.grossArea = parseFloat(grossNum.value.grossArea.toFixed(3))
- grossNum.value.perimeter = parseFloat(grossNum.value.perimeter.toFixed(3))
+ grossNum.value.quantity = parseFloat(grossNum.value.quantity.toFixed(2))
+ grossNum.value.grossArea = parseFloat(grossNum.value.grossArea.toFixed(2))
+ grossNum.value.perimeter = parseFloat(grossNum.value.perimeter.toFixed(2))
})
}
@@ -60,15 +60,16 @@
grossNum.value.grossArea=0
grossNum.value.perimeter=0
data.value= res.data
+
data.value.orderProductDetail.forEach(item => {
grossNum.value.quantity += getQuantity(item.productDetail)
grossNum.value.grossArea += getArea(item.productDetail)
grossNum.value.perimeter += getPerimeter(item.productDetail)
stringToJson(item.productDetail)
})
- grossNum.value.quantity = parseFloat(grossNum.value.quantity.toFixed(3))
- grossNum.value.grossArea = parseFloat(grossNum.value.grossArea.toFixed(3))
- grossNum.value.perimeter = parseFloat(grossNum.value.perimeter.toFixed(3))
+ grossNum.value.quantity = parseFloat(grossNum.value.quantity.toFixed(2))
+ grossNum.value.grossArea = parseFloat(grossNum.value.grossArea.toFixed(2))
+ grossNum.value.perimeter = parseFloat(grossNum.value.perimeter.toFixed(2))
})
@@ -93,16 +94,16 @@
productList.forEach(item => {
quantity += item.quantity
})
- return parseFloat(quantity.toFixed(3))
+ return parseFloat(quantity.toFixed(2))
}
const getArea = (productList) => {
let area = 0
productList.forEach(item => {
- area += item.grossArea
+ area += item.computeGrossArea
})
- return parseFloat(area.toFixed(3))
+ return parseFloat(area.toFixed(2))
}
@@ -111,7 +112,7 @@
productList.forEach(item => {
perimeter += item.perimeter
})
- return parseFloat(perimeter.toFixed(3))
+ return parseFloat(perimeter.toFixed(2))
}
const printSheet = () => {
@@ -189,7 +190,7 @@
<td colspan="2" style="font-size: 15px;font-weight: bold;" v-if="items.otherColumns?.S02">{{items.otherColumns?.S02}}</td>
<td colspan="2" style="font-size: 15px;font-weight: bold;" v-else>{{items.width}}x{{items.height}}</td>
<td>{{items.quantity}}</td>
- <td>{{items.grossArea}}</td>
+ <td>{{items.grossArea.toFixed(2)}}</td>
<td colspan="2">{{items.processingNote}}</td>
</tr>
<tr class="day-in" >
diff --git a/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue b/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
index 257513f..20c0567 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
@@ -1207,7 +1207,7 @@
</el-col>
<el-col :span="2"><el-text>{{$t('order.icon')}}锛�</el-text></el-col>
<el-col :span="2">
- <el-select v-model="titleUploadData.icon" clearable placeholder=" " allow-create filterable>
+ <el-select v-model="titleUploadData.icon" clearable placeholder=" " allow-create filterable default-first-option>
<el-option v-for="item in titleSelectJson['icon']"
:key="item.id"
:label="item.basicName"
diff --git a/north-glass-erp/northglass-erp/src/views/sd/order/OrderProductSummaryReport.vue b/north-glass-erp/northglass-erp/src/views/sd/order/OrderProductSummaryReport.vue
index e522a8d..f296487 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/order/OrderProductSummaryReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/order/OrderProductSummaryReport.vue
@@ -48,7 +48,7 @@
],//琛ㄦ牸琛ㄥご瀛楁
data:[],//琛ㄦ牸鏁版嵁
url :'/order/getOrderProductSummary',
- exportUrl :'/order/exportOrderReportProduct',
+ exportUrl :'/order/exportOrderProductSummary',
exportName:t('order.orderDetailsSummaryReport'),
footList:['quantity','grossArea','computeGrossArea','perimeter','price','grossAmount']
})
diff --git a/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue b/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
index c61d259..c0539e3 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
@@ -86,7 +86,8 @@
{ code: 'sheet3', name: '娴忚鍙戣揣淇℃伅' }
]
- }
+ },
+ { code: 'oneClickStorage', name: "涓�閿畬宸�", prefixIcon: 'vxe-icon-copy', visible: true},
// { code: 'getProcessList', name: t('searchOrder.processFlows'), prefixIcon: 'vxe-icon-file-txt', visible: true}
]
]
@@ -256,6 +257,25 @@
break
}
+ case 'oneClickStorage': {
+ if(rowClickIndex.value.processReview===0||rowClickIndex.value.orderReview===0){
+ ElMessage.warning('璁㈠崟鏈鏍�')
+ return
+ }
+ if(rowClickIndex.value.warehousing>0){
+ ElMessage.warning('璁㈠崟宸插叆搴�')
+ return
+ }
+ request.post(`/FinishedGoodsInventory/oneClickStorage/${rowClickIndex.value.orderId}/${userStore.user.userName}`).then((res) => {
+ if(res.code==200 && res.data===true){
+ ElMessage.success(t('productStock.receivedSuccessfully'))
+ router.push({path:'/main/order/selectOrder',query:{random:Math.random()}})
+ }else{
+ ElMessage.warning(res.msg)
+ }
+ })
+ break
+ }
}
}
diff --git a/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue b/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue
index 0c9ee30..dab3900 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue
@@ -214,7 +214,7 @@
let childName = ''
try {
Object.keys(hollowBasic.value).forEach((item, index) => {
- if (hollowBasic.value[item] === '') {
+ if (hollowBasic.value[item] === '' && item !== 'GlueDepth') {
throw new Error(t('product.msg.HollowReview'))
}
childName += hollowBasic.value[item]
diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/mm/FinishedGoodsInventoryController.java b/north-glass-erp/src/main/java/com/example/erp/controller/mm/FinishedGoodsInventoryController.java
index 31e1e66..b12a326 100644
--- a/north-glass-erp/src/main/java/com/example/erp/controller/mm/FinishedGoodsInventoryController.java
+++ b/north-glass-erp/src/main/java/com/example/erp/controller/mm/FinishedGoodsInventoryController.java
@@ -175,4 +175,14 @@
//鍙傛暟锛氱浉搴旂殑鏁版嵁锛屽疄浣撶被淇℃伅锛岀浉搴旂殑鏂规硶锛堟暟鎹幏鍙栵級锛岀敓鎴愮殑excel鍚嶅瓧
DownExcel.download(response, FinishedOperateLogDTO.class, finishedGoodsInventoryService.exportFinishedOperateLogReport(dates),"orderReport");
}
+
+
+ /*璁㈠崟涓�閿叆搴�*/
+ @ApiOperation("璁㈠崟涓�閿叆搴�")
+ @SaCheckPermission("CreateProductStock.add")
+ @PostMapping("/oneClickStorage/{orderId}/{userName}")
+ public Result oneClickStorage( @PathVariable String orderId,@PathVariable String userName){
+ return Result.seccess(finishedGoodsInventoryService.oneClickStorage(orderId,userName));
+
+ }
}
diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/sd/OrderController.java b/north-glass-erp/src/main/java/com/example/erp/controller/sd/OrderController.java
index d326354..a36a2c7 100644
--- a/north-glass-erp/src/main/java/com/example/erp/controller/sd/OrderController.java
+++ b/north-glass-erp/src/main/java/com/example/erp/controller/sd/OrderController.java
@@ -4,6 +4,7 @@
import com.example.erp.common.Constants;
import com.example.erp.common.Result;
import com.example.erp.dto.sd.OrderDTO;
+import com.example.erp.dto.sd.OrderDetailProductDTO;
import com.example.erp.entity.sd.Order;
import com.example.erp.entity.sd.OrderDetail;
import com.example.erp.entity.sd.OrderGlassDetail;
@@ -165,6 +166,7 @@
DownExcel.download(response, OrderDTO.class, orderService.exportOrderProductSummary(dates),"orderReport");
}
+
@ApiOperation("璁㈠崟灏忕墖鏍囩")
@PostMapping("/getOrderProductDetailTag/{orderId}")
public Result getOrderProductDetailTag(@PathVariable String orderId) {
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java
index 289e597..b25418b 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedGoodsInventoryMapper.java
@@ -115,6 +115,12 @@
@Param("orderNumber") Integer orderNumber,
@Param("quantity") Integer quantity);
+ List<OrderDetail> getSelectOrderDetail(String orderId);
+
+ Boolean insertOrderFinishedGoodsInventory(@Param("orderDetail") OrderDetail orderDetail);
+
+ Boolean updateOrderInventory(@Param("orderDetail") OrderDetail orderDetail);
+
}
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedOperateLogMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedOperateLogMapper.java
index d71db9a..8c938e3 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedOperateLogMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/mm/FinishedOperateLogMapper.java
@@ -77,4 +77,7 @@
@Param("finishedOperateLog") FinishedOperateLog finishedOperateLog);
List<FinishedOperateLogDTO> exportFinishedOperateLogReport(List<LocalDate> dates);
+
+ Boolean insertOrderFinishedOperateLog(@Param("orderDetail") OrderDetail orderDetail,@Param("userName") String userName,@Param("oddNumber") String oddNumber);
+
}
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
index a830cc9..a60fea1 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/DeliveryDetailMapper.java
@@ -32,10 +32,10 @@
List <Map<String, Object>> getSelectDeliveryDetailPrinting(@Param("deliveryId") String deliveryId,
@Param("productId") Integer productId,@Param("orderId") String orderId);
- List <Map<String, Object>> getSelectotherMoney(@Param("orderId") String orderId,@Param("deliveryId") String deliveryId,
- @Param("key") String key,@Param("value") String value);
+ Map<String, Object> getSelectotherMoney(@Param("orderId") String orderId,@Param("deliveryId") String deliveryId,
+ @Param("orderNumber") Integer orderNumber,@Param("key") String key,@Param("value") String value);
- List <Map<String, Object>> getSelectOrderotherMoney(@Param("orderId") String orderId, @Param("key") String key,@Param("value") String value);
+ Map<String, Object> getSelectOrderotherMoney(@Param("orderId") String orderId,@Param("orderNumber") Integer orderNumber, @Param("key") String key,@Param("value") String value);
List <Map<String, Object>> getSelectOrderDetailPrinting(@Param("productId") Integer productId,@Param("orderId") String orderId);
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderDetailMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderDetailMapper.java
index 65bed44..d0224fa 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderDetailMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderDetailMapper.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.erp.dto.sd.OrderDTO;
+import com.example.erp.dto.sd.OrderDetailProductDTO;
import com.example.erp.entity.sd.OrderDetail;
import org.apache.ibatis.annotations.Mapper;
@@ -29,6 +30,8 @@
List<OrderDTO> exportOrderProductSummary(List<LocalDate> dates);
+ List<OrderDetailProductDTO> exportOrderReportProduct(List<LocalDate> dates);
+
Map<String, String> getOrderProductDetailTag(String orderId);
List<Map<String,Object>> getOrderProductDistinctById(String orderId);
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
index 8a9718c..712dcf6 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
@@ -13,6 +13,7 @@
import com.example.erp.mapper.mm.BasicWarehouseTypeMapper;
import com.example.erp.mapper.mm.FinishedGoodsInventoryMapper;
import com.example.erp.mapper.mm.FinishedOperateLogMapper;
+import com.example.erp.mapper.sd.OrderDetailMapper;
import com.example.erp.service.userInfo.SysErrorService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -34,6 +35,8 @@
FinishedOperateLogMapper finishedOperateLogMapper;
@Autowired
BasicWarehouseTypeMapper basicWarehouseTypeMapper;
+ @Autowired
+ OrderDetailMapper orderDetailMapper;
@Autowired
SysErrorService sysErrorService;
@@ -615,8 +618,11 @@
finishedOperateLogMapper.updateFinishedOperateLogState(finishedOperateLog,"宸蹭綔搴�");
//淇敼搴撳瓨琛ㄥ叆搴撴暟閲�
finishedGoodsInventoryMapper.updateInventoryOut(finishedOperateLog);
- //淇敼娴佺▼鍗¤〃鍏ュ簱鏁伴噺
- finishedGoodsInventoryMapper.updateflowcardOut(finishedOperateLog);
+ if(finishedOperateLog.getProcessId()!=null){
+ //淇敼娴佺▼鍗¤〃鍏ュ簱鏁伴噺
+ finishedGoodsInventoryMapper.updateflowcardOut(finishedOperateLog);
+ }
+
//淇敼璁㈠崟鏄庣粏琛ㄥ叆搴撴暟閲�
finishedGoodsInventoryMapper.updateOutOrderNumberConut(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),finishedOperateLog.getQuantity());
//鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍏ュ簱
@@ -677,6 +683,44 @@
}
+ public Boolean oneClickStorage(String orderId,String userName) {
+ boolean saveState = true;
+ Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
+ try {
+ String oddNumber= orderNumberSetting("鍏ュ簱");
+ List<OrderDetail> orderDetailList=finishedGoodsInventoryMapper.getSelectOrderDetail(orderId);
+ for (OrderDetail orderDetail:orderDetailList){
+ Integer finishedGoodsInventoryCount = finishedGoodsInventoryMapper.findOrderNumberdcount(orderDetail.getOrderId(),orderDetail.getOrderNumber());
+ System.out.println(finishedGoodsInventoryCount);
+ if(finishedGoodsInventoryCount>0){
+ //淇敼搴撳瓨琛ㄥ叆搴撴暟閲�
+ finishedGoodsInventoryMapper.updateOrderInventory(orderDetail);
+ }else{
+ finishedGoodsInventoryMapper.insertOrderFinishedGoodsInventory(orderDetail);
+ }
+ finishedOperateLogMapper.insertOrderFinishedOperateLog(orderDetail,userName,oddNumber);
+ finishedGoodsInventoryMapper.updateIntOrderNumberConut(orderDetail.getOrderId(),orderDetail.getOrderNumber(),Integer.parseInt(orderDetail.getQuantity().toString()));
+ }
+ finishedGoodsInventoryMapper.updateOrderWarehousingState(orderId,2);
+
+ } catch (Exception e) {
+ TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
+ //灏嗗紓甯镐紶鍏ユ暟鎹簱
+ SysError sysError = new SysError();
+ sysError.setError(e.toString());
+ sysError.setFunc("saveOrder");
+ sysErrorService.insert(sysError);
+ saveState = false;
+
+ }
+
+ return saveState;
+
+ }
+
+
+
+
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
index f609666..7736752 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
@@ -360,13 +360,14 @@
List <Map<String, Object>> moneryList=new ArrayList<Map<String, Object>>();//鏈�缁堢粨鏋�
List<DeliveryDetail> deliveryDetailList=deliveryDetailMapper.getSelectDeliveryPrinting(deliveryDetail);
String orderId="";
+ double otherMoney=0.0;
for (DeliveryDetail detail : deliveryDetailList) {
- System.out.println(detail);
orderId=detail.getOrderDetail().getOrderId();
Map<String, Object> itemmap = new HashMap<>();
List<Map<String, Object>> deliveryDetailList2 = deliveryDetailMapper.getSelectDeliveryDetailPrinting(detail.getDeliveryId(),
detail.getOrderDetail().getProductId(), detail.getOrderDetail().getOrderId());
+
for (Map<String, Object> stringObjectMap : deliveryDetailList2) {
if(stringObjectMap.get("other_columns")!=null){
JSONObject jsonObject = JSON.parseObject(stringObjectMap.get("other_columns").toString());
@@ -374,7 +375,9 @@
boolean isnull = key.contains("M");
if(isnull) {
Map<String, Object> moneryItemmap = new HashMap<>();
- List<Map<String, Object>> deliveryDetailOtherMoney = deliveryDetailMapper.getSelectotherMoney(detail.getOrderDetail().getOrderId(), detail.getDeliveryId(), key, jsonObject.get(key).toString());
+ Map<String, Object> deliveryDetailOtherMoney = deliveryDetailMapper.getSelectotherMoney(detail.getOrderDetail().getOrderId(),
+ detail.getDeliveryId(),Integer.parseInt(stringObjectMap.get("order_number").toString()), key, jsonObject.get(key).toString());
+ otherMoney=otherMoney+Double.valueOf(deliveryDetailOtherMoney.get("monery").toString());
moneryItemmap.put("DeliveryDetailOtherMoney", deliveryDetailOtherMoney);
moneryList.add(moneryItemmap);
}
@@ -388,6 +391,7 @@
}
Delivery delivery=deliveryMapper.getSelectShippingOrderDetailDeliveryPrinting(deliveryDetail);
+ delivery.setMoney(delivery.getMoney()+otherMoney);
map.put("data", list);
map.put("otherMoney",moneryList);
map.put("delivery", deliveryMapper.getSelectShippingOrderDetailDeliveryPrinting(deliveryDetail));
@@ -414,7 +418,7 @@
boolean isnull = key.contains("M");
if(isnull){
Map<String, Object> moneryItemmap = new HashMap<>();
- List<Map<String, Object>> deliveryDetailOtherMoney = deliveryDetailMapper.getSelectOrderotherMoney(detail.getOrderId(),key,jsonObject.get(key).toString());
+ Map<String, Object> deliveryDetailOtherMoney = deliveryDetailMapper.getSelectOrderotherMoney(detail.getOrderId(),Integer.parseInt(stringObjectMap.get("order_number").toString()),key,jsonObject.get(key).toString());
moneryItemmap.put("DeliveryDetailOtherMoney", deliveryDetailOtherMoney);
moneryList.add(moneryItemmap);
}
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
index 3a1aafb..54b978a 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -10,6 +10,7 @@
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.example.erp.common.Constants;
import com.example.erp.dto.sd.OrderDTO;
+import com.example.erp.dto.sd.OrderDetailProductDTO;
import com.example.erp.entity.sd.*;
import com.example.erp.entity.userInfo.SysError;
import com.example.erp.exception.ServiceException;
@@ -65,7 +66,7 @@
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
//灏嗗紓甯镐紶鍏ユ暟鎹簱
SysError sysError = new SysError();
- sysError.setError(e.toString());
+ sysError.setError(Arrays.toString(e.getStackTrace()));
sysError.setFunc("saveOrder");
sysErrorService.insert(sysError);
saveState = false;
@@ -185,7 +186,7 @@
for (int i = 0; i < OrderDetails.size(); i++) {
OrderDetails.get(i).setOrderNumber(i+1);
OrderDetails.get(i).setOrderId(orderId);
- OrderDetails.get(i).setPerimeter(Double.valueOf(String.format("%.3f",(OrderDetails.get(i).getWidth()+OrderDetails.get(i).getHeight())*2/1000)));
+ OrderDetails.get(i).setPerimeter(Double.valueOf(String.format("%.3f",(OrderDetails.get(i).getWidth()+OrderDetails.get(i).getHeight())*2/1000*OrderDetails.get(i).getQuantity())));
OrderDetails.get(i).setWeight(1.0);
if(OrderDetails.get(i).getBendRadius()!=null && OrderDetails.get(i).getBendRadius()!=0){
//鑾峰彇寮挗寮у害
@@ -432,6 +433,7 @@
return orderDetailMapper.exportOrderProductSummary(dates);
}
+
public Map<String,String> getOrderProductDetailTag(String orderId) {
return orderDetailMapper.getOrderProductDetailTag(orderId);
}
@@ -488,15 +490,7 @@
orderProductDetailMap.put("productId",map.get("productId"));
orderProductDetailMap.put("productName",map.get("productName"));
List<OrderDetail> orderDetails = orderDetailMapper.getOrderProductByProductId(map.get("productId"),orderId);
- orderDetails.forEach(orderDetail->{
- orderDetail.setGrossArea(
- Double.parseDouble(String.format("%.3f",Double.parseDouble(
- String.format("%.3f",
- orderDetail.getWidth()*orderDetail.getHeight()/1000000)
- ) * orderDetail.getQuantity()))
- );
- });
orderProductDetailMap.put("productDetail",orderDetails);
orderProductDetail.add(orderProductDetailMap);
diff --git a/north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml b/north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml
index a230530..780b238 100644
--- a/north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml
+++ b/north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml
@@ -837,6 +837,41 @@
;
</select>
+ <select id="getSelectOrderDetail" >
+ select * from sd.order_detail where order_id=#{orderId}
+ </select>
+
+ <insert id="insertOrderFinishedGoodsInventory" useGeneratedKeys="true" >
+ insert into mm.finished_goods_inventory (order_id,
+ order_number,
+ process_id,
+ inventory,
+ actual_signal_area,
+ area,
+ quantity_available,
+ warehouse_number,
+ storage_region,
+ `status`,
+ enter_storage_time,
+ update_time,
+ end_time,
+ remark
+ )
+ values (
+ #{orderDetail.orderId} ,#{orderDetail.orderNumber},"",#{orderDetail.quantity},#{orderDetail.computeArea},
+ #{orderDetail.computeGrossArea},
+ #{orderDetail.quantity},null,"",
+ 0,now(),now(),null,""
+ )
+ </insert>
+
+ <update id="updateOrderInventory">
+ update mm.finished_goods_inventory
+ set inventory=inventory+${orderDetail.quantity},quantity_available=quantity_available+${orderDetail.quantity},
+ update_time=now(),area=actual_signal_area*quantity_available
+ where order_number=#{orderDetail.orderNumber} and order_id=#{orderDetail.orderId}
+ </update>
+
diff --git a/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml b/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
index 1db248a..81466cb 100644
--- a/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
+++ b/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
@@ -100,7 +100,7 @@
and fol.remarks regexp #{finishedOperateLog.remarksr}
</if>
</where>
- order by fol.`status` desc
+ order by fol.operate_time desc
limit #{offset},#{pageSize};
</select>
@@ -677,5 +677,23 @@
</select>
+ <insert id="insertOrderFinishedOperateLog" useGeneratedKeys="true" >
+ insert into mm.finished_operate_log(operation_order_number,
+ order_id,
+ process_id,
+ operation_number,
+ operate_type,
+ operator,
+ quantity,
+ operate_time,
+ status
+ )
+ values (
+ #{oddNumber} ,#{orderDetail.orderId},"",#{orderDetail.orderNumber},"鍏ュ簱",#{userName},#{orderDetail.quantity},now(),"鏈鏍�"
+ )
+ </insert>
+
+
+
</mapper>
\ No newline at end of file
diff --git a/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
index aa75b65..573ebef 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
@@ -890,7 +890,7 @@
</select>
<select id="getSelectOrderPrinting" >
- select od.order_id,od.product_id,p.remarks as product_name,sum(od.compute_gross_area) as area,sum(od.gross_amount) as money,sum(od.quantity) as quantity from
+ select od.order_id,od.product_id,p.remarks as product_name,sum(od.compute_gross_area) as area,sum(od.gross_amount) as gross_amount ,sum(od.quantity) as quantity from
order_detail od left join product p on od.product_id=p.id
<where>
@@ -929,7 +929,7 @@
left join order_other_money oom on oom.order_id=dd.order_id and oom.column=#{key}
left join basic_other_money bom on bom.`column`=oom.`column`
where delivery_id = #{deliveryId}
- and od.order_id = #{orderId}
+ and od.order_id = #{orderId} and od.order_number=#{orderNumber} and (od.other_columns!='{}' or od.other_columns!=null)
</select>
<select id="getSelectOrderotherMoney" >
@@ -937,7 +937,7 @@
from order_detail od
left join order_other_money oom on oom.order_id=od.order_id and oom.column=#{key}
left join basic_other_money bom on bom.`column`=oom.`column`
- where od.order_id = #{orderId}
+ where od.order_id = #{orderId} and od.order_number=#{orderNumber} and (od.other_columns!='{}' or od.other_columns!=null)
</select>
<select id="getSelectOrderDetailPrinting" >
diff --git a/north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml
index 6f114d4..978b893 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml
@@ -728,12 +728,76 @@
</select>
<select id="exportOrderProductSummary" >
- SELECT
- *,
- a.create_time as createTime,
- d.type_name as level_one,
- e.type_name as level_two
- from order_detail as a
+ SELECT a.id,
+ a.order_id,
+ a.order_number,
+ a.building_number,
+ a.product_id,
+ a.product_name,
+ a.price,
+ sum(a.quantity) as quantity,
+ a.gross_amount,
+ a.width,
+ a.height,
+ a.shape,
+ sum(a.area) as area,
+ sum(a.gross_area) as gross_area,
+ sum(a.compute_area) as compute_area,
+ sum(a.compute_gross_area) as compute_gross_area,
+ a.processing_note,
+ a.remarks,
+ a.bend_radius,
+ a.edging_type,
+ a.weight,
+ a.perimeter,
+ a.other_columns,
+ a.warehouse_num,
+ a.delivery_num,
+ a.return_num,
+ a.state,
+ b.id,
+ b.order_id,
+ b.project,
+ b.customer_id,
+ b.customer_name,
+ b.order_type,
+ b.order_classify,
+ b.icon,
+ b.pack_type,
+ b.delivery_date,
+ b.batch,
+ b.calculate_type,
+ b.salesman_id,
+ b.salesman,
+ b.al_type,
+ b.money,
+ b.contract_id,
+ b.customer_batch,
+ b.contacts,
+ b.contact_number,
+ b.delivery_address,
+ b.other_money,
+ b.other_money_remarks,
+ b.processing_note,
+ b.other_remarks,
+ b.area,
+ b.quantity,
+ b.perimeter,
+ b.verifier_id,
+ b.verifier,
+ b.creator_id,
+ b.creator,
+ b.create_order,
+ b.process_review,
+ b.order_review,
+ b.production_order,
+ b.processing_card,
+ b.warehousing,
+ b.delivery,
+ b.create_time,
+ b.update_time,
+ d.type_name as level_one, e.type_name as level_two
+ from sd.order_detail as a
left join sd.`order` as b
on b.order_id = a.order_id
left join sd.product as c
@@ -742,8 +806,9 @@
on d.type_id = c.type_id
left join sd.basic_glass_type as e
on e.type_id = d.belong
- where date(a.create_time)>=#{dates[0]} and date(a.create_time) <= #{dates[1]}
- group by b.order_id,a.product_id
+ where date(a.create_time) >= #{dates[0]}
+ and date(a.create_time) <= #{dates[1]}
+ group by b.order_id, a.product_id
order by b.order_id desc
</select>
--
Gitblit v1.8.0