Merge branch 'main' into dyf-device

This commit is contained in:
2025-07-11 11:36:17 +08:00
6 changed files with 37 additions and 14 deletions

View File

@ -6,6 +6,7 @@ import com.fuyuanshen.app.domain.vo.AppFileVo;
import com.fuyuanshen.app.service.AppFileService; import com.fuyuanshen.app.service.AppFileService;
import com.fuyuanshen.common.core.domain.R; import com.fuyuanshen.common.core.domain.R;
import com.fuyuanshen.common.web.core.BaseController; import com.fuyuanshen.common.web.core.BaseController;
import jakarta.validation.constraints.NotEmpty;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -44,8 +45,8 @@ public class AppFileController extends BaseController {
/** /**
* 文件删除 * 文件删除
*/ */
@DeleteMapping("/delete") @DeleteMapping("/delete/{ids}")
public R<Void> delete(Long[] ids) { public R<Void> delete(@NotEmpty(message = "主键不能为空") @PathVariable Long[] ids) {
if(ids == null || ids.length == 0){ if(ids == null || ids.length == 0){
return R.fail("请选择要删除的文件"); return R.fail("请选择要删除的文件");
} }

View File

@ -16,6 +16,6 @@ public class AppFileDto {
/** /**
* 文件 * 文件
*/ */
private MultipartFile file; private MultipartFile[] files;
} }

View File

@ -4,6 +4,7 @@ import com.fuyuanshen.app.domain.bo.AppBusinessFileBo;
import com.fuyuanshen.app.domain.dto.AppFileDto; import com.fuyuanshen.app.domain.dto.AppFileDto;
import com.fuyuanshen.app.domain.vo.AppBusinessFileVo; import com.fuyuanshen.app.domain.vo.AppBusinessFileVo;
import com.fuyuanshen.app.domain.vo.AppFileVo; import com.fuyuanshen.app.domain.vo.AppFileVo;
import com.fuyuanshen.common.core.exception.ServiceException;
import com.fuyuanshen.common.oss.core.OssClient; import com.fuyuanshen.common.oss.core.OssClient;
import com.fuyuanshen.common.oss.factory.OssFactory; import com.fuyuanshen.common.oss.factory.OssFactory;
import com.fuyuanshen.common.satoken.utils.AppLoginHelper; import com.fuyuanshen.common.satoken.utils.AppLoginHelper;
@ -12,6 +13,7 @@ import com.fuyuanshen.system.service.ISysOssService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.util.List; import java.util.List;
@ -36,20 +38,32 @@ public class AppFileService {
public Boolean add(AppFileDto bo) { public Boolean add(AppFileDto bo) {
// 上传文件 MultipartFile[] files = bo.getFiles();
SysOssVo upload = sysOssService.upload(bo.getFile()); if(files == null || files.length == 0){
throw new ServiceException("请选择要上传的文件");
}
if(files.length > 5){
throw new ServiceException("最多只能上传5个文件");
}
for (int i = 0; i < files.length; i++) {
MultipartFile file = files[i];
// 上传文件
SysOssVo upload = sysOssService.upload(file);
if (upload == null) { if (upload == null) {
return false; return false;
}
AppBusinessFileBo appBusinessFileBo = new AppBusinessFileBo();
appBusinessFileBo.setFileId(upload.getOssId());
appBusinessFileBo.setBusinessId(bo.getDeviceId());
appBusinessFileBo.setFileType(bo.getFileType());
appBusinessFileBo.setCreateBy(AppLoginHelper.getUserId());
appBusinessFileService.insertByBo(appBusinessFileBo);
} }
AppBusinessFileBo appBusinessFileBo = new AppBusinessFileBo();
appBusinessFileBo.setFileId(upload.getOssId());
appBusinessFileBo.setBusinessId(bo.getDeviceId());
appBusinessFileBo.setFileType(bo.getFileType());
appBusinessFileBo.setCreateBy(AppLoginHelper.getUserId());
return appBusinessFileService.insertByBo(appBusinessFileBo); return true;
} }
public Boolean delete(Long[] ids) { public Boolean delete(Long[] ids) {

View File

@ -6,6 +6,11 @@ import lombok.Data;
public class AppFileVo { public class AppFileVo {
private Long id; private Long id;
/**
* 业务id
*/
private String businessId;
/** /**
* 文件id * 文件id
*/ */

View File

@ -5,7 +5,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<mapper namespace="com.fuyuanshen.app.mapper.AppBusinessFileMapper"> <mapper namespace="com.fuyuanshen.app.mapper.AppBusinessFileMapper">
<select id="queryAppFileList" resultType="com.fuyuanshen.app.domain.vo.AppFileVo"> <select id="queryAppFileList" resultType="com.fuyuanshen.app.domain.vo.AppFileVo">
select a.business_id id,a.file_id,b.file_name,b.url fileUrl from app_business_file a left join sys_oss b on a.file_id = b.oss_id select a.id,a.business_id,a.file_id,b.file_name,b.url fileUrl from app_business_file a left join sys_oss b on a.file_id = b.oss_id
where where
<if test="businessId != null"> <if test="businessId != null">
and a.business_id = #{businessId} and a.business_id = #{businessId}

View File

@ -97,6 +97,9 @@ public class Device extends TenantEntity {
@Schema(name = "设备状态") @Schema(name = "设备状态")
private Integer deviceStatus; private Integer deviceStatus;
/** /**
* 绑定状态 * 绑定状态
* 0 未绑定 * 0 未绑定