Bladeren bron

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

yonge 3 jaren geleden
bovenliggende
commit
6cc5598a7f
31 gewijzigde bestanden met toevoegingen van 417 en 135 verwijderingen
  1. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderDao.java
  2. 0 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderDetailDao.java
  3. 4 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderMemberDao.java
  4. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderRepairDao.java
  5. 61 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupPaymentCalenderResultDto.java
  6. 31 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupPaymentCalender.java
  7. 0 9
      mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderDetailService.java
  8. 4 0
      mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderMemberService.java
  9. 3 0
      mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderRepairService.java
  10. 3 4
      mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderService.java
  11. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderDetailService.java
  12. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/service/TenantInfoService.java
  13. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/service/TenantOrderRecordService.java
  14. 0 7
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderDetailServiceImpl.java
  15. 6 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderMemberServiceImpl.java
  16. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderRepairServiceImpl.java
  17. 52 23
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java
  18. 29 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/OrderPayOpsServiceImpl.java
  19. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderDetailServiceImpl.java
  20. 21 34
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentServiceImpl.java
  21. 43 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantInfoServiceImpl.java
  22. 38 18
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantOrderRecordServiceImpl.java
  23. 5 7
      mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderDetailMapper.xml
  24. 57 10
      mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMapper.xml
  25. 3 0
      mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMemberMapper.xml
  26. 3 0
      mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderRepairMapper.xml
  27. 3 4
      mec-web/src/main/java/com/ym/mec/web/config/ResourceServerConfig.java
  28. 2 2
      mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderController.java
  29. 1 1
      mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderDetailController.java
  30. 18 10
      mec-web/src/main/java/com/ym/mec/web/controller/StudentPaymentOrderController.java
  31. 7 1
      mec-web/src/main/java/com/ym/mec/web/controller/TenantInfoController.java

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderDao.java

@@ -2,6 +2,7 @@ package com.ym.mec.biz.dal.dao;
 
 
 import com.ym.mec.biz.dal.dto.CalenderPushDto;
 import com.ym.mec.biz.dal.dto.CalenderPushDto;
 import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderAuditDto;
 import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderAuditDto;
+import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderResultDto;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PayUserType;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PayUserType;
 import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
 import com.ym.mec.biz.dal.enums.PaymentStatusEnum;
@@ -344,4 +345,8 @@ public interface MusicGroupPaymentCalenderDao extends BaseDAO<Long, MusicGroupPa
      * @return
      * @return
      */
      */
     String queryCalenderStudentIds(@Param("musicGroupId") String musicGroupId, @Param("batchNo") String batchNo);
     String queryCalenderStudentIds(@Param("musicGroupId") String musicGroupId, @Param("batchNo") String batchNo);
+
+    int countCalender(Map<String, Object> params);
+
+    List<MusicGroupPaymentCalenderResultDto> queryCalenderPage(Map<String, Object> params);
 }
 }

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

@@ -9,7 +9,6 @@ import com.ym.mec.biz.dal.dto.MusicArrearageStudentDto;
 import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.MusicGroup;
 
 
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Param;
-import org.junit.runners.Parameterized.Parameters;
 
 
 import com.ym.mec.biz.dal.dto.SimpleUserDto;
 import com.ym.mec.biz.dal.dto.SimpleUserDto;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderDetail;

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupPaymentCalenderMemberDao.java

@@ -4,8 +4,12 @@ import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderMember;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderMember;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Param;
 
 
+import java.util.List;
+
 public interface MusicGroupPaymentCalenderMemberDao extends BaseDAO<Long, MusicGroupPaymentCalenderMember> {
 public interface MusicGroupPaymentCalenderMemberDao extends BaseDAO<Long, MusicGroupPaymentCalenderMember> {
 
 
 
 
     void deleteByCalenderId(@Param("calenderId") Long calenderId);
     void deleteByCalenderId(@Param("calenderId") Long calenderId);
+
+    List<MusicGroupPaymentCalenderMember> findByCalenderId(@Param("calenderId") Long calenderId);
 }
 }

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

@@ -8,4 +8,6 @@ public interface MusicGroupPaymentCalenderRepairDao extends BaseDAO<Long, MusicG
 
 
 
 
     void deleteByCalenderId(@Param("calenderId") Long calenderId);
     void deleteByCalenderId(@Param("calenderId") Long calenderId);
+
+    MusicGroupPaymentCalenderRepair findByCalenderId(@Param("calenderId") Long calenderId);
 }
 }

+ 61 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupPaymentCalenderResultDto.java

@@ -0,0 +1,61 @@
+package com.ym.mec.biz.dal.dto;
+
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PayUserType;
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PaymentType;
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderCourseSettings;
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderStudentDetail;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class MusicGroupPaymentCalenderResultDto extends MusicGroupPaymentCalender{
+	private Integer organId;
+
+	private String organName;
+
+	private String musicGroupName;
+
+	private String operatorName;
+
+	@Override
+	public Integer getOrganId() {
+		return organId;
+	}
+
+	@Override
+	public void setOrganId(Integer organId) {
+		this.organId = organId;
+	}
+
+	@Override
+	public String getOrganName() {
+		return organName;
+	}
+
+	@Override
+	public void setOrganName(String organName) {
+		this.organName = organName;
+	}
+
+	@Override
+	public String getMusicGroupName() {
+		return musicGroupName;
+	}
+
+	@Override
+	public void setMusicGroupName(String musicGroupName) {
+		this.musicGroupName = musicGroupName;
+	}
+
+	public String getOperatorName() {
+		return operatorName;
+	}
+
+	public void setOperatorName(String operatorName) {
+		this.operatorName = operatorName;
+	}
+}

+ 31 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupPaymentCalender.java

@@ -102,6 +102,9 @@ public class MusicGroupPaymentCalender extends BaseEntity {
 
 
 	@ApiModelProperty(value = "乐团编号", required = false)
 	@ApiModelProperty(value = "乐团编号", required = false)
 	private String musicGroupId;
 	private String musicGroupId;
+
+	@ApiModelProperty(value = "乐团名称", required = false)
+	private String musicGroupName;
 	
 	
 	private Integer musicGroupOrganizationCourseSettingId;
 	private Integer musicGroupOrganizationCourseSettingId;
 	
 	
@@ -206,6 +209,34 @@ public class MusicGroupPaymentCalender extends BaseEntity {
 	//原价
 	//原价
 	private BigDecimal originalTotalAmount;
 	private BigDecimal originalTotalAmount;
 
 
+	private Integer organId;
+
+	private String organName;
+
+	public String getOrganName() {
+		return organName;
+	}
+
+	public void setOrganName(String organName) {
+		this.organName = organName;
+	}
+
+	public Integer getOrganId() {
+		return organId;
+	}
+
+	public void setOrganId(Integer organId) {
+		this.organId = organId;
+	}
+
+	public String getMusicGroupName() {
+		return musicGroupName;
+	}
+
+	public void setMusicGroupName(String musicGroupName) {
+		this.musicGroupName = musicGroupName;
+	}
+
 	public BigDecimal getCurrentTotalAmount() {
 	public BigDecimal getCurrentTotalAmount() {
 		return currentTotalAmount;
 		return currentTotalAmount;
 	}
 	}

+ 0 - 9
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderDetailService.java

@@ -110,13 +110,4 @@ public interface MusicGroupPaymentCalenderDetailService extends BaseService<Long
      * @return
      * @return
      */
      */
     void pushWaitRenewMessage(Long calenderId, String studentIds);
     void pushWaitRenewMessage(Long calenderId, String studentIds);
-
-    /**
-    * @description: 获取乐团学员缴费详情列表
-     * @param queryInfo
-    * @return java.lang.Object
-    * @author zx
-    * @date 2021/12/24 10:56
-    */
-    Object queryDetailPage(MusicCalenderDetailQueryInfo queryInfo);
 }
 }

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderMemberService.java

@@ -3,7 +3,11 @@ package com.ym.mec.biz.service;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderMember;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderMember;
 import com.ym.mec.common.service.BaseService;
 import com.ym.mec.common.service.BaseService;
 
 
