Browse Source

feat:智能陪练一期

Joburgess 3 years ago
parent
commit
efed894dc5

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/IndexBaseDto.java

@@ -37,6 +37,12 @@ public class IndexBaseDto {
         this.title = title;
     }
 
+    public IndexBaseDto(IndexDataType dataType, List<IndexBaseMonthData> indexMonthData) {
+        this.dataType = dataType;
+        this.title = dataType.getMsg();
+        this.indexMonthData = indexMonthData;
+    }
+
     public IndexBaseDto(String title, BigDecimal percent, List<IndexBaseMonthData> indexMonthData) {
         this.title = title;
         this.percent = percent;

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/IndexBaseMonthData.java

@@ -60,6 +60,11 @@ public class IndexBaseMonthData {
 		this.percent = BigDecimal.ZERO;
 	}
 
+	public IndexBaseMonthData(Date month, Integer organId, BigDecimal percent) {
+		this.month = month;
+		this.percent = percent;
+	}
+
 	public Long getId() {
 		return id;
 	}

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/IndexDataType.java

@@ -78,6 +78,9 @@ public enum IndexDataType implements BaseEnum<String, IndexDataType> {
     MEMBER_STUDENT_NUM("MEMBER_STUDENT_NUM", "会员数量", false, false),
     EXPERIENCE_MEMBER_STUDENT_NUM("EXPERIENCE_MEMBER_STUDENT_NUM", "试用会员数量", false, false),
     NEW_MEMBER_STUDENT_NUM("NEW_MEMBER_STUDENT_NUM", "新增会员数量", false, false),
+
+    CLOUD_STUDY_TRAIN_NUM("CLOUD_STUDY_TRAIN_NUM", "云教练训练次数", false, false),
+    CLOUD_STUDY_TRAIN_TIME("CLOUD_STUDY_TRAIN_TIME", "云教练训练时长", false, false),
     ;
 
     private String code;

+ 18 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicCompareRecordServiceImpl.java

@@ -7,8 +7,10 @@ import com.ym.mec.biz.dal.dao.StudentDao;
 import com.ym.mec.biz.dal.dao.SysMusicCompareRecordDao;
 import com.ym.mec.biz.dal.dao.TeacherDao;
 import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.entity.IndexBaseMonthData;
 import com.ym.mec.biz.dal.entity.SysMusicCompareRecord;
 import com.ym.mec.biz.dal.enums.FeatureType;
+import com.ym.mec.biz.dal.enums.IndexDataType;
 import com.ym.mec.biz.dal.page.SysMusicCompareRecordQueryInfo;
 import com.ym.mec.biz.service.SysMusicCompareRecordService;
 import com.ym.mec.common.dal.BaseDAO;
@@ -16,6 +18,7 @@ import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
+import io.swagger.models.auth.In;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -174,7 +177,21 @@ public class SysMusicCompareRecordServiceImpl extends BaseServiceImpl<Long, SysM
 		pageInfo.setRows(dataList);
 		Map<String, Object> result = new HashMap<>();
 		result.put("userTrainOverView",userTrainOverView);
-		result.put("userTrainChartData",userTrainChartData);
+
+		List<IndexBaseDto> userTrainChartResult = new ArrayList<>();
+		List<IndexBaseMonthData> trainNumData = new ArrayList<>();
+		List<IndexBaseMonthData> trainTimeData = new ArrayList<>();
+
+		for (StudentTrainChartDto data : userTrainChartData) {
+			Date trainDate = Date.from(data.getTrainDate().atStartOfDay(DateUtil.zoneId).toInstant());
+			trainTimeData.add(new IndexBaseMonthData(trainDate, null, new BigDecimal(data.getTrainTime())));
+			trainNumData.add(new IndexBaseMonthData(trainDate, null, new BigDecimal(data.getTrainNum())));
+		}
+
+		userTrainChartResult.add(new IndexBaseDto(IndexDataType.CLOUD_STUDY_TRAIN_TIME, trainTimeData));
+		userTrainChartResult.add(new IndexBaseDto(IndexDataType.CLOUD_STUDY_TRAIN_NUM, trainNumData));
+
+		result.put("userTrainChartData", userTrainChartResult);
 		result.put("detail",pageInfo);
 		return result;
 	}