Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -75,7 +75,9 @@ public class MTrainEducationController {
|
||||
""");
|
||||
Cnd cnd = Cnd.NEW();
|
||||
cnd.and("tea.disabled", "=", 0);
|
||||
cnd.and(new Static("tea.id = (select albumId from train_edu_video order by createdAt desc LIMIT 0,1)"));
|
||||
// cnd.and(new Static("tea.id = (select albumId from train_edu_video order by createdAt desc LIMIT 0,1)"));
|
||||
cnd.and(new Static("CURDATE() >= tev.startDate"));
|
||||
cnd.and(new Static("CURDATE() <= tev.endDate"));
|
||||
sql.setCondition(cnd);
|
||||
sql.setCallback(Sqls.callback.map());
|
||||
dao.execute(sql);
|
||||
@@ -108,8 +110,10 @@ public class MTrainEducationController {
|
||||
$condition
|
||||
""");
|
||||
Cnd cnd = Cnd.NEW();
|
||||
cnd.and("tea.disabled","=",0);
|
||||
cnd.and("tea.disabled", "=", 0);
|
||||
cnd.andEX("tea.typeId", "=", typeId);
|
||||
cnd.and(new Static("CURDATE() >= tev.startDate"));
|
||||
cnd.and(new Static("CURDATE() <= tev.endDate"));
|
||||
cnd.groupBy("tea.id");
|
||||
sql.setCondition(cnd);
|
||||
return baseService.listPageMap(pageNumber, pageSize, sql);
|
||||
@@ -234,7 +238,9 @@ public class MTrainEducationController {
|
||||
@At
|
||||
@ViReturn
|
||||
@RequiresAuthentication
|
||||
public Object getMyWatchRecord(@Param(value = "albumId", required = false) String albumId) {
|
||||
public Object getMyWatchRecord(@Param(value = "albumId") String albumId) {
|
||||
TrainEduVideo video = dao.fetch(TrainEduVideo.class, Cnd.where("albumId", "=", albumId));
|
||||
|
||||
Sql sql = Sqls.create("""
|
||||
SELECT
|
||||
tevwr.*
|
||||
@@ -245,6 +251,8 @@ public class MTrainEducationController {
|
||||
Cnd cnd = Cnd.NEW();
|
||||
cnd.andEX("tevwr.albumId", "=", albumId);
|
||||
cnd.andEX("tevwr.userId", "=", ShiroUtil.getPrincipalProperty("id"));
|
||||
cnd.and("tevwr.watchTime", ">=", video.getStartDate());
|
||||
cnd.and("tevwr.watchTime", "<=", video.getEndDate());
|
||||
sql.setCondition(cnd);
|
||||
return baseService.listMap(sql);
|
||||
}
|
||||
|
||||
+4
-1
@@ -100,6 +100,8 @@ public class TrainEduStatisticsVideoController {
|
||||
Cnd cnd = Cnd.NEW();
|
||||
cnd.and("tevwr.albumId", "=", albumId);
|
||||
cnd.and(new Static("IF(tea.createType = 1, u.unionId = tea.unionId , 1=1)"));
|
||||
cnd.and(new Static("tevwr.watchTime >= tev.startDate"));
|
||||
cnd.and(new Static("tevwr.watchTime <= tev.endDate"));
|
||||
cnd.groupBy("tevwr.userId");
|
||||
sql.setCondition(cnd);
|
||||
Pagination pagination = baseService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql);
|
||||
@@ -175,11 +177,12 @@ public class TrainEduStatisticsVideoController {
|
||||
Cnd cnd = Cnd.NEW();
|
||||
cnd.and("tevwr.albumId", "=", albumId);
|
||||
cnd.and(new Static("IF(tea.createType = 1, u.unionId = tea.unionId , 1=1)"));
|
||||
cnd.and(new Static("tevwr.watchTime >= tev.startDate"));
|
||||
cnd.and(new Static("tevwr.watchTime <= tev.endDate"));
|
||||
cnd.groupBy("tevwr.userId");
|
||||
sql.setCondition(cnd);
|
||||
List<NutMap> list = baseService.listMap(sql);
|
||||
|
||||
|
||||
List<ExcelExportEntity> excelExportEntities = new ArrayList<>();
|
||||
excelExportEntities.add(new ExcelExportEntity("序号","no",10));
|
||||
excelExportEntities.add(new ExcelExportEntity("姓名","username",20));
|
||||
|
||||
@@ -6,6 +6,8 @@ import lombok.EqualsAndHashCode;
|
||||
import org.nutz.dao.entity.annotation.*;
|
||||
import org.nutz.dao.interceptor.annotation.PrevInsert;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Table
|
||||
@Data
|
||||
@@ -70,4 +72,14 @@ public class TrainEduVideo extends BaseModel {
|
||||
@ColDefine(type = ColType.INT)
|
||||
private Integer qualifiedNum;
|
||||
|
||||
@Column
|
||||
@Comment("开始时间")
|
||||
@ColDefine(type = ColType.DATE)
|
||||
private Date startDate;
|
||||
|
||||
@Column
|
||||
@Comment("结束时间")
|
||||
@ColDefine(type = ColType.DATE)
|
||||
private Date endDate;
|
||||
|
||||
}
|
||||
|
||||
@@ -99,34 +99,34 @@ layout("/mobile/platform.html"){
|
||||
webkit-playsinline>
|
||||
</video>
|
||||
|
||||
<!-- <div v-if="!isPlay" style=" height: 100%;-->
|
||||
<!-- background: #000;-->
|
||||
<!-- position: absolute;-->
|
||||
<!-- top: 0;-->
|
||||
<!-- left: 0;-->
|
||||
<!-- right: 0;-->
|
||||
<!-- bottom: 0;">-->
|
||||
<!-- <van-image-->
|
||||
<!-- style="width: 90%;-->
|
||||
<!-- height: 100%;-->
|
||||
<!-- z-index: 999;"-->
|
||||
<!-- fit="contain"-->
|
||||
<!-- :src="FILE_DOMAIN+'/fileStreamPreview?id='+albumInfo.cover"-->
|
||||
<!-- ></van-image>-->
|
||||
<!-- <div class="tcp-skin">-->
|
||||
<!-- <div class="vjs-big-play-button">-->
|
||||
<!-- <div class="vjs-button-icon">-->
|
||||
<!-- <svg height="100%" width="100%" viewBox="0 0 484 348">-->
|
||||
<!-- <path class="draw-fill" transform="translate(4 4)"-->
|
||||
<!-- d="M383,124C350-42,122.3-40.5,90.6,123.5c-110.4,18.5-131,185,.6,216.5H381.6C519.7,310.7,494.1,137.8,383,124Z"></path>-->
|
||||
<!-- <path transform="translate(4 4)"-->
|
||||
<!-- d="M200.4,110.2c-9.4-5.8-19.6,2.7-19.4,11.7V256.2c0,8,10.4,16.7,19.4,10.8,2.2-1.4,111.8-65.9,114-67.3,7.4-4,10.1-15.8,0-22.2Z"-->
|
||||
<!-- style="fill:#fff ;"></path>-->
|
||||
<!-- </svg>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div v-if="!isPlay" style=" height: 100%;-->
|
||||
<!-- background: #000;-->
|
||||
<!-- position: absolute;-->
|
||||
<!-- top: 0;-->
|
||||
<!-- left: 0;-->
|
||||
<!-- right: 0;-->
|
||||
<!-- bottom: 0;">-->
|
||||
<!-- <van-image-->
|
||||
<!-- style="width: 90%;-->
|
||||
<!-- height: 100%;-->
|
||||
<!-- z-index: 999;"-->
|
||||
<!-- fit="contain"-->
|
||||
<!-- :src="FILE_DOMAIN+'/fileStreamPreview?id='+albumInfo.cover"-->
|
||||
<!-- ></van-image>-->
|
||||
<!-- <div class="tcp-skin">-->
|
||||
<!-- <div class="vjs-big-play-button">-->
|
||||
<!-- <div class="vjs-button-icon">-->
|
||||
<!-- <svg height="100%" width="100%" viewBox="0 0 484 348">-->
|
||||
<!-- <path class="draw-fill" transform="translate(4 4)"-->
|
||||
<!-- d="M383,124C350-42,122.3-40.5,90.6,123.5c-110.4,18.5-131,185,.6,216.5H381.6C519.7,310.7,494.1,137.8,383,124Z"></path>-->
|
||||
<!-- <path transform="translate(4 4)"-->
|
||||
<!-- d="M200.4,110.2c-9.4-5.8-19.6,2.7-19.4,11.7V256.2c0,8,10.4,16.7,19.4,10.8,2.2-1.4,111.8-65.9,114-67.3,7.4-4,10.1-15.8,0-22.2Z"-->
|
||||
<!-- style="fill:#fff ;"></path>-->
|
||||
<!-- </svg>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
|
||||
<van-tabs v-model="tabIndex" sticky>
|
||||
@@ -353,7 +353,9 @@ layout("/mobile/platform.html"){
|
||||
// })
|
||||
// },
|
||||
async getMyWatchRecord() {
|
||||
const {data} = await $.get('/mobile/trainEducation/getMyWatchRecord')
|
||||
const {data} = await $.get('/mobile/trainEducation/getMyWatchRecord', {
|
||||
albumId: this.albumId
|
||||
})
|
||||
this.watchRecordList = data
|
||||
},
|
||||
getWatchStatus(video) {
|
||||
|
||||
@@ -144,6 +144,26 @@ layout("/layouts/platform.html"){
|
||||
<el-input-number :min="1" :max="1000" v-model="formData.qualifiedNum"></el-input-number>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="开始时间" prop="startDate">
|
||||
<el-date-picker
|
||||
v-model="formData.startDate"
|
||||
type="date"
|
||||
placeholder="选择日期"
|
||||
value-format="yyyy-MM-dd"
|
||||
style="width: 100%;">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="结束时间" prop="endDate">
|
||||
<el-date-picker
|
||||
v-model="formData.endDate"
|
||||
type="date"
|
||||
placeholder="选择日期"
|
||||
value-format="yyyy-MM-dd"
|
||||
style="width: 100%;">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="是否启用" prop="disabled">
|
||||
<el-switch
|
||||
v-model="formData.disabled"
|
||||
@@ -231,13 +251,16 @@ layout("/layouts/platform.html"){
|
||||
{prop: 'createUserName', label: '上传人'},
|
||||
{prop: 'createTime', label: '上传时间', sortable: true},
|
||||
{prop: 'disabled', label: '视频状态', sortable: true},
|
||||
|
||||
{prop: 'startDate', label: '开始时间', sortable: true},
|
||||
{prop: 'endDate', label: '结束时间', sortable: true}
|
||||
],
|
||||
rules: {
|
||||
albumId: [{required: true, message: '请选择所属专辑', trigger: ['change', 'blur']}],
|
||||
title: [{required: true, message: '请选择视频标题', trigger: ['change', 'blur']}],
|
||||
url: [{required: true, message: '请上传视频文件', trigger: ['change', 'blur']}],
|
||||
sortNo: [{required: true, message: '请输入排序编号', trigger: ['change', 'blur']}]
|
||||
sortNo: [{required: true, message: '请输入排序编号', trigger: ['change', 'blur']}],
|
||||
startDate: [{required: true, message: '请输入开始时间', trigger: ['change', 'blur']}],
|
||||
endDate: [{required: true, message: '请输入结束时间', trigger: ['change', 'blur']}]
|
||||
},
|
||||
albumList: [],
|
||||
fileList: [],
|
||||
|
||||
Reference in New Issue
Block a user