package com.vincent.rsf.server.system.entity;
|
|
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableLogic;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.vincent.rsf.framework.common.Cools;
|
import com.vincent.rsf.framework.common.SpringUtils;
|
import com.vincent.rsf.server.ai.constant.AiSceneCode;
|
import com.vincent.rsf.server.system.service.TenantService;
|
import com.vincent.rsf.server.system.service.UserService;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
import lombok.experimental.Accessors;
|
import org.springframework.format.annotation.DateTimeFormat;
|
|
import java.io.Serializable;
|
import java.text.SimpleDateFormat;
|
import java.util.Date;
|
|
@Data
|
@Accessors(chain = true)
|
@TableName("sys_ai_diagnosis_record")
|
public class AiDiagnosisRecord implements Serializable {
|
|
private static final long serialVersionUID = 1L;
|
|
@ApiModelProperty(value = "ID")
|
@TableId(value = "id", type = IdType.AUTO)
|
private Long id;
|
|
@ApiModelProperty(value = "诊断编号")
|
private String diagnosisNo;
|
|
@ApiModelProperty(value = "会话ID")
|
private String sessionId;
|
|
@ApiModelProperty(value = "场景编码")
|
private String sceneCode;
|
|
@ApiModelProperty(value = "问题")
|
private String question;
|
|
@ApiModelProperty(value = "结论")
|
private String conclusion;
|
|
@ApiModelProperty(value = "报告标题")
|
private String reportTitle;
|
|
@ApiModelProperty(value = "执行摘要")
|
private String executiveSummary;
|
|
@ApiModelProperty(value = "证据摘要")
|
private String evidenceSummary;
|
|
@ApiModelProperty(value = "建议动作")
|
private String actionSummary;
|
|
@ApiModelProperty(value = "风险评估")
|
private String riskSummary;
|
|
@ApiModelProperty(value = "报告Markdown")
|
private String reportMarkdown;
|
|
@ApiModelProperty(value = "工具摘要")
|
private String toolSummary;
|
|
@ApiModelProperty(value = "模型编码")
|
private String modelCode;
|
|
@ApiModelProperty(value = "结果 2:运行中 1:成功 0:失败")
|
private Integer result;
|
|
@ApiModelProperty(value = "错误信息")
|
private String err;
|
|
@ApiModelProperty(value = "开始时间")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
private Date startTime;
|
|
@ApiModelProperty(value = "结束时间")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
private Date endTime;
|
|
@ApiModelProperty(value = "耗时毫秒")
|
private Long spendTime;
|
|
@ApiModelProperty(value = "状态 1:正常 0:冻结")
|
private Integer status;
|
|
@ApiModelProperty(value = "是否删除 1:是 0:否")
|
@TableLogic
|
private Integer deleted;
|
|
@ApiModelProperty(value = "租户")
|
private Long tenantId;
|
|
@ApiModelProperty(value = "用户")
|
private Long userId;
|
|
@ApiModelProperty(value = "创建时间")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
private Date createTime;
|
|
@ApiModelProperty(value = "更新时间")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
private Date updateTime;
|
|
public String getSceneCode$() {
|
if (AiSceneCode.SYSTEM_DIAGNOSE.equals(this.sceneCode)) {
|
return "系统诊断";
|
}
|
if (AiSceneCode.GENERAL_CHAT.equals(this.sceneCode)) {
|
return "通用对话";
|
}
|
return this.sceneCode;
|
}
|
|
public String getResult$() {
|
if (this.result == null) {
|
return null;
|
}
|
if (Integer.valueOf(2).equals(this.result)) {
|
return "运行中";
|
}
|
if (Integer.valueOf(1).equals(this.result)) {
|
return "成功";
|
}
|
if (Integer.valueOf(0).equals(this.result)) {
|
return "失败";
|
}
|
return String.valueOf(this.result);
|
}
|
|
public String getUserId$() {
|
UserService service = SpringUtils.getBean(UserService.class);
|
User user = service.getById(this.userId);
|
if (!Cools.isEmpty(user)) {
|
return String.valueOf(user.getNickname());
|
}
|
return null;
|
}
|
|
public String getTenantId$() {
|
TenantService service = SpringUtils.getBean(TenantService.class);
|
Tenant tenant = service.getById(this.tenantId);
|
if (!Cools.isEmpty(tenant)) {
|
return String.valueOf(tenant.getName());
|
}
|
return null;
|
}
|
|
public String getStartTime$() {
|
if (Cools.isEmpty(this.startTime)) {
|
return "";
|
}
|
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.startTime);
|
}
|
|
public String getEndTime$() {
|
if (Cools.isEmpty(this.endTime)) {
|
return "";
|
}
|
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.endTime);
|
}
|
|
}
|