|
|
|
@ -51,7 +51,8 @@ import static com.ibeetl.admin.core.util.ExcelUtil.getCellFormatValue;
|
|
|
|
|
@Validated
|
|
|
|
|
public class StudentTeacherSystemUseLogAnalysisService extends CoreBaseService<StudentTeacherSystemUseLogAnalysis> {
|
|
|
|
|
|
|
|
|
|
@Autowired private StudentTeacherSystemUseLogAnalysisDao studentTeacherSystemUseLogAnalysisDao;
|
|
|
|
|
@Autowired
|
|
|
|
|
private StudentTeacherSystemUseLogAnalysisDao studentTeacherSystemUseLogAnalysisDao;
|
|
|
|
|
@Autowired
|
|
|
|
|
private StudentService studentService;
|
|
|
|
|
@Autowired
|
|
|
|
@ -98,7 +99,8 @@ public class StudentTeacherSystemUseLogAnalysisService extends CoreBaseService<S
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
try {
|
|
|
|
|
studentTeacherSystemUseLogAnalysisList.add(JSONObject.parseObject(studentTeacherSystemUseLogAnalysisQuery.getStudentTeacherSystemUseLogAnalysisJsonStr(), StudentTeacherSystemUseLogAnalysis.class));
|
|
|
|
|
} catch (Exception e1) {}
|
|
|
|
|
} catch (Exception e1) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
ToolUtils.deleteNullList(studentTeacherSystemUseLogAnalysisList);
|
|
|
|
|
if (null != studentTeacherSystemUseLogAnalysisList && studentTeacherSystemUseLogAnalysisList.size() > 0) {
|
|
|
|
@ -277,40 +279,31 @@ public class StudentTeacherSystemUseLogAnalysisService extends CoreBaseService<S
|
|
|
|
|
if (StringUtils.isBlank(firstName)) {
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[0]) + 1) + "列,第" + (i + 1) + "行一级名称为空"});
|
|
|
|
|
continue;
|
|
|
|
|
}else
|
|
|
|
|
if(StringUtils.isBlank(secondName)){
|
|
|
|
|
} else if (StringUtils.isBlank(secondName)) {
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[1]) + 1) + "列,第" + (i + 1) + "行二级名称为空"});
|
|
|
|
|
continue;
|
|
|
|
|
}else
|
|
|
|
|
if(StringUtils.isBlank(universitiesCollegesName)){
|
|
|
|
|
} else if (StringUtils.isBlank(universitiesCollegesName)) {
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[2]) + 1) + "列,第" + (i + 1) + "行院校名称为空"});
|
|
|
|
|
continue;
|
|
|
|
|
}else
|
|
|
|
|
if(StringUtils.isBlank(universitiesCollegesId)){
|
|
|
|
|
} else if (StringUtils.isBlank(universitiesCollegesId)) {
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[3]) + 1) + "列,第" + (i + 1) + "行院校为空"});
|
|
|
|
|
continue;
|
|
|
|
|
}else
|
|
|
|
|
if(StringUtils.isBlank(userType)){
|
|
|
|
|
} else if (StringUtils.isBlank(userType)) {
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[4]) + 1) + "列,第" + (i + 1) + "行用户类型 UserTypeEnum为空"});
|
|
|
|
|
continue;
|
|
|
|
|
}else
|
|
|
|
|
if(StringUtils.isBlank(province)){
|
|
|
|
|
} else if (StringUtils.isBlank(province)) {
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[5]) + 1) + "列,第" + (i + 1) + "行所在省份为空"});
|
|
|
|
|
continue;
|
|
|
|
|
}else
|
|
|
|
|
if(StringUtils.isBlank(dayTime)){
|
|
|
|
|
} else if (StringUtils.isBlank(dayTime)) {
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[6]) + 1) + "列,第" + (i + 1) + "行日期为空"});
|
|
|
|
|
continue;
|
|
|
|
|
}else
|
|
|
|
|
if(StringUtils.isBlank(useDuration)){
|
|
|
|
|
} else if (StringUtils.isBlank(useDuration)) {
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[7]) + 1) + "列,第" + (i + 1) + "行使用时长为空"});
|
|
|
|
|
continue;
|
|
|
|
|
}else
|
|
|
|
|
if(StringUtils.isBlank(addTime)){
|
|
|
|
|
} else if (StringUtils.isBlank(addTime)) {
|
|
|
|
|
errMsg.add(new String[]{"第" + ToolUtils.numberToLetter(map.get(columns[8]) + 1) + "列,第" + (i + 1) + "行创建时间为空"});
|
|
|
|
|
continue;
|
|
|
|
|
}else
|
|
|
|
|
{
|
|
|
|
|
} else {
|
|
|
|
|
//TODO 保存
|
|
|
|
|
StudentTeacherSystemUseLogAnalysis studentTeacherSystemUseLogAnalysis = new StudentTeacherSystemUseLogAnalysis();
|
|
|
|
|
studentTeacherSystemUseLogAnalysis.setFirstName(firstName);
|
|
|
|
@ -345,6 +338,7 @@ public class StudentTeacherSystemUseLogAnalysisService extends CoreBaseService<S
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 分页查询使用记录,院校级别的统计。不关心哪个用户
|
|
|
|
|
*
|
|
|
|
|
* @param page
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
@ -379,12 +373,88 @@ public class StudentTeacherSystemUseLogAnalysisService extends CoreBaseService<S
|
|
|
|
|
*/
|
|
|
|
|
public void addOrUpdateUseLog(StudentTeacherSystemUseLogAnalysisAddDTO dto, CoreUser coreUser) {
|
|
|
|
|
// 追加的使用时长
|
|
|
|
|
// Long appendUseDuration = defaultIfNull(dto.getUseDuration(), 5L);
|
|
|
|
|
// final String firstName = Objects.isNull(dto.getFirstName()) ? null : dto.getFirstName().trim();
|
|
|
|
|
// final String secondName = Objects.isNull(dto.getSecondName()) ? null : dto.getSecondName().trim();
|
|
|
|
|
// final Long userId = coreUser.getId();
|
|
|
|
|
// final Long orgId = coreUser.getOrgId();
|
|
|
|
|
// final String today = DateUtil.today();
|
|
|
|
|
// // 院校名称
|
|
|
|
|
// String universitiesCollegesName = "";
|
|
|
|
|
// // 院校ID
|
|
|
|
|
// Long universitiesCollegesId = null;
|
|
|
|
|
// // 院校所在省
|
|
|
|
|
// String province = null;
|
|
|
|
|
// // 用户类型
|
|
|
|
|
// UseTypeEnum useType = null;
|
|
|
|
|
//
|
|
|
|
|
// // 查询唯一的条件,如果没查到那肯定是要新增一条数据咯
|
|
|
|
|
// StudentTeacherSystemUseLogAnalysisQuery query = new StudentTeacherSystemUseLogAnalysisQuery();
|
|
|
|
|
// query.setFirstName(firstName);
|
|
|
|
|
// query.setSecondName(secondName);
|
|
|
|
|
// query.setUserId(userId);
|
|
|
|
|
// query.setOrgId(orgId);
|
|
|
|
|
// query.setDayTime(today);
|
|
|
|
|
//
|
|
|
|
|
// // 追加院校ID条件
|
|
|
|
|
// if (coreUser.isStudent()) {
|
|
|
|
|
// Student student = studentService.getByUserId(userId);
|
|
|
|
|
// useType = UseTypeEnum.STUDENT;
|
|
|
|
|
// if (student != null) {
|
|
|
|
|
// UniversitiesColleges universitiesColleges = universitiesCollegesService.getUniversitiesCollegesByStudent(student);
|
|
|
|
|
// province = universitiesColleges.getUniversitiesCollegesProvince();
|
|
|
|
|
// universitiesCollegesId = universitiesColleges.getUniversitiesCollegesId();
|
|
|
|
|
// universitiesCollegesName = universitiesColleges.getUniversitiesCollegesName();
|
|
|
|
|
// query.setUniversitiesCollegesId(universitiesCollegesId);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// if (coreUser.isTeacher()) {
|
|
|
|
|
// Teacher teacher = teacherService.getByUserId(userId);
|
|
|
|
|
// useType = UseTypeEnum.TEACHER;
|
|
|
|
|
// if (teacher != null) {
|
|
|
|
|
// UniversitiesColleges universitiesColleges = universitiesCollegesService.getUniversitiesCollegesByTeacher(teacher);
|
|
|
|
|
// province = universitiesColleges.getUniversitiesCollegesProvince();
|
|
|
|
|
// universitiesCollegesId = universitiesColleges.getUniversitiesCollegesId();
|
|
|
|
|
// universitiesCollegesName = universitiesColleges.getUniversitiesCollegesName();
|
|
|
|
|
// query.setUniversitiesCollegesId(universitiesColleges.getUniversitiesCollegesId());
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// List<StudentTeacherSystemUseLogAnalysis> logAnalysisList = getValuesByQueryNotWithPermission(query);
|
|
|
|
|
//
|
|
|
|
|
// // 如果查询到数据,则追加使用时长(分钟)
|
|
|
|
|
// if (CollectionUtil.isNotEmpty(logAnalysisList)) {
|
|
|
|
|
// StudentTeacherSystemUseLogAnalysis logAnalysis = getFirst(logAnalysisList);
|
|
|
|
|
// logAnalysis.setUseDuration(defaultIfNull(logAnalysis.getUseDuration(), 0L) + appendUseDuration);
|
|
|
|
|
// updateTemplate(logAnalysis);
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// // 否则新增一条数据
|
|
|
|
|
// else {
|
|
|
|
|
// StudentTeacherSystemUseLogAnalysis useLogAnalysis = new StudentTeacherSystemUseLogAnalysis();
|
|
|
|
|
// useLogAnalysis.setFirstName(firstName);
|
|
|
|
|
// useLogAnalysis.setSecondName(secondName);
|
|
|
|
|
// useLogAnalysis.setUniversitiesCollegesName(universitiesCollegesName);
|
|
|
|
|
// useLogAnalysis.setUniversitiesCollegesId(universitiesCollegesId);
|
|
|
|
|
// useLogAnalysis.setUserType(useType);
|
|
|
|
|
// useLogAnalysis.setProvince(province);
|
|
|
|
|
// useLogAnalysis.setDayTime(today);
|
|
|
|
|
// useLogAnalysis.setUseDuration(appendUseDuration);
|
|
|
|
|
// useLogAnalysis.setAddTime(now());
|
|
|
|
|
// useLogAnalysis.setOrgId(orgId);
|
|
|
|
|
// useLogAnalysis.setUserId(userId);
|
|
|
|
|
//
|
|
|
|
|
// insert(useLogAnalysis);
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// 追加的使用时长
|
|
|
|
|
Long appendUseDuration = defaultIfNull(dto.getUseDuration(), 5L);
|
|
|
|
|
final String firstName = dto.getFirstName().trim();
|
|
|
|
|
final String secondName = dto.getSecondName().trim();
|
|
|
|
|
final Long userId = coreUser.getId();
|
|
|
|
|
final Long orgId = coreUser.getOrgId();
|
|
|
|
|
final String today = DateUtil.today();
|
|
|
|
|
|
|
|
|
|
String firstName = Objects.isNull(dto.getFirstName()) ? null : dto.getFirstName().trim();
|
|
|
|
|
String secondName = Objects.isNull(dto.getSecondName()) ? null : dto.getSecondName().trim();
|
|
|
|
|
Long userId = coreUser.getId();
|
|
|
|
|
Long orgId = coreUser.getOrgId();
|
|
|
|
|
|
|
|
|
|
// 院校名称
|
|
|
|
|
String universitiesCollegesName = "";
|
|
|
|
|
// 院校ID
|
|
|
|
@ -394,13 +464,6 @@ public class StudentTeacherSystemUseLogAnalysisService extends CoreBaseService<S
|
|
|
|
|
// 用户类型
|
|
|
|
|
UseTypeEnum useType = null;
|
|
|
|
|
|
|
|
|
|
// 查询唯一的条件,如果没查到那肯定是要新增一条数据咯
|
|
|
|
|
StudentTeacherSystemUseLogAnalysisQuery query = new StudentTeacherSystemUseLogAnalysisQuery();
|
|
|
|
|
query.setFirstName(firstName);
|
|
|
|
|
query.setSecondName(secondName);
|
|
|
|
|
query.setUserId(userId);
|
|
|
|
|
query.setOrgId(orgId);
|
|
|
|
|
query.setDayTime(today);
|
|
|
|
|
|
|
|
|
|
// 追加院校ID条件
|
|
|
|
|
if (coreUser.isStudent()) {
|
|
|
|
@ -411,9 +474,9 @@ public class StudentTeacherSystemUseLogAnalysisService extends CoreBaseService<S
|
|
|
|
|
province = universitiesColleges.getUniversitiesCollegesProvince();
|
|
|
|
|
universitiesCollegesId = universitiesColleges.getUniversitiesCollegesId();
|
|
|
|
|
universitiesCollegesName = universitiesColleges.getUniversitiesCollegesName();
|
|
|
|
|
query.setUniversitiesCollegesId(universitiesCollegesId);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (coreUser.isTeacher()) {
|
|
|
|
|
Teacher teacher = teacherService.getByUserId(userId);
|
|
|
|
|
useType = UseTypeEnum.TEACHER;
|
|
|
|
@ -422,21 +485,31 @@ public class StudentTeacherSystemUseLogAnalysisService extends CoreBaseService<S
|
|
|
|
|
province = universitiesColleges.getUniversitiesCollegesProvince();
|
|
|
|
|
universitiesCollegesId = universitiesColleges.getUniversitiesCollegesId();
|
|
|
|
|
universitiesCollegesName = universitiesColleges.getUniversitiesCollegesName();
|
|
|
|
|
query.setUniversitiesCollegesId(universitiesColleges.getUniversitiesCollegesId());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<StudentTeacherSystemUseLogAnalysis> logAnalysisList = getValuesByQueryNotWithPermission(query);
|
|
|
|
|
|
|
|
|
|
StudentTeacherSystemUseLogAnalysis logAnalysis = sqlManager.lambdaQuery(StudentTeacherSystemUseLogAnalysis.class)
|
|
|
|
|
.andEq(StudentTeacherSystemUseLogAnalysis::getUniversitiesCollegesId, universitiesCollegesId)
|
|
|
|
|
.andEq(StudentTeacherSystemUseLogAnalysis::getOrgId, orgId)
|
|
|
|
|
.andEq(StudentTeacherSystemUseLogAnalysis::getUserId, userId)
|
|
|
|
|
.orderBy("id DESC")
|
|
|
|
|
.limit(0, 1)
|
|
|
|
|
.single();
|
|
|
|
|
|
|
|
|
|
// 如果查询到数据,则追加使用时长(分钟)
|
|
|
|
|
if (CollectionUtil.isNotEmpty(logAnalysisList)) {
|
|
|
|
|
StudentTeacherSystemUseLogAnalysis logAnalysis = getFirst(logAnalysisList);
|
|
|
|
|
//查看数据库最新一条进行对比,如果是相同模块就累计时间
|
|
|
|
|
if (!Objects.isNull(logAnalysis) && StringUtils.equals(logAnalysis.getFirstName(), firstName) && StringUtils.isEmpty(logAnalysis.getDayTime())) {
|
|
|
|
|
logAnalysis.setUseDuration(defaultIfNull(logAnalysis.getUseDuration(), 0L) + appendUseDuration);
|
|
|
|
|
updateTemplate(logAnalysis);
|
|
|
|
|
} else {
|
|
|
|
|
if (!Objects.isNull(logAnalysis) && StringUtils.isEmpty(logAnalysis.getDayTime())) {
|
|
|
|
|
long time = (Objects.isNull(logAnalysis.getAddTime()) ? 0 : logAnalysis.getAddTime().getTime()) + (Objects.isNull(logAnalysis.getUseDuration()) ? 0 : (logAnalysis.getUseDuration() * 60 * 1000));
|
|
|
|
|
logAnalysis.setDayTime(DateUtil.formatDateTime(DateUtil.date(time)));
|
|
|
|
|
updateTemplate(logAnalysis);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 否则新增一条数据
|
|
|
|
|
else {
|
|
|
|
|
StudentTeacherSystemUseLogAnalysis useLogAnalysis = new StudentTeacherSystemUseLogAnalysis();
|
|
|
|
|
useLogAnalysis.setFirstName(firstName);
|
|
|
|
|
useLogAnalysis.setSecondName(secondName);
|
|
|
|
@ -444,7 +517,6 @@ public class StudentTeacherSystemUseLogAnalysisService extends CoreBaseService<S
|
|
|
|
|
useLogAnalysis.setUniversitiesCollegesId(universitiesCollegesId);
|
|
|
|
|
useLogAnalysis.setUserType(useType);
|
|
|
|
|
useLogAnalysis.setProvince(province);
|
|
|
|
|
useLogAnalysis.setDayTime(today);
|
|
|
|
|
useLogAnalysis.setUseDuration(appendUseDuration);
|
|
|
|
|
useLogAnalysis.setAddTime(now());
|
|
|
|
|
useLogAnalysis.setOrgId(orgId);
|
|
|
|
|