LAPTOP-FO2T5SIU\35838 7 months ago
parent
commit
97945b89ea

+ 21 - 9
pro-base/src/main/java/com/idea/buildManage/service/ParkRoomService.java

@@ -504,12 +504,15 @@ public class ParkRoomService implements BaseService<ParkRoom, ParkRoomExample> {
                             .andContentTypeNotEqualTo(7).andContractIdEqualTo(contractManage.getId())
                             .andStatusEqualTo(0).andPayTypeEqualTo(1);
                     List<PayLog> payLogs = payLogMapper.selectByExample(payLogExample);
-                    Date date = payLogs.stream().map(PayLog::getPayTime).max(Date::compareTo).get();
+                    Optional<Date> max = payLogs.stream().map(PayLog::getPayTime).max(Date::compareTo);
+                    Date date = max.orElse(null);
                     parkRoomNode = new ParkRoomNode();
                     parkRoomNode.setNodeName("预付款");
                     parkRoomNode.setBusinessType(ConstantNodeType.BUSINESS_TYPE_3);
                     parkRoomNode.setOrderNum(3);
-                    parkRoomNode.setHandleDate(date);
+                    if(date != null){
+                        parkRoomNode.setHandleDate(date);
+                    }
                     parkRoomNodes.add(parkRoomNode);
                 }
                 // 查询开票
@@ -519,12 +522,16 @@ public class ParkRoomService implements BaseService<ParkRoom, ParkRoomExample> {
                 if (CollectionUtils.isNotEmpty(invoiceManages)) {
 
                     //查询最大开票时间
-                    Date date = invoiceManages.stream().map(InvoiceManage::getInvoiceDate).max(Date::compareTo).get();
+                    Optional<InvoiceManage> max = invoiceManages.stream().filter(item->item.getInvoiceDate() !=null)
+                            .max(Comparator.comparing(InvoiceManage::getInvoiceDate));
+                    InvoiceManage invoiceManage = max.orElse(null);
                     parkRoomNode = new ParkRoomNode();
                     parkRoomNode.setNodeName("开票");
                     parkRoomNode.setBusinessType(ConstantNodeType.BUSINESS_TYPE_4);
                     parkRoomNode.setOrderNum(4);
-                    parkRoomNode.setHandleDate(date);
+                    if(invoiceManage != null){
+                        parkRoomNode.setHandleDate(invoiceManage.getInvoiceDate());
+                    }
                     parkRoomNodes.add(parkRoomNode);
                 }
 
@@ -568,13 +575,16 @@ public class ParkRoomService implements BaseService<ParkRoom, ParkRoomExample> {
                     List<BuyingMore> buyingMores = buyingMoreMapper.selectByExample(buyingMoreExample);
                     if (CollectionUtils.isNotEmpty(buyingMores)) {
 
-                        BuyingMore buyingMore = buyingMores.stream().max(Comparator.comparing(BuyingMore::getSigningDate)).get();
+                        Optional<BuyingMore> max = buyingMores.stream().max(Comparator.comparing(BuyingMore::getSigningDate));
+                        BuyingMore buyingMore = max.orElse(null);
 
                         parkRoomNode = new ParkRoomNode();
                         parkRoomNode.setNodeName("回购/增购");
                         parkRoomNode.setBusinessType(ConstantNodeType.BUSINESS_TYPE_7);
                         parkRoomNode.setOrderNum(7);
-                        parkRoomNode.setHandleDate(buyingMore.getSigningDate());
+                        if(buyingMore != null){
+                            parkRoomNode.setHandleDate(buyingMore.getSigningDate());
+                        }
                         parkRoomNodes.add(parkRoomNode);
                     }
 
@@ -606,9 +616,11 @@ public class ParkRoomService implements BaseService<ParkRoom, ParkRoomExample> {
         for (Integer key : result.keySet()) {
             ParkRoomHistory parkRoomHistory = result.get(key);
             List<ParkRoomNode> parkRoomNodes = parkRoomHistory.getParkRoomNodes();
-            ParkRoomNode max = parkRoomNodes.stream().max(Comparator.comparing(ParkRoomNode::getHandleDate)).get();
-            if (max != null) {
-                endDate = DateUtils.parseDateToStr("yyyy-MM-dd HH:mm",max.getHandleDate());
+            Optional<ParkRoomNode> max = parkRoomNodes.stream().filter(item -> item.getHandleDate() != null)
+                    .max(Comparator.comparing(ParkRoomNode::getHandleDate));
+            ParkRoomNode parkRoomNode = max.orElse(null);
+            if (parkRoomNode != null) {
+                endDate = DateUtils.parseDateToStr("yyyy-MM-dd HH:mm",parkRoomNode.getHandleDate());
             }
             Date handleDate = parkRoomNodes.get(0).getHandleDate();
             startDate = DateUtils.parseDateToStr("yyyy-MM-dd HH:mm",handleDate);

+ 15 - 5
pro-base/src/main/java/com/idea/customerManagement/service/CustomerManagementService.java

@@ -815,11 +815,21 @@ public class CustomerManagementService implements BaseService<CustomerManagement
                         }
 
                         // 选房日期
-                        if (StringUtils.isEmpty(excel.getRoomSelectionDate())) {
-                            roomSelectionDateFlag = false;
-                            builder.append("选房日期为空").append(",");
-                            excel.setRoomSelectionDate("{" + excel.getRoomSelectionDate() + "}");
-                        } else {
+//                        if (StringUtils.isEmpty(excel.getRoomSelectionDate())) {
+//                            roomSelectionDateFlag = false;
+//                            builder.append("选房日期为空").append(",");
+//                            excel.setRoomSelectionDate("{" + excel.getRoomSelectionDate() + "}");
+//                        } else {
+//                            try {
+//                                Date roomSelectionDate = DateUtils.parseDate(excel.getRoomSelectionDate(), "yyyy/MM/dd HH:mm");
+//                                data.setRoomSelectionDate(roomSelectionDate);
+//                            } catch (Exception e) {
+//                                roomSelectionDateFlag = false;
+//                                builder.append("选房日期格式有误").append(",");
+//                                excel.setRoomSelectionDate("{" + excel.getRoomSelectionDate() + "}");
+//                            }
+//                        }
+                        if(StringUtils.isNotEmpty(excel.getRoomSelectionDate())){
                             try {
                                 Date roomSelectionDate = DateUtils.parseDate(excel.getRoomSelectionDate(), "yyyy/MM/dd HH:mm");
                                 data.setRoomSelectionDate(roomSelectionDate);