浏览代码

Merge branch 'wanghaicheng' of lift-manager/lift-server into develop

wanghaicheng 5 年之前
父节点
当前提交
6cb2cc98bb

+ 1 - 1
lift-batch-service/src/main/resources/mapper/LiftDataMapper.xml

@@ -32,7 +32,7 @@
         on
             p.region_id = r.id
         where
-            pclr.mt_company_id = #{mtCompanyId}
+            pclr.mt_company_id = #{mtCompanyId} and r.mt_company_id = pclr.mt_company_id
         <if test = "startTimeDateStr != null and startTimeDateStr != ''">
             and (
                 pclr.create_date <![CDATA[ >= ]]> #{startTimeDateStr}

+ 7 - 4
lift-business-service/src/main/java/cn/com/ty/lift/business/library/controller/LiftController.java

@@ -16,7 +16,10 @@ import cn.com.ty.lift.common.verify.Validator;
 import cn.com.xwy.boot.web.dto.RestResponse;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
@@ -172,7 +175,7 @@ public class LiftController {
      */
     @PostMapping("add")
     public RestResponse add(@Val @RequestBody LiftExtensionRequest request) {
-        Validator.valid(request,"mtCompanyId", "source", "mark","workerId","lift");
+        Validator.valid(request, "mtCompanyId", "source", "mark", "lift");
         liftService.validLiftRequest(request.getLift());
         return liftService.add(request);
     }
@@ -185,10 +188,10 @@ public class LiftController {
      */
     @PostMapping("modify")
     public RestResponse modify(@Val @RequestBody LiftRequest request) {
-        Validator.valid(request,"mtCompanyId" ,"workerId","lift");
+        Validator.valid(request, "mtCompanyId", "lift");
         Validator.valid(request.getLift(), "id");
         liftService.validLiftRequest(request.getLift());
-       return liftService.modify(request);
+        return liftService.modify(request);
     }
 
     /**

+ 7 - 7
lift-business-service/src/main/java/cn/com/ty/lift/business/maintenance/service/MaintenanceRecordService.java

@@ -255,14 +255,14 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
             rollback();
             return RestResponse.fail(MessageUtils.get("msg.add.fail"));
         }
-        //若保养时间在计划时间之前,则需要修改维保计划
-        //boolean compareResult = request.getCurrentTime().isBefore(plan.getPlanDate());
-        //if (compareResult) {
-        boolean modifyPlan = modifyPlan(request);
-        if (!modifyPlan) {
-            return RestResponse.fail(MessageUtils.get("msg.modify.fail"));
+        //超期保养,不修改保养计划
+        boolean compareResult = request.getCurrentTime().isAfter(plan.getPlanDate());
+        if (!compareResult) {
+            boolean modifyPlan = modifyPlan(request);
+            if (!modifyPlan) {
+                return RestResponse.fail(MessageUtils.get("msg.modify.fail"));
+            }
         }
-        //}
         Optional<Lift> lift = liftService.getOne(null, liftId);
         if (lift.isPresent()) {
             Lift l = lift.get();

+ 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);
     }

+ 25 - 25
lift-system-service/src/main/java/cn/com/ty/lift/system/user/service/impl/UserService.java

@@ -11,7 +11,6 @@ import cn.com.ty.lift.system.user.service.*;
 import cn.com.ty.lift.system.utils.PasswordUtils;
 import cn.com.xwy.boot.web.dto.RestResponse;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.commons.lang3.StringUtils;
@@ -22,10 +21,7 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpSession;
 import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -107,10 +103,10 @@ public class UserService implements IUserService {
 
     @Override
     public RestResponse list(UserRequest userRequest) {
-        IPage userAccountPage = new Page<>(userRequest.getPageNum(), userRequest.getPageSize());
-        userAccountPage = userAccountService.page(userAccountPage, new QueryWrapper<UserAccount>()
+        IPage userInfoPage = new Page<>(userRequest.getPageNum(), userRequest.getPageSize());
+        userInfoPage = userInfoService.page(userInfoPage, new QueryWrapper<UserInfo>()
                 //通过用户名模糊查询
-                .like(StringUtils.isNotBlank(userRequest.getQueryCondition()), "account",
+                .like(StringUtils.isNotBlank(userRequest.getQueryCondition()), "name",
                         userRequest.getQueryCondition())
                 .or()
                 //通过用户手机号模糊查询
@@ -118,25 +114,29 @@ public class UserService implements IUserService {
                         userRequest.getQueryCondition())
                 .eq("delete_flag", ApiConstants.DELETE_NO)
         );
-        List<UserAccount> userAccountList = userAccountPage.getRecords();
-        if (userAccountList != null && userAccountList.size() > 0) {
-            List<Long> userIdList = ProjectUtils.getAttrList(userAccountList, "userId", null);
-            Map<Long, UserInfo> userIdToUserInfo = userInfoService.userIdToInfo(userIdList);
+        List<UserInfo> userInfos = userInfoPage.getRecords();
+        if (userInfos != null && userInfos.size() > 0) {
+            //获取用户id
+            List<Long> userIds = userInfos.stream().map(UserInfo::getUserId).collect(Collectors.toList());
+            //根据用户id查询用户账号
+            Collection<UserAccount> userAccounts = userAccountService.listByIds(userIds);
             List<UserResponse> userResponseList = new ArrayList<>(10);
-            if (userIdToUserInfo != null && userIdToUserInfo.size() > 0) {
-                userAccountList.forEach(userAccount -> {
-                    UserResponse userResponse = new UserResponse();
-                    UserInfo userInfo = userIdToUserInfo.get(userAccount.getUserId());
-                    userResponse.setUserId(userAccount.getUserId());
-                    userResponse.setName(userInfo.getName());
-                    userResponse.setMobile(userInfo.getMobile());
-                    userResponse.setCreateTime(userAccount.getCreateDate());
-                    userResponseList.add(userResponse);
-                });
-            }
-            userAccountPage.setRecords(userResponseList);
+            //用户账号list转map
+            Map<Long, LocalDateTime> userAccountMap = userAccounts.stream().
+                    collect(Collectors.toMap(UserAccount::getUserId, UserAccount::getCreateDate, (k1, k2) -> k1));
+            userInfos.forEach(userInfo -> {
+                UserResponse userResponse = new UserResponse();
+                userResponse.setUserId(userInfo.getUserId());
+                userResponse.setName(userInfo.getName());
+                userResponse.setMobile(userInfo.getMobile());
+                //获取账号创建时间,数据库已证实没有空数据
+                LocalDateTime createDate = userAccountMap.get(userInfo.getUserId());
+                userResponse.setCreateTime(createDate != null ? createDate : LocalDateTime.now());
+                userResponseList.add(userResponse);
+            });
+            userInfoPage.setRecords(userResponseList);
         }
-        return RestResponse.success(userAccountPage, "获取用户信息成功");
+        return RestResponse.success(userInfoPage, "获取用户信息成功");
     }
 
     @Override

+ 2 - 2
lift-system-service/src/main/resources/mapper/MtCompanyUserMapper.xml

@@ -25,7 +25,7 @@
     </resultMap>
 
     <sql id="Base_Column_List">
-		id, mt_company_id, user_id, user_role, is_current_company, is_hx_registered, status, 
+		id, mt_company_id, user_id, user_role, is_current_company, is_hx_registered, status,
 		service_total, satisfaction_total, service_count, maintenance_total, emergency_total, 
 		lift_total, job, delete_flag, create_time, update_time, create_user_id,
 		update_user_id, repair_flag
@@ -45,7 +45,7 @@
 		select count(1) from emergency_repair er
 		where er.mt_company_id = #{companyId,jdbcType=BIGINT}
 		and er.worker_id = #{userId, jdbcType=BIGINT}
-		and er.status <![CDATA[ <> ]]> 4
+		and er.status not in (2,3)
 	</select>
 
     <!-- 获取用户电梯操作证信息 -->