From 30177bfeff8b400e43501744060509bbb7ab22ae Mon Sep 17 00:00:00 2001
From: yiwenpeng <ywp303@163.com>
Date: Sat, 19 Nov 2022 10:38:57 +0800
Subject: [PATCH] 盘点任务记录调整排序规则

---
 src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderCheckCountController.java |  2 +-
 src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java                            | 36 +++++++++++++++++++++++++-----------
 src/main/java/com/huaheng/pc/task/taskHeader/service/WorkTaskService.java                                  |  2 ++
 src/main/resources/templates/inventory/checkCount/inventoryHeaderCheckCount.html                           | 45 ++++++++++++++++-----------------------------
 4 files changed, 44 insertions(+), 41 deletions(-)

diff --git a/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderCheckCountController.java b/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderCheckCountController.java
index be1d5cf..ed51ef1 100644
--- a/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderCheckCountController.java
+++ b/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderCheckCountController.java
@@ -103,7 +103,7 @@ public class InventoryHeaderCheckCountController extends BaseController
 
                 //货主
                 .in(InventoryHeader::getCompanyCode, ShiroUtils.getCompanyCodeList())
-                .orderByDesc(InventoryHeader::getId);
+                .orderByDesc(InventoryHeader::getLastUpdated);
 
         if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){
             //分页查询
diff --git a/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java b/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java
index f8fcf34..55b0ab1 100644
--- a/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java
+++ b/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java
@@ -723,11 +723,11 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
         inventoryHeaderErapper.last("limit 1");
         InventoryHeader header = inventoryHeaderService.getOne(inventoryHeaderErapper);
         if (header != null) {
-            LambdaQueryWrapper<InventoryDetail> inventory = Wrappers.lambdaQuery();
-            inventory.eq(InventoryDetail::getWarehouseCode, warehouseCode)
+            List<InventoryDetail> inventoryDetailList = inventoryDetailService.list(new LambdaQueryWrapper<InventoryDetail>()
+                    .eq(InventoryDetail::getWarehouseCode, warehouseCode)
                     .eq(InventoryDetail::getLocationCode, task.getToLocation())
-                    .eq(InventoryDetail::getContainerCode, task.getContainerCode());
-            List<InventoryDetail> inventoryDetailList = inventoryDetailService.list(inventory);
+                    .eq(InventoryDetail::getContainerCode, task.getContainerCode()));
+
             for (int i = 0; i < inventoryDetailList.size() - 1; i++) {
                 for (int j = inventoryDetailList.size() - 1; j > i; j--) {
                     InventoryDetail inventoryDetail = inventoryDetailList.get(i);
@@ -736,24 +736,25 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
                             && inventoryDetail.getBatch().equals(inventoryDetail2.getBatch())
                             && inventoryDetail.getLot().equals(inventoryDetail2.getLot())
                             && inventoryDetail.getProjectNo().equals(inventoryDetail2.getProjectNo())) {
+
                         //避免equals左右两边都为空报错,有一方不为空,两边不相等则continue
-                        if(StringUtils.isNotEmpty(inventoryDetail.getBatteryPackTwoCode())
-                                ||StringUtils.isNotEmpty(inventoryDetail2.getBatteryPackTwoCode())){
+                        if(StringUtils.isNotEmpty(inventoryDetail.getBatteryPackTwoCode()) ||StringUtils.isNotEmpty(inventoryDetail2.getBatteryPackTwoCode())){
                             if(!inventoryDetail.getBatteryPackTwoCode().equals(inventoryDetail2.getBatteryPackTwoCode())){
                                 continue;
                             }
                         }
-                        if(StringUtils.isNotEmpty(inventoryDetail.getBarcodeDetailsCode())
-                                ||StringUtils.isNotEmpty(inventoryDetail2.getBarcodeDetailsCode())){
+                        if(StringUtils.isNotEmpty(inventoryDetail.getBarcodeDetailsCode()) ||StringUtils.isNotEmpty(inventoryDetail2.getBarcodeDetailsCode())){
                             if(!inventoryDetail.getBarcodeDetailsCode().equals(inventoryDetail2.getBarcodeDetailsCode())){
                                 continue;
                             }
                         }
                         BigDecimal totalQty = inventoryDetailList.get(i).getQty().add(inventoryDetailList.get(j).getQty());
                         inventoryDetailList.get(i).setQty(totalQty);
+
                         LambdaQueryWrapper<InventoryDetail> wrapper = Wrappers.lambdaQuery();
                         wrapper.eq(InventoryDetail::getId, inventoryDetailList.get(i).getId());
                         inventoryDetailService.update(inventoryDetailList.get(i), wrapper);
+
                         LambdaQueryWrapper<InventoryDetail> wrapper2 = Wrappers.lambdaQuery();
                         wrapper2.eq(InventoryDetail::getId, inventoryDetailList.get(j).getId());
                         inventoryDetailService.remove(wrapper2);
@@ -766,7 +767,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
             int totalLines = 0;
             for (InventoryDetail inventoryDetail : inventoryDetailList) {
                 totalQty = totalQty.add(inventoryDetail.getQty());
-                if(StringUtils.isNotNull(inventoryDetail.getWeights())){
+                if (StringUtils.isNotNull(inventoryDetail.getWeights())) {
                     totalWeight = totalWeight.add(inventoryDetail.getWeights());
                 }
                 totalLines++;
@@ -774,8 +775,8 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
             header.setTotalQty(totalQty);
             header.setTotalLines(totalLines);
             header.setTotalWeight(totalWeight.toString());
-            Location location=locationService.getLocationByCode(header.getLocationCode());
-            if(location!=null&&location.getWeight()!=null&&location.getWeight().compareTo(new BigDecimal(0))>0){
+            Location location = locationService.getLocationByCode(header.getLocationCode());
+            if (location != null && location.getWeight() != null && location.getWeight().compareTo(new BigDecimal(0)) > 0) {
                 header.setTotalWeight(location.getWeight().toString());
             }
             header.setContainerStatus(QuantityConstant.STATUS_CONTAINER_SOME);
@@ -1050,4 +1051,17 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
         }
         return true;
     }
+
+
+    public static void main(String[] args) {
+        List<Integer> list=new ArrayList<>();
+        list.add(0, 1);
+        list.add(1, 2);
+        list.add(2, 3);
+        list.add(3, 4);
+        for (int i = 0; i < list.size() - 1; i++) {
+            for (int j = list.size() - 1; j > i; j--) {
+                System.out.println(i+","+j);
+            }}
+    }
 }
diff --git a/src/main/java/com/huaheng/pc/task/taskHeader/service/WorkTaskService.java b/src/main/java/com/huaheng/pc/task/taskHeader/service/WorkTaskService.java
index 3e7e397..c576a22 100644
--- a/src/main/java/com/huaheng/pc/task/taskHeader/service/WorkTaskService.java
+++ b/src/main/java/com/huaheng/pc/task/taskHeader/service/WorkTaskService.java
@@ -43,6 +43,7 @@ import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -1005,6 +1006,7 @@ public class WorkTaskService {
             //修改库存表checkcount字段为1
             InventoryHeader inventoryHeader=inventoryHeaderList.get(a);
             inventoryHeader.setCheckCount(1);
+            inventoryHeader.setLastUpdated(new Date());
             inventoryHeaderService.updateById(inventoryHeader);
             //生成AGV任务
             if(ShiroUtils.getUser()!=null&& Arrays.asList(QuantityConstant.USERID_AGV).contains(ShiroUtils.getUserId().toString())){
diff --git a/src/main/resources/templates/inventory/checkCount/inventoryHeaderCheckCount.html b/src/main/resources/templates/inventory/checkCount/inventoryHeaderCheckCount.html
index 4239863..78fc8d5 100644
--- a/src/main/resources/templates/inventory/checkCount/inventoryHeaderCheckCount.html
+++ b/src/main/resources/templates/inventory/checkCount/inventoryHeaderCheckCount.html
@@ -120,11 +120,6 @@
                     checkbox: true
                 },
                 {
-                    field: 'id',
-                    title: '头ID',
-                    sortable: true
-                },
-                {
                     field: 'warehouseCode',
                     title: '仓库 ',
                     visible: false
@@ -144,10 +139,6 @@
                         return actions.join('');
                     }
                 },
-                // {
-                //     field: 'barCodeHeaderCode',
-                //     title: '托盘号',
-                // },
                 {
                     field: 'companyCode',
                     title: '货主',
@@ -163,16 +154,6 @@
                         return actions.join('');
                     }
                 },
-                // {
-                //     field : 'batteryPackageWeight',
-                //     title : '电池包重量',
-                //     sortable: true
-                // },
-                // {
-                //     field : 'electricQuantity',
-                //     title : '电池包电量',
-                //     sortable: true
-                // },
                 {
                     field: 'locationCode',
                     title: '库位 ',
@@ -190,11 +171,12 @@
                         return $.table.selectDictLabel(containerStatus, value);
                     },
                     align: 'center',
+                    visible: false
                 },
                 {
                     field: 'totalWeight',
                     title: ' 总重量',
-                    visible: true
+                    visible: false
                 },
                 {
                     field: 'materialSkuQty',
@@ -236,24 +218,25 @@
                     title: ' 锁定备注',
                     visible: false
                 },
+
                 {
-                    field: 'created',
-                    title: ' 创建时间',
+                    field: 'lastUpdated',
+                    title: ' 更新时间',
                     align: 'center',
                 },
                 {
-                    field: 'createdBy',
-                    title: ' 创建用户',
+                    field: 'lastUpdatedBy',
+                    title: ' 更新用户',
                     align: 'center',
                 },
                 {
-                    field: 'lastUpdated',
-                    title: ' 更新时间',
+                    field: 'created',
+                    title: ' 库存入库时间',
                     align: 'center',
                 },
                 {
-                    field: 'lastUpdatedBy',
-                    title: ' 更新用户',
+                    field: 'createdBy',
+                    title: ' 创建用户',
                     align: 'center',
                 },
                 {
@@ -271,7 +254,11 @@
                     title: ' 自定义字段2',
                     visible: false
                 },
-
+                {
+                    field: 'id',
+                    title: '头ID',
+                    sortable: true
+                },
                 {
                     field: 'enable',
                     title: '状态',
--
libgit2 0.22.2