+import java.util.List;
+
 public interface MusicGroupPaymentCalenderMemberService extends BaseService<Long, MusicGroupPaymentCalenderMember> {
 public interface MusicGroupPaymentCalenderMemberService extends BaseService<Long, MusicGroupPaymentCalenderMember> {
 
 
     void deleteByCalenderId(Long calenderId);
     void deleteByCalenderId(Long calenderId);
+
+    List<MusicGroupPaymentCalenderMember> findByCalenderId(Long calenderId);
 }
 }

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderRepairService.java

@@ -2,8 +2,11 @@ package com.ym.mec.biz.service;
 
 
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderRepair;
 import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderRepair;
 import com.ym.mec.common.service.BaseService;
 import com.ym.mec.common.service.BaseService;
+import org.apache.ibatis.annotations.Param;
 
 
 public interface MusicGroupPaymentCalenderRepairService extends BaseService<Long, MusicGroupPaymentCalenderRepair> {
 public interface MusicGroupPaymentCalenderRepairService extends BaseService<Long, MusicGroupPaymentCalenderRepair> {
 
 
     void deleteByCalenderId(Long calenderId);
     void deleteByCalenderId(Long calenderId);
+
+    MusicGroupPaymentCalenderRepair findByCalenderId(Long calenderId);
 }
 }

+ 3 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupPaymentCalenderService.java

@@ -3,10 +3,7 @@ package com.ym.mec.biz.service;
 import java.util.List;
 import java.util.List;
 import java.util.Set;
 import java.util.Set;
 
 
-import com.ym.mec.biz.dal.dto.MusicGroupPaymentBaseCalender;
-import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderAuditDetailDto;
-import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderAuditDto;
-import com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderDto;
+import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.page.MusicGroupPaymentCalenderQueryInfo;
 import com.ym.mec.biz.dal.page.MusicGroupPaymentCalenderQueryInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.PageInfo;
@@ -184,4 +181,6 @@ public interface MusicGroupPaymentCalenderService extends BaseService<Long, Musi
 	void revoke(String batchNo);
 	void revoke(String batchNo);
 
 
 	List<MusicGroupPaymentCalender> findByBatchNo(String batchNo);
 	List<MusicGroupPaymentCalender> findByBatchNo(String batchNo);
+
+	PageInfo<MusicGroupPaymentCalenderResultDto> queryCalenderPage(MusicGroupPaymentCalenderQueryInfo queryInfo);
 }
 }

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderDetailService.java

@@ -104,4 +104,6 @@ public interface StudentPaymentOrderDetailService extends BaseService<Long, Stud
      * @return
      * @return
      */
      */
     List<StudentPaymentOrderDetail> getOrderGoodsDetail(Long orderId);
     List<StudentPaymentOrderDetail> getOrderGoodsDetail(Long orderId);
+
+    List<StudentPaymentOrderDetail> queryOrderDetail(Long orderId);
 }
 }

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/TenantInfoService.java

@@ -17,6 +17,8 @@ public interface TenantInfoService extends IService<TenantInfo> {
 
 
     TenantInfoDto queryTenantInfo(Integer tenantId);
     TenantInfoDto queryTenantInfo(Integer tenantId);
 
 
+    TenantInfoDto queryTenantInfoCheck(Integer tenantId);
+
     void opsTenantState(Integer id, Integer state);
     void opsTenantState(Integer id, Integer state);
 
 
     PageInfo<TenantInfoInfoPageVo> queryPage(Map<String, Object> param);
     PageInfo<TenantInfoInfoPageVo> queryPage(Map<String, Object> param);

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/TenantOrderRecordService.java

@@ -19,6 +19,8 @@ public interface TenantOrderRecordService extends IService<TenantOrderRecord> {
 
 
     Map<String, Object> checkTenantOrder(String orderNo);
     Map<String, Object> checkTenantOrder(String orderNo);
 
 
+    Map<String, Object> checkTenantOrder(TenantOrderRecord orderRecord);
+
     void checkTenantOrder();
     void checkTenantOrder();
 
 
 }
 }

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

@@ -691,11 +691,4 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.STUDENT_SMS_WAIT_RENEW_MESSAGE, studentMaps,
 		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.STUDENT_SMS_WAIT_RENEW_MESSAGE, studentMaps,
 				null, 0, memo, null, musicGroup.getName());
 				null, 0, memo, null, musicGroup.getName());
 	}
 	}
-
-    @Override
-    public Object queryDetailPage(MusicCalenderDetailQueryInfo queryInfo) {
-		PageInfo<MusicGroupPaymentCalenderDetail> calenderDetailPageInfo = queryPage(queryInfo);
-
-		return null;
-    }
 }
 }

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderMemberServiceImpl.java

@@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.util.List;
 
 
 import static com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PaymentCalenderStatusEnum.AUDITING;
 import static com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PaymentCalenderStatusEnum.AUDITING;
 import static com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PaymentCalenderStatusEnum.NO;
 import static com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PaymentCalenderStatusEnum.NO;
@@ -125,4 +126,9 @@ public class MusicGroupPaymentCalenderMemberServiceImpl extends BaseServiceImpl<
     public void deleteByCalenderId(Long calenderId) {
     public void deleteByCalenderId(Long calenderId) {
         musicGroupPaymentCalenderMemberDao.deleteByCalenderId(calenderId);
         musicGroupPaymentCalenderMemberDao.deleteByCalenderId(calenderId);
     }
     }
+
+    @Override
+    public List<MusicGroupPaymentCalenderMember> findByCalenderId(Long calenderId) {
+        return musicGroupPaymentCalenderMemberDao.findByCalenderId(calenderId);
+    }
 }
 }

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderRepairServiceImpl.java

@@ -97,4 +97,9 @@ public class MusicGroupPaymentCalenderRepairServiceImpl extends BaseServiceImpl<
     public void deleteByCalenderId(Long calenderId) {
     public void deleteByCalenderId(Long calenderId) {
         musicGroupPaymentCalenderRepairDao.deleteByCalenderId(calenderId);
         musicGroupPaymentCalenderRepairDao.deleteByCalenderId(calenderId);
     }
     }
+
+    @Override
+    public MusicGroupPaymentCalenderRepair findByCalenderId(Long calenderId) {
+        return musicGroupPaymentCalenderRepairDao.findByCalenderId(calenderId);
+    }
 }
 }

+ 52 - 23
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java

@@ -37,6 +37,8 @@ import java.util.*;
 import java.util.Map.Entry;
 import java.util.Map.Entry;
 import java.util.function.Consumer;
 import java.util.function.Consumer;
 import java.util.function.Function;
 import java.util.function.Function;
+import java.util.function.Predicate;
+import java.util.function.Supplier;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 
 
 import static com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PayUserType.SCHOOL;
 import static com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender.PayUserType.SCHOOL;
@@ -512,33 +514,32 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 		return batchNo;
 		return batchNo;
 	}
 	}
 
 
