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.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_call_log") public class AiCallLog implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty(value = "ID") @TableId(value = "id", type = IdType.AUTO) private Long id; @ApiModelProperty(value = "会话ID") private String sessionId; @ApiModelProperty(value = "诊断记录ID") private Long diagnosisId; @ApiModelProperty(value = "路由编码") private String routeCode; @ApiModelProperty(value = "模型编码") private String modelCode; @ApiModelProperty(value = "尝试序号") private Integer attemptNo; @ApiModelProperty(value = "请求时间") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date requestTime; @ApiModelProperty(value = "响应时间") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date responseTime; @ApiModelProperty(value = "耗时毫秒") private Long spendTime; @ApiModelProperty(value = "结果 1:成功 0:失败") private Integer result; @ApiModelProperty(value = "错误信息") private String err; @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; public String getResult$() { if (this.result == null) { return null; } return Integer.valueOf(1).equals(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 getRequestTime$() { if (Cools.isEmpty(this.requestTime)) { return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.requestTime); } public String getResponseTime$() { if (Cools.isEmpty(this.responseTime)) { return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.responseTime); } }