Parcourir la source

Merge remote-tracking branch 'origin/saas' into saas

hgw il y a 3 ans
Parent
commit
6f1d5750cf

+ 1 - 1
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/dal/dao/SysUserDeviceDao.java

@@ -11,7 +11,7 @@ public interface SysUserDeviceDao extends BaseDAO<Integer, SysUserDevice> {
 
 	List<SysUserDevice> queryByUserId(@Param("clientId") String clientId, @Param("userId") Integer userId);
 
-	List<SysUserDevice> queryByDeviceNum(@Param("clientId") String clientId, @Param("deviceNum") String deviceNum);
+	List<SysUserDevice> queryByDeviceNum(@Param("clientId") String clientId, @Param("deviceNum") String deviceNum, @Param("tenantId") Integer tenantId);
 
 	String getDeviceConfig(@Param("paramName") String paramName, @Param("tenantId") Integer tenantId);
 }

+ 1 - 1
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/SysUserDeviceService.java

@@ -9,7 +9,7 @@ public interface SysUserDeviceService extends BaseService<Integer, SysUserDevice
 
 	List<SysUserDevice> queryByUserId(String clientId, Integer userId);
 
-	List<SysUserDevice> queryByDeviceNum(String clientId, String deviceNum);
+	List<SysUserDevice> queryByDeviceNum(String clientId, String deviceNum, Integer tenantId);
 
 	/**
 	 * 绑定设备号

+ 3 - 3
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysUserDeviceServiceImpl.java

@@ -33,8 +33,8 @@ public class SysUserDeviceServiceImpl extends BaseServiceImpl<Integer, SysUserDe
 	}
 
 	@Override
-	public List<SysUserDevice> queryByDeviceNum(String clientId, String deviceNum) {
-		return sysUserDeviceDao.queryByDeviceNum(clientId, deviceNum);
+	public List<SysUserDevice> queryByDeviceNum(String clientId, String deviceNum, Integer tenantId) {
+		return sysUserDeviceDao.queryByDeviceNum(clientId, deviceNum, tenantId);
 	}
 
 	@Override
@@ -77,7 +77,7 @@ public class SysUserDeviceServiceImpl extends BaseServiceImpl<Integer, SysUserDe
 			}
 		} else {
 			// 查询设备号是否已存在
-			List<SysUserDevice> sysUserDeviceList = sysUserDeviceDao.queryByDeviceNum(null, deviceNum);
+			List<SysUserDevice> sysUserDeviceList = sysUserDeviceDao.queryByDeviceNum(null, deviceNum, tenantId);
 
 			if (sysUserDeviceList == null) {
 				sysUserDeviceList = new ArrayList<SysUserDevice>();

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

@@ -36,4 +36,6 @@ public interface OrganizationCourseUnitPriceSettingsDao extends BaseDAO<Integer,
 	 * @return
 	 */
     List<Map<String, Integer>> queryMapByOrganIdAndChargeTypeId(@Param("chargeTypeId") Integer chargeTypeId, @Param("organId") Integer organId);
+
+    List<OrganizationCourseUnitPriceSettings> querySingle(@Param("organId")Integer organId, @Param("courseType") String courseType, @Param("tenantId") Integer tenantId);
 }

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

@@ -17,11 +17,10 @@ import java.lang.reflect.InvocationTargetException;
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 public interface ClassGroupService extends BaseService<Integer, ClassGroup> {
 	
-	public PageInfo<ClassGroup> queryPage(ClassGroupQueryInfo queryInfo);
+	PageInfo<ClassGroup> queryPage(ClassGroupQueryInfo queryInfo);
 	
 	boolean create(ClassGroup classGroup);
 

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

@@ -8,8 +8,6 @@ import com.ym.mec.biz.dal.page.ExportTeacherSalaryQueryInfo;
 import com.ym.mec.biz.dal.page.TeacherIncomeQueryInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
-import org.apache.poi.ss.formula.functions.T;
-
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;

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

@@ -23,4 +23,6 @@ public interface OrganizationCourseUnitPriceSettingsService extends BaseService<
 	 * @return
 	 */
 	OrganizationCourseUnitPriceSettings queryByOrganIdAndCourseTypeAndChargeType(Integer organId, CourseScheduleType courseType, Integer chargeTypeId);
+
+	List<OrganizationCourseUnitPriceSettings> querySingle(Integer organId, String courseType, Integer tenantId);
 }

+ 5 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -152,15 +152,11 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     @Autowired
     private MusicGroupPaymentCalenderDetailDao musicGroupPaymentCalenderDetailDao;
     @Autowired
-    private EmployeeDao employeeDao;
-    @Autowired
     private MusicGroupQuitDao musicGroupQuitDao;
     @Autowired
     private MusicGroupSchoolTermStudentCourseDetailDao musicGroupSchoolTermStudentCourseDetailDao;
     @Autowired
     private MusicGroupSchoolTermCourseDetailDao musicGroupSchoolTermCourseDetailDao;
-    @Autowired
-    private OrganizationService organizationService;
 
     @Override
     public BaseDAO<Integer, ClassGroup> getDAO() {
@@ -206,6 +202,11 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         if (classGroup.getGroupType() == null) {
             throw new BizException("课程组类型不能为空");
         }
+        List<ClassGroupTeacherMapper> teacherMappers = classGroup.getTeacherMapperList();
+        Set<Integer> collect = teacherMappers.stream().map(e -> e.getUserId()).collect(Collectors.toSet());
+        if(teacherMappers.size() != collect.size()){
+            throw new BizException("主教与助教存在冲突");
+        }
 
         //基础技能班和线上基础技能班,可分班原则为声部人数/6向上取整
         if (classGroup.getType().equals(HIGH_ONLINE) || classGroup.getType().equals(HIGH)) {

+ 13 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/IndexBaseMonthDataServiceImpl.java

@@ -3,23 +3,29 @@ package com.ym.mec.biz.service.impl;
 import com.alibaba.fastjson.JSON;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.auth.api.entity.SysUserRole;
 import com.ym.mec.biz.dal.dao.*;
 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.page.IndexDataQueryInfo;
 import com.ym.mec.biz.dal.page.OrganCloudStudyStudentDataQueryInfo;
+import com.ym.mec.biz.dal.page.OrganizationQueryInfo;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.common.constant.CommonConstants;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
+import com.ym.mec.common.filters.TenantIdThreadLocal;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.common.tenant.TenantContextHolder;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
+
+import io.swagger.models.auth.In;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
@@ -28,10 +34,12 @@ import java.math.BigDecimal;
 import java.time.DayOfWeek;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
 
 import static com.ym.mec.biz.dal.enums.IndexDataType.*;
+import static com.ym.mec.biz.dal.enums.IndexErrorType.WAIT_CREATE_PAYMENT_CALENDER;
 import static com.ym.mec.biz.dal.enums.SysUserRoleEnum.EDUCATION;
 
 @Service
@@ -42,6 +50,8 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 	@Autowired
 	private OrganizationService organizationService;
 	@Autowired
+	private EmployeeDao employeeDao;
+	@Autowired
 	private MusicGroupDao musicGroupDao;
 	@Autowired
 	private SysConfigDao sysConfigDao;
@@ -56,6 +66,8 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 	@Autowired
 	private ClassGroupDao classGroupDao;
 	@Autowired
+	private EmployeeService employeeService;
+	@Autowired
 	private StudentRegistrationDao studentRegistrationDao;
 	@Autowired
 	private MusicGroupPerformanceDao musicGroupPerformanceDao;
@@ -86,7 +98,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 		if(Objects.nonNull(queryInfo.getStartDate())){
 			startDate = LocalDateTime.ofInstant(queryInfo.getStartDate().toInstant(), DateUtil.zoneId).toLocalDate();
 		}
-		startDate = startDate.plusDays(-180);
+
 		LocalDate endDate = nowDate.plusDays(-1);
 		if(Objects.nonNull(queryInfo.getEndDate())){
 			endDate = LocalDateTime.ofInstant(queryInfo.getEndDate().toInstant(), DateUtil.zoneId).toLocalDate();
@@ -277,7 +289,6 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 			}
 			IndexBaseDto indexBaseData = new IndexBaseDto(typeDateMapEntry.getKey(),typeDateMapEntry.getKey().getMsg());
 			indexBaseData.setIndexMonthData(value, currentMonth);
-			indexBaseData.setPercent(value.stream().map(IndexBaseMonthData::getPercent).reduce(BigDecimal.ZERO, BigDecimal::add));
 			if(OTHER_AMOUNT.equals(typeDateMapEntry.getKey())){
 				List<IndexBaseMonthData> otherAmountDetails = new ArrayList<>();
 				if(value != null && value.size() > 0){
@@ -311,7 +322,6 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 					}
 				}
 			}
-
 			result.add(indexBaseData);
 		}
 		return result;

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

@@ -33,5 +33,10 @@ public class OrganizationCourseUnitPriceSettingsServiceImpl extends BaseServiceI
 	public OrganizationCourseUnitPriceSettings queryByOrganIdAndCourseTypeAndChargeType(Integer organId, CourseScheduleType courseType, Integer chargeTypeId) {
 		return organizationCourseUnitPriceSettingsDao.queryByOrganIdAndCourseTypeAndChargeType(organId, courseType, chargeTypeId);
 	}
-	
+
+	@Override
+	public List<OrganizationCourseUnitPriceSettings> querySingle(Integer organId, String courseType, Integer tenantId) {
+		return organizationCourseUnitPriceSettingsDao.querySingle(organId, courseType, tenantId);
+	}
+
 }

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

@@ -124,4 +124,10 @@
 		WHERE organ_id_ = #{organId} AND charge_type_id_ = #{chargeTypeId}
 		GROUP BY course_type_
 	</select>
+	<select id="querySingle" resultType="com.ym.mec.biz.dal.entity.OrganizationCourseUnitPriceSettings">
+		select * from organization_course_unit_price_settings where organ_id_ = #{organId} and course_type_ = #{courseType}
+		<if test="tenantId != -1">
+			and tenant_id_ = #{tenantId}
+		</if>
+	</select>
 </mapper>

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

@@ -97,7 +97,7 @@
 
     <select id="queryTenantInfoProductSumm" resultType="com.ym.mec.biz.dal.entity.TenantProductSumm">
             SELECT t.*, ps.name_ as serverName,
-                   tp.pay_date_ as expiryDate,
+                   t.created_time_ as expiryDate, <!-- 不使用这个字段,需求没有开始时间, 使用创建时间临时代替 -->
                    tp.expiry_date_ as expiryDateEnd,
                    tp.expiry_count_  as expiryCount,
                    tp.expiry_unit_ as expiryUnit,

+ 17 - 30
mec-web/src/main/java/com/ym/mec/web/controller/ClassGroupController.java

@@ -1,40 +1,15 @@
 package com.ym.mec.web.controller;
 
 import com.alibaba.fastjson.JSON;
-import com.ym.mec.auth.api.entity.SysUserRole;
-import com.ym.mec.biz.dal.dao.EmployeeDao;
-import com.ym.mec.biz.dal.dto.*;
-import com.ym.mec.biz.dal.entity.Employee;
-import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderStudentDetail;
-import com.ym.mec.biz.dal.enums.SysUserRoleEnum;
-import com.ym.mec.biz.service.OrganizationService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.util.CollectionUtils;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-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.dto.ClassGroup4MixDto;
+import com.ym.mec.biz.dal.dto.HighClassGroupDto;
+import com.ym.mec.biz.dal.dto.MergeClassSplitClassAffirmDto;
+import com.ym.mec.biz.dal.dto.TestDto;
 import com.ym.mec.biz.dal.entity.ClassGroup;
 import com.ym.mec.biz.dal.entity.ClassGroupTeacherMapper;
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderStudentDetail;
 import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.SalarySettlementTypeEnum;
@@ -43,10 +18,22 @@ import com.ym.mec.biz.dal.page.EndCourseScheduleQueryInfo;
 import com.ym.mec.biz.dal.page.queryMusicGroupCourseScheduleQueryInfo;
 import com.ym.mec.biz.service.ClassGroupService;
 import com.ym.mec.biz.service.ClassGroupTeacherMapperService;
+import com.ym.mec.biz.service.OrganizationService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 @RequestMapping("classGroup")
 @Api(tags = "班级服务")

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

@@ -1367,7 +1367,8 @@ public class ExportController extends BaseController {
         queryInfo.setIsExport(1);
         queryInfo.setPage(1);
         queryInfo.setRows(49999);
-        PageInfo<CourseReviewDto> practiceGroupReviews = courseReviewService.findPracticeGroupReviews(queryInfo);
+        // PageInfo<CourseReviewDto> practiceGroupReviews = courseReviewService.findPracticeGroupReviews(queryInfo);
+        PageInfo<CourseReviewDto> practiceGroupReviews = courseReviewService.getVipCourseReviews(queryInfo);
         if (practiceGroupReviews.getTotal() <= 0) {
             response.setStatus(500);
             response.setContentType("Content-Type: application/json;charset=UTF-8");

+ 13 - 0
mec-web/src/main/java/com/ym/mec/web/controller/OrganizationCourseUnitPriceSettingsController.java

@@ -1,5 +1,6 @@
 package com.ym.mec.web.controller;
 
+import com.ym.mec.common.tenant.TenantContextHolder;
 import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -38,10 +39,22 @@ public class OrganizationCourseUnitPriceSettingsController extends BaseControlle
 		return succeed(organizationCourseUnitPriceSettingsService.queryPage(queryInfo));
 	}
 
+	@ApiOperation(value = "查询单个")
+	@GetMapping(value = "/querySingle/{organId}/{courseType}")
+	// @PreAuthorize("@pcs.hasPermissions('organizationCourseUnitPriceSettings/querySingle')")
+	public Object querySingle(@PathVariable("organId")Integer organId,
+							  @PathVariable("courseType")String courseType) {
+		Integer tenantId = TenantContextHolder.getTenantId();
+		return organizationCourseUnitPriceSettingsService.querySingle(organId, courseType, tenantId);
+	}
+
 	@ApiOperation(value = "新增对象")
 	@PostMapping(value = "/insert", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
 	@PreAuthorize("@pcs.hasPermissions('organizationCourseUnitPriceSettings/insert')")
 	public Object insert(@RequestBody List<OrganizationCourseUnitPriceSettings> organizationCourseUnitPriceSettingsList) {
+		if (organizationCourseUnitPriceSettingsList.size() == 0) {
+			return failed("OrganizationCourseUnitPriceSettings 参数不能为空");
+		}
 		for (OrganizationCourseUnitPriceSettings organizationCourseUnitPriceSettings : organizationCourseUnitPriceSettingsList) {
 			OrganizationCourseUnitPriceSettings originalObj = organizationCourseUnitPriceSettingsService.queryByOrganIdAndCourseTypeAndChargeType(
 					organizationCourseUnitPriceSettings.getOrganId(), organizationCourseUnitPriceSettings.getCourseType(),