From df3192f4e98377526d098928a9910c03e836c630 Mon Sep 17 00:00:00 2001
From: shiyj1101 <1098226878@qq.com>
Date: 星期五, 06 八月 2021 22:02:36 +0800
Subject: [PATCH] 优化戴拿

---
 service-fee/src/main/java/com/java110/fee/smo/impl/TempCarFeeConfigInnerServiceSMOImpl.java |   93 +++++++++++++++++++++++++++++++++++-----------
 1 files changed, 70 insertions(+), 23 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/smo/impl/TempCarFeeConfigInnerServiceSMOImpl.java b/service-fee/src/main/java/com/java110/fee/smo/impl/TempCarFeeConfigInnerServiceSMOImpl.java
old mode 100644
new mode 100755
index e782d2b..665ac09
--- a/service-fee/src/main/java/com/java110/fee/smo/impl/TempCarFeeConfigInnerServiceSMOImpl.java
+++ b/service-fee/src/main/java/com/java110/fee/smo/impl/TempCarFeeConfigInnerServiceSMOImpl.java
@@ -2,11 +2,14 @@
 
 
 import com.java110.core.base.smo.BaseServiceSMO;
-import com.java110.intf.fee.ITempCarFeeConfigInnerServiceSMO;
 import com.java110.dto.PageDto;
+import com.java110.dto.tempCarFeeConfig.TempCarFeeConfigAttrDto;
 import com.java110.dto.tempCarFeeConfig.TempCarFeeConfigDto;
-import com.java110.dto.user.UserDto;
+import com.java110.dto.tempCarFeeConfig.TempCarFeeRuleDto;
+import com.java110.dto.tempCarFeeConfig.TempCarFeeRuleSpecDto;
 import com.java110.fee.dao.ITempCarFeeConfigServiceDao;
+import com.java110.intf.fee.ITempCarFeeConfigAttrInnerServiceSMO;
+import com.java110.intf.fee.ITempCarFeeConfigInnerServiceSMO;
 import com.java110.utils.util.BeanConvertUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -29,6 +32,9 @@
     @Autowired
     private ITempCarFeeConfigServiceDao tempCarFeeConfigServiceDaoImpl;
 
+    @Autowired
+    private ITempCarFeeConfigAttrInnerServiceSMO tempCarFeeConfigAttrInnerServiceSMOImpl;
+
 
     @Override
     public List<TempCarFeeConfigDto> queryTempCarFeeConfigs(@RequestBody TempCarFeeConfigDto tempCarFeeConfigDto) {
@@ -43,36 +49,43 @@
 
         List<TempCarFeeConfigDto> tempCarFeeConfigs = BeanConvertUtil.covertBeanList(tempCarFeeConfigServiceDaoImpl.getTempCarFeeConfigInfo(BeanConvertUtil.beanCovertMap(tempCarFeeConfigDto)), TempCarFeeConfigDto.class);
 
+        refreshTempCarFeeConfig(tempCarFeeConfigs);
+
         return tempCarFeeConfigs;
     }
 
     /**
      * 浠庣敤鎴峰垪琛ㄤ腑鏌ヨ鐢ㄦ埛锛屽皢鐢ㄦ埛涓殑淇℃伅 鍒锋柊鍒� floor瀵硅薄涓�
      *
-     * @param tempCarFeeConfig 灏忓尯涓存椂杞︽敹璐规爣鍑嗕俊鎭�
-     * @param users            鐢ㄦ埛鍒楄〃
+     * @param tempCarFeeConfigs 灏忓尯涓存椂杞︽敹璐规爣鍑嗕俊鎭�
      */
-    private void refreshTempCarFeeConfig(TempCarFeeConfigDto tempCarFeeConfig, List<UserDto> users) {
-        for (UserDto user : users) {
-            if (tempCarFeeConfig.getConfigId().equals(user.getUserId())) {
-                BeanConvertUtil.covertBean(user, tempCarFeeConfig);
+    private void refreshTempCarFeeConfig(List<TempCarFeeConfigDto> tempCarFeeConfigs) {
+        if (tempCarFeeConfigs == null || tempCarFeeConfigs.size() < 1) {
+            return;
+        }
+        List<String> configIds = new ArrayList<>();
+        for (TempCarFeeConfigDto tempCarFeeConfigDto : tempCarFeeConfigs) {
+            configIds.add(tempCarFeeConfigDto.getConfigId());
+        }
+
+        TempCarFeeConfigAttrDto tempCarFeeConfigAttrDto = new TempCarFeeConfigAttrDto();
+        tempCarFeeConfigAttrDto.setConfigIds(configIds.toArray(new String[configIds.size()]));
+        tempCarFeeConfigAttrDto.setCommunityId(tempCarFeeConfigs.get(0).getCommunityId());
+        List<TempCarFeeConfigAttrDto> tempCarFeeConfigAttrDtos = tempCarFeeConfigAttrInnerServiceSMOImpl.queryTempCarFeeConfigAttrs(tempCarFeeConfigAttrDto);
+
+        if (tempCarFeeConfigAttrDtos == null || tempCarFeeConfigAttrDtos.size() < 1) {
+            return;
+        }
+        List<TempCarFeeConfigAttrDto> tempCarFeeConfigAttrDtoList = null;
+        for (TempCarFeeConfigDto tempCarFeeConfigDto : tempCarFeeConfigs) {
+            tempCarFeeConfigAttrDtoList = new ArrayList<>();
+            for (TempCarFeeConfigAttrDto tCarFeeConfigAttrDto : tempCarFeeConfigAttrDtos) {
+                if (tempCarFeeConfigDto.getConfigId().equals(tCarFeeConfigAttrDto.getConfigId())) {
+                    tempCarFeeConfigAttrDtoList.add(tCarFeeConfigAttrDto);
+                }
             }
+            tempCarFeeConfigDto.setTempCarFeeConfigAttrs(tempCarFeeConfigAttrDtoList);
         }
-    }
-
-    /**
-     * 鑾峰彇鎵归噺userId
-     *
-     * @param tempCarFeeConfigs 灏忓尯妤间俊鎭�
-     * @return 鎵归噺userIds 淇℃伅
-     */
-    private String[] getUserIds(List<TempCarFeeConfigDto> tempCarFeeConfigs) {
-        List<String> userIds = new ArrayList<String>();
-        for (TempCarFeeConfigDto tempCarFeeConfig : tempCarFeeConfigs) {
-            userIds.add(tempCarFeeConfig.getConfigId());
-        }
-
-        return userIds.toArray(new String[userIds.size()]);
     }
 
     @Override
@@ -80,6 +93,40 @@
         return tempCarFeeConfigServiceDaoImpl.queryTempCarFeeConfigsCount(BeanConvertUtil.beanCovertMap(tempCarFeeConfigDto));
     }
 
+    @Override
+    public List<TempCarFeeRuleDto> queryTempCarFeeRules(@RequestBody TempCarFeeRuleDto tempCarFeeRuleDto) {
+
+        List<TempCarFeeRuleDto> tempCarFeeRuleDtos = BeanConvertUtil.covertBeanList(tempCarFeeConfigServiceDaoImpl.queryTempCarFeeRules(BeanConvertUtil.beanCovertMap(tempCarFeeRuleDto)), TempCarFeeRuleDto.class);
+        freshRuleSpecs(tempCarFeeRuleDtos);
+        return tempCarFeeRuleDtos;
+    }
+
+    private void freshRuleSpecs(List<TempCarFeeRuleDto> tempCarFeeRuleDtos) {
+        if (tempCarFeeRuleDtos == null || tempCarFeeRuleDtos.size() < 1) {
+            return;
+        }
+        List<String> ruleIds = new ArrayList<>();
+        for (TempCarFeeRuleDto tempCarFeeRuleDto : tempCarFeeRuleDtos) {
+            ruleIds.add(tempCarFeeRuleDto.getRuleId());
+        }
+
+        TempCarFeeRuleSpecDto tempCarFeeRuleSpecDto = new TempCarFeeRuleSpecDto();
+        tempCarFeeRuleSpecDto.setRuleIds(ruleIds.toArray(new String[ruleIds.size()]));
+        List<TempCarFeeRuleSpecDto> tempCarFeeRuleSpecDtos = BeanConvertUtil.covertBeanList(
+                tempCarFeeConfigServiceDaoImpl.queryTempCarFeeRuleSpecs(
+                        BeanConvertUtil.beanCovertMap(tempCarFeeRuleSpecDto)), TempCarFeeRuleSpecDto.class);
+        List<TempCarFeeRuleSpecDto> tCarFeeRuleSpecDtos = null;
+        for (TempCarFeeRuleDto tempCarFeeRuleDto : tempCarFeeRuleDtos) {
+            tCarFeeRuleSpecDtos = new ArrayList<>();
+            for (TempCarFeeRuleSpecDto tCarFeeRuleSpecDto : tempCarFeeRuleSpecDtos) {
+                if (tempCarFeeRuleDto.getRuleId().equals(tCarFeeRuleSpecDto.getRuleId())) {
+                    tCarFeeRuleSpecDtos.add(tCarFeeRuleSpecDto);
+                }
+            }
+            tempCarFeeRuleDto.setTempCarFeeRuleSpecs(tCarFeeRuleSpecDtos);
+        }
+    }
+
     public ITempCarFeeConfigServiceDao getTempCarFeeConfigServiceDaoImpl() {
         return tempCarFeeConfigServiceDaoImpl;
     }

--
Gitblit v1.8.0