|
@@ -129,12 +129,34 @@ public class DegreeServiceImpl extends ServiceImpl<DegreeMapper, Degree> impleme
|
|
|
|
|
|
Integer tenantId = TenantContextHolder.getTenantId();
|
|
|
degree.setTenantId(tenantId);
|
|
|
+
|
|
|
+ // 判断考级时间冲突
|
|
|
+ checkTime(degree);
|
|
|
+
|
|
|
updateDegreeStatus(degree);
|
|
|
|
|
|
|
|
|
return this.save(JSON.parseObject(degree.jsonString(), Degree.class));
|
|
|
}
|
|
|
|
|
|
+ private void checkTime(DegreeWrapper.Degree degree) {
|
|
|
+ List<Degree> list = this.lambdaQuery()
|
|
|
+ .eq(Degree::getTenantId, degree.getTenantId())
|
|
|
+ .le(Degree::getStartTime, degree.getEndTime())
|
|
|
+ .ge(Degree::getEndTime, degree.getStartTime())
|
|
|
+ .list();
|
|
|
+
|
|
|
+ if (CollectionUtils.isEmpty(list)) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (list.size() == 1) {
|
|
|
+ Degree degree1 = list.get(0);
|
|
|
+ if (degree1.getId().equals(degree.getId())) return;
|
|
|
+ }
|
|
|
+ throw new BizException("考级时间冲突");
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 根据时间设置状态
|
|
|
* @param degree DegreeWrapper.Degree
|
|
@@ -157,6 +179,13 @@ public class DegreeServiceImpl extends ServiceImpl<DegreeMapper, Degree> impleme
|
|
|
*/
|
|
|
@Override
|
|
|
public Boolean update(DegreeWrapper.Degree degree){
|
|
|
+
|
|
|
+ Integer tenantId = TenantContextHolder.getTenantId();
|
|
|
+ degree.setTenantId(tenantId);
|
|
|
+
|
|
|
+ // 判断考级时间冲突
|
|
|
+ checkTime(degree);
|
|
|
+
|
|
|
updateDegreeStatus(degree);
|
|
|
|
|
|
return this.updateById(JSON.parseObject(degree.jsonString(), Degree.class));
|
|
@@ -278,4 +307,9 @@ public class DegreeServiceImpl extends ServiceImpl<DegreeMapper, Degree> impleme
|
|
|
|
|
|
return wrapper;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void degreeStatusChange() {
|
|
|
+ this.baseMapper.degreeStatusChange();
|
|
|
+ }
|
|
|
}
|