Commit 8fe718d7 by gdj

增加机队用户和机队设备表。

parent 5040ac0d
package com.dji.sample.manage.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dji.sample.manage.model.entity.FleetDeviceEntity;
/**
* @author guan
*/
public interface IFleetDeviceMapper extends BaseMapper<FleetDeviceEntity> {
}
package com.dji.sample.manage.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dji.sample.manage.model.entity.FleetUserEntity;
/**
* @author guan
*/
public interface IFleetUserMapper extends BaseMapper<FleetUserEntity> {
}
\ No newline at end of file
package com.dji.sample.manage.model.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author guan
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class FleetDeviceDTO implements Serializable {
private Integer id;
private String fleetId;
private String deviceId;
/**
* 设备型号
*/
private String deviceEnumName;
/**
* 设备昵称
*/
private String deviceNickname;
}
package com.dji.sample.manage.model.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author guan
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class FleetUserDTO implements Serializable {
private Integer id;
private String fleetId;
private String userId;
private String userTypeName;
private String username;
}
package com.dji.sample.manage.model.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author guan
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName(value = "manage_fleet_device")
public class FleetDeviceEntity implements Serializable {
@TableId(type = IdType.AUTO)
private Integer id;
@TableField(value = "fleet_id")
private String fleetId;
@TableField(value = "device_id")
private String deviceId;
}
\ No newline at end of file
package com.dji.sample.manage.model.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author guan
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName(value = "manage_fleet_user")
public class FleetUserEntity implements Serializable {
@TableId(type = IdType.AUTO)
private Integer id;
@TableField(value = "fleet_id")
private String fleetId;
@TableField(value = "user_id")
private String userId;
}
package com.dji.sample.manage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dji.sample.manage.model.dto.FleetDeviceDTO;
import com.dji.sample.manage.model.entity.FleetDeviceEntity;
import java.util.List;
/**
* @author guan
*/
public interface IFleetDeviceService extends IService<FleetDeviceEntity> {
void addFleetDevice(List<FleetDeviceEntity> deviceList);
List<FleetDeviceDTO> searchDeviceDTOListByFleetId(String fleetId);
}
package com.dji.sample.manage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dji.sample.manage.model.dto.FleetUserDTO;
import com.dji.sample.manage.model.entity.FleetUserEntity;
import java.util.List;
/**
* @author guan
*/
public interface IFleetUserService extends IService<FleetUserEntity> {
void addFleetUser(List<FleetUserEntity> userList);
List<FleetUserDTO> searchUserDTOListByFleetId(String fleetId);
}
package com.dji.sample.manage.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dji.sample.manage.dao.IFleetDeviceMapper;
import com.dji.sample.manage.model.dto.FleetDeviceDTO;
import com.dji.sample.manage.model.entity.DeviceEntity;
import com.dji.sample.manage.model.entity.FleetDeviceEntity;
import com.dji.sample.manage.service.IDeviceService;
import com.dji.sample.manage.service.IFleetDeviceService;
import com.dji.sdk.cloudapi.device.DeviceEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
/**
* @author guan
*/
@Service
@Transactional
public class FleetDeviceServiceImpl extends ServiceImpl<IFleetDeviceMapper, FleetDeviceEntity> implements IFleetDeviceService {
@Autowired
private IFleetDeviceMapper mapper;
@Autowired
private IDeviceService deviceService;
@Override
public void addFleetDevice(List<FleetDeviceEntity> deviceList) {
for (FleetDeviceEntity addDevice : deviceList) {
this.mapper.insert(addDevice);
}
}
@Override
public List<FleetDeviceDTO> searchDeviceDTOListByFleetId(String fleetId) {
LambdaQueryWrapper<FleetDeviceEntity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(FleetDeviceEntity::getFleetId, fleetId);
List<FleetDeviceEntity> fleetDeviceEntities = this.mapper.selectList(queryWrapper);
List<FleetDeviceDTO> deviceDTOList = new ArrayList<>();
for (FleetDeviceEntity fleetDeviceEntity : fleetDeviceEntities) {
deviceDTOList.add(fleetDeviceEntityToDTO(fleetDeviceEntity));
}
return deviceDTOList;
}
public FleetDeviceDTO fleetDeviceEntityToDTO(FleetDeviceEntity entity) {
FleetDeviceDTO fleetDeviceDTO = new FleetDeviceDTO();
fleetDeviceDTO.setId(entity.getId());
fleetDeviceDTO.setDeviceId(entity.getDeviceId());
fleetDeviceDTO.setFleetId(entity.getFleetId());
// 查询设备信息
LambdaQueryWrapper<DeviceEntity> deviceQueryWrapper = new LambdaQueryWrapper<>();
deviceQueryWrapper.eq(DeviceEntity::getId, fleetDeviceDTO.getDeviceId());
DeviceEntity device = deviceService.getOne(deviceQueryWrapper);
fleetDeviceDTO.setDeviceNickname(device.getNickname());
// 型号
DeviceEnum deviceEnum = DeviceEnum.find(device.getDomain(), device.getDeviceType(), device.getSubType());
fleetDeviceDTO.setDeviceEnumName(deviceEnum.name());
return fleetDeviceDTO;
}
}
package com.dji.sample.manage.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dji.sample.manage.dao.IFleetUserMapper;
import com.dji.sample.manage.model.dto.FleetUserDTO;
import com.dji.sample.manage.model.entity.FleetUserEntity;
import com.dji.sample.manage.model.entity.UserEntity;
import com.dji.sample.manage.model.enums.UserTypeEnum;
import com.dji.sample.manage.service.IFleetUserService;
import com.dji.sample.manage.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
/**
* @author guan
*/
@Service
@Transactional
public class FleetUserServiceImpl extends ServiceImpl<IFleetUserMapper, FleetUserEntity> implements IFleetUserService {
@Autowired
private IFleetUserMapper mapper;
@Autowired
private IUserService userService;
@Override
public void addFleetUser(List<FleetUserEntity> userList) {
for (FleetUserEntity addUser : userList) {
this.mapper.insert(addUser);
}
}
@Override
public List<FleetUserDTO> searchUserDTOListByFleetId(String fleetId) {
LambdaQueryWrapper<FleetUserEntity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(FleetUserEntity::getFleetId, fleetId);
List<FleetUserEntity> fleetUserEntities = this.mapper.selectList(queryWrapper);
List<FleetUserDTO> userDTOList = new ArrayList<>();
for (FleetUserEntity fleetUserEntity : fleetUserEntities) {
userDTOList.add(fleetUserEntityToDTO(fleetUserEntity));
}
return userDTOList;
}
public FleetUserDTO fleetUserEntityToDTO(FleetUserEntity entity) {
FleetUserDTO fleetUserDTO = new FleetUserDTO();
fleetUserDTO.setId(entity.getId());
fleetUserDTO.setFleetId(entity.getFleetId());
fleetUserDTO.setUserId(entity.getUserId());
// 查询 user
LambdaQueryWrapper<UserEntity> userQueryWrapper = new LambdaQueryWrapper<>();
userQueryWrapper.eq(UserEntity::getId, fleetUserDTO.getUserId());
UserEntity user = userService.getOne(userQueryWrapper);
fleetUserDTO.setUsername(user.getUsername());
fleetUserDTO.setUserTypeName(UserTypeEnum.find(user.getUserType()).name());
return fleetUserDTO;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment