fix: 过鱼设施AI自动数据管理

This commit is contained in:
tangwei 2026-08-19 14:20:31 +08:00
parent 4d214f1d03
commit 2e7b6d6650
5 changed files with 90 additions and 18 deletions

View File

@ -108,10 +108,10 @@ public class SdFpssrlAiRController {
SdFpssrlAiR tempEntity = objectMapper.convertValue(engInfo, SdFpssrlAiR.class); SdFpssrlAiR tempEntity = objectMapper.convertValue(engInfo, SdFpssrlAiR.class);
applyUploadedFiles(tempEntity, picFiles, vdFiles); applyUploadedFiles(tempEntity, picFiles, vdFiles);
if (picFiles != null && !picFiles.isEmpty()) { if (picFiles != null && !picFiles.isEmpty()) {
engInfo.put("firstimgurl", tempEntity.getFirstImgUrl()); engInfo.put("firstimgurl", tempEntity.getFirstimgurl());
} }
if (vdFiles != null && !vdFiles.isEmpty()) { if (vdFiles != null && !vdFiles.isEmpty()) {
engInfo.put("videourl", tempEntity.getVideoUrl()); engInfo.put("videourl", tempEntity.getVideourl());
} }
boolean result = sdFpssrlAiRService.update(engInfo, request.getSource()); boolean result = sdFpssrlAiRService.update(engInfo, request.getSource());
@ -240,13 +240,13 @@ public class SdFpssrlAiRController {
if (picFiles != null && !picFiles.isEmpty()) { if (picFiles != null && !picFiles.isEmpty()) {
List<String> ids = attachmentUploadService.uploadMultipartFiles(picFiles); List<String> ids = attachmentUploadService.uploadMultipartFiles(picFiles);
if (!ids.isEmpty()) { if (!ids.isEmpty()) {
entity.setFirstImgUrl(mergeIds(entity.getFirstImgUrl(), ids)); entity.setFirstimgurl(mergeIds(entity.getFirstimgurl(), ids));
} }
} }
if (vdFiles != null && !vdFiles.isEmpty()) { if (vdFiles != null && !vdFiles.isEmpty()) {
List<String> ids = attachmentUploadService.uploadMultipartFiles(vdFiles); List<String> ids = attachmentUploadService.uploadMultipartFiles(vdFiles);
if (!ids.isEmpty()) { if (!ids.isEmpty()) {
entity.setVideoUrl(mergeIds(entity.getVideoUrl(), ids)); entity.setVideourl(mergeIds(entity.getVideourl(), ids));
} }
} }
} }
@ -272,14 +272,14 @@ public class SdFpssrlAiRController {
if (entity == null) { if (entity == null) {
return ids; return ids;
} }
if (StrUtil.isNotBlank(entity.getFirstImgUrl())) { if (StrUtil.isNotBlank(entity.getFirstimgurl())) {
Arrays.stream(entity.getFirstImgUrl().split(",")) Arrays.stream(entity.getFirstimgurl().split(","))
.map(String::trim) .map(String::trim)
.filter(StrUtil::isNotBlank) .filter(StrUtil::isNotBlank)
.forEach(ids::add); .forEach(ids::add);
} }
if (StrUtil.isNotBlank(entity.getVideoUrl())) { if (StrUtil.isNotBlank(entity.getVideourl())) {
Arrays.stream(entity.getVideoUrl().split(",")) Arrays.stream(entity.getVideourl().split(","))
.map(String::trim) .map(String::trim)
.filter(StrUtil::isNotBlank) .filter(StrUtil::isNotBlank)
.forEach(ids::add); .forEach(ids::add);

View File

@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yfd.platform.annotation.FieldChinese;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
@ -23,96 +25,131 @@ public class SdFpssrlAiR implements Serializable {
/** 主键ID */ /** 主键ID */
@TableId(type = IdType.ASSIGN_UUID) @TableId(type = IdType.ASSIGN_UUID)
@FieldChinese("主键ID")
private String id; private String id;
/** 过鱼设施编码 */ /** 过鱼设施编码 */
@FieldChinese("过鱼设施编码")
private String stcd; private String stcd;
/** 时间 */ /** 时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@FieldChinese("时间")
private Date tm; private Date tm;
/** 鱼种类 */ /** 鱼种类 */
@FieldChinese("鱼种类")
private String ftp; private String ftp;
/** 过鱼数量 */ /** 过鱼数量 */
@FieldChinese("过鱼数量")
private Integer fcnt; private Integer fcnt;
/** 鱼尺寸:大/中/小 */ /** 鱼尺寸:大/中/小 */
@FieldChinese("鱼尺寸")
private String fsz; private String fsz;
/** 鱼长度 */ /** 鱼长度 */
@FieldChinese("鱼长度")
private BigDecimal length; private BigDecimal length;
/** 鱼宽度 */ /** 鱼宽度 */
@FieldChinese("鱼宽度")
private BigDecimal width; private BigDecimal width;
/** 鱼速度 */ /** 鱼速度 */
@FieldChinese("鱼速度")
private String fishspeed; private String fishspeed;
/** 游向0=上行 1=下行 */ /** 游向0=上行 1=下行 */
@FieldChinese("游向")
private Integer direction; private Integer direction;
/** 鱼位置 */ /** 鱼位置 */
@FieldChinese("鱼位置")
private Long fishposition; private Long fishposition;
/** 鱼截图主图片url */ /** 鱼截图主图片url */
private String firstImgUrl; @FieldChinese("鱼截图主图片url")
private String firstimgurl;
/** 鱼截图副图片url */ /** 鱼截图副图片url */
private String secondImgUrl; @FieldChinese("鱼截图副图片url")
private String secondimgurl;
/** 视频url */ /** 视频url */
private String videoUrl; @FieldChinese("视频url")
private String videourl;
/** 水温:单位:℃ */ /** 水温:单位:℃ */
@FieldChinese("水温")
private BigDecimal temperature; private BigDecimal temperature;
/** 水位单位m */ /** 水位单位m */
@FieldChinese("水位")
private BigDecimal waterlevel; private BigDecimal waterlevel;
/** 流速单位m/s */ /** 流速单位m/s */
@FieldChinese("流速")
private BigDecimal speed; private BigDecimal speed;
/** 流量单位m3/s */ /** 流量单位m3/s */
@FieldChinese("流量")
private BigDecimal q; private BigDecimal q;
/** 溶氧单位mg/L */ /** 溶氧单位mg/L */
@FieldChinese("溶氧")
private BigDecimal dox; private BigDecimal dox;
/** 浊度单位NTU */ /** 浊度单位NTU */
@FieldChinese("浊度")
private Integer tu; private Integer tu;
/** 过鱼通道 */ /** 过鱼通道 */
@FieldChinese("过鱼通道")
private String channelno; private String channelno;
/** AI盒子编码 */ /** AI盒子编码 */
@FieldChinese("AI盒子编码")
private String aiBoxCode; private String aiBoxCode;
/** 创建人 */ /** 创建人 */
@FieldChinese("创建人")
private String recordUser; private String recordUser;
/** 创建时间 */ /** 创建时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@FieldChinese("创建时间")
private Date recordTime; private Date recordTime;
/** 更新人 */ /** 更新人 */
@FieldChinese("更新人")
private String modifyUser; private String modifyUser;
/** 更新时间 */ /** 更新时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@FieldChinese("更新时间")
private Date modifyTime; private Date modifyTime;
/** 是否已删除0=未删除 1=已删除 */ /** 是否已删除0=未删除 1=已删除 */
@FieldChinese("是否已删除")
private Integer isDeleted; private Integer isDeleted;
/** 删除人 */ /** 删除人 */
@FieldChinese("删除人")
private String deleteUser; private String deleteUser;
/** 删除时间 */ /** 删除时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@FieldChinese("删除时间")
private Date deleteTime; private Date deleteTime;
/** 附件ID */ /** 附件ID */
@FieldChinese("附件ID")
private String fid; private String fid;
/** 备注 */ /** 备注 */
@FieldChinese("备注")
private String remark; private String remark;
/** 鱼种类名称(非表字段,用于列表展示) */ /** 鱼种类名称(非表字段,用于列表展示) */

View File

@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yfd.platform.annotation.FieldChinese;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
@ -25,155 +27,188 @@ public class SdFpssrlR implements Serializable {
* 主键ID * 主键ID
*/ */
@TableId(type = IdType.ASSIGN_UUID) @TableId(type = IdType.ASSIGN_UUID)
@FieldChinese("主键ID")
private String id; private String id;
/** /**
* 过鱼设施编码 * 过鱼设施编码
*/ */
@FieldChinese("过鱼设施编码")
private String stcd; private String stcd;
/** /**
* 时间 * 时间
*/ */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@FieldChinese("时间")
private Date tm; private Date tm;
/** /**
* 鱼种类 * 鱼种类
*/ */
@FieldChinese("鱼种类")
private String ftp; private String ftp;
/** /**
* 过鱼数量 * 过鱼数量
*/ */
@FieldChinese("过鱼数量")
private Integer fcnt; private Integer fcnt;
/** /**
* 鱼尺寸// * 鱼尺寸//
*/ */
@FieldChinese("鱼尺寸")
private String fsz; private String fsz;
/** /**
* 鱼长度 * 鱼长度
*/ */
@FieldChinese("鱼长度")
private BigDecimal length; private BigDecimal length;
/** /**
* 鱼宽度 * 鱼宽度
*/ */
@FieldChinese("鱼宽度")
private BigDecimal width; private BigDecimal width;
/** /**
* 鱼速度 * 鱼速度
*/ */
@FieldChinese("鱼速度")
private String fishspeed; private String fishspeed;
/** /**
* 游向0=上行 1=下行 * 游向0=上行 1=下行
*/ */
@FieldChinese("游向")
private Integer direction; private Integer direction;
/** /**
* 鱼位置 * 鱼位置
*/ */
@FieldChinese("鱼位置")
private Long fishposition; private Long fishposition;
/** /**
* 鱼截图主图片url * 鱼截图主图片url
*/ */
@TableField("FIRSTIMGURL") @TableField("FIRSTIMGURL")
@FieldChinese("鱼截图主图片url")
private String firstimgurl; private String firstimgurl;
/** /**
* 鱼截图副图片url * 鱼截图副图片url
*/ */
@TableField("SECONDIMGURL") @TableField("SECONDIMGURL")
@FieldChinese("鱼截图副图片url")
private String secondimgurl; private String secondimgurl;
/** /**
* 视频url * 视频url
*/ */
@TableField("VIDEOURL") @TableField("VIDEOURL")
@FieldChinese("视频url")
private String videourl; private String videourl;
/** /**
* 水温单位 * 水温单位
*/ */
@FieldChinese("水温")
private BigDecimal temperature; private BigDecimal temperature;
/** /**
* 水位单位m * 水位单位m
*/ */
@FieldChinese("水位")
private BigDecimal waterlevel; private BigDecimal waterlevel;
/** /**
* 流速单位m/s * 流速单位m/s
*/ */
@FieldChinese("流速")
private BigDecimal speed; private BigDecimal speed;
/** /**
* 流量单位m3/s * 流量单位m3/s
*/ */
@FieldChinese("流量")
private BigDecimal q; private BigDecimal q;
/** /**
* 溶氧单位mg/L * 溶氧单位mg/L
*/ */
@FieldChinese("溶氧")
private BigDecimal dox; private BigDecimal dox;
/** /**
* 浊度单位NTU * 浊度单位NTU
*/ */
@FieldChinese("浊度")
private Integer tu; private Integer tu;
/** /**
* 过鱼通道 * 过鱼通道
*/ */
@FieldChinese("过鱼通道")
private String channelno; private String channelno;
/** /**
* 创建人关联SYS_USER.ID * 创建人关联SYS_USER.ID
*/ */
@FieldChinese("创建人")
private String recordUser; private String recordUser;
/** /**
* 创建时间 * 创建时间
*/ */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@FieldChinese("创建时间")
private Date recordTime; private Date recordTime;
/** /**
* 更新人关联SYS_USER.ID * 更新人关联SYS_USER.ID
*/ */
@FieldChinese("更新人")
private String modifyUser; private String modifyUser;
/** /**
* 更新时间 * 更新时间
*/ */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@FieldChinese("更新时间")
private Date modifyTime; private Date modifyTime;
/** /**
* 是否已删除0=未删除 1=已删除 * 是否已删除0=未删除 1=已删除
*/ */
@FieldChinese("是否已删除")
private Integer isDeleted; private Integer isDeleted;
/** /**
* 删除人关联SYS_USER.ID * 删除人关联SYS_USER.ID
*/ */
@FieldChinese("删除人")
private String deleteUser; private String deleteUser;
/** /**
* 删除时间 * 删除时间
*/ */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@FieldChinese("删除时间")
private Date deleteTime; private Date deleteTime;
/** /**
* 附件ID * 附件ID
*/ */
@FieldChinese("附件ID")
private String fid; private String fid;
/** /**
* 备注 * 备注
*/ */
@FieldChinese("备注")
private String remark; private String remark;
/** /**

View File

@ -128,9 +128,9 @@ public class SdFpssrlAiRServiceImpl extends ServiceImpl<SdFpssrlAiRMapper, SdFps
entity.setFishspeed(req.getFishspeed()); entity.setFishspeed(req.getFishspeed());
entity.setDirection(req.getDirection()); entity.setDirection(req.getDirection());
entity.setFishposition(req.getFishposition()); entity.setFishposition(req.getFishposition());
entity.setFirstImgUrl(req.getFirstImgUrl()); entity.setFirstimgurl(req.getFirstImgUrl());
entity.setSecondImgUrl(req.getSecondImgUrl()); entity.setSecondimgurl(req.getSecondImgUrl());
entity.setVideoUrl(req.getVideoUrl()); entity.setVideourl(req.getVideoUrl());
entity.setTemperature(req.getTemperature()); entity.setTemperature(req.getTemperature());
entity.setWaterlevel(req.getWaterlevel()); entity.setWaterlevel(req.getWaterlevel());
entity.setSpeed(req.getSpeed()); entity.setSpeed(req.getSpeed());

View File

@ -171,9 +171,9 @@ public class SdFpssrlRServiceImpl extends ServiceImpl<SdFpssrlRMapper, SdFpssrlR
entity.setFishspeed(req.getFishspeed()); entity.setFishspeed(req.getFishspeed());
entity.setDirection(req.getDirection()); entity.setDirection(req.getDirection());
entity.setFishposition(req.getFishposition()); entity.setFishposition(req.getFishposition());
entity.setFirstImgUrl(req.getFirstImgUrl()); entity.setFirstimgurl(req.getFirstImgUrl());
entity.setSecondImgUrl(req.getSecondImgUrl()); entity.setSecondimgurl(req.getSecondImgUrl());
entity.setVideoUrl(req.getVideoUrl()); entity.setVideourl(req.getVideoUrl());
entity.setTemperature(req.getTemperature()); entity.setTemperature(req.getTemperature());
entity.setWaterlevel(req.getWaterlevel()); entity.setWaterlevel(req.getWaterlevel());
entity.setSpeed(req.getSpeed()); entity.setSpeed(req.getSpeed());