+	public <T> void checkObjectNull(T t, Consumer consumer){
+		if(t == null){
+			consumer.accept(null);
+		}
+	}
+
 	@Override
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	@Transactional(rollbackFor = Exception.class)
 	public String create1(MusicGroupPaymentBaseCalender musicGroupPaymentBaseCalender) {
 	public String create1(MusicGroupPaymentBaseCalender musicGroupPaymentBaseCalender) {
-		if(musicGroupPaymentBaseCalender == null){
-			throw new BizException("参数校验异常");
-		}
+		checkObjectNull(musicGroupPaymentBaseCalender, o -> {throw new BizException("参数校验异常");});
+		String musicGroupId = musicGroupPaymentBaseCalender.getMusicGroupId();
+		MusicGroup musicGroup = musicGroupDao.getLocked(musicGroupId);
+		checkObjectNull(musicGroup, o -> {throw new BizException("乐团查询失败,请检查参数");});
+
+		SysUser sysUser = sysUserFeignService.queryUserInfo();
+		checkObjectNull(sysUser, o -> {throw new BizException("请登录");});
+
 		if(musicGroupPaymentBaseCalender.getCalenderActivityList() == null
 		if(musicGroupPaymentBaseCalender.getCalenderActivityList() == null
 				&& musicGroupPaymentBaseCalender.getCalenderMember() == null
 				&& musicGroupPaymentBaseCalender.getCalenderMember() == null
 				&& musicGroupPaymentBaseCalender.getMusicGroupPaymentCalenderCourseSettingsList() == null
 				&& musicGroupPaymentBaseCalender.getMusicGroupPaymentCalenderCourseSettingsList() == null
 				&& musicGroupPaymentBaseCalender.getMusicRepair() == null){
 				&& musicGroupPaymentBaseCalender.getMusicRepair() == null){
 			throw new BizException("请选择一个缴费项目");
 			throw new BizException("请选择一个缴费项目");
 		}
 		}
-
-		String musicGroupId = musicGroupPaymentBaseCalender.getMusicGroupId();
-		MusicGroup musicGroup = musicGroupDao.getLocked(musicGroupId);
-		if (musicGroup == null) {
-			throw new BizException("乐团查询失败,请检查参数");
-		}
-
 		if (musicGroup.getStatus() != MusicGroupStatusEnum.PROGRESS && musicGroup.getStatus() != MusicGroupStatusEnum.PRE_BUILD_FEE) {
 		if (musicGroup.getStatus() != MusicGroupStatusEnum.PROGRESS && musicGroup.getStatus() != MusicGroupStatusEnum.PRE_BUILD_FEE) {
 			throw new BizException("创建缴费失败:已存在缴费项目");
 			throw new BizException("创建缴费失败:已存在缴费项目");
 		}
 		}
-
-		SysUser sysUser = sysUserFeignService.queryUserInfo();
-		if (sysUser == null) {
-			throw new BizException("请登录");
-		}
 		// 所有缴费项目已完成排课才能创建下一个缴费项目
 		// 所有缴费项目已完成排课才能创建下一个缴费项目
 		String orignBatchNo = musicGroupPaymentStudentCourseDetailDao.getUnUseBatchNoWithStudentAndCourseTypeAndCourseMinutes(musicGroupId, null, null,null);
 		String orignBatchNo = musicGroupPaymentStudentCourseDetailDao.getUnUseBatchNoWithStudentAndCourseTypeAndCourseMinutes(musicGroupId, null, null,null);
 		if (StringUtils.isNoneBlank(orignBatchNo)) {
 		if (StringUtils.isNoneBlank(orignBatchNo)) {
@@ -678,7 +679,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 
 
 	@Override
 	@Override
 	public Object getDetail(Long id) {
 	public Object getDetail(Long id) {
-		Map<String, Object> result = new HashMap<>(4);
+		Map<String, Object> result = new HashMap<>(6);
 		//获取缴费项目详情
 		//获取缴费项目详情
 		MusicGroupPaymentCalender calender = musicGroupPaymentCalenderDao.get(id);
 		MusicGroupPaymentCalender calender = musicGroupPaymentCalenderDao.get(id);
 		//统计预计缴费人数
 		//统计预计缴费人数
@@ -687,22 +688,21 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 		Map<Long, Long> actualNumMap = MapUtil.convertIntegerMap(musicGroupPaymentCalenderDao.countActualNum(id));
 		Map<Long, Long> actualNumMap = MapUtil.convertIntegerMap(musicGroupPaymentCalenderDao.countActualNum(id));
 		calender.setActualNum(actualNumMap.get(id) == null ? 0 : actualNumMap.get(id).intValue());
 		calender.setActualNum(actualNumMap.get(id) == null ? 0 : actualNumMap.get(id).intValue());
 		calender.setExpectNum(expectNumMap.get(id) == null ? 0 : expectNumMap.get(id).intValue());
 		calender.setExpectNum(expectNumMap.get(id) == null ? 0 : expectNumMap.get(id).intValue());
+		result.put("calender", calender);
 		//汇总收款金额
 		//汇总收款金额
 		BigDecimal sumActualAmount = musicGroupPaymentCalenderDetailDao.sumActualAmount(id);
 		BigDecimal sumActualAmount = musicGroupPaymentCalenderDetailDao.sumActualAmount(id);
 		result.put("sumActualAmount", sumActualAmount);
 		result.put("sumActualAmount", sumActualAmount);
 		//收费标准名称
 		//收费标准名称
 //		String name = musicGroupPaymentCalenderDao.getCalenderSettingsName(id);
 //		String name = musicGroupPaymentCalenderDao.getCalenderSettingsName(id);
 //		result.put("calenderSettingsName", name);
 //		result.put("calenderSettingsName", name);
-		//收费标准
-		result.put("musicGroupPaymentCalenderCourseSettings", musicGroupPaymentCalenderCourseSettingsService.queryCalenderCourseSettings(id));
+		//课程
+		result.put("course", musicGroupPaymentCalenderCourseSettingsService.queryCalenderCourseSettings(id));
+		//乐保
+		result.put("repair",musicGroupPaymentCalenderRepairService.findByCalenderId(id));
 		//会员信息
 		//会员信息
-		if(calender.getMemberRankSettingId() != null){
-			MemberRankSetting memberRankSetting = memberRankSettingDao.get(calender.getMemberRankSettingId());
-			calender.setMemberRankSettingName(memberRankSetting.getName());
-		}
+		result.put("member",musicGroupPaymentCalenderMemberService.findByCalenderId(id));
 		//活动相关信息
 		//活动相关信息
 		result.put("activity",musicGroupPaymentCalenderActivityService.findByCalenderId(id));
 		result.put("activity",musicGroupPaymentCalenderActivityService.findByCalenderId(id));
-		result.put("calender", calender);
 		return result;
 		return result;
 	}
 	}
 
 
@@ -1619,6 +1619,35 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 	}
 	}
 
 
 	@Override
 	@Override
+	public PageInfo<MusicGroupPaymentCalenderResultDto> queryCalenderPage(MusicGroupPaymentCalenderQueryInfo queryInfo) {
+		PageInfo<MusicGroupPaymentCalenderResultDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+		Map<String, Object> params = new HashMap<>();
+		MapUtil.populateMap(params, queryInfo);
+
+		List<MusicGroupPaymentCalenderResultDto> dataList = null;
+		int count = musicGroupPaymentCalenderDao.countCalender(params);
+		if (count > 0) {
+			pageInfo.setTotal(count);
+			params.put("offset", pageInfo.getOffset());
+			dataList = musicGroupPaymentCalenderDao.queryCalenderPage(params);
+			List<Integer> organIdList = dataList.stream().map(e -> e.getOrganId()).collect(Collectors.toList());
+			Map<Integer, String> organNameMap = getMap("organization", "id_", "name_", organIdList, Integer.class, String.class);
+			List<Integer> operatorIds = dataList.stream().map(e -> e.getOperator()).collect(Collectors.toList());
+			operatorIds.removeAll(Collections.singleton(null));
+			Map<Integer, String> realNameMap = getMap("sys_user", "id_", "real_name_", operatorIds, Integer.class, String.class);
+			dataList.forEach(e->{
+				e.setOrganName(organNameMap.get(e.getOrganId()));
+				e.setOperatorName(realNameMap.get(e.getOperator()));
+			});
+		}
+		if (count == 0) {
+			dataList = new ArrayList<>();
+		}
+		pageInfo.setRows(dataList);
+		return pageInfo;
+	}
+
+	@Override
 	@Transactional(rollbackFor = Exception.class,isolation = Isolation.READ_COMMITTED)
 	@Transactional(rollbackFor = Exception.class,isolation = Isolation.READ_COMMITTED)
 	public boolean autoUpdateMusicGroupPaymentCalenderStatus() {
 	public boolean autoUpdateMusicGroupPaymentCalenderStatus() {
 		Date date = new Date();
 		Date date = new Date();

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

@@ -17,6 +17,8 @@ import com.ym.mec.thirdparty.adapay.Payment;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.http.HttpUtil;
 import com.ym.mec.util.http.HttpUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.redisson.api.RBucket;
+import org.redisson.api.RedissonClient;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -26,6 +28,9 @@ import org.springframework.util.DigestUtils;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.*;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.function.BiPredicate;
 import java.util.function.BiPredicate;
 import java.util.function.Consumer;
 import java.util.function.Consumer;
 import java.util.function.Function;
 import java.util.function.Function;
@@ -44,6 +49,8 @@ public class OrderPayOpsServiceImpl implements OrderPayOpsService {
     private TenantPaymentOrderService tenantPaymentOrderService;
     private TenantPaymentOrderService tenantPaymentOrderService;
     @Autowired
     @Autowired
     private TenantOrderRecordService tenantOrderRecordService;
     private TenantOrderRecordService tenantOrderRecordService;
+    @Autowired
+    private RedissonClient redissonClient;
 
 
     @Override
     @Override
     public Map<String, Object> executePayment(BigDecimal amount, String orderNo, String payChannel, String returnUrl, String orderSubject, String orderBody, String sign, String code, String platform) throws Exception {
     public Map<String, Object> executePayment(BigDecimal amount, String orderNo, String payChannel, String returnUrl, String orderSubject, String orderBody, String sign, String code, String platform) throws Exception {
@@ -66,6 +73,8 @@ public class OrderPayOpsServiceImpl implements OrderPayOpsService {
                         tenantOrderRecord::setTransNo,
                         tenantOrderRecord::setTransNo,
                         tenantOrderRecordService::updateById
                         tenantOrderRecordService::updateById
                 );
                 );
+                //主动延迟检查订单
+                delayCheckTenant();
             } else if (platform.equals("teacher")) {
             } else if (platform.equals("teacher")) {
                 TenantPaymentOrder tenantPaymentOrder = tenantPaymentOrderService.queryByOrderNo(payParam.getOrderNo());
                 TenantPaymentOrder tenantPaymentOrder = tenantPaymentOrderService.queryByOrderNo(payParam.getOrderNo());
                 payment = checkOrderAndGetParam(payParam,
                 payment = checkOrderAndGetParam(payParam,
@@ -162,7 +171,6 @@ public class OrderPayOpsServiceImpl implements OrderPayOpsService {
                 .ifPresent(action);
                 .ifPresent(action);
     }
     }
 
 
-
     private Map<String, Object> getExpend(PaymentParam payParam) throws Exception {
     private Map<String, Object> getExpend(PaymentParam payParam) throws Exception {
         Map<String, Object> expendParams = new HashMap<>(5);
         Map<String, Object> expendParams = new HashMap<>(5);
         String openId = "";
         String openId = "";
@@ -203,6 +211,26 @@ public class OrderPayOpsServiceImpl implements OrderPayOpsService {
         return paymentParams;
         return paymentParams;
     }
     }
 
 
+    private void delayCheckTenant() {
+        RBucket<Object> bucket = redissonClient.getBucket("delay_check_tenant");
+        if (!bucket.trySet(1, 35L, TimeUnit.SECONDS)) {
+            return;
+        }
+        //异步
+        CompletableFuture.runAsync(() -> {
+            //检查5次
+            for (int i = 0; i <= 5; i++) {
+                try {
+                    Thread.sleep(3000);//每3秒触发一次
+                    tenantOrderRecordService.checkTenantOrder();
+                } catch (InterruptedException e) {
+                    return;
+                }
+            }
+            bucket.delete();
+        });
+    }
+
     static class PaymentParam {
     static class PaymentParam {
         private BigDecimal amount;
         private BigDecimal amount;
         private String orderNo;
         private String orderNo;

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderDetailServiceImpl.java

@@ -529,4 +529,9 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
     public List<StudentPaymentOrderDetail> getOrderGoodsDetail(Long orderId) {
     public List<StudentPaymentOrderDetail> getOrderGoodsDetail(Long orderId) {
         return studentPaymentOrderDetailDao.getOrderDetail(orderId);
         return studentPaymentOrderDetailDao.getOrderDetail(orderId);
     }
     }
+
+    @Override
+    public List<StudentPaymentOrderDetail> queryOrderDetail(Long orderId) {
+        return studentPaymentOrderDetailDao.findApplyOrderGoods(orderId);
+    }
 }
 }

+ 21 - 34
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentServiceImpl.java

@@ -15,6 +15,8 @@ import java.util.Map;
 import java.util.Objects;
 import java.util.Objects;
 import java.util.Set;
 import java.util.Set;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.concurrent.atomic.AtomicInteger;
+import java.util.function.BiFunction;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 
 
 import com.ym.mec.biz.service.*;
 import com.ym.mec.biz.service.*;
@@ -85,6 +87,8 @@ import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.date.DateUtil;
 
 
+import javax.annotation.PostConstruct;
+
 @Service
 @Service
 public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implements StudentService {
 public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implements StudentService {
 
 
@@ -399,20 +403,11 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
     }
     }
 
 
     public Date getMembershipEndTime(PeriodEnum periodEnum,Date endTime,Integer memberNum){
     public Date getMembershipEndTime(PeriodEnum periodEnum,Date endTime,Integer memberNum){
-        switch (periodEnum) {
-            case DAY:
-                return DateUtil.addDays(endTime,memberNum);
-            case MONTH:
-                return DateUtil.addMonths(endTime,memberNum);
-            case QUARTERLY:
-                return DateUtil.addMonths(endTime,memberNum * 3);
-            case YEAR_HALF:
-                return DateUtil.addMonths(endTime,memberNum * 6);
-            case YEAR:
-                return DateUtil.addYears(endTime,memberNum);
-            default:
-                throw new BizException("错误的会员时长单位");
+        BiFunction<Date, Integer, Date> dateBiFunction = periodStrategyMap.get(periodEnum);
+        if(dateBiFunction == null){
+            throw new BizException("错误的会员时长单位");
         }
         }
+        return dateBiFunction.apply(endTime,memberNum);
     }
     }
 
 
     @Override
     @Override
@@ -434,6 +429,18 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
         this.update(student);
         this.update(student);
     }
     }
 
 
+    private Map<PeriodEnum, BiFunction<Date,Integer,Date>> periodStrategyMap = new HashMap<>();
+
+    @PostConstruct
+    public void periodStrategyMapInit(){
+        periodStrategyMap.put(PeriodEnum.DAY, (date, times) -> DateUtil.addDays(date, times));
+        periodStrategyMap.put(PeriodEnum.MONTH, (date, times) -> DateUtil.addMonths(date, times));
+        periodStrategyMap.put(PeriodEnum.QUARTERLY, (date, times) -> DateUtil.addMonths(date, times*3));
+        periodStrategyMap.put(PeriodEnum.YEAR_HALF, (date, times) -> DateUtil.addMonths(date, times*6));
+        periodStrategyMap.put(PeriodEnum.YEAR, (date, times) -> DateUtil.addYears(date, times));
+    }
+
+
     @Override
     @Override
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
 	public void updateMemberRank(Integer userId, PeriodEnum periodEnum, int times, Integer memberRankSettingId) {
 	public void updateMemberRank(Integer userId, PeriodEnum periodEnum, int times, Integer memberRankSettingId) {
@@ -447,30 +454,10 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
         if(student.getMembershipStartTime() == null){
         if(student.getMembershipStartTime() == null){
             student.setMembershipStartTime(nowDate);
             student.setMembershipStartTime(nowDate);
         }
         }
-        
         if(student.getMembershipEndTime() != null && student.getMembershipEndTime().after(nowDate)){
         if(student.getMembershipEndTime() != null && student.getMembershipEndTime().after(nowDate)){
         	nowDate = student.getMembershipEndTime();
         	nowDate = student.getMembershipEndTime();
         }
         }
-        
-        switch (periodEnum) {
-		case DAY:
-            student.setMembershipEndTime(DateUtil.addDays(nowDate, times));
-			break;
-		case MONTH:
-            student.setMembershipEndTime(DateUtil.addMonths(nowDate, times));
-            break;
-		case QUARTERLY:
-            student.setMembershipEndTime(DateUtil.addMonths(nowDate, times * 3));
-            break;
-		case YEAR_HALF:
-            student.setMembershipEndTime(DateUtil.addMonths(nowDate, times * 6));
-			break;
-		case YEAR:
-            student.setMembershipEndTime(DateUtil.addYears(nowDate, times));
-			break;
-		default:
-			break;
-		}
+        student.setMembershipEndTime(getMembershipEndTime(periodEnum,nowDate,times));
         student.setMemberRankSettingId(memberRankSettingId);
         student.setMemberRankSettingId(memberRankSettingId);
         this.update(student);
         this.update(student);
 	}
 	}

+ 43 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantInfoServiceImpl.java

@@ -34,6 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.dao.DuplicateKeyException;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 
 
@@ -97,7 +98,11 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
         tenantInfo.setState(2);
         tenantInfo.setState(2);
         tenantInfo.setCreatedBy(userId);
         tenantInfo.setCreatedBy(userId);
         tenantInfo.setCreatedTime(new Date());
         tenantInfo.setCreatedTime(new Date());
-        baseMapper.insert(tenantInfo);
+        try {
+            baseMapper.insert(tenantInfo);
+        } catch (DuplicateKeyException e) {
+            throw new BizException("同一个手机号只能创建一个机构!");
+        }
 
 
         //机构id
         //机构id
         Integer tenantId = tenantInfo.getId();
         Integer tenantId = tenantInfo.getId();
@@ -152,7 +157,11 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
         BeanUtils.copyProperties(dto, tenantInfo);
         BeanUtils.copyProperties(dto, tenantInfo);
         tenantInfo.setUpdatedBy(getUserId());
         tenantInfo.setUpdatedBy(getUserId());
         tenantInfo.setUpdatedTime(now);
         tenantInfo.setUpdatedTime(now);
-        this.updateById(tenantInfo);
+        try {
+            this.updateById(tenantInfo);
+        } catch (DuplicateKeyException e) {
+            throw new BizException("同一个手机号只能创建一个机构!");
+        }
 
 
         //修改机构配置
         //修改机构配置
         if (Objects.nonNull(dto.getConfig())) {
         if (Objects.nonNull(dto.getConfig())) {
@@ -197,6 +206,32 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
     }
     }
 
 
     /**
     /**
+     * 订单购买信息查询
+     * 为什么要这个功能?
+     * 防重复支付,若该机构开通时已经支付还会主动查询第三方付款状态
+     *
+     * @param tenantId 机构id
+     */
+    @Override
+    public TenantInfoDto queryTenantInfoCheck(Integer tenantId) {
+        if (Objects.isNull(tenantId)) {
+            throw new BizException("请传入机构id");
+        }
+        //查询最后一条该机构开通记录
+        TenantOrderRecord oneRecord = tenantOrderRecordService.getOne(new WrapperUtil<TenantOrderRecord>().queryWrapper()
+                .eq("tenant_id_", tenantId)
+                .isNotNull("trans_no_")
+                .eq("order_type_", "TENANT_OPEN")
+                .eq("payment_channel_", "ADAPAY")
+                .orderByDesc("created_time_"));
+        //存在,就去第三方再次校验
+        if (Objects.nonNull(oneRecord)) {
+            tenantOrderRecordService.checkTenantOrder(oneRecord);
+        }
+        return queryTenantInfo(tenantId);
+    }
+
+    /**
      * 启用/停用
      * 启用/停用
      * 第一个启用默认激活账号等信息
      * 第一个启用默认激活账号等信息
      *
      *
@@ -282,6 +317,8 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
         assetsInfo.setFrozenAmount(BigDecimal.ZERO);
         assetsInfo.setFrozenAmount(BigDecimal.ZERO);
         assetsInfo.setCreatedTime(new Date());
         assetsInfo.setCreatedTime(new Date());
         assetsInfoService.save(assetsInfo);
         assetsInfoService.save(assetsInfo);
+        //修改机构userId信息
+        baseMapper.updateById(tenantInfo);
         //释放锁
         //释放锁
         bucket.delete();
         bucket.delete();
     }
     }
@@ -323,6 +360,8 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
         try {
         try {
             log.info("createUser >>>> {}", e);
             log.info("createUser >>>> {}", e);
             employeeService.add(e);
             employeeService.add(e);
+            //将创建的userId反写到机构表
+            tenantInfo.setUserId(e.getId());
         } catch (Exception ex) {
         } catch (Exception ex) {
             throw new BizException("开通账号信息异常!");
             throw new BizException("开通账号信息异常!");
         }
         }
@@ -411,7 +450,8 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
     }
     }
 
 
     //生成订单
     //生成订单
-    private void createOrderRecord(Integer tenantId, BigDecimal payAmount, String orderNo, TenantOrderRecordEnum tenantEnum, Integer orderState) {
+    private void createOrderRecord(Integer tenantId, BigDecimal payAmount, String orderNo, TenantOrderRecordEnum
+            tenantEnum, Integer orderState) {
         TenantOrderRecord record = new TenantOrderRecord();
         TenantOrderRecord record = new TenantOrderRecord();
         record.setTenantId(tenantId);
         record.setTenantId(tenantId);
         record.setOrderNo(orderNo);
         record.setOrderNo(orderNo);

+ 38 - 18
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TenantOrderRecordServiceImpl.java

@@ -17,12 +17,15 @@ import com.ym.mec.thirdparty.adapay.Payment;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.joda.time.LocalDateTime;
 import org.joda.time.LocalDateTime;
+import org.redisson.api.RBucket;
+import org.redisson.api.RedissonClient;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import java.util.*;
 import java.util.*;
+import java.util.concurrent.TimeUnit;
 
 
 /**
 /**
  * 机构付款记录表(TenantOrderRecord)表服务实现类
  * 机构付款记录表(TenantOrderRecord)表服务实现类
@@ -42,6 +45,8 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
     private PlatformServeDetailService platformServeDetailService;
     private PlatformServeDetailService platformServeDetailService;
     @Autowired
     @Autowired
     private TenantInfoService tenantInfoService;
     private TenantInfoService tenantInfoService;
+    @Autowired
+    private RedissonClient redissonClient;
 
 
     //订单不存在
     //订单不存在
     public static final String PAYMENT_ID_NOT_EXISTS = "payment_id_not_exists";
     public static final String PAYMENT_ID_NOT_EXISTS = "payment_id_not_exists";
@@ -64,7 +69,15 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
     public Map<String, Object> checkTenantOrder(String orderNo) {
     public Map<String, Object> checkTenantOrder(String orderNo) {
         TenantOrderRecord orderRecord = this.getOne(new WrapperUtil<TenantOrderRecord>()
         TenantOrderRecord orderRecord = this.getOne(new WrapperUtil<TenantOrderRecord>()
                 .hasEq("order_no_", orderNo).queryWrapper());
                 .hasEq("order_no_", orderNo).queryWrapper());
+        return checkTenantOrder(orderRecord);
+    }
+
+    @Override
+    public Map<String, Object> checkTenantOrder(TenantOrderRecord orderRecord) {
+        return getTenantOrderState(orderRecord);
+    }
 
 
+    private Map<String, Object> getTenantOrderState(TenantOrderRecord orderRecord) {
         //主动去第三方查询订单状态
         //主动去第三方查询订单状态
         checkTransOrderState(orderRecord);
         checkTransOrderState(orderRecord);
 
 
@@ -87,8 +100,13 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
         return result;
         return result;
     }
     }
 
 
+
     @Override
     @Override
     public void checkTenantOrder() {
     public void checkTenantOrder() {
+        RBucket<Object> bucket = redissonClient.getBucket("tenant_check_order");
+        if (!bucket.trySet(1, 3L, TimeUnit.SECONDS)) {
+            return;
+        }
         List<TenantOrderRecord> list = this.list(new WrapperUtil<TenantOrderRecord>().queryWrapper()
         List<TenantOrderRecord> list = this.list(new WrapperUtil<TenantOrderRecord>().queryWrapper()
                 .isNotNull("trans_no_")
                 .isNotNull("trans_no_")
                 .eq("order_state_", 0));
                 .eq("order_state_", 0));
@@ -115,13 +133,16 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
                     LocalDateTime now = LocalDateTime.now();
                     LocalDateTime now = LocalDateTime.now();
                     record.setPayDate(now.toLocalDate().toDate());
                     record.setPayDate(now.toLocalDate().toDate());
                     record.setPayTime(now.toDate());
                     record.setPayTime(now.toDate());
-                    baseMapper.updateById(record);
                 }
                 }
+                baseMapper.updateById(record);
             });
             });
         }
         }
-
+        bucket.delete();
     }
     }
 
 
+    //丢弃5分钟之前的订单 300000 = 5 * 60秒 * 1000
+    long exTime = 300000L;
+
     //主动去第三方查询订单状态
     //主动去第三方查询订单状态
     private void checkTransOrderState(TenantOrderRecord orderRecord) {
     private void checkTransOrderState(TenantOrderRecord orderRecord) {
         if (StringUtils.equals(orderRecord.getPaymentChannel(), PaymentChannelEnum.ADAPAY.getCode())) {
         if (StringUtils.equals(orderRecord.getPaymentChannel(), PaymentChannelEnum.ADAPAY.getCode())) {
@@ -129,26 +150,25 @@ public class TenantOrderRecordServiceImpl extends ServiceImpl<TenantOrderRecordD
             try {
             try {
                 payment = Payment.queryPayment(orderRecord.getTransNo());
                 payment = Payment.queryPayment(orderRecord.getTransNo());
                 log.info("checkTenantOrder  payment >>>>> {}", payment);
                 log.info("checkTenantOrder  payment >>>>> {}", payment);
-                boolean flag = false;
-                if (Objects.nonNull(payment.get("error_code"))) {
+                String status = (String) payment.get("status");
+                //判断状态是成功还是失败
+                if (status.equals("succeeded")) {
+                    orderRecord.setOrderState(1);
+                } else if (Objects.nonNull(payment.get("error_code"))) {
+                    //若状态是失败则判断code
                     if (!PAYMENT_ID_NOT_EXISTS.equals(payment.get("error_code"))) {
                     if (!PAYMENT_ID_NOT_EXISTS.equals(payment.get("error_code"))) {
-                        //确保订单已经创建
-                        flag = true;
-                    }
-                } else {
-                    //没有异常
-                    flag = true;
-                }
-                log.info("checkTenantOrder  payment >>>>> {} flag {}", payment, flag);
-                //确保订单已经创建 再 判断状态是成功还是失败
-                if (flag && Objects.nonNull(payment.get("status"))) {
-                    String status = (String) payment.get("status");
-                    if (status.equals("succeeded")) {
-                        orderRecord.setOrderState(1);
-                    } else if (status.equals("failed")) {
+                        //不等于这个异常都是失败
                         orderRecord.setOrderState(2);
                         orderRecord.setOrderState(2);
+                    } else {
+                        long orderTime = orderRecord.getCreatedTime().getTime();//订单创建时间
+                        long nowTime = new Date().getTime();
+                        //丢弃5分钟之前的订单
+                        if (nowTime - orderTime > exTime) {
+                            orderRecord.setOrderState(2);
+                        }
                     }
                     }
                 }
                 }
+                log.info("checkTenantOrder  payment >>>>> {}", payment);
                 log.info("checkTenantOrder  orderRecord >>>>> {}", JSON.toJSONString(orderRecord));
                 log.info("checkTenantOrder  orderRecord >>>>> {}", JSON.toJSONString(orderRecord));
             } catch (Exception e) {
             } catch (Exception e) {
                 log.error("checkTenantOrder  payment error>>>>> {}", JSON.toJSONString(orderRecord));
                 log.error("checkTenantOrder  payment error>>>>> {}", JSON.toJSONString(orderRecord));

+ 5 - 7
mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderDetailMapper.xml

@@ -217,13 +217,12 @@
 
 
 	<!-- 分页查询 -->
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="MusicGroupPaymentCalenderDetail" parameterType="map">
 	<select id="queryPage" resultMap="MusicGroupPaymentCalenderDetail" parameterType="map">
-		SELECT su.username_,su.phone_,st.name_ subject_names_,sr.music_group_status_,tu.real_name_ responsible_username_,
+		SELECT mgpcd.user_id_,su.username_,st.name_ subject_names_,sr.music_group_status_,su.phone_,
 		CASE WHEN mgpcd.start_payment_date_ IS NULL THEN mgpc.start_payment_date_ ELSE mgpcd.start_payment_date_ END start_payment_date_mgpc_,
 		CASE WHEN mgpcd.start_payment_date_ IS NULL THEN mgpc.start_payment_date_ ELSE mgpcd.start_payment_date_ END start_payment_date_mgpc_,
 		CASE WHEN mgpcd.deadline_payment_date_ IS NULL THEN mgpc.deadline_payment_date_ ELSE mgpcd.deadline_payment_date_ END deadline_payment_date_mgpc_,
 		CASE WHEN mgpcd.deadline_payment_date_ IS NULL THEN mgpc.deadline_payment_date_ ELSE mgpcd.deadline_payment_date_ END deadline_payment_date_mgpc_,
-		CASE WHEN mgpc.status_ = 'OPEN' OR mgpcd.open_ = 1 THEN 1 ELSE 0 END open_,mgpc.payment_type_,mgpcd.*
+		CASE WHEN mgpc.status_ = 'OPEN' OR mgpcd.open_ = 1 THEN 1 ELSE 0 END open_,mgpc.payment_type_
 		FROM music_group_payment_calender_detail mgpcd
 		FROM music_group_payment_calender_detail mgpcd
 		LEFT JOIN sys_user su ON su.id_ = mgpcd.user_id_
 		LEFT JOIN sys_user su ON su.id_ = mgpcd.user_id_
-		left join sys_user tu on tu.id_ = mgpcd.responsible_user_id_
 		LEFT JOIN student_registration sr ON sr.user_id_ = mgpcd.user_id_
 		LEFT JOIN student_registration sr ON sr.user_id_ = mgpcd.user_id_
 		LEFT JOIN `subject` st ON st.id_ = sr.actual_subject_id_
 		LEFT JOIN `subject` st ON st.id_ = sr.actual_subject_id_
 		LEFT JOIN music_group_payment_calender mgpc ON mgpc.id_ = mgpcd.music_group_payment_calender_id_
 		LEFT JOIN music_group_payment_calender mgpc ON mgpc.id_ = mgpcd.music_group_payment_calender_id_
@@ -255,9 +254,9 @@
 			<if test="subjectId != null">
 			<if test="subjectId != null">
 				AND #{subjectId} = sr.actual_subject_id_
 				AND #{subjectId} = sr.actual_subject_id_
 			</if>
 			</if>
-			<if test="responsibleRealName != null and responsibleRealName != ''">
-				AND (mgpcd.responsible_user_id_ = #{responsibleRealName} OR tu.real_name_ LIKE CONCAT('%',#{responsibleRealName},'%') OR tu.phone_ LIKE CONCAT('%',#{responsibleRealName},'%'))
-			</if>
+<!--			<if test="responsibleRealName != null and responsibleRealName != ''">-->
+<!--				AND (mgpcd.responsible_user_id_ = #{responsibleRealName} OR tu.real_name_ LIKE CONCAT('%',#{responsibleRealName},'%') OR tu.phone_ LIKE CONCAT('%',#{responsibleRealName},'%'))-->
+<!--			</if>-->
 		</where>
 		</where>
 	</sql>
 	</sql>
 
 
@@ -267,7 +266,6 @@
 		LEFT JOIN student_registration sr ON sr.user_id_ = mgpcd.user_id_
 		LEFT JOIN student_registration sr ON sr.user_id_ = mgpcd.user_id_
 		LEFT JOIN `subject` st ON st.id_ = sr.actual_subject_id_
 		LEFT JOIN `subject` st ON st.id_ = sr.actual_subject_id_
 		LEFT JOIN sys_user su ON su.id_ = mgpcd.user_id_
 		LEFT JOIN sys_user su ON su.id_ = mgpcd.user_id_
-		left join sys_user tu on tu.id_ = mgpcd.responsible_user_id_
 		LEFT JOIN music_group_payment_calender mgpc ON mgpc.id_ = mgpcd.music_group_payment_calender_id_
 		LEFT JOIN music_group_payment_calender mgpc ON mgpc.id_ = mgpcd.music_group_payment_calender_id_
 		<include refid="queryPageSql"/>
 		<include refid="queryPageSql"/>
 	</select>
 	</select>

+ 57 - 10
mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMapper.xml

@@ -32,15 +32,15 @@
         <result column="attribute1_" property="attribute1"/>
         <result column="attribute1_" property="attribute1"/>
         <result column="attribute2_" property="attribute2"/>
         <result column="attribute2_" property="attribute2"/>
         <result column="student_ids_" property="studentIds"/>
         <result column="student_ids_" property="studentIds"/>
-        <result column="member_payment_amount_" property="memberPaymentAmount"/>
-        <result column="original_member_payment_amount_" property="originalMemberPaymentAmount"/>
-        <result column="member_rank_setting_id_" property="memberRankSettingId"/>
-        <result column="member_valid_date_" property="memberValidDate"/>
-        <result column="member_period_" property="memberPeriod" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
-        <result column="member_optional_flag_" property="memberOptionalFlag"/>
-        <result column="music_repair_num_" property="musicRepairNum"/>
-        <result column="music_repair_actual_price_" property="musicRepairActualPrice"/>
-        <result column="music_repair_optional_flag_" property="musicRepairOptionalFlag"/>
+<!--        <result column="member_payment_amount_" property="memberPaymentAmount"/>-->
+<!--        <result column="original_member_payment_amount_" property="originalMemberPaymentAmount"/>-->
+<!--        <result column="member_rank_setting_id_" property="memberRankSettingId"/>-->
+<!--        <result column="member_valid_date_" property="memberValidDate"/>-->
+<!--        <result column="member_period_" property="memberPeriod" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>-->
+<!--        <result column="member_optional_flag_" property="memberOptionalFlag"/>-->
+<!--        <result column="music_repair_num_" property="musicRepairNum"/>-->
+<!--        <result column="music_repair_actual_price_" property="musicRepairActualPrice"/>-->
+<!--        <result column="music_repair_optional_flag_" property="musicRepairOptionalFlag"/>-->
         <result column="current_total_amount_" property="currentTotalAmount"/>
         <result column="current_total_amount_" property="currentTotalAmount"/>
         <result column="original_total_amount_" property="originalTotalAmount"/>
         <result column="original_total_amount_" property="originalTotalAmount"/>
     </resultMap>
     </resultMap>
@@ -312,7 +312,8 @@
 
 
     <!-- 分页查询 -->
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="MusicGroupPaymentCalender" parameterType="map">
     <select id="queryPage" resultMap="MusicGroupPaymentCalender" parameterType="map">
-        SELECT * FROM music_group_payment_calender mgpc
+        SELECT mgpc.*
+        FROM music_group_payment_calender mgpc
         <include refid="queryPageSql"/>
         <include refid="queryPageSql"/>
         ORDER BY mgpc.payment_valid_start_date_,mgpc.id_ DESC
         ORDER BY mgpc.payment_valid_start_date_,mgpc.id_ DESC
         <include refid="global.limit"/>
         <include refid="global.limit"/>
@@ -690,4 +691,50 @@
             AND batch_no_ != #{batchNo}
             AND batch_no_ != #{batchNo}
         </if>
         </if>
     </select>
     </select>
+    <sql id="queryCalenderPageSql">
+        <where>
+            <if test="search != null and search != ''">
+                AND mgpc.music_group_id_ = #{search} OR mg.name_ LIKE CONCAT('%',#{search},'%')
+            </if>
+            <if test="musicGroupId != null">
+                AND mgpc.music_group_id_ = #{musicGroupId}
+            </if>
+            <if test="batchNo != null">
+                AND mgpc.batch_no_ = #{batchNo}
+            </if>
+            <if test="payUserType != null">
+                AND mgpc.pay_user_type_ = #{payUserType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+            </if>
+            <if test="paymentType != null">
+                AND mgpc.payment_type_ = #{paymentType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+            </if>
+            <if test="status != null">
+                AND mgpc.status_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+            </if>
+        </where>
+    </sql>
+    <select id="countCalender" resultType="java.lang.Integer">
+        SELECT COUNT(mgpc.id_) FROM music_group_payment_calender mgpc
+        LEFT JOIN music_group mg ON mg.id_ = mgpc.music_group_id_
+        <include refid="queryCalenderPageSql"/>
+    </select>
+
+    <resultMap id="MusicGroupPaymentCalenderResultDto" type="com.ym.mec.biz.dal.dto.MusicGroupPaymentCalenderResultDto"
+               extends="MusicGroupPaymentCalender">
+        <result column="organ_id_" property="organId"/>
+        <result column="music_group_name_" property="musicGroupName"/>
+        <result column="operator_name_" property="operatorName"/>
+    </resultMap>
+    <select id="queryCalenderPage" resultMap="MusicGroupPaymentCalenderResultDto">
+        SELECT mgpc.id_,mgpc.music_group_id_,mgpc.music_group_organization_course_settings_id_,mgpc.pay_user_type_,mgpc.reject_reason_,
+        mgpc.start_payment_date_,mgpc.deadline_payment_date_,mgpc.status_,mgpc.expect_num_,
+        mgpc.actual_num_,mgpc.memo_,mgpc.create_time_,mgpc.update_time_,
+        mgpc.payment_pattern_,mgpc.payment_type_,mgpc.batch_no_,mgpc.audit_memo_,mgpc.operator_,mgpc.attribute1_,
+        mgpc.attribute2_,mgpc.student_ids_,mgpc.current_total_amount_,mgpc.original_total_amount_,mg.name_ music_group_name_,mg.organ_id_
+        FROM music_group_payment_calender mgpc
+        LEFT JOIN music_group mg ON mg.id_ = mgpc.music_group_id_
+        <include refid="queryCalenderPageSql"/>
+        ORDER BY mgpc.id_ DESC
+        <include refid="global.limit"/>
+    </select>
 </mapper>
 </mapper>

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMemberMapper.xml

@@ -87,4 +87,7 @@
 	<select id="queryCount" resultType="int">
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM music_group_payment_calender_member  where tenant_id_ = #{tenantId}
 		SELECT COUNT(*) FROM music_group_payment_calender_member  where tenant_id_ = #{tenantId}
 	</select>
 	</select>
+    <select id="findByCalenderId" resultMap="MusicGroupPaymentCalenderMember">
+		SELECT * FROM music_group_payment_calender_member WHERE calender_id_ = #{calenderId}
+	</select>
 </mapper>
 </mapper>

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderRepairMapper.xml

@@ -73,4 +73,7 @@
 	<select id="queryCount" resultType="int">
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM music_group_payment_calender_repair where tenant_id_ = #{tenantId}
 		SELECT COUNT(*) FROM music_group_payment_calender_repair where tenant_id_ = #{tenantId}
 	</select>
 	</select>
+    <select id="findByCalenderId" resultMap="MusicGroupPaymentCalenderRepair">
+		SELECT * FROM music_group_payment_calender_repair WHERE calender_id_ = #{calenderId}
+	</select>
 </mapper>
 </mapper>

+ 3 - 4
mec-web/src/main/java/com/ym/mec/web/config/ResourceServerConfig.java

@@ -1,5 +1,7 @@
 package com.ym.mec.web.config;
 package com.ym.mec.web.config;
 
 
+import com.ym.mec.common.security.BaseAccessDeniedHandler;
+import com.ym.mec.common.security.BaseAuthenticationEntryPoint;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
 import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
@@ -8,9 +10,6 @@ import org.springframework.security.oauth2.config.annotation.web.configuration.E
 import org.springframework.security.oauth2.config.annotation.web.configuration.ResourceServerConfigurerAdapter;
 import org.springframework.security.oauth2.config.annotation.web.configuration.ResourceServerConfigurerAdapter;
 import org.springframework.security.oauth2.config.annotation.web.configurers.ResourceServerSecurityConfigurer;
 import org.springframework.security.oauth2.config.annotation.web.configurers.ResourceServerSecurityConfigurer;
 
 
-import com.ym.mec.common.security.BaseAccessDeniedHandler;
-import com.ym.mec.common.security.BaseAuthenticationEntryPoint;
-
 @Configuration
 @Configuration
 @EnableResourceServer
 @EnableResourceServer
 @EnableGlobalMethodSecurity(prePostEnabled = true)
 @EnableGlobalMethodSecurity(prePostEnabled = true)
@@ -39,7 +38,7 @@ public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
                         "/eduSubject/findSubSubjects", "/eduFinancialExpenditure/batchAdd", "/eduSendNotice/*",
                         "/eduSubject/findSubSubjects", "/eduFinancialExpenditure/batchAdd", "/eduSendNotice/*",
                         "/oaContracts/*", "/eduStudent/organStudentOverView", "/activity/countCloudTeacherActive",
                         "/oaContracts/*", "/eduStudent/organStudentOverView", "/activity/countCloudTeacherActive",
                         "/activity/organDoubleEleven2021Statis", "/activity/doubleEleven2021Statis", "/questionnaireTopic/getDetail", "/questionnaireUserResult/add",
                         "/activity/organDoubleEleven2021Statis", "/activity/doubleEleven2021Statis", "/questionnaireTopic/getDetail", "/questionnaireUserResult/add",
-                        "/tenantInfo/info/*","/tenantInfo/pay/*","/tenantInfo/notify"
+                        "/tenantInfo/info/*", "/tenantInfo/checkInfo/*", "/tenantInfo/pay/*", "/tenantInfo/notify"
                 )
                 )
                 .permitAll().anyRequest().authenticated().and().httpBasic();
                 .permitAll().anyRequest().authenticated().and().httpBasic();
     }
     }

+ 2 - 2
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderController.java

@@ -45,10 +45,10 @@ public class MusicGroupPaymentCalenderController extends BaseController {
     private ClassGroupStudentMapperDao classGroupStudentMapperDao;
     private ClassGroupStudentMapperDao classGroupStudentMapperDao;
 
 
     @ApiOperation(value = "分页查询乐团缴费日历列表")
     @ApiOperation(value = "分页查询乐团缴费日历列表")
-    @GetMapping(value = "/queryPage", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+    @GetMapping(value = "/queryPage")
     @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalender/queryPage')")
     @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalender/queryPage')")
     public Object queryPage(MusicGroupPaymentCalenderQueryInfo queryInfo) {
     public Object queryPage(MusicGroupPaymentCalenderQueryInfo queryInfo) {
-        return succeed(musicGroupPaymentCalenderService.queryPage(queryInfo));
+        return succeed(musicGroupPaymentCalenderService.queryCalenderPage(queryInfo));
     }
     }
 
 
     @ApiOperation(value = "获取缴费信息")
     @ApiOperation(value = "获取缴费信息")

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupPaymentCalenderDetailController.java

@@ -49,7 +49,7 @@ public class MusicGroupPaymentCalenderDetailController extends BaseController {
     @GetMapping("/queryPage")
     @GetMapping("/queryPage")
     @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalenderDetail/queryPage')")
     @PreAuthorize("@pcs.hasPermissions('musicGroupPaymentCalenderDetail/queryPage')")
     public Object queryPage(MusicCalenderDetailQueryInfo queryInfo) {
     public Object queryPage(MusicCalenderDetailQueryInfo queryInfo) {
-        return succeed(musicGroupPaymentCalenderDetailService.queryDetailPage(queryInfo));
+        return succeed(musicGroupPaymentCalenderDetailService.queryPage(queryInfo));
     }
     }
 
 
     @ApiOperation(value = "修改学员预计缴费金额")
     @ApiOperation(value = "修改学员预计缴费金额")

+ 18 - 10
mec-web/src/main/java/com/ym/mec/web/controller/StudentPaymentOrderController.java

@@ -1,5 +1,6 @@
 package com.ym.mec.web.controller;
 package com.ym.mec.web.controller;
 
 
+import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiImplicitParams;
@@ -60,17 +61,17 @@ public class StudentPaymentOrderController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             return failed("用户信息获取失败");
             return failed("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                return failed("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    return failed("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            return failed("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                return failed("非法请求");
             }
             }
+        }
         if (StringUtils.isNotBlank(queryInfo.getSearch())) {
         if (StringUtils.isNotBlank(queryInfo.getSearch())) {
             List<BasicUserDto> users = studentPaymentOrderDao.getUsers(queryInfo.getSearch());
             List<BasicUserDto> users = studentPaymentOrderDao.getUsers(queryInfo.getSearch());
             List<Integer> userIds = users.stream().map(BasicUserDto::getUserId).collect(Collectors.toList());
             List<Integer> userIds = users.stream().map(BasicUserDto::getUserId).collect(Collectors.toList());
@@ -235,5 +236,12 @@ public class StudentPaymentOrderController extends BaseController {
         return succeed(studentPaymentOrderService.getOrderStatus(id));
         return succeed(studentPaymentOrderService.getOrderStatus(id));
     }
     }
 
 
+    @ApiOperation(value = "查询订单详情")
+    @GetMapping("/queryOrderDetail")
+    @PreAuthorize("@pcs.hasPermissions('order/queryOrderDetail')")
+    public Object queryOrderDetail(Long orderId){
+        return studentPaymentOrderDetailService.queryOrderDetail(orderId);
+    }
+
 
 
 }
 }

+ 7 - 1
mec-web/src/main/java/com/ym/mec/web/controller/TenantInfoController.java

@@ -45,7 +45,7 @@ public class TenantInfoController extends BaseController {
 
 
     @ApiOperation("修改机构启用停用状态")
     @ApiOperation("修改机构启用停用状态")
     @GetMapping(value = "/opsState/{id}")
     @GetMapping(value = "/opsState/{id}")
-//    @PreAuthorize("@pcs.hasPermissions('tenantInfo/opsState')")
+    @PreAuthorize("@pcs.hasPermissions('tenantInfo/opsState')")
     public Object opsState(@ApiParam(value = "机构ID", required = true) @PathVariable("id") Integer id, Integer state) {
     public Object opsState(@ApiParam(value = "机构ID", required = true) @PathVariable("id") Integer id, Integer state) {
         tenantInfoService.opsTenantState(id, state);
         tenantInfoService.opsTenantState(id, state);
         return succeed();
         return succeed();
@@ -57,6 +57,12 @@ public class TenantInfoController extends BaseController {
         return succeed(tenantInfoService.queryTenantInfo(id));
         return succeed(tenantInfoService.queryTenantInfo(id));
     }
     }
 
 
+    @ApiOperation("查询单个机构详情")
+    @GetMapping(value = "/checkInfo/{id}")
+    public Object queryTenantInfoCheck(@ApiParam(value = "机构ID", required = true) @PathVariable("id") Integer id) {
+        return succeed(tenantInfoService.queryTenantInfoCheck(id));
+    }
+
     @ApiImplicitParams({
     @ApiImplicitParams({
             @ApiImplicitParam(name = "search", dataType = "String", value = "关键字"),
             @ApiImplicitParam(name = "search", dataType = "String", value = "关键字"),
             @ApiImplicitParam(name = "createdName", dataType = "String", value = "创建人"),
             @ApiImplicitParam(name = "createdName", dataType = "String", value = "创建人"),