|  | @@ -6,12 +6,12 @@ import java.util.stream.Collectors;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import com.alibaba.fastjson.JSON;
 | 
	
		
			
				|  |  |  import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  | -import com.baomidou.mybatisplus.core.conditions.Wrapper;
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.dao.*;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.entity.*;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.enums.PaymentChannelEnum;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.enums.TenantOrderRecordEnum;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.page.CloudTeacherAddQueryInfo;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.page.CloudTeacherOrderQueryInfo;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.service.*;
 | 
	
		
			
				|  |  |  import com.ym.mec.common.page.PageInfo;
 | 
	
	
		
			
				|  | @@ -59,6 +59,19 @@ public class CloudTeacherOrderServiceImpl extends BaseServiceImpl<Long, CloudTea
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  | +    public boolean addStudents(CloudTeacherAddQueryInfo cloudTeacherAddQueryInfo) {
 | 
	
		
			
				|  |  | +        for (Integer stId : cloudTeacherAddQueryInfo.getStudentIds()) {
 | 
	
		
			
				|  |  | +            CloudTeacherOrder cloudTeacherOrder = new CloudTeacherOrder();
 | 
	
		
			
				|  |  | +            cloudTeacherOrder.setStudentId(stId);
 | 
	
		
			
				|  |  | +            cloudTeacherOrder.setTime(cloudTeacherAddQueryInfo.getTimes());
 | 
	
		
			
				|  |  | +            cloudTeacherOrder.setType(cloudTeacherAddQueryInfo.getAddType());
 | 
	
		
			
				|  |  | +            cloudTeacherOrderDao.insert(cloudTeacherOrder);
 | 
	
		
			
				|  |  | +            this.addStudentCloudTeacher(cloudTeacherOrder);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        return false;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    @Override
 | 
	
		
			
				|  |  |      public PageInfo<CloudTeacherStudent> queryActiveRecord(CloudTeacherOrderQueryInfo queryInfo) {
 | 
	
		
			
				|  |  |          PageInfo<CloudTeacherStudent> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
 | 
	
		
			
				|  |  |          Map<String, Object> params = new HashMap<>();
 | 
	
	
		
			
				|  | @@ -210,6 +223,7 @@ public class CloudTeacherOrderServiceImpl extends BaseServiceImpl<Long, CloudTea
 | 
	
		
			
				|  |  |              //            DealStatusEnum
 | 
	
		
			
				|  |  |              //            notifyMap.put("totalMoney", notifyMap.get("payAmount"));
 | 
	
		
			
				|  |  |              log.info("tenant orderNotify update order status start" + record.getId().toString());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              cloudTeacherOrderDao.updateOrderStatusOK(record.getId());
 | 
	
		
			
				|  |  |              log.info("tenant orderNotify update order status end");
 | 
	
		
			
				|  |  |              record.setOrderState(1);
 | 
	
	
		
			
				|  | @@ -306,18 +320,8 @@ public class CloudTeacherOrderServiceImpl extends BaseServiceImpl<Long, CloudTea
 | 
	
		
			
				|  |  |              cloudTeacher = new CloudTeacher();
 | 
	
		
			
				|  |  |              startTime = DateUtil.trunc(nowDate);
 | 
	
		
			
				|  |  |              endBaseTime = startTime;
 | 
	
		
			
				|  |  | -            if (cloudTeacherOrder.getType().equals(1)) { // 日
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addDays(startTime, cloudTeacherOrder.getTime());
 | 
	
		
			
				|  |  | -            } else if (cloudTeacherOrder.getType().equals(2)) { // 月
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addMonths(startTime, cloudTeacherOrder.getTime());
 | 
	
		
			
				|  |  | -            } else if (cloudTeacherOrder.getType().equals(3)) { // 季
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addMonths(startTime, cloudTeacherOrder.getTime() * 3);
 | 
	
		
			
				|  |  | -            } else if (cloudTeacherOrder.getType().equals(4)) { // 半年
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addMonths(startTime, cloudTeacherOrder.getTime() * 6);
 | 
	
		
			
				|  |  | -            } else if (cloudTeacherOrder.getType().equals(5)) { // 年
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addYears(startTime, cloudTeacherOrder.getTime());
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -        cloudTeacher.setStudentId(cloudTeacherOrder.getStudentId());
 | 
	
		
			
				|  |  | +            endTime = calcCloudTeacherOrderTime(cloudTeacherOrder, startTime, endTime);
 | 
	
		
			
				|  |  | +            cloudTeacher.setStudentId(cloudTeacherOrder.getStudentId());
 | 
	
		
			
				|  |  |              cloudTeacher.setLevel(cloudTeacherOrder.getLevel());
 | 
	
		
			
				|  |  |              cloudTeacher.setStartTime(startTime);
 | 
	
		
			
				|  |  |              cloudTeacher.setEndTime(endTime);
 | 
	
	
		
			
				|  | @@ -329,17 +333,7 @@ public class CloudTeacherOrderServiceImpl extends BaseServiceImpl<Long, CloudTea
 | 
	
		
			
				|  |  |                  startTime = DateUtil.trunc(nowDate);
 | 
	
		
			
				|  |  |                  endBaseTime = startTime;
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            if (cloudTeacherOrder.getType().equals(1)) { // 日
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addDays(endBaseTime, cloudTeacherOrder.getTime());
 | 
	
		
			
				|  |  | -            } else if (cloudTeacherOrder.getType().equals(2)) { // 月
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addMonths(endBaseTime, cloudTeacherOrder.getTime());
 | 
	
		
			
				|  |  | -            } else if (cloudTeacherOrder.getType().equals(3)) { // 季
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addMonths(endBaseTime, cloudTeacherOrder.getTime() * 3);
 | 
	
		
			
				|  |  | -            } else if (cloudTeacherOrder.getType().equals(4)) { // 半年
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addMonths(endBaseTime, cloudTeacherOrder.getTime() * 6);
 | 
	
		
			
				|  |  | -            } else if (cloudTeacherOrder.getType().equals(5)) { // 年
 | 
	
		
			
				|  |  | -                endTime = DateUtil.addYears(endBaseTime, cloudTeacherOrder.getTime());
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | +            endTime = calcCloudTeacherOrderTime(cloudTeacherOrder, endBaseTime, endTime);
 | 
	
		
			
				|  |  |              cloudTeacher.setStartTime(startTime);
 | 
	
		
			
				|  |  |              cloudTeacher.setEndTime(endTime);
 | 
	
		
			
				|  |  |              cloudTeacher.setUpdateTime(nowDate);
 | 
	
	
		
			
				|  | @@ -349,13 +343,28 @@ public class CloudTeacherOrderServiceImpl extends BaseServiceImpl<Long, CloudTea
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          cloudTeacherOrder.setStartTime(endBaseTime);
 | 
	
		
			
				|  |  |          cloudTeacherOrder.setEndTime(endTime);
 | 
	
		
			
				|  |  | -        cloudTeacherOrder.setStatus(2);
 | 
	
		
			
				|  |  | +        cloudTeacherOrder.setStatus(1);
 | 
	
		
			
				|  |  |          if (cloudTeacherOrderDao.update(cloudTeacherOrder) <= 0) {
 | 
	
		
			
				|  |  |              throw new BizException("云教练生效处理失败");
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          return cloudTeacher;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    private Date calcCloudTeacherOrderTime(CloudTeacherOrder cloudTeacherOrder, Date startTime, Date endTime) {
 | 
	
		
			
				|  |  | +        if (cloudTeacherOrder.getType().equals(1)) { // 日
 | 
	
		
			
				|  |  | +            endTime = DateUtil.addDays(startTime, cloudTeacherOrder.getTime());
 | 
	
		
			
				|  |  | +        } else if (cloudTeacherOrder.getType().equals(2)) { // 月
 | 
	
		
			
				|  |  | +            endTime = DateUtil.addMonths(startTime, cloudTeacherOrder.getTime());
 | 
	
		
			
				|  |  | +        } else if (cloudTeacherOrder.getType().equals(3)) { // 季
 | 
	
		
			
				|  |  | +            endTime = DateUtil.addMonths(startTime, cloudTeacherOrder.getTime() * 3);
 | 
	
		
			
				|  |  | +        } else if (cloudTeacherOrder.getType().equals(4)) { // 半年
 | 
	
		
			
				|  |  | +            endTime = DateUtil.addMonths(startTime, cloudTeacherOrder.getTime() * 6);
 | 
	
		
			
				|  |  | +        } else if (cloudTeacherOrder.getType().equals(5)) { // 年
 | 
	
		
			
				|  |  | +            endTime = DateUtil.addYears(startTime, cloudTeacherOrder.getTime());
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        return endTime;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public List<CloudTeacherOrder> getStudentCloudTeacherOrders(List<Integer> studentIds, String musicGroupId) {
 | 
	
		
			
				|  |  |          return cloudTeacherOrderDao.getStudentCloudTeacherOrders(studentIds, musicGroupId);
 |