Browse Source

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

zouxuan 5 years ago
parent
commit
a881d34a80
21 changed files with 233 additions and 72 deletions
  1. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleTeacherSalaryDao.java
  2. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SysTenantAccountDetailDao.java
  3. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/PracticeCourseDto.java
  4. 11 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleReview.java
  5. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SysTenantAccountDetail.java
  6. 22 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TenantPaymentOrder.java
  7. 2 1
      mec-biz/src/main/java/com/ym/mec/biz/service/SysTenantAccountService.java
  8. 7 0
      mec-biz/src/main/java/com/ym/mec/biz/service/TenantPaymentOrderService.java
  9. 53 37
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseReviewServiceImpl.java
  10. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CoursesGroupServiceImpl.java
  11. 2 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysTenantAccountServiceImpl.java
  12. 23 12
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantPaymentOrderServiceImpl.java
  13. 6 6
      mec-biz/src/main/resources/config/mybatis/CourseScheduleReviewMapper.xml
  14. 12 0
      mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml
  15. 3 1
      mec-biz/src/main/resources/config/mybatis/PracticeGroupMapper.xml
  16. 10 2
      mec-biz/src/main/resources/config/mybatis/SysTenantAccountDetailMapper.xml
  17. 10 2
      mec-biz/src/main/resources/config/mybatis/TenantPaymentOrderMapper.xml
  18. 1 1
      mec-teacher/src/main/java/com/ym/mec/teacher/config/ResourceServerConfig.java
  19. 30 0
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TenantPaymentOrderController.java
  20. 7 0
      mec-thirdparty/src/main/java/com/ym/mec/thirdparty/yqpay/Msg.java
  21. 10 5
      mec-web/src/main/java/com/ym/mec/web/controller/VipGroupManageController.java

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleTeacherSalaryDao.java

@@ -62,6 +62,8 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 */
 	List<CourseScheduleTeacherSalary> findSomeDayAgoTeacherCourseSalaryNoSettlement(@Param("days") Integer days,@Param("groupType") String groupType);
 
+	List<CourseScheduleTeacherSalary> findTemp();
+
 	/**
 	 * @return java.util.List<com.ym.mec.biz.dal.entity.TeacherDefaultVipGroupSalary>
 	 * @Author: Joburgess

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SysTenantAccountDetailDao.java

@@ -5,5 +5,5 @@ import com.ym.mec.common.dal.BaseDAO;
 
 public interface SysTenantAccountDetailDao extends BaseDAO<Long, SysTenantAccountDetail> {
 
-	
+	SysTenantAccountDetail queryByOrderNo(String orderNo);
 }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/PracticeCourseDto.java

@@ -14,6 +14,8 @@ public class PracticeCourseDto extends PracticeGroup {
 
     private String subjectName;
 
+    private String eduTeacherName;
+
     public String getTeacherName() {
         return teacherName;
     }
@@ -37,4 +39,12 @@ public class PracticeCourseDto extends PracticeGroup {
     public void setSubjectName(String subjectName) {
         this.subjectName = subjectName;
     }
+
+    public String getEduTeacherName() {
+        return eduTeacherName;
+    }
+
+    public void setEduTeacherName(String eduTeacherName) {
+        this.eduTeacherName = eduTeacherName;
+    }
 }

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseScheduleReview.java

@@ -121,6 +121,9 @@ public class CourseScheduleReview {
     @ApiModelProperty(value = "学生",required = false)
     private String studentAvatar;
 
+    @ApiModelProperty(value = "教务老师名字",required = false)
+    private String eduTeacherName;
+
     public Integer getId() {
         return id;
     }
@@ -325,4 +328,12 @@ public class CourseScheduleReview {
     public void setStudentAvatar(String studentAvatar) {
         this.studentAvatar = studentAvatar;
     }
+
+    public String getEduTeacherName() {
+        return eduTeacherName;
+    }
+
+    public void setEduTeacherName(String eduTeacherName) {
+        this.eduTeacherName = eduTeacherName;
+    }
 }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SysTenantAccountDetail.java

@@ -61,6 +61,8 @@ public class SysTenantAccountDetail {
 
 	/**  */
 	private Integer userId;
+	
+	private String orderNo;
 
 	/** 交易类型 */
 	private TransType transType;
@@ -177,6 +179,14 @@ public class SysTenantAccountDetail {
 		return this.updateTime;
 	}
 
+	public String getOrderNo() {
+		return orderNo;
+	}
+
+	public void setOrderNo(String orderNo) {
+		this.orderNo = orderNo;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 22 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TenantPaymentOrder.java

@@ -34,7 +34,7 @@ public class TenantPaymentOrder {
 
 	/**  */
 	private Long id;
-	
+
 	private Integer activitiesId;
 
 	/**  */
@@ -46,6 +46,11 @@ public class TenantPaymentOrder {
 	/** 订单类型(购买) */
 	private TenantPaymentType type;
 
+	/** 交易的分钟数 */
+	private Integer transMinutes;
+
+	private Integer giveMinutes;
+
 	/** 预计金额 */
 	private java.math.BigDecimal expectAmount;
 
@@ -137,6 +142,22 @@ public class TenantPaymentOrder {
 		return this.type;
 	}
 
+	public Integer getTransMinutes() {
+		return transMinutes;
+	}
+
+	public void setTransMinutes(Integer transMinutes) {
+		this.transMinutes = transMinutes;
+	}
+
+	public Integer getGiveMinutes() {
+		return giveMinutes;
+	}
+
+	public void setGiveMinutes(Integer giveMinutes) {
+		this.giveMinutes = giveMinutes;
+	}
+
 	public void setExpectAmount(java.math.BigDecimal expectAmount) {
 		this.expectAmount = expectAmount;
 	}

+ 2 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/SysTenantAccountService.java

@@ -12,11 +12,12 @@ public interface SysTenantAccountService extends BaseService<Integer, SysTenantA
 	 * 更新账户
 	 * @param userId 用户编号
 	 * @param minutes 修改的分钟数(正数相加,负数相减)
+	 * @param orderNo 订单号
 	 * @param type 交易类型
 	 * @param transNo 交易流水
 	 * @param cashAmount 交易金额
 	 * @param memo 备注
 	 * @return
 	 */
-	public boolean update(Integer userId, int minutes, TransType type, String transNo, BigDecimal cashAmount, String memo);
+	public boolean update(Integer userId, int minutes, String orderNo, TransType type, String transNo, BigDecimal cashAmount, String memo);
 }

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/TenantPaymentOrderService.java

@@ -26,4 +26,11 @@ public interface TenantPaymentOrderService extends BaseService<Long, TenantPayme
 	 * 从第三方查询订单状态
 	 */
 	public void queryOrderStatusFromRemote();
+
+	/**
+	 * 订单查询
+	 * @param orderNo
+	 * @return
+	 */
+	public TenantPaymentOrder queryByOrderNo(String orderNo);
 }

+ 53 - 37
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseReviewServiceImpl.java

@@ -1,52 +1,60 @@
 package com.ym.mec.biz.service.impl;
 
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.ym.mec.auth.api.client.SysUserFeignService;
-import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.dao.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
+import java.util.stream.Collectors;
+
 import com.ym.mec.biz.dal.dto.*;
-import com.ym.mec.biz.dal.entity.*;
-import com.ym.mec.biz.dal.enums.*;
+import com.ym.mec.biz.dal.enums.GroupType;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.dao.CourseHomeworkDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleComplaintsDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleReviewDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
+import com.ym.mec.biz.dal.dao.OrganizationDao;
+import com.ym.mec.biz.dal.dao.PracticeGroupDao;
+import com.ym.mec.biz.dal.dao.StudentCourseHomeworkDao;
+import com.ym.mec.biz.dal.dao.SubjectDao;
+import com.ym.mec.biz.dal.dao.SysConfigDao;
+import com.ym.mec.biz.dal.dao.TeacherDao;
+import com.ym.mec.biz.dal.entity.ClassGroup;
+import com.ym.mec.biz.dal.entity.CourseHomework;
+import com.ym.mec.biz.dal.entity.CourseSchedule;
+import com.ym.mec.biz.dal.entity.CourseScheduleComplaints;
+import com.ym.mec.biz.dal.entity.CourseScheduleReview;
+import com.ym.mec.biz.dal.entity.CourseScheduleStudentPayment;
+import com.ym.mec.biz.dal.entity.PracticeGroup;
+import com.ym.mec.biz.dal.entity.StudentCourseHomework;
+import com.ym.mec.biz.dal.entity.Teacher;
+import com.ym.mec.biz.dal.enums.MessageTypeEnum;
+import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.CourseReview4EduQueryInfo;
 import com.ym.mec.biz.dal.page.CourseReviewQueryInfo;
-import com.ym.mec.biz.dal.page.PracticeGroupQueryInfo;
-import com.ym.mec.biz.service.*;
-import com.ym.mec.common.constant.CommonConstants;
-import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.biz.service.ClassGroupService;
+import com.ym.mec.biz.service.CourseHomeworkService;
+import com.ym.mec.biz.service.CourseReviewService;
+import com.ym.mec.biz.service.SysConfigService;
+import com.ym.mec.biz.service.SysMessageService;
 import com.ym.mec.common.dal.BaseDAO;
-import com.ym.mec.common.entity.HttpResponseResult;
-import com.ym.mec.common.entity.ImGroupMember;
-import com.ym.mec.common.entity.ImGroupModel;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.redis.service.RedisCache;
-import com.ym.mec.common.service.IdGeneratorService;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
-import com.ym.mec.im.ImFeignService;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
-import com.ym.mec.util.http.HttpUtil;
-import org.apache.commons.lang3.StringUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Isolation;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.transaction.interceptor.TransactionAspectSupport;
-import org.springframework.util.CollectionUtils;
-
-import java.math.BigDecimal;
-import java.time.*;
-import java.time.format.DateTimeFormatter;
-import java.time.temporal.WeekFields;
-import java.util.*;
-import java.util.stream.Collectors;
 
 @Service
 public class CourseReviewServiceImpl extends BaseServiceImpl<Integer, CourseScheduleReview> implements CourseReviewService {
@@ -246,10 +254,18 @@ public class CourseReviewServiceImpl extends BaseServiceImpl<Integer, CourseSche
             throw new BizException("评价不存在");
         }
         CourseHomework homework = courseHomeworkDao.findByCourseSchedule(courseScheduleReview.getCourseScheduleId().longValue());
-        courseScheduleReview.setHomeWork(homework.getContent());
+        if(homework != null){
+        	courseScheduleReview.setHomeWork(homework.getContent());
+        }
         TeacherClassHeadInfo teacherClassGroupInfo = getCourseInfoHead(courseScheduleReview.getCourseScheduleId());
         courseScheduleReview.setTeacherName(teacherClassGroupInfo.getBishopTeacher());
 
+        CourseSchedule courseSchedule = courseScheduleDao.get(courseScheduleReview.getCourseScheduleId().longValue());
+        if(courseSchedule.getGroupType().equals(GroupType.PRACTICE)){
+            PracticeCourseDto practiceGroup = practiceGroupDao.findByGroupId(Integer.parseInt(courseSchedule.getMusicGroupId()));
+            courseScheduleReview.setEduTeacherName(practiceGroup.getEduTeacherName());
+        }
+
         ReviewInfoDto reviewInfoDto = new ReviewInfoDto();
         reviewInfoDto.setCourseScheduleReview(courseScheduleReview);
         reviewInfoDto.setTeacherClassHeadInfo(teacherClassGroupInfo);

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CoursesGroupServiceImpl.java

@@ -117,7 +117,7 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
 
         //总课程时长
         Integer totalCourseTime=courseCycleInfo.getCourseCount()*courseCycleInfo.getSingleClassMinutes();
-        sysTenantAccountService.update(courseGroup.getTeacherId(), -totalCourseTime, SysTenantAccountDetail.TransType.CONSUME, "",BigDecimal.ZERO,"课程组创建");
+//        sysTenantAccountService.update(courseGroup.getTeacherId(), -totalCourseTime, SysTenantAccountDetail.TransType.CONSUME, "",BigDecimal.ZERO,"课程组创建");
 
         Date now=new Date();
         courseGroup.setSingleClassMinutes(courseCycleInfo.getSingleClassMinutes());

+ 2 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysTenantAccountServiceImpl.java

@@ -15,7 +15,6 @@ import com.ym.mec.biz.dal.entity.SysTenantAccount.AccountStatus;
 import com.ym.mec.biz.dal.entity.SysTenantAccountDetail;
 import com.ym.mec.biz.dal.entity.SysTenantAccountDetail.TransStatus;
 import com.ym.mec.biz.dal.entity.SysTenantAccountDetail.TransType;
-import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.biz.service.SysTenantAccountService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
@@ -37,7 +36,7 @@ public class SysTenantAccountServiceImpl extends BaseServiceImpl<Integer, SysTen
 
 	@Override
 	@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
-	public boolean update(Integer userId, int minutes, TransType type, String transNo, BigDecimal cashAmount, String memo) {
+	public boolean update(Integer userId, int minutes, String orderNo, TransType type, String transNo, BigDecimal cashAmount, String memo) {
 		SysTenantAccount tenantAccount = sysTenantAccountDao.getLocked(userId);
 		if (tenantAccount == null) {
 			throw new BizException("用户[{}]现金账户不存在", userId);
@@ -58,6 +57,7 @@ public class SysTenantAccountServiceImpl extends BaseServiceImpl<Integer, SysTen
 		sysTenantAccountDao.update(tenantAccount);
 
 		SysTenantAccountDetail detail = new SysTenantAccountDetail();
+		detail.setOrderNo(orderNo);
 		detail.setTransMinutes(minutes);
 		detail.setTotalAvailableMinutes(tenantAccount.getAvailableMinutes());
 		detail.setMemo(memo);

+ 23 - 12
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantPaymentOrderServiceImpl.java

@@ -10,6 +10,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Propagation;
@@ -45,6 +47,8 @@ import com.ym.mec.util.date.DateUtil;
 @Service
 public class TenantPaymentOrderServiceImpl extends BaseServiceImpl<Long, TenantPaymentOrder> implements TenantPaymentOrderService {
 
+	private static final Logger logger = LoggerFactory.getLogger(TenantPaymentOrderServiceImpl.class);
+
 	@Autowired
 	private TenantPaymentOrderDao tenantPaymentOrderDao;
 
@@ -122,6 +126,8 @@ public class TenantPaymentOrderServiceImpl extends BaseServiceImpl<Long, TenantP
 
 		TenantPaymentOrder tenantPaymentOrder = new TenantPaymentOrder();
 		tenantPaymentOrder.setUserId(userId);
+		tenantPaymentOrder.setTransMinutes(tenantEntryActivities.getPurchaseMinutes());
+		tenantPaymentOrder.setGiveMinutes(tenantEntryActivities.getGiveMinutes());
 		tenantPaymentOrder.setOrderNo(idGeneratorService.generatorId("tenant_payment") + "");
 		tenantPaymentOrder.setType(TenantPaymentType.RECHARGE);
 		tenantPaymentOrder.setExpectAmount(tenantEntryActivities.getDiscountPrice());
@@ -145,8 +151,8 @@ public class TenantPaymentOrderServiceImpl extends BaseServiceImpl<Long, TenantP
 		try {
 
 			Map<String, Object> payMap = payService.getPayMap(tenantPaymentOrder.getExpectAmount(), tenantPaymentOrder.getOrderNo(), baseApiUrl
-					+ "/api-teacher/teacherOrder/notify", baseApiUrl + "/#/paymentResult?orderNo=" + tenantPaymentOrder.getOrderNo(),
-					"商户入驻", "商户充值", userId, classFee, organId);
+					+ "/api-teacher/teacherOrder/notify", baseApiUrl + "/#/paymentResult?orderNo=" + tenantPaymentOrder.getOrderNo(), "商户入驻", "商户充值", userId,
+					classFee, organId);
 
 			Map<String, BigDecimal> routingFee = (Map<String, BigDecimal>) payMap.get("routingFee");
 			tenantPaymentOrder.setComAmount(routingFee.get("COM"));
@@ -182,8 +188,8 @@ public class TenantPaymentOrderServiceImpl extends BaseServiceImpl<Long, TenantP
 			}
 
 			// 更新账户表信息
-			sysTenantAccountService.update(userId, tenantEntryActivities.getPurchaseMinutes() + tenantEntryActivities.getGiveMinutes(), TransType.RECHARGE, "",
-					tenantEntryActivities.getDiscountPrice(), "");
+			sysTenantAccountService.update(userId, tenantEntryActivities.getPurchaseMinutes() + tenantEntryActivities.getGiveMinutes(),
+					tenantPaymentOrder.getOrderNo(), TransType.RECHARGE, "", tenantEntryActivities.getDiscountPrice(), "");
 		} else {
 
 		}
@@ -222,14 +228,14 @@ public class TenantPaymentOrderServiceImpl extends BaseServiceImpl<Long, TenantP
 		RsqMsg rsqMsg = new RsqMsg(requestMap);
 
 		Msg queryRs = yqPayFeignService.orderQuery(rsqMsg);
-
+		logger.info("支付状态查询结果:{}", queryRs);
 		if (queryRs.getCode().equals("88")) {
 			// 更新订单状态
 			String[] statusArr = { "0", "1", "7" };
 			String responseParameters = queryRs.getResponseParameters();
-			List<Map<String, String>> responseList = JSON.parseObject(responseParameters, List.class);
-			for (Map<String, String> response : responseList) {
-				Map<String, String> rpMap = response;
+			List<Map<String, Object>> responseList = JSON.parseObject(responseParameters, List.class);
+			for (Map<String, Object> response : responseList) {
+				Map<String, Object> rpMap = response;
 				String channelType = rpMap.get("channelType").equals("1") ? "WXPay" : (rpMap.get("channelType").equals("2") ? "Alipay" : "quickPay");
 				rpMap.put("channelType", channelType);
 
@@ -240,7 +246,7 @@ public class TenantPaymentOrderServiceImpl extends BaseServiceImpl<Long, TenantP
 				if (Arrays.asList(statusArr).contains(rpMap.get("tradeState"))) {
 					try {
 						DealStatusEnum status = rpMap.get("tradeState").equals("1") ? DealStatusEnum.SUCCESS : DealStatusEnum.FAILED;
-						TenantPaymentOrder order = tenantPaymentOrderDao.findOrderByOrderNo(rpMap.get("merOrderNo"));
+						TenantPaymentOrder order = tenantPaymentOrderDao.findOrderByOrderNo(rpMap.get("merOrderNo").toString());
 						if (order == null || !order.getStatus().equals(DealStatusEnum.ING)) {
 							continue;
 						}
@@ -248,12 +254,12 @@ public class TenantPaymentOrderServiceImpl extends BaseServiceImpl<Long, TenantP
 						if (status.equals(DealStatusEnum.SUCCESS)) {
 							order.setPayTime(new Date());
 						} else {
-							order.setMemo(rpMap.get("remarks"));
+							order.setMemo(rpMap.get("remarks").toString());
 						}
 						order.setStatus(status);
-						order.setTransNo(rpMap.get("orderNo"));
+						order.setTransNo(rpMap.get("orderNo").toString());
 						order.setPaymentBusinessChannel(channelType);
-						order.setActualAmount(new BigDecimal(rpMap.get("payAmount")));
+						order.setActualAmount(new BigDecimal(rpMap.get("totalMoney").toString()));
 						paymentForCallback(order);
 					} catch (Exception e) {
 						e.printStackTrace();
@@ -318,4 +324,9 @@ public class TenantPaymentOrderServiceImpl extends BaseServiceImpl<Long, TenantP
 			}
 		}
 	}
+
+	@Override
+	public TenantPaymentOrder queryByOrderNo(String orderNo) {
+		return tenantPaymentOrderDao.findOrderByOrderNo(orderNo);
+	}
 }

+ 6 - 6
mec-biz/src/main/resources/config/mybatis/CourseScheduleReviewMapper.xml

@@ -29,8 +29,7 @@
     </resultMap>
 
     <select id="get" parameterType="java.lang.Integer" resultMap="CourseScheduleReview">
-        select *
-        from course_schedule_review
+        select * from course_schedule_review
         where id_ = #{id,jdbcType=INTEGER}
     </select>
 
@@ -62,9 +61,8 @@
         VALUE
         <foreach collection="courseScheduleReviews" item="courseScheduleReview" separator=",">
             (#{courseScheduleReview.courseScheduleId,jdbcType=INTEGER},#{courseScheduleReview.classGroupId,jdbcType=INTEGER},
-            #{courseScheduleReview.classGroupId,jdbcType=INTEGER},#{courseScheduleReview.teacherId,jdbcType=INTEGER},#{courseScheduleReview.studentId,jdbcType=INTEGER},
-            #{courseScheduleReview.teachingMaterial,jdbcType=VARCHAR},
-            #{courseScheduleReview.memo,jdbcType=VARCHAR},NOW(),now())
+            #{courseScheduleReview.teacherId,jdbcType=INTEGER},#{courseScheduleReview.studentId,jdbcType=INTEGER},
+            #{courseScheduleReview.teachingMaterial,jdbcType=VARCHAR},#{courseScheduleReview.memo,jdbcType=VARCHAR},NOW(),now())
         </foreach>
     </insert>
 
@@ -145,13 +143,15 @@
         <result column="class_date_Str_" jdbcType="VARCHAR" property="classDateStr"/>
         <result column="start_class_time_Str_" jdbcType="VARCHAR" property="startClassTimeStr"/>
         <result column="end_class_time_Str_" jdbcType="VARCHAR" property="endClassTimeStr"/>
-
     </resultMap>
 
     <sql id="practiceGroupReviewsQueryCondition">
         <where>
             AND pg.id_ > 0 AND cs.group_type_='PRACTICE' AND cs.status_='OVER' AND (cs.del_flag_ = 0 OR cs.del_flag_ IS
             NULL)
+            <if test="search!=null and search!=''">
+                AND (pg.name_ LIKE CONCAT('%',#{search},'%') OR pg.id_= #{search})
+            </if>
             <if test="organId != null">
                 AND FIND_IN_SET(pg.organ_id_,#{organId})
             </if>

+ 12 - 0
mec-biz/src/main/resources/config/mybatis/CourseScheduleTeacherSalaryMapper.xml

@@ -250,6 +250,18 @@
 		AND csts.settlement_time_ IS NULL
 		AND (cs.del_flag_ IS NULL OR cs.del_flag_=0)
     </select>
+	<select id="findTemp" resultMap="CourseScheduleTeacherSalary">
+		SELECT
+		cs.class_date_,
+		csts.*
+		FROM
+		course_schedule_teacher_salary csts
+		LEFT JOIN course_schedule cs ON cs.id_ = csts.course_schedule_id_
+		WHERE
+		cs.id_ IN (935453,936237,941743,943852,943853,947057,947766,953975,956585,961473,963648,971399,971403,973618,973635,973636,973637,981583,982904,982907,983748,990941,992760,1000909,1001264,1005970,1007127,1007911,1013814,1013818,1014509,1014667,1014671,1014672,1026261,1052210,1247504,1263832)
+		AND csts.settlement_time_ IS NULL
+		AND (cs.del_flag_ IS NULL OR cs.del_flag_=0)
+	</select>
     <select id="findTeacherCourseSalaryNoSettlement" resultMap="CourseScheduleTeacherSalary">
 		SELECT
 		cs.class_date_,

+ 3 - 1
mec-biz/src/main/resources/config/mybatis/PracticeGroupMapper.xml

@@ -32,6 +32,7 @@
         <result property="teacherName" column="real_name_"/>
         <result property="avatar" column="avatar_"/>
         <result property="subjectName" column="subject_name_"/>
+        <result property="eduTeacherName" column="edu_teacher_name_"/>
     </resultMap>
 
     <resultMap type="com.ym.mec.biz.dal.dto.PracticeGroupDto" id="PracticeGroupDto" extends="PracticeGroup">
@@ -370,9 +371,10 @@
     </select>
 
     <select id="findByGroupId" resultMap="PracticeCourseDto">
-        SELECT pg.*, s.name_ subject_name_
+        SELECT pg.*, s.name_ subject_name_,su.real_name_ edu_teacher_name_
         FROM practice_group pg
                  LEFT JOIN subject s on pg.subject_id_ = s.id_
+        LEFT JOIN sys_user su on pg.educational_teacher_id_ = su.id_
         WHERE pg.id_ = #{id}
     </select>
 </mapper>

+ 10 - 2
mec-biz/src/main/resources/config/mybatis/SysTenantAccountDetailMapper.xml

@@ -7,6 +7,7 @@
 		id="SysTenantAccountDetail">
 		<result column="id_" property="id" />
 		<result column="user_id_" property="userId" />
+		<result column="order_no_" property="orderNo" />
 		<result column="trans_type_" property="transType" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler" />
 		<result column="trans_status_" property="transStatus" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler" />
 		<result column="trans_no_" property="transNo" />
@@ -36,6 +37,10 @@
 	<select id="get" resultMap="SysTenantAccountDetail">
 		SELECT * FROM sys_tenant_account_detail WHERE id_ = #{id}
 	</select>
+	
+	<select id="queryByOrderNo" resultMap="SysTenantAccountDetail">
+		SELECT * FROM sys_tenant_account_detail WHERE order_no_ = #{orderNo}
+	</select>
 
 	<!-- 全查询 -->
 	<select id="findAll" resultMap="SysTenantAccountDetail">
@@ -48,8 +53,8 @@
 		<!-- <selectKey resultClass="int" keyProperty="id" > SELECT SEQ_WSDEFINITION_ID.nextval 
 			AS ID FROM DUAL </selectKey> -->
 		INSERT INTO sys_tenant_account_detail
-		(id_,user_id_,trans_type_,trans_status_,trans_no_,trans_cash_amount_,total_available_minutes_,trans_minutes_,memo_,create_time_,update_time_)
-		VALUES(#{id},#{userId},#{transType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{transStatus, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{transNo},#{transCashAmount},#{totalAvailableMinutes},#{transMinutes},#{memo},#{createTime},#{updateTime})
+		(id_,user_id_,order_no_,trans_type_,trans_status_,trans_no_,trans_cash_amount_,total_available_minutes_,trans_minutes_,memo_,create_time_,update_time_)
+		VALUES(#{id},#{userId},#{orderNo},#{transType, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{transStatus, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{transNo},#{transCashAmount},#{totalAvailableMinutes},#{transMinutes},#{memo},#{createTime},#{updateTime})
 	</insert>
 
 	<!-- 根据主键查询一条记录 -->
@@ -62,6 +67,9 @@
 			<if test="userId != null">
 				user_id_ = #{userId},
 			</if>
+			<if test="orderNo != null">
+				order_no_ = #{orderNo},
+			</if>
 			<if test="id != null">
 				id_ = #{id},
 			</if>

+ 10 - 2
mec-biz/src/main/resources/config/mybatis/TenantPaymentOrderMapper.xml

@@ -10,6 +10,8 @@
 		<result column="user_id_" property="userId" />
 		<result column="organ_id_" property="organId" />
 		<result column="type_" property="type" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler" />
+		<result column="trans_minutes_" property="transMinutes" />
+		<result column="give_minutes_" property="giveMinutes" />
 		<result column="expect_amount_" property="expectAmount" />
 		<result column="actual_amount_" property="actualAmount" />
 		<result column="balance_payment_amount_" property="balancePaymentAmount" />
@@ -45,8 +47,8 @@
 		<!-- <selectKey resultClass="int" keyProperty="id" > SELECT SEQ_WSDEFINITION_ID.nextval 
 			AS ID FROM DUAL </selectKey> -->
 		INSERT INTO tenant_payment_order
-		(id_,activities_id_,user_id_,organ_id_,type_,expect_amount_,actual_amount_,balance_payment_amount_,com_amount_,per_amount_,remit_fee_,trans_no_,status_,memo_,payment_channel_,payment_business_channel_,mer_nos_,order_no_,pay_time_,version_,create_time_,update_time_)
-		VALUES(#{id},#{activitiesId},#{userId},#{organId},#{type, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{expectAmount},#{actualAmount},#{balancePaymentAmount},#{comAmount},#{perAmount},#{remitFee},#{transNo},#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{memo},#{paymentChannel},#{paymentBusinessChannel},#{merNos},#{orderNo},#{payTime},#{version},#{createTime},#{updateTime})
+		(id_,activities_id_,user_id_,organ_id_,type_,trans_minutes_,give_minutes_,expect_amount_,actual_amount_,balance_payment_amount_,com_amount_,per_amount_,remit_fee_,trans_no_,status_,memo_,payment_channel_,payment_business_channel_,mer_nos_,order_no_,pay_time_,version_,create_time_,update_time_)
+		VALUES(#{id},#{activitiesId},#{userId},#{organId},#{type, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{transMinutes},#{giveMinutes},#{expectAmount},#{actualAmount},#{balancePaymentAmount},#{comAmount},#{perAmount},#{remitFee},#{transNo},#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{memo},#{paymentChannel},#{paymentBusinessChannel},#{merNos},#{orderNo},#{payTime},#{version},#{createTime},#{updateTime})
 	</insert>
 
 	<!-- 根据主键查询一条记录 -->
@@ -56,6 +58,12 @@
 			<if test="status != null">
 				status_ = #{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
 			</if>
+			<if test="transMinutes != null">
+				trans_minutes_ = #{transMinutes},
+			</if>
+			<if test="giveMinutes != null">
+				give_minutes_ = #{giveMinutes},
+			</if>
 			<if test="organId != null">
 				organ_id_ = #{organId},
 			</if>

+ 1 - 1
mec-teacher/src/main/java/com/ym/mec/teacher/config/ResourceServerConfig.java

@@ -32,7 +32,7 @@ public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
 				.and()
 				.authorizeRequests()
 				.antMatchers("/v2/api-docs", "/code/*", "/teacher/queryStudentApply", "/teacher/querySubByMusicGroupId", "/studentRegistration/updateSubject",
-						"/studyReport/createEvaluate", "/teacherOrder/*","/courseReview/batchAdd").permitAll().anyRequest().authenticated().and().httpBasic();
+						"/studyReport/createEvaluate", "/teacherOrder/*").permitAll().anyRequest().authenticated().and().httpBasic();
 	}
 
 	@Override

+ 30 - 0
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TenantPaymentOrderController.java

@@ -7,12 +7,14 @@ import java.util.Objects;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
+import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.entity.TenantPaymentOrder;
 import com.ym.mec.biz.service.TenantPaymentOrderService;
 import com.ym.mec.common.controller.BaseController;
 
@@ -37,4 +39,32 @@ public class TenantPaymentOrderController extends BaseController {
         return succeed(tenantPaymentOrderService.createOrder(sysUser.getId(), activitiesId));
     }
 
+    @ApiOperation(value = "查询订单")
+    @GetMapping("/query")
+    public Object query(long id){
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(Objects.isNull(sysUser)){
+            return failed(HttpStatus.FORBIDDEN,"请登录");
+        }
+        TenantPaymentOrder order = tenantPaymentOrderService.get(id);
+        if(order == null){
+        	return failed("订单不存在");
+        }
+        return succeed(order);
+    }
+
+    @ApiOperation(value = "查询订单")
+    @GetMapping("/queryByOrderNo")
+    public Object query(String orderNo){
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(Objects.isNull(sysUser)){
+            return failed(HttpStatus.FORBIDDEN,"请登录");
+        }
+        TenantPaymentOrder order = tenantPaymentOrderService.queryByOrderNo(orderNo);
+        if(order == null){
+        	return failed("订单不存在");
+        }
+        return succeed(order);
+    }
+
 }

+ 7 - 0
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/yqpay/Msg.java

@@ -1,5 +1,7 @@
 package com.ym.mec.thirdparty.yqpay;
 
+import org.apache.commons.lang3.builder.ToStringBuilder;
+
 public class Msg {
 
     private String code;
@@ -47,4 +49,9 @@ public class Msg {
     public void setSign(String sign) {
         this.sign = sign;
     }
+    
+    @Override
+    public String toString() {
+    	return ToStringBuilder.reflectionToString(this);
+    }
 }

+ 10 - 5
mec-web/src/main/java/com/ym/mec/web/controller/VipGroupManageController.java

@@ -14,10 +14,7 @@ import com.ym.mec.biz.dal.page.VipGroupAttendanceQueryInfo;
 import com.ym.mec.biz.dal.page.VipGroupQueryInfo;
 import com.ym.mec.biz.dal.page.VipGroupSalaryQueryInfo;
 import com.ym.mec.biz.dal.page.VipGroupTeachingRecordQueryInfo;
-import com.ym.mec.biz.service.CourseScheduleService;
-import com.ym.mec.biz.service.StudentApplyRefundsService;
-import com.ym.mec.biz.service.StudentPaymentOrderService;
-import com.ym.mec.biz.service.VipGroupService;
+import com.ym.mec.biz.service.*;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.exception.BizException;
 import io.swagger.annotations.Api;
@@ -56,7 +53,15 @@ public class VipGroupManageController extends BaseController {
     
     @Autowired
     private StudentPaymentOrderService studentPaymentOrderService;
-    
+    @Autowired
+    private CourseScheduleTeacherSalaryService courseScheduleTeacherSalaryService;
+
+    @GetMapping("/teacherSalarySettlement")
+    public Object teacherSalarySettlement(){
+        courseScheduleTeacherSalaryService.teacherSalarySettlement();
+        return succeed();
+    }
+
     @ApiOperation(value = "vip课申请")
     @PostMapping("/vipGroupApply")
     @PreAuthorize("@pcs.hasPermissions('vipGroupManage/vipGroupApply')")