远程升级
This commit is contained in:
parent
181edd0c77
commit
b5fcac8a04
@ -1,5 +1,6 @@
|
|||||||
package com.cdzy.operations.controller;
|
package com.cdzy.operations.controller;
|
||||||
|
|
||||||
|
import com.cdzy.common.enums.Message;
|
||||||
import com.cdzy.common.model.request.PageParam;
|
import com.cdzy.common.model.request.PageParam;
|
||||||
import com.cdzy.common.model.response.JsonResult;
|
import com.cdzy.common.model.response.JsonResult;
|
||||||
import com.cdzy.operations.enums.CommandType;
|
import com.cdzy.operations.enums.CommandType;
|
||||||
@ -13,6 +14,7 @@ import jakarta.annotation.Resource;
|
|||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -174,5 +176,15 @@ public class EbikeEcuInfoController {
|
|||||||
return JsonResult.success(result);
|
return JsonResult.success(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 上传远程升级文件
|
||||||
|
* @param file 文件
|
||||||
|
* @return 操作结果
|
||||||
|
*/
|
||||||
|
@GetMapping("upload")
|
||||||
|
public JsonResult<?> upload(@RequestParam("file") MultipartFile file) throws Exception {
|
||||||
|
String result = ebikeEcuInfoService.upload(file);
|
||||||
|
return JsonResult.success(Message.SUCCESS,result);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -5,6 +5,7 @@ import com.cdzy.operations.model.vo.EbikeEcuInfoBatchVo;
|
|||||||
import com.cdzy.operations.model.vo.EbikeEcuInfoVo;
|
import com.cdzy.operations.model.vo.EbikeEcuInfoVo;
|
||||||
import com.mybatisflex.core.service.IService;
|
import com.mybatisflex.core.service.IService;
|
||||||
import com.cdzy.operations.model.entity.EbikeEcuInfo;
|
import com.cdzy.operations.model.entity.EbikeEcuInfo;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -131,4 +132,9 @@ public interface EbikeEcuInfoService extends IService<EbikeEcuInfo> {
|
|||||||
*/
|
*/
|
||||||
boolean upgrade(EbikeEcuInfo ebikeEcuInfo,String url);
|
boolean upgrade(EbikeEcuInfo ebikeEcuInfo,String url);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 上传远程升级
|
||||||
|
* @param file 文件对象
|
||||||
|
*/
|
||||||
|
String upload(MultipartFile file) throws Exception;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -55,7 +55,7 @@ public class EbikeBatteryInfoServiceImpl extends ServiceImpl<EbikeBatteryInfoMap
|
|||||||
EbikeBatteryInfo batteryInfo = EbikeBatteryInfo.builder()
|
EbikeBatteryInfo batteryInfo = EbikeBatteryInfo.builder()
|
||||||
.operatorId(operatorId)
|
.operatorId(operatorId)
|
||||||
.batteryCode(code)
|
.batteryCode(code)
|
||||||
.batteryQr(minioUtil.getQrShowUrl(batteryUrl+code +batterySuffix))
|
.batteryQr(minioUtil.getShowUrl(batteryUrl+code +batterySuffix))
|
||||||
.createdBy(StpUtil.getLoginIdAsLong())
|
.createdBy(StpUtil.getLoginIdAsLong())
|
||||||
.build();
|
.build();
|
||||||
batteryInfos.add(batteryInfo);
|
batteryInfos.add(batteryInfo);
|
||||||
|
|||||||
@ -55,7 +55,7 @@ public class EbikeBikeQrServiceImpl extends ServiceImpl<EbikeBikeQrMapper, Ebike
|
|||||||
EbikeBikeQr ebikeBikeQr = EbikeBikeQr.builder()
|
EbikeBikeQr ebikeBikeQr = EbikeBikeQr.builder()
|
||||||
.operatorId(operatorId)
|
.operatorId(operatorId)
|
||||||
.bikeQrCode(code)
|
.bikeQrCode(code)
|
||||||
.bikeQr(minioUtil.getQrShowUrl(bikeUrl+code +bikeSuffix))
|
.bikeQr(minioUtil.getShowUrl(bikeUrl+code +bikeSuffix))
|
||||||
.createdBy(StpUtil.getLoginIdAsLong())
|
.createdBy(StpUtil.getLoginIdAsLong())
|
||||||
.status(BikeQrStatus.UN_BIND)
|
.status(BikeQrStatus.UN_BIND)
|
||||||
.build();
|
.build();
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import com.cdzy.operations.model.vo.EbikeEcuInfoBatchVo;
|
|||||||
import com.cdzy.operations.model.vo.EbikeEcuInfoVo;
|
import com.cdzy.operations.model.vo.EbikeEcuInfoVo;
|
||||||
import com.cdzy.operations.service.CommandService;
|
import com.cdzy.operations.service.CommandService;
|
||||||
import com.cdzy.operations.utils.EmqxApiClient;
|
import com.cdzy.operations.utils.EmqxApiClient;
|
||||||
|
import com.cdzy.operations.utils.MinioUtil;
|
||||||
import com.mybatisflex.core.query.QueryMethods;
|
import com.mybatisflex.core.query.QueryMethods;
|
||||||
import com.mybatisflex.core.query.QueryWrapper;
|
import com.mybatisflex.core.query.QueryWrapper;
|
||||||
import com.mybatisflex.core.util.StringUtil;
|
import com.mybatisflex.core.util.StringUtil;
|
||||||
@ -19,10 +20,12 @@ import com.cdzy.operations.mapper.EbikeEcuInfoMapper;
|
|||||||
import com.cdzy.operations.service.EbikeEcuInfoService;
|
import com.cdzy.operations.service.EbikeEcuInfoService;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
import static com.cdzy.operations.model.entity.table.EbikeBikeInfoTableDef.EBIKE_BIKE_INFO;
|
import static com.cdzy.operations.model.entity.table.EbikeBikeInfoTableDef.EBIKE_BIKE_INFO;
|
||||||
import static com.cdzy.operations.model.entity.table.EbikeEcuInfoTableDef.EBIKE_ECU_INFO;
|
import static com.cdzy.operations.model.entity.table.EbikeEcuInfoTableDef.EBIKE_ECU_INFO;
|
||||||
@ -45,6 +48,13 @@ public class EbikeEcuInfoServiceImpl extends ServiceImpl<EbikeEcuInfoMapper, Ebi
|
|||||||
@Resource
|
@Resource
|
||||||
private CommandService commandService;
|
private CommandService commandService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private MinioUtil minioUtil;
|
||||||
|
|
||||||
|
private static final String upgradeUrl = "/upgrade-file/";
|
||||||
|
|
||||||
|
private static final String upgradeSuffix = ".bin";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void saveEcu(EbikeEcuInfoVo ebikeEcuInfo) {
|
public void saveEcu(EbikeEcuInfoVo ebikeEcuInfo) {
|
||||||
EbikeEcuInfo ebikeEcuInfoEntity = EbikeEcuInfo.builder()
|
EbikeEcuInfo ebikeEcuInfoEntity = EbikeEcuInfo.builder()
|
||||||
@ -169,6 +179,14 @@ public class EbikeEcuInfoServiceImpl extends ServiceImpl<EbikeEcuInfoMapper, Ebi
|
|||||||
return commandService.upgrade(ebikeEcuInfo, url);
|
return commandService.upgrade(ebikeEcuInfo, url);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String upload(MultipartFile file) throws Exception {
|
||||||
|
String fileName = UUID.randomUUID().toString().replace("-", "");
|
||||||
|
String objectName = upgradeUrl + fileName + upgradeSuffix;
|
||||||
|
minioUtil.uploadFile(file.getInputStream() , objectName);
|
||||||
|
return minioUtil.getShowUrl(objectName);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean checkSnOrBikeCode(String ecuSn, String bikeCode) {
|
public boolean checkSnOrBikeCode(String ecuSn, String bikeCode) {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@ -25,8 +25,6 @@ public class MinioUtil {
|
|||||||
@Setter
|
@Setter
|
||||||
private static String bucketName;
|
private static String bucketName;
|
||||||
|
|
||||||
private static final String bikeUrl = "/bike-qr/";
|
|
||||||
|
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private MinioClient minioClient;
|
private MinioClient minioClient;
|
||||||
@ -65,8 +63,7 @@ public class MinioUtil {
|
|||||||
*/
|
*/
|
||||||
public void uploadFile(InputStream inputStream, String objectName) throws Exception{
|
public void uploadFile(InputStream inputStream, String objectName) throws Exception{
|
||||||
//上传文件
|
//上传文件
|
||||||
minioClient.putObject(PutObjectArgs.builder().bucket(bucketName).object(objectName)
|
uploadFile(inputStream, bucketName, objectName);
|
||||||
.stream(inputStream,-1,Integer.MAX_VALUE).build());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -275,7 +272,7 @@ public class MinioUtil {
|
|||||||
* 获取二维码展示路径
|
* 获取二维码展示路径
|
||||||
* @param objectName 文件名称
|
* @param objectName 文件名称
|
||||||
*/
|
*/
|
||||||
public String getQrShowUrl(String objectName){
|
public String getShowUrl(String objectName){
|
||||||
return baseUrl+objectName;
|
return baseUrl+objectName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user