rk
2 天以前 5df732ffe16b3f162422c2db61a78458e28c7f8d
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformEventServiceImpl.java
@@ -1,20 +1,26 @@
package com.doumee.service.business.impl;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.service.business.third.model.PageData;
import com.doumee.service.business.third.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.PlatformEventMapper;
import com.doumee.dao.business.model.Platform;
import com.doumee.dao.business.model.PlatformEvent;
import com.doumee.service.business.PlatformEventService;
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 com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.Objects;
/**
 * 月台车辆进出事件推送记录表Service实现
@@ -24,6 +30,8 @@
@Service
public class PlatformEventServiceImpl implements PlatformEventService {
    @Autowired
    private SystemDictDataBiz systemDictDataBiz;
    @Autowired
    private PlatformEventMapper platformEventMapper;
@@ -87,129 +95,142 @@
    @Override
    public PageData<PlatformEvent> findPage(PageWrap<PlatformEvent> pageWrap) {
        IPage<PlatformEvent> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        QueryWrapper<PlatformEvent> queryWrapper = new QueryWrapper<>();
        MPJLambdaWrapper<PlatformEvent> queryWrapper = new MPJLambdaWrapper<>();
        queryWrapper.selectAll(PlatformEvent.class)
                .selectAs(Platform::getName,PlatformEvent::getPlatformName)
                .leftJoin(Platform.class, Platform::getId,PlatformEvent::getPlatformId);
        Utils.MP.blankToNull(pageWrap.getModel());
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getId, pageWrap.getModel().getId());
            queryWrapper.eq(PlatformEvent::getId, pageWrap.getModel().getId());
        }
        if (pageWrap.getModel().getCreator() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getCreator, pageWrap.getModel().getCreator());
            queryWrapper.eq(PlatformEvent::getCreator, pageWrap.getModel().getCreator());
        }
        if (pageWrap.getModel().getCreateDate() != null) {
            queryWrapper.lambda().ge(PlatformEvent::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
            queryWrapper.lambda().le(PlatformEvent::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
            queryWrapper.ge(PlatformEvent::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
            queryWrapper.le(PlatformEvent::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
        }
        if (pageWrap.getModel().getEditor() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getEditor, pageWrap.getModel().getEditor());
            queryWrapper.eq(PlatformEvent::getEditor, pageWrap.getModel().getEditor());
        }
        if (pageWrap.getModel().getEditDate() != null) {
            queryWrapper.lambda().ge(PlatformEvent::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
            queryWrapper.lambda().le(PlatformEvent::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
            queryWrapper.ge(PlatformEvent::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
            queryWrapper.le(PlatformEvent::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
        }
        if (pageWrap.getModel().getIsdeleted() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getIsdeleted, pageWrap.getModel().getIsdeleted());
            queryWrapper.eq(PlatformEvent::getIsdeleted, pageWrap.getModel().getIsdeleted());
        }
        if (pageWrap.getModel().getRemark() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getRemark, pageWrap.getModel().getRemark());
            queryWrapper.eq(PlatformEvent::getRemark, pageWrap.getModel().getRemark());
        }
        if (pageWrap.getModel().getEventId() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getEventId, pageWrap.getModel().getEventId());
            queryWrapper.eq(PlatformEvent::getEventId, pageWrap.getModel().getEventId());
        }
        if (pageWrap.getModel().getEventType() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getEventType, pageWrap.getModel().getEventType());
            queryWrapper.eq(PlatformEvent::getEventType, pageWrap.getModel().getEventType());
        }
        if (pageWrap.getModel().getSrcType() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getSrcType, pageWrap.getModel().getSrcType());
            queryWrapper.eq(PlatformEvent::getSrcType, pageWrap.getModel().getSrcType());
        }
        if (pageWrap.getModel().getHappenTime() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getHappenTime, pageWrap.getModel().getHappenTime());
            queryWrapper.eq(PlatformEvent::getHappenTime, pageWrap.getModel().getHappenTime());
        }
        if (pageWrap.getModel().getSrcIndex() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getSrcIndex, pageWrap.getModel().getSrcIndex());
            queryWrapper.eq(PlatformEvent::getSrcIndex, pageWrap.getModel().getSrcIndex());
        }
        if (pageWrap.getModel().getSrcName() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getSrcName, pageWrap.getModel().getSrcName());
            queryWrapper.eq(PlatformEvent::getSrcName, pageWrap.getModel().getSrcName());
        }
        if (pageWrap.getModel().getStatus() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getStatus, pageWrap.getModel().getStatus());
            queryWrapper.eq(PlatformEvent::getStatus, pageWrap.getModel().getStatus());
        }
        if (pageWrap.getModel().getTimeout() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getTimeout, pageWrap.getModel().getTimeout());
            queryWrapper.eq(PlatformEvent::getTimeout, pageWrap.getModel().getTimeout());
        }
        if (pageWrap.getModel().getDataType() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getDataType, pageWrap.getModel().getDataType());
            queryWrapper.eq(PlatformEvent::getDataType, pageWrap.getModel().getDataType());
        }
        if (pageWrap.getModel().getSendTime() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getSendTime, pageWrap.getModel().getSendTime());
            queryWrapper.eq(PlatformEvent::getSendTime, pageWrap.getModel().getSendTime());
        }
        if (pageWrap.getModel().getDateTime() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getDateTime, pageWrap.getModel().getDateTime());
            queryWrapper.eq(PlatformEvent::getDateTime, pageWrap.getModel().getDateTime());
        }
        if (pageWrap.getModel().getIpAddress() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getIpAddress, pageWrap.getModel().getIpAddress());
            queryWrapper.eq(PlatformEvent::getIpAddress, pageWrap.getModel().getIpAddress());
        }
        if (pageWrap.getModel().getIpv6Address() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getIpv6Address, pageWrap.getModel().getIpv6Address());
            queryWrapper.eq(PlatformEvent::getIpv6Address, pageWrap.getModel().getIpv6Address());
        }
        if (pageWrap.getModel().getPortNo() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getPortNo, pageWrap.getModel().getPortNo());
            queryWrapper.eq(PlatformEvent::getPortNo, pageWrap.getModel().getPortNo());
        }
        if (pageWrap.getModel().getProtocol() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getProtocol, pageWrap.getModel().getProtocol());
            queryWrapper.eq(PlatformEvent::getProtocol, pageWrap.getModel().getProtocol());
        }
        if (pageWrap.getModel().getMacAddress() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getMacAddress, pageWrap.getModel().getMacAddress());
            queryWrapper.eq(PlatformEvent::getMacAddress, pageWrap.getModel().getMacAddress());
        }
        if (pageWrap.getModel().getChannelId() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getChannelId, pageWrap.getModel().getChannelId());
            queryWrapper.eq(PlatformEvent::getChannelId, pageWrap.getModel().getChannelId());
        }
        if (pageWrap.getModel().getActivePostCount() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getActivePostCount, pageWrap.getModel().getActivePostCount());
            queryWrapper.eq(PlatformEvent::getActivePostCount, pageWrap.getModel().getActivePostCount());
        }
        if (pageWrap.getModel().getEventState() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getEventState, pageWrap.getModel().getEventState());
            queryWrapper.eq(PlatformEvent::getEventState, pageWrap.getModel().getEventState());
        }
        if (pageWrap.getModel().getEventDescription() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getEventDescription, pageWrap.getModel().getEventDescription());
            queryWrapper.eq(PlatformEvent::getEventDescription, pageWrap.getModel().getEventDescription());
        }
        if (pageWrap.getModel().getChannelName() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getChannelName, pageWrap.getModel().getChannelName());
            queryWrapper.like(PlatformEvent::getChannelName, pageWrap.getModel().getChannelName());
        }
        if (pageWrap.getModel().getDeviceId() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getDeviceId, pageWrap.getModel().getDeviceId());
            queryWrapper.eq(PlatformEvent::getDeviceId, pageWrap.getModel().getDeviceId());
        }
        if (pageWrap.getModel().getHpno() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getHpno, pageWrap.getModel().getHpno());
            queryWrapper.eq(PlatformEvent::getHpno, pageWrap.getModel().getHpno());
        }
        if (pageWrap.getModel().getMotionStatus() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getMotionStatus, pageWrap.getModel().getMotionStatus());
            queryWrapper.eq(PlatformEvent::getMotionStatus, pageWrap.getModel().getMotionStatus());
        }
        if (pageWrap.getModel().getPlateNo() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getPlateNo, pageWrap.getModel().getPlateNo());
            queryWrapper.like(PlatformEvent::getPlateNo, pageWrap.getModel().getPlateNo());
        }
        if (pageWrap.getModel().getVehicleDoorStatus() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getVehicleDoorStatus, pageWrap.getModel().getVehicleDoorStatus());
            queryWrapper.eq(PlatformEvent::getVehicleDoorStatus, pageWrap.getModel().getVehicleDoorStatus());
        }
        if (pageWrap.getModel().getStockStatus() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getStockStatus, pageWrap.getModel().getStockStatus());
            queryWrapper.eq(PlatformEvent::getStockStatus, pageWrap.getModel().getStockStatus());
        }
        if (pageWrap.getModel().getPlateScore() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getPlateScore, pageWrap.getModel().getPlateScore());
            queryWrapper.eq(PlatformEvent::getPlateScore, pageWrap.getModel().getPlateScore());
        }
        if (pageWrap.getModel().getBackgroundImageContent() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getBackgroundImageContent, pageWrap.getModel().getBackgroundImageContent());
            queryWrapper.eq(PlatformEvent::getBackgroundImageContent, pageWrap.getModel().getBackgroundImageContent());
        }
        if (pageWrap.getModel().getPlatePictureContent() != null) {
            queryWrapper.lambda().eq(PlatformEvent::getPlatePictureContent, pageWrap.getModel().getPlatePictureContent());
            queryWrapper.eq(PlatformEvent::getPlatePictureContent, pageWrap.getModel().getPlatePictureContent());
        }
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                queryWrapper.orderByDesc(sortData.getProperty());
            } else {
                queryWrapper.orderByAsc(sortData.getProperty());
        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getPlatformName()), Platform::getName,pageWrap.getModel().getPlatformName());
        queryWrapper.ge(Objects.nonNull(pageWrap.getModel().getStartDate()), PlatformEvent::getCreateDate,pageWrap.getModel().getStartDate());
        queryWrapper.le(Objects.nonNull(pageWrap.getModel().getEndDate()),PlatformEvent::getCreateDate,pageWrap.getModel().getEndDate());
        queryWrapper.orderByDesc(PlatformEvent::getCreateDate);
        PageData<PlatformEvent> result = PageData.from(platformEventMapper.selectJoinPage(page, PlatformEvent.class,queryWrapper));
        if(result!=null && result.getRecords()!=null){
            String prefixUrl = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +
                    systemDictDataBiz.queryByCode(Constants.FTP,Constants.PLATFORM_EVENT_IMG).getCode();
            for(PlatformEvent model : result.getRecords()){
                if(StringUtils.isNotBlank(model.getPlateNo())){
                    model.setPlateNo(model.getPlateNo().replace("蓝", "").replace("黄", ""));
                }
                if(StringUtils.isNotBlank(model.getBackgroundImageDown())){
                    model.setBackgroundImageDown(prefixUrl + model.getBackgroundImageDown());
                }
            }
        }
        return PageData.from(platformEventMapper.selectPage(page, queryWrapper));
        return  result;
    }
    @Override