This commit is contained in:
2025-12-22 11:24:30 +08:00
parent 1f37db80d8
commit 85e4513284
19 changed files with 1626 additions and 2 deletions

View File

@@ -0,0 +1,68 @@
package org.xyzh.api.workcase.dto;
import java.time.OffsetDateTime;
import org.xyzh.common.dto.BaseDTO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* @description 会议转录记录表数据对象DTO
* @filename TbMeetingTranscriptionDTO.java
* @author cascade
* @copyright xyzh
* @since 2025-12-22
*/
@Data
@Schema(description = "会议转录记录表对象")
public class TbMeetingTranscriptionDTO extends BaseDTO {
private static final long serialVersionUID = 1L;
@Schema(description = "转录记录ID")
private String transcriptionId;
@Schema(description = "会议ID")
private String meetingId;
@Schema(description = "说话人ID")
private String speakerId;
@Schema(description = "说话人名称")
private String speakerName;
@Schema(description = "说话人类型guest-来客 agent-客服")
private String speakerType;
@Schema(description = "转录文本内容")
private String content;
@Schema(description = "原始转录结果")
private String contentRaw;
@Schema(description = "语言")
private String language;
@Schema(description = "识别置信度0-1")
private Double confidence;
@Schema(description = "语音开始时间")
private OffsetDateTime speechStartTime;
@Schema(description = "语音结束时间")
private OffsetDateTime speechEndTime;
@Schema(description = "语音时长(毫秒)")
private Integer durationMs;
@Schema(description = "音频片段URL")
private String audioUrl;
@Schema(description = "片段序号")
private Integer segmentIndex;
@Schema(description = "是否最终结果")
private Boolean isFinal;
@Schema(description = "服务提供商")
private String serviceProvider;
}

View File

@@ -0,0 +1,53 @@
package org.xyzh.api.workcase.vo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.xyzh.common.vo.BaseVO;
import io.swagger.v3.oas.annotations.media.Schema;
import java.time.OffsetDateTime;
/**
* 会议参与记录VO
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Schema(description = "会议参与记录VO")
public class MeetingParticipantVO extends BaseVO {
private static final long serialVersionUID = 1L;
@Schema(description = "参与记录ID")
private String participantId;
@Schema(description = "会议ID")
private String meetingId;
@Schema(description = "用户ID")
private String userId;
@Schema(description = "用户类型guest-来客 agent-客服")
private String userType;
@Schema(description = "用户名称")
private String userName;
@Schema(description = "加入时间")
private OffsetDateTime joinTime;
@Schema(description = "离开时间")
private OffsetDateTime leaveTime;
@Schema(description = "参与时长(秒)")
private Integer durationSeconds;
@Schema(description = "参与时长(格式化)")
private String durationFormatted;
@Schema(description = "是否主持人")
private Boolean isModerator;
@Schema(description = "加入方式web-网页 mobile-移动端 desktop-桌面端")
private String joinMethod;
@Schema(description = "设备信息")
private String deviceInfo;
}

View File

@@ -0,0 +1,65 @@
package org.xyzh.api.workcase.vo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.xyzh.common.vo.BaseVO;
import io.swagger.v3.oas.annotations.media.Schema;
import java.time.OffsetDateTime;
/**
* 会议转录记录VO
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Schema(description = "会议转录记录VO")
public class MeetingTranscriptionVO extends BaseVO {
private static final long serialVersionUID = 1L;
@Schema(description = "转录记录ID")
private String transcriptionId;
@Schema(description = "会议ID")
private String meetingId;
@Schema(description = "说话人ID")
private String speakerId;
@Schema(description = "说话人名称")
private String speakerName;
@Schema(description = "说话人类型guest-来客 agent-客服")
private String speakerType;
@Schema(description = "转录文本内容")
private String content;
@Schema(description = "原始转录结果")
private String contentRaw;
@Schema(description = "语言")
private String language;
@Schema(description = "识别置信度0-1")
private Double confidence;
@Schema(description = "语音开始时间")
private OffsetDateTime speechStartTime;
@Schema(description = "语音结束时间")
private OffsetDateTime speechEndTime;
@Schema(description = "语音时长(毫秒)")
private Integer durationMs;
@Schema(description = "音频片段URL")
private String audioUrl;
@Schema(description = "片段序号")
private Integer segmentIndex;
@Schema(description = "是否最终结果")
private Boolean isFinal;
@Schema(description = "服务提供商")
private String serviceProvider;
}