20 changed files with 4471 additions and 1639 deletions
-
62chenhai-admin/src/main/java/com/chenhai/web/controller/vet/VetKnowledgeController.java
-
2chenhai-admin/src/main/java/com/chenhai/web/controller/vet/VetProductController.java
-
152chenhai-admin/src/main/java/com/chenhai/web/controller/vet/VetTrainingVideoController.java
-
94chenhai-system/src/main/java/com/chenhai/vet/domain/VetKnowledge.java
-
283chenhai-system/src/main/java/com/chenhai/vet/domain/VetTrainingVideo.java
-
23chenhai-system/src/main/java/com/chenhai/vet/mapper/VetTrainingVideoMapper.java
-
48chenhai-system/src/main/java/com/chenhai/vet/service/IVetKnowledgeService.java
-
1chenhai-system/src/main/java/com/chenhai/vet/service/IVetProductService.java
-
44chenhai-system/src/main/java/com/chenhai/vet/service/IVetTrainingVideoService.java
-
257chenhai-system/src/main/java/com/chenhai/vet/service/impl/VetKnowledgeServiceImpl.java
-
4chenhai-system/src/main/java/com/chenhai/vet/service/impl/VetProductServiceImpl.java
-
223chenhai-system/src/main/java/com/chenhai/vet/service/impl/VetTrainingVideoServiceImpl.java
-
43chenhai-system/src/main/resources/mapper/vet/VetKnowledgeMapper.xml
-
2chenhai-system/src/main/resources/mapper/vet/VetProductMapper.xml
-
88chenhai-system/src/main/resources/mapper/vet/VetTrainingVideoMapper.xml
-
39chenhai-ui/src/api/vet/knowledge.js
-
101chenhai-ui/src/api/vet/training.js
-
585chenhai-ui/src/views/vet/knowledge/index.vue
-
1851chenhai-ui/src/views/vet/product/index.vue
-
2208chenhai-ui/src/views/vet/training/TrainingHome.vue
@ -1,26 +1,287 @@ |
|||
package com.chenhai.vet.domain; |
|||
|
|||
import lombok.Data; |
|||
import org.apache.commons.lang3.builder.ToStringBuilder; |
|||
import org.apache.commons.lang3.builder.ToStringStyle; |
|||
import com.chenhai.common.annotation.Excel; |
|||
import com.chenhai.common.core.domain.BaseEntity; |
|||
|
|||
import java.util.Date; |
|||
|
|||
@Data |
|||
public class VetTrainingVideo { |
|||
/** |
|||
* 兽医培训视频对象 vet_training_video |
|||
* |
|||
* @author ruoyi |
|||
* @date 2026-01-08 |
|||
*/ |
|||
public class VetTrainingVideo extends BaseEntity |
|||
{ |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
/** 主键 */ |
|||
private Long id; |
|||
|
|||
/** 用户ID */ |
|||
private Long userId; |
|||
|
|||
/** 视频标题 */ |
|||
@Excel(name = "视频标题") |
|||
private String title; |
|||
|
|||
/** 视频描述 */ |
|||
@Excel(name = "视频描述") |
|||
private String description; |
|||
|
|||
/** 视频URL */ |
|||
@Excel(name = "视频URL") |
|||
private String videoUrl; |
|||
|
|||
/** 封面图片 */ |
|||
@Excel(name = "封面图片") |
|||
private String coverImage; |
|||
|
|||
/** 视频分类(手术技巧/疾病诊断/药物使用/其他) */ |
|||
@Excel(name = "视频分类", dictType = "video_category") |
|||
private String category; |
|||
|
|||
/** 视频标签 */ |
|||
@Excel(name = "视频标签") |
|||
private String tags; |
|||
private Integer duration; // 视频时长(秒) |
|||
private Long fileSize; // 文件大小(字节) |
|||
|
|||
/** 视频时长(秒) */ |
|||
@Excel(name = "视频时长") |
|||
private Integer duration; |
|||
|
|||
/** 文件大小(字节) */ |
|||
@Excel(name = "文件大小") |
|||
private Long fileSize; |
|||
|
|||
/** 观看次数 */ |
|||
@Excel(name = "观看次数") |
|||
private Integer viewCount; |
|||
private String status; // 0-私有 1-公开 |
|||
private Date createTime; |
|||
private Date updateTime; |
|||
|
|||
// 非数据库字段 |
|||
private String userName; // 兽医姓名 |
|||
private String durationStr; // 格式化后的时长(如:12:30) |
|||
/** 上架状态(0-私有 1-公开) */ |
|||
@Excel(name = "上架状态", dictType = "video_status") |
|||
private String status; |
|||
|
|||
/** 审核状态(0-待审核 1-审核通过 2-审核拒绝 3-无需审核) */ |
|||
@Excel(name = "审核状态", dictType = "video_audit_status") |
|||
private String auditStatus; |
|||
|
|||
/** 审核意见 */ |
|||
@Excel(name = "审核意见") |
|||
private String auditOpinion; |
|||
|
|||
/** 审核人ID */ |
|||
private Long auditUserId; |
|||
|
|||
/** 审核时间 */ |
|||
private Date auditTime; |
|||
|
|||
/** 格式化后的时长(如:12:30) */ |
|||
private String durationStr; |
|||
|
|||
/** 用户名称(非数据库字段) */ |
|||
private String userName; |
|||
|
|||
public void setId(Long id) |
|||
{ |
|||
this.id = id; |
|||
} |
|||
|
|||
public Long getId() |
|||
{ |
|||
return id; |
|||
} |
|||
|
|||
public void setUserId(Long userId) |
|||
{ |
|||
this.userId = userId; |
|||
} |
|||
|
|||
public Long getUserId() |
|||
{ |
|||
return userId; |
|||
} |
|||
|
|||
public void setTitle(String title) |
|||
{ |
|||
this.title = title; |
|||
} |
|||
|
|||
public String getTitle() |
|||
{ |
|||
return title; |
|||
} |
|||
|
|||
public void setDescription(String description) |
|||
{ |
|||
this.description = description; |
|||
} |
|||
|
|||
public String getDescription() |
|||
{ |
|||
return description; |
|||
} |
|||
|
|||
public void setVideoUrl(String videoUrl) |
|||
{ |
|||
this.videoUrl = videoUrl; |
|||
} |
|||
|
|||
public String getVideoUrl() |
|||
{ |
|||
return videoUrl; |
|||
} |
|||
|
|||
public void setCoverImage(String coverImage) |
|||
{ |
|||
this.coverImage = coverImage; |
|||
} |
|||
|
|||
public String getCoverImage() |
|||
{ |
|||
return coverImage; |
|||
} |
|||
|
|||
public void setCategory(String category) |
|||
{ |
|||
this.category = category; |
|||
} |
|||
|
|||
public String getCategory() |
|||
{ |
|||
return category; |
|||
} |
|||
|
|||
public void setTags(String tags) |
|||
{ |
|||
this.tags = tags; |
|||
} |
|||
|
|||
public String getTags() |
|||
{ |
|||
return tags; |
|||
} |
|||
|
|||
public void setDuration(Integer duration) |
|||
{ |
|||
this.duration = duration; |
|||
} |
|||
|
|||
public Integer getDuration() |
|||
{ |
|||
return duration; |
|||
} |
|||
|
|||
public void setFileSize(Long fileSize) |
|||
{ |
|||
this.fileSize = fileSize; |
|||
} |
|||
|
|||
public Long getFileSize() |
|||
{ |
|||
return fileSize; |
|||
} |
|||
|
|||
public void setViewCount(Integer viewCount) |
|||
{ |
|||
this.viewCount = viewCount; |
|||
} |
|||
|
|||
public Integer getViewCount() |
|||
{ |
|||
return viewCount; |
|||
} |
|||
|
|||
public void setStatus(String status) |
|||
{ |
|||
this.status = status; |
|||
} |
|||
|
|||
public String getStatus() |
|||
{ |
|||
return status; |
|||
} |
|||
|
|||
public void setAuditStatus(String auditStatus) |
|||
{ |
|||
this.auditStatus = auditStatus; |
|||
} |
|||
|
|||
public String getAuditStatus() |
|||
{ |
|||
return auditStatus; |
|||
} |
|||
|
|||
public void setAuditOpinion(String auditOpinion) |
|||
{ |
|||
this.auditOpinion = auditOpinion; |
|||
} |
|||
|
|||
public String getAuditOpinion() |
|||
{ |
|||
return auditOpinion; |
|||
} |
|||
|
|||
public void setAuditUserId(Long auditUserId) |
|||
{ |
|||
this.auditUserId = auditUserId; |
|||
} |
|||
|
|||
public Long getAuditUserId() |
|||
{ |
|||
return auditUserId; |
|||
} |
|||
|
|||
public void setAuditTime(Date auditTime) |
|||
{ |
|||
this.auditTime = auditTime; |
|||
} |
|||
|
|||
public Date getAuditTime() |
|||
{ |
|||
return auditTime; |
|||
} |
|||
|
|||
public String getDurationStr() { |
|||
return durationStr; |
|||
} |
|||
|
|||
public void setDurationStr(String durationStr) { |
|||
this.durationStr = durationStr; |
|||
} |
|||
|
|||
public String getUserName() { |
|||
return userName; |
|||
} |
|||
|
|||
public void setUserName(String userName) { |
|||
this.userName = userName; |
|||
} |
|||
|
|||
@Override |
|||
public String toString() { |
|||
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) |
|||
.append("id", getId()) |
|||
.append("userId", getUserId()) |
|||
.append("title", getTitle()) |
|||
.append("description", getDescription()) |
|||
.append("videoUrl", getVideoUrl()) |
|||
.append("coverImage", getCoverImage()) |
|||
.append("category", getCategory()) |
|||
.append("tags", getTags()) |
|||
.append("duration", getDuration()) |
|||
.append("fileSize", getFileSize()) |
|||
.append("viewCount", getViewCount()) |
|||
.append("status", getStatus()) |
|||
.append("auditStatus", getAuditStatus()) |
|||
.append("auditOpinion", getAuditOpinion()) |
|||
.append("auditUserId", getAuditUserId()) |
|||
.append("auditTime", getAuditTime()) |
|||
.append("createBy", getCreateBy()) |
|||
.append("createTime", getCreateTime()) |
|||
.append("updateBy", getUpdateBy()) |
|||
.append("updateTime", getUpdateTime()) |
|||
.toString(); |
|||
} |
|||
} |
|||
1851
chenhai-ui/src/views/vet/product/index.vue
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
2208
chenhai-ui/src/views/vet/training/TrainingHome.vue
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
Write
Preview
Loading…
Cancel
Save
Reference in new issue