rk
昨天 4ee00850f197d769481f73acb8ed79ab1c75b84d
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java
@@ -1,5 +1,7 @@
package com.doumee.service.business.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -7,6 +9,7 @@
import com.doumee.core.annotation.excel.ExcelImporter;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.utils.DateUtil;
import com.doumee.service.business.third.model.LoginUserInfo;
import com.doumee.service.business.third.model.PageData;
import com.doumee.service.business.third.model.PageWrap;
@@ -38,6 +41,8 @@
import java.math.BigDecimal;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
/**
 * 车辆信息表Service实现
@@ -355,7 +360,7 @@
    @Override
    public List<Cars> findList(Cars cars) {
        if(Objects.nonNull(cars)
        if(Objects.nonNull(cars) && Objects.nonNull(cars.getType())
        && Constants.equalsInteger(Constants.ZERO,cars.getType())){
            return this.getGwCar();
        }
@@ -510,7 +515,7 @@
        if(importing!=null && importing){
            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,已存在车辆导入任务正在执行中,请稍后再试!");
        }
        redisTemplate.opsForValue().set(Constants.RedisKeys.IMPORTING_CARS,true);
        redisTemplate.opsForValue().set(Constants.RedisKeys.IMPORTING_CARS,true,30, TimeUnit.MINUTES);
        try {
            ExcelImporter ie = null;
            List<CarsImport> dataList =null;
@@ -710,4 +715,71 @@
    }
    @Override
    public void jdyPushCarInfo(String dataInfo){
        JSONObject dataInfoJSON = JSONObject.parseObject(dataInfo);
        if(dataInfoJSON.isEmpty()){
            return;
        }
        String op = dataInfoJSON.getString("op");
        //删除:data_remove 新增:data_add 修改:data_update
        if(StringUtils.isEmpty(op)){
            return;
        }
        JSONObject dataJSON = dataInfoJSON.getJSONObject("data");
        String no = dataJSON.getString("_id");
        if(StringUtils.isEmpty(no)){
            return;
        }
        if(op.equals("data_remove")){
            carsMapper.update(new UpdateWrapper<Cars>().lambda()
                    .set(Cars::getEditDate, DateUtil.getCurrDate())
                    .set(Cars::getIsdeleted,Constants.ONE).eq(Cars::getJdyId,no));
            return;
        }
        String status = dataJSON.getString("status");
        String carCode = dataJSON.getString("car_code");
        Cars cars = carsMapper.selectOne(new QueryWrapper<Cars>()
                .lambda().eq(Cars::getJdyId,no).last("limit 1"));
        if(Objects.isNull(cars)){
            cars = new Cars();
            cars.setCreateDate(new Date());
            cars.setEditDate(new Date());
            cars.setJdyId(no);
        }else{
            cars.setEditDate(new Date());
        }
        cars.setIsdeleted(Constants.ZERO);
        cars.setCode(StringUtils.isBlank(carCode)?null:carCode);
        cars.setStatus(StringUtils.isNotBlank(status)&&StringUtils.equals(status,"可用")?0:1);
        JSONObject driverJSON = dataJSON.getJSONObject("driver");
        if(!driverJSON.isEmpty()){
            String driverName = driverJSON.getString("name");
            String driverUserName = driverJSON.getString("username");
            if(StringUtils.isNotBlank(driverUserName)){
                Member driverMember = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getIsdeleted,Constants.ZERO).eq(Member::getDdId,driverUserName).last("limit 1 "));
                if(Objects.nonNull(driverMember)){
                    cars.setMemberId(driverMember.getId());
                }
            }
        }
        JSONObject createJSON = dataJSON.getJSONObject("creator");
        if(!createJSON.isEmpty()){
            String createName = createJSON.getString("name");
            String createUserName = createJSON.getString("username");
            if(StringUtils.isNotBlank(createUserName)){
                Member createMember = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getIsdeleted,Constants.ZERO).eq(Member::getDdId,createUserName).last("limit 1 "));
                if(Objects.nonNull(createMember)){
                    cars.setMemberId(createMember.getId());
                }
            }
        }
        carsMapper.insertOrUpdate(cars);
    }
}