|
@@ -1,12 +1,14 @@
|
|
|
package com.yonge.cooleshow.biz.dal.service.impl;
|
|
|
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.microsvc.toolkit.common.webportal.exception.BizException;
|
|
|
import com.yonge.cooleshow.biz.dal.dao.TeacherSubjectPriceDao;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.TeacherSubjectPrice;
|
|
|
import com.yonge.cooleshow.biz.dal.service.TeacherSubjectPriceService;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
@Service("TeacherSubjectPriceService")
|
|
|
public class TeacherSubjectPriceServiceImpl extends ServiceImpl<TeacherSubjectPriceDao, TeacherSubjectPrice> implements TeacherSubjectPriceService {
|
|
@@ -18,5 +20,32 @@ public class TeacherSubjectPriceServiceImpl extends ServiceImpl<TeacherSubjectPr
|
|
|
return this.baseMapper;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public Long upSet(TeacherSubjectPrice teacherSubjectPrice) {
|
|
|
+ if (teacherSubjectPrice.getId() == null) {
|
|
|
+ TeacherSubjectPrice one = this.lambdaQuery().eq(TeacherSubjectPrice::getTeacherId, teacherSubjectPrice.getTeacherId())
|
|
|
+ .eq(TeacherSubjectPrice::getSubjectId, teacherSubjectPrice.getSubjectId())
|
|
|
+ .eq(TeacherSubjectPrice::getCourseType, teacherSubjectPrice.getCourseType()).one();
|
|
|
+ if (one != null) {
|
|
|
+ teacherSubjectPrice.setId(one.getId());
|
|
|
+ this.updateById(teacherSubjectPrice);
|
|
|
+ } else {
|
|
|
+ this.save(teacherSubjectPrice);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ TeacherSubjectPrice one = this.lambdaQuery().ne(TeacherSubjectPrice::getId, teacherSubjectPrice.getId())
|
|
|
+ .eq(TeacherSubjectPrice::getTeacherId, teacherSubjectPrice.getTeacherId())
|
|
|
+ .eq(TeacherSubjectPrice::getSubjectId, teacherSubjectPrice.getSubjectId())
|
|
|
+ .eq(TeacherSubjectPrice::getCourseType, teacherSubjectPrice.getCourseType()).one();
|
|
|
+ if (one != null) {
|
|
|
+ throw new BizException("已存在相同课程类型的课程价格配置");
|
|
|
+ } else {
|
|
|
+ this.updateById(teacherSubjectPrice);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return teacherSubjectPrice.getId();
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|