|  | @@ -1,5 +1,50 @@
 | 
	
		
			
				|  |  |  package com.ym.mec.biz.service.impl;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +import static com.ym.mec.biz.dal.enums.MessageTypeEnum.EMAIL_TENANT_EXPIRATION_REMINDERS;
 | 
	
		
			
				|  |  | +import static com.ym.mec.biz.dal.enums.MessageTypeEnum.EMAIL_TENANT_RENEWAL_SUCCESSFUL;
 | 
	
		
			
				|  |  | +import static com.ym.mec.biz.dal.enums.MessageTypeEnum.SMS_TENANT_EXPIRATION_REMINDERS;
 | 
	
		
			
				|  |  | +import static com.ym.mec.biz.dal.enums.MessageTypeEnum.SMS_TENANT_RENEWAL_SUCCESSFUL;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +import java.io.File;
 | 
	
		
			
				|  |  | +import java.io.IOException;
 | 
	
		
			
				|  |  | +import java.math.BigDecimal;
 | 
	
		
			
				|  |  | +import java.math.MathContext;
 | 
	
		
			
				|  |  | +import java.math.RoundingMode;
 | 
	
		
			
				|  |  | +import java.nio.charset.Charset;
 | 
	
		
			
				|  |  | +import java.util.Arrays;
 | 
	
		
			
				|  |  | +import java.util.Date;
 | 
	
		
			
				|  |  | +import java.util.HashMap;
 | 
	
		
			
				|  |  | +import java.util.List;
 | 
	
		
			
				|  |  | +import java.util.Map;
 | 
	
		
			
				|  |  | +import java.util.Objects;
 | 
	
		
			
				|  |  | +import java.util.Optional;
 | 
	
		
			
				|  |  | +import java.util.concurrent.TimeUnit;
 | 
	
		
			
				|  |  | +import java.util.concurrent.atomic.AtomicReference;
 | 
	
		
			
				|  |  | +import java.util.function.BiConsumer;
 | 
	
		
			
				|  |  | +import java.util.function.Consumer;
 | 
	
		
			
				|  |  | +import java.util.function.Function;
 | 
	
		
			
				|  |  | +import java.util.stream.Collectors;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +import javax.servlet.http.HttpServletRequest;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +import org.apache.commons.collections.CollectionUtils;
 | 
	
		
			
				|  |  | +import org.apache.commons.io.FileUtils;
 | 
	
		
			
				|  |  | +import org.apache.commons.lang3.StringUtils;
 | 
	
		
			
				|  |  | +import org.joda.time.LocalDate;
 | 
	
		
			
				|  |  | +import org.joda.time.LocalDateTime;
 | 
	
		
			
				|  |  | +import org.redisson.api.RBucket;
 | 
	
		
			
				|  |  | +import org.redisson.api.RedissonClient;
 | 
	
		
			
				|  |  | +import org.slf4j.Logger;
 | 
	
		
			
				|  |  | +import org.slf4j.LoggerFactory;
 | 
	
		
			
				|  |  | +import org.springframework.beans.BeanUtils;
 | 
	
		
			
				|  |  | +import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | +import org.springframework.beans.factory.annotation.Value;
 | 
	
		
			
				|  |  | +import org.springframework.context.annotation.Lazy;
 | 
	
		
			
				|  |  | +import org.springframework.dao.DuplicateKeyException;
 | 
	
		
			
				|  |  | +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 | 
	
		
			
				|  |  | +import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  | +import org.springframework.transaction.annotation.Transactional;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 | 
	
	
		
			
				|  | @@ -9,18 +54,55 @@ import com.ym.mec.auth.api.entity.SysRole;
 | 
	
		
			
				|  |  |  import com.ym.mec.auth.api.entity.SysUser;
 | 
	
		
			
				|  |  |  import com.ym.mec.auth.api.enums.SysUserType;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.dao.OrganizationDao;
 | 
	
		
			
				|  |  | -import com.ym.mec.biz.dal.dao.TenantContractTemplateDao;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.dao.TenantInfoDao;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.dto.TenantConfigDto;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.dto.TenantInfoDto;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.dto.TenantProductInfoDto;
 | 
	
		
			
				|  |  | -import com.ym.mec.biz.dal.entity.*;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.Employee;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.Organization;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.PlatformServe;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.PlatformServeDetail;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.SysArea;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.SysConfig;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.SysUserTenant;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.SysUserTsign;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.TenantAssetsInfo;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.TenantConfig;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.TenantContractRecord;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.entity.TenantContractRecord.TenantContractRecordEnum;
 | 
	
		
			
				|  |  | -import com.ym.mec.biz.dal.enums.*;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.TenantInfo;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.TenantOrderRecord;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.TenantPreJoin;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.TenantProductInfo;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.entity.TenantProductSumm;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.enums.GradeTypeEnum;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.enums.JobNatureEnum;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.enums.PaymentChannelEnum;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.enums.TenantOrderRecordEnum;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.vo.PlatformServePageVo;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.vo.SysUserTenantVo;
 | 
	
		
			
				|  |  |  import com.ym.mec.biz.dal.vo.TenantInfoPageVo;
 | 
	
		
			
				|  |  | -import com.ym.mec.biz.service.*;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.ContractService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.EmployeeService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.PayService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.PlatformProductService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.PlatformServeDetailService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.PlatformServeService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.StudentService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.SysAreaService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.SysConfigService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.SysMessageService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.SysUserTenantService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.SysUserTsignService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.TenantAssetsInfoService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.TenantConfigService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.TenantContractRecordService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.TenantContractTemplateService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.TenantInfoService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.TenantOrderRecordService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.TenantPreJoinService;
 | 
	
		
			
				|  |  | +import com.ym.mec.biz.service.TenantProductInfoService;
 | 
	
		
			
				|  |  |  import com.ym.mec.common.exception.BizException;
 | 
	
		
			
				|  |  |  import com.ym.mec.common.page.PageInfo;
 | 
	
		
			
				|  |  |  import com.ym.mec.common.page.PageUtil;
 | 
	
	
		
			
				|  | @@ -34,40 +116,6 @@ import com.ym.mec.thirdparty.yqpay.DateUtils;
 | 
	
		
			
				|  |  |  import com.ym.mec.util.date.DateUtil;
 | 
	
		
			
				|  |  |  import com.ym.mec.util.freemarker.FreemarkerTemplateEngine;
 | 
	
		
			
				|  |  |  import com.ym.mec.util.pdf.PDFUtil;
 | 
	
		
			
				|  |  | -import org.apache.commons.collections.CollectionUtils;
 | 
	
		
			
				|  |  | -import org.apache.commons.io.FileUtils;
 | 
	
		
			
				|  |  | -import org.apache.commons.lang3.StringUtils;
 | 
	
		
			
				|  |  | -import org.joda.time.LocalDate;
 | 
	
		
			
				|  |  | -import org.joda.time.LocalDateTime;
 | 
	
		
			
				|  |  | -import org.redisson.api.RBucket;
 | 
	
		
			
				|  |  | -import org.redisson.api.RedissonClient;
 | 
	
		
			
				|  |  | -import org.slf4j.Logger;
 | 
	
		
			
				|  |  | -import org.slf4j.LoggerFactory;
 | 
	
		
			
				|  |  | -import org.springframework.beans.BeanUtils;
 | 
	
		
			
				|  |  | -import org.springframework.beans.factory.annotation.Autowired;
 | 
	
		
			
				|  |  | -import org.springframework.beans.factory.annotation.Value;
 | 
	
		
			
				|  |  | -import org.springframework.context.annotation.Lazy;
 | 
	
		
			
				|  |  | -import org.springframework.dao.DuplicateKeyException;
 | 
	
		
			
				|  |  | -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 | 
	
		
			
				|  |  | -import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  | -import org.springframework.transaction.annotation.Transactional;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -import javax.servlet.http.HttpServletRequest;
 | 
	
		
			
				|  |  | -import java.io.File;
 | 
	
		
			
				|  |  | -import java.io.IOException;
 | 
	
		
			
				|  |  | -import java.math.BigDecimal;
 | 
	
		
			
				|  |  | -import java.math.MathContext;
 | 
	
		
			
				|  |  | -import java.math.RoundingMode;
 | 
	
		
			
				|  |  | -import java.nio.charset.Charset;
 | 
	
		
			
				|  |  | -import java.util.*;
 | 
	
		
			
				|  |  | -import java.util.concurrent.TimeUnit;
 | 
	
		
			
				|  |  | -import java.util.concurrent.atomic.AtomicReference;
 | 
	
		
			
				|  |  | -import java.util.function.BiConsumer;
 | 
	
		
			
				|  |  | -import java.util.function.Consumer;
 | 
	
		
			
				|  |  | -import java.util.function.Function;
 | 
	
		
			
				|  |  | -import java.util.stream.Collectors;
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -import static com.ym.mec.biz.dal.enums.MessageTypeEnum.*;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  @Service
 | 
	
		
			
				|  |  |  public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo> implements TenantInfoService {
 | 
	
	
		
			
				|  | @@ -746,7 +794,7 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
 | 
	
		
			
				|  |  |          int orderState = 0;
 | 
	
		
			
				|  |  |          //消费大于0元则拉起支付
 | 
	
		
			
				|  |  |          if (productInfo.getPayAmount().compareTo(BigDecimal.ZERO) > 0) {
 | 
	
		
			
				|  |  | -            result = payService.getPayToPlatformMap(
 | 
	
		
			
				|  |  | +            result = payService.getPayToPlatformMap(tenantId,
 | 
	
		
			
				|  |  |                      PaymentChannelEnum.ADAPAY,
 | 
	
		
			
				|  |  |                      productInfo.getPayAmount(),
 | 
	
		
			
				|  |  |                      BigDecimal.ZERO,
 | 
	
	
		
			
				|  | @@ -791,7 +839,7 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
 | 
	
		
			
				|  |  |          int orderState = 0;
 | 
	
		
			
				|  |  |          //消费大于0元则拉起支付
 | 
	
		
			
				|  |  |          if (amount.compareTo(BigDecimal.ZERO) > 0) {
 | 
	
		
			
				|  |  | -            result = payService.getPayToPlatformMap(
 | 
	
		
			
				|  |  | +            result = payService.getPayToPlatformMap(tenantId,
 | 
	
		
			
				|  |  |                      PaymentChannelEnum.ADAPAY,
 | 
	
		
			
				|  |  |                      amount,
 | 
	
		
			
				|  |  |                      BigDecimal.ZERO,
 | 
	
	
		
			
				|  | @@ -1075,7 +1123,7 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo
 | 
	
		
			
				|  |  |          int orderState = 0;
 | 
	
		
			
				|  |  |          //消费大于0元则拉起支付
 | 
	
		
			
				|  |  |          if (amount.compareTo(BigDecimal.ZERO) > 0) {
 | 
	
		
			
				|  |  | -            result = payService.getPayToPlatformMap(
 | 
	
		
			
				|  |  | +            result = payService.getPayToPlatformMap(tenantId,
 | 
	
		
			
				|  |  |                      PaymentChannelEnum.ADAPAY,
 | 
	
		
			
				|  |  |                      amount,
 | 
	
		
			
				|  |  |                      BigDecimal.ZERO,
 |