Parcourir la source

返回公司认证信息id,根据公司认证信息id,编辑公司信息

wang-hai-cheng il y a 4 ans
Parent
commit
5c5dd53b54

+ 24 - 13
lift-system-service/src/main/java/cn/com/ty/lift/system/settings/service/impl/MaintenanceCompanyServiceImpl.java

@@ -26,6 +26,7 @@ import cn.com.ty.lift.system.user.service.*;
 import cn.com.xwy.boot.web.dto.RestResponse;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.commons.lang3.StringUtils;
@@ -290,6 +291,15 @@ public class MaintenanceCompanyServiceImpl extends ServiceImpl<MaintenanceCompan
             List<Long> companyIdList = maintenanceCompanyList.stream()
                     .map(MaintenanceCompany::getId).collect(Collectors.toList());
 
+            //获取公司通过的认证信息
+            Collection<MtCompanyAttestation> mtCompanyAttestations = mtCompanyAttestationService.
+                    list(Wrappers.<MtCompanyAttestation>query().
+                            in("mt_company_id", companyIdList).
+                            eq("is_certificated", ApiConstants.CompanyConstants.MAINTENANCE_PASS));
+            //公司id对应的认证信息id
+            Map<Long, Long> companyAttestationMap = mtCompanyAttestations.stream().
+                    collect(Collectors.toMap(MtCompanyAttestation::getMtCompanyId, MtCompanyAttestation::getId, (k1, k2) -> k1));
+
             //获取企业对应的最近活跃时间
             List<CompanyActiveVo> companyActiveVoList = commonDataMapper.getCompanyLastActiveTime();
             Map<Long, LocalDateTime> companyToActiveTime = new HashMap<>();
@@ -335,7 +345,7 @@ public class MaintenanceCompanyServiceImpl extends ServiceImpl<MaintenanceCompan
             //循环设置认证公司信息
             for (MaintenanceCompany maintenanceCompany : maintenanceCompanyList) {
                 //设置认证企业信息
-                setConfirmCompany(confirmCompanyResponseList, companyIdToDealTime, mtCompanyIdToProjectNum,
+                setConfirmCompany(companyAttestationMap, confirmCompanyResponseList, companyIdToDealTime, mtCompanyIdToProjectNum,
                         companyIdToLiftData, mtCompanyIdToMtRecordNum, mtCompanyIdToEmergencyRecordNum,
                         companyToActiveTime, maintenanceCompany, contractStartDate, contractEndDate, vipFlags, limitedNums);
             }
@@ -350,7 +360,7 @@ public class MaintenanceCompanyServiceImpl extends ServiceImpl<MaintenanceCompan
      * @description 设置认证企业信息
      * @date 2020/2/19 6:53 下午
      */
-    private void setConfirmCompany(List<ConfirmCompanyResponse> confirmCompanyResponseList,
+    private void setConfirmCompany(Map<Long, Long> companyAttestationMap, List<ConfirmCompanyResponse> confirmCompanyResponseList,
                                    Map<Long, LocalDateTime> companyIdToDealTime,
                                    Map<Long, Long> mtCompanyIdToProjectNum,
                                    Map<Long, List<LiftMapDataModel>> companyIdToLiftData,
@@ -363,44 +373,45 @@ public class MaintenanceCompanyServiceImpl extends ServiceImpl<MaintenanceCompan
                                    Map<Long, Integer> vipFlags,
                                    Map<Long, Integer> limitedNums) {
         ConfirmCompanyResponse confirmCompanyResponse = new ConfirmCompanyResponse(maintenanceCompany);
-        //设置公司id
-        confirmCompanyResponse.setCompanyId(maintenanceCompany.getId());
+        Long companyId = maintenanceCompany.getId();
+        //设置公司认证表id,非公司id
+        confirmCompanyResponse.setCompanyId(companyAttestationMap.get(companyId));
         //设置认证时间
         if (companyIdToDealTime.size() > 0) {
-            confirmCompanyResponse.setConfirmTime(companyIdToDealTime.get(maintenanceCompany.getId()));
+            confirmCompanyResponse.setConfirmTime(companyIdToDealTime.get(companyId));
         }
         //设置公司项目数
         if (mtCompanyIdToProjectNum != null && mtCompanyIdToProjectNum.size() > 0) {
-            confirmCompanyResponse.setProjectNum(getLong(mtCompanyIdToProjectNum.get(maintenanceCompany.getId())));
+            confirmCompanyResponse.setProjectNum(getLong(mtCompanyIdToProjectNum.get(companyId)));
         }
         setLiftUnitsNum(companyIdToLiftData, maintenanceCompany, confirmCompanyResponse);
         //设置公司维保数
         if (mtCompanyIdToMtRecordNum != null && mtCompanyIdToMtRecordNum.size() > 0) {
-            confirmCompanyResponse.setMaintenanceNum(getLong(mtCompanyIdToMtRecordNum.get(maintenanceCompany.getId())));
+            confirmCompanyResponse.setMaintenanceNum(getLong(mtCompanyIdToMtRecordNum.get(companyId)));
         }
         //设置公司急修数
         if (mtCompanyIdToEmergencyRecordNum != null && mtCompanyIdToEmergencyRecordNum.size() > 0) {
-            confirmCompanyResponse.setEmergencyNum(getLong(mtCompanyIdToEmergencyRecordNum.get(maintenanceCompany.getId())));
+            confirmCompanyResponse.setEmergencyNum(getLong(mtCompanyIdToEmergencyRecordNum.get(companyId)));
         }
         //设置最后活跃时间
         if (companyToActiveTime != null && companyToActiveTime.size() > 0) {
-            confirmCompanyResponse.setLastActiveTime(companyToActiveTime.get(maintenanceCompany.getId()));
+            confirmCompanyResponse.setLastActiveTime(companyToActiveTime.get(companyId));
         }
         //设置合同开始时间
         if (contractStartDate != null && contractStartDate.size() > 0) {
-            confirmCompanyResponse.setContractStartDate(contractStartDate.get(maintenanceCompany.getId()));
+            confirmCompanyResponse.setContractStartDate(contractStartDate.get(companyId));
         }
         //设置合同结束时间
         if (contractEndDate != null && contractEndDate.size() > 0) {
-            confirmCompanyResponse.setContractEndDate(contractEndDate.get(maintenanceCompany.getId()));
+            confirmCompanyResponse.setContractEndDate(contractEndDate.get(companyId));
         }
         //设置企业是否是Vip
         if (vipFlags != null && vipFlags.size() > 0) {
-            confirmCompanyResponse.setVipFlag(vipFlags.get(maintenanceCompany.getId()));
+            confirmCompanyResponse.setVipFlag(vipFlags.get(companyId));
         }
         //设置企业限制台量
         if (limitedNums != null && limitedNums.size() > 0) {
-            confirmCompanyResponse.setLimitedNum(limitedNums.get(maintenanceCompany.getId()));
+            confirmCompanyResponse.setLimitedNum(limitedNums.get(companyId));
         }
         confirmCompanyResponseList.add(confirmCompanyResponse);
     }