|
@@ -10,6 +10,8 @@ import java.util.Objects;
|
|
|
import java.util.Set;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
+import com.ym.mec.biz.dal.dao.*;
|
|
|
+import com.ym.mec.biz.dal.entity.*;
|
|
|
import com.ym.mec.biz.service.VipGroupService;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -17,18 +19,8 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
-import com.ym.mec.biz.dal.dao.CourseScheduleTeacherSalaryDao;
|
|
|
-import com.ym.mec.biz.dal.dao.TeacherDao;
|
|
|
-import com.ym.mec.biz.dal.dao.TeacherDefaultVipGroupSalaryDao;
|
|
|
-import com.ym.mec.biz.dal.dao.VipGroupActivityDao;
|
|
|
-import com.ym.mec.biz.dal.dao.VipGroupDao;
|
|
|
import com.ym.mec.biz.dal.dto.VipGroupSalarySettlementDto;
|
|
|
import com.ym.mec.biz.dal.entity.CourseSchedule.CourseScheduleType;
|
|
|
-import com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary;
|
|
|
-import com.ym.mec.biz.dal.entity.Teacher;
|
|
|
-import com.ym.mec.biz.dal.entity.TeacherDefaultVipGroupSalary;
|
|
|
-import com.ym.mec.biz.dal.entity.VipGroup;
|
|
|
-import com.ym.mec.biz.dal.entity.VipGroupActivity;
|
|
|
import com.ym.mec.biz.dal.enums.JobNatureEnum;
|
|
|
import com.ym.mec.biz.dal.enums.SalarySettlementTypeEnum;
|
|
|
import com.ym.mec.biz.dal.enums.TeachModeEnum;
|
|
@@ -58,6 +50,9 @@ public class TeacherDefaultVipGroupSalaryServiceImpl extends BaseServiceImpl<Lon
|
|
|
@Autowired
|
|
|
private VipGroupService vipGroupService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private VipGroupCategoryDao vipGroupCategoryDao;
|
|
|
+
|
|
|
@Override
|
|
|
public BaseDAO<Long, TeacherDefaultVipGroupSalary> getDAO() {
|
|
|
return teacherDefaultVipGroupSalaryDao;
|
|
@@ -146,24 +141,28 @@ public class TeacherDefaultVipGroupSalaryServiceImpl extends BaseServiceImpl<Lon
|
|
|
// 课酬结算标准
|
|
|
if (vipGroup != null) {
|
|
|
|
|
|
+ VipGroupCategory vipGroupCategory = vipGroupCategoryDao.get(vipGroup.getVipGroupCategoryId());
|
|
|
+
|
|
|
VipGroupActivity vipGroupActivity = vipGroupActivityMap.get(vipGroup.getVipGroupActivityId());
|
|
|
- if (vipGroupActivity == null) {
|
|
|
+ if (!vipGroupCategory.getMusicTheory()&&vipGroupActivity == null) {
|
|
|
continue;
|
|
|
}
|
|
|
|
|
|
VipGroupSalarySettlementDto vipGroupSalarySettlementDto = JSON.parseObject(vipGroupActivity.getSalarySettlementJson(),
|
|
|
VipGroupSalarySettlementDto.class);
|
|
|
|
|
|
- if (vipGroupSalarySettlementDto == null) {
|
|
|
+ if (!vipGroupCategory.getMusicTheory()&&vipGroupSalarySettlementDto == null) {
|
|
|
continue;
|
|
|
}
|
|
|
|
|
|
TeacherDefaultVipGroupSalary tdms = salaryMap.get(vipGroup.getVipGroupCategoryId());
|
|
|
TeacherDefaultVipGroupSalary origTdms = map.get(vipGroup.getVipGroupCategoryId());
|
|
|
if (tdms != null && origTdms != null) {
|
|
|
- Map<String, BigDecimal> teachModeSalaryMap = vipGroupService.countVipGroupCoursePredictFee(vipGroup, ts.getUserId(), ts.getCourseScheduleId());
|
|
|
- if(Objects.isNull(vipGroup.getVipGroupActivityId())){
|
|
|
+ Map<String, BigDecimal> teachModeSalaryMap = new HashMap<>();
|
|
|
+ if(vipGroupCategory.getMusicTheory()){
|
|
|
teachModeSalaryMap = vipGroupService.countVipGroupPredictFee(vipGroup, ts.getUserId());
|
|
|
+ }else{
|
|
|
+ teachModeSalaryMap = vipGroupService.countVipGroupCoursePredictFee(vipGroup, ts.getUserId(), ts.getCourseScheduleId());
|
|
|
}
|
|
|
if(TeachModeEnum.ONLINE.equals(ts.getCourseSchedule().getTeachMode())&&teachModeSalaryMap.containsKey("onlineTeacherSalary")){
|
|
|
ts.setExpectSalary(teachModeSalaryMap.get("onlineTeacherSalary"));
|