Explorar o código

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

zouxuan hai 9 meses
pai
achega
b94e696d70
Modificáronse 17 ficheiros con 99 adicións e 119 borrados
  1. 4 1
      mec-application/src/main/java/com/ym/mec/student/controller/TempDirectorTrainingCampController.java
  2. 1 1
      mec-application/src/main/java/com/ym/mec/web/controller/TempDirectorTrainingCampController.java
  3. 42 69
      mec-application/src/main/java/com/ym/mec/web/controller/TempDirectorTrainingCampDetailController.java
  4. 2 2
      mec-biz/pom.xml
  5. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SysMusicScoreAccompaniment.java
  6. 4 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TempDirectorTrainingCamp.java
  7. 4 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TempDirectorTrainingCampDetail.java
  8. 2 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/enums/SporadicChargeTypeEnum.java
  9. 2 27
      mec-biz/src/main/java/com/ym/mec/biz/dal/wrapper/TempDirectorTrainingCampDetailWrapper.java
  10. 9 5
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java
  11. 3 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMessageServiceImpl.java
  12. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreAccompanimentServiceImpl.java
  13. 6 3
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreServiceImpl.java
  14. 10 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TempDirectorTrainingCampDetailServiceImpl.java
  15. 1 1
      mec-biz/src/main/resources/config/mybatis/SysMusicScoreAccompanimentMapper.xml
  16. 2 3
      mec-biz/src/main/resources/config/mybatis/TempDirectorTrainingCampDetailMapper.xml
  17. 1 0
      mec-biz/src/main/resources/config/mybatis/TempDirectorTrainingCampMapper.xml

+ 4 - 1
mec-application/src/main/java/com/ym/mec/student/controller/TempDirectorTrainingCampController.java

@@ -38,7 +38,10 @@ public class TempDirectorTrainingCampController extends BaseController {
     @ApiOperation(value="获取训练营详情")
     @GetMapping(value = "/getDetail")
     public HttpResponseResult<TempDirectorTrainingCamp> getDetail(Integer campId){
-        return succeed(tempDirectorTrainingCampService.getById(campId));
+        return succeed(tempDirectorTrainingCampService.lambdaQuery()
+                .eq(TempDirectorTrainingCamp::getId,campId)
+                .eq(TempDirectorTrainingCamp::getDelFlag,false)
+                .last("LIMIT 1").one());
     }
 
     @ApiOperation(value="根据身份证号、手机号获取用户基本信息")

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

@@ -29,7 +29,7 @@ public class TempDirectorTrainingCampController extends BaseController {
     @Resource
     private TempDirectorTrainingCampService tempDirectorTrainingCampService;
 
-    @Autowired
+    @Resource
     private SysUserFeignService sysUserFeignService;
 
     @ApiOperation("创建训练营")

+ 42 - 69
mec-application/src/main/java/com/ym/mec/web/controller/TempDirectorTrainingCampDetailController.java

@@ -1,36 +1,31 @@
 package com.ym.mec.web.controller;
 
-import com.alibaba.excel.EasyExcel;
-import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.microsvc.toolkit.common.response.paging.PageInfo;
 import com.microsvc.toolkit.common.response.paging.QueryInfo;
-import com.microsvc.toolkit.common.response.template.R;
-import com.microsvc.toolkit.common.tools.DownloadManager;
-import com.microsvc.toolkit.middleware.oss.OssPluginContext;
-import com.microsvc.toolkit.middleware.oss.impl.TencentOssPlugin;
 import com.ym.mec.biz.dal.entity.TempDirectorTrainingCamp;
 import com.ym.mec.biz.dal.wrapper.TempDirectorTrainingCampDetailWrapper;
 import com.ym.mec.biz.service.TempDirectorTrainingCampDetailService;
 import com.ym.mec.biz.service.TempDirectorTrainingCampService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
+import com.ym.mec.common.exception.BizException;
 import com.ym.mec.util.date.DateUtil;
+import com.ym.mec.util.excel.POIUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
-import org.joda.time.DateTime;
-import org.springframework.beans.factory.annotation.Autowired;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 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.RestController;
 
 import javax.annotation.Resource;
-import java.io.File;
-import java.text.MessageFormat;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.OutputStream;
 import java.util.Date;
 import java.util.List;
 
@@ -39,17 +34,9 @@ import java.util.List;
 @Slf4j
 @RequestMapping("${app-config.url.web:}/tempDirectorTrainingDetailCamp")
 public class TempDirectorTrainingCampDetailController extends BaseController {
-    /**
-     * 服务对象
-     */
     @Resource
     private TempDirectorTrainingCampDetailService tempDirectorTrainingCampDetailService;
-
-    @Autowired
-    private OssPluginContext ossPluginContext;
-
-
-    @Autowired
+    @Resource
     private TempDirectorTrainingCampService tempDirectorTrainingCampService;
 
 
@@ -68,22 +55,47 @@ public class TempDirectorTrainingCampDetailController extends BaseController {
 
     @ApiOperation(value = "导出")
     @PostMapping("/export")
-    public HttpResponseResult<TempDirectorTrainingCampDetailWrapper.DownloadInfo> export(@RequestBody TempDirectorTrainingCampDetailWrapper.TempDirectorTrainingCampDetailQuery queryInfo){
+    public void export(HttpServletResponse response, @RequestBody TempDirectorTrainingCampDetailWrapper.TempDirectorTrainingCampDetailQuery queryInfo) throws IOException {
         if (queryInfo.getTempDirectorTrainingCampId()==null) {
-            return failed("训练营编号不能为空");
+            throw new BizException("训练营编号不能为空");
+        }
+        TempDirectorTrainingCamp trainingCamp = tempDirectorTrainingCampService.lambdaQuery()
+                .eq(TempDirectorTrainingCamp::getId, queryInfo.getTempDirectorTrainingCampId())
+                .eq(TempDirectorTrainingCamp::getDelFlag, false)
+                .last("LIMIT 1").one();
+        if (trainingCamp==null) {
+            throw new BizException("训练营不存在");
         }
-
-
         IPage<TempDirectorTrainingCampDetailWrapper.TempDirectorTrainingCampDetail> tempDirectorTrainingCampIPage = tempDirectorTrainingCampDetailService.queryPage(new Page<>(1,-1), queryInfo);
         List<TempDirectorTrainingCampDetailWrapper.TempDirectorTrainingCampDetail> records = tempDirectorTrainingCampIPage.getRecords();
         if (records.size()==0) {
-            return failed("没有可导出数据");
+            throw new BizException("没有可导出数据");
+        }
+        OutputStream outputStream = response.getOutputStream();
+        try {
+            HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"姓名", "联系电话", "身份证号", "所在城市", "缴费状态", "缴费金额", "缴费时间", "目前从事职业"
+                    , "第一主专业", "之前乐队指导学习基础", "目标效果", "需求或建议"}, new String[]{
+                    "username", "mobile", "cardNo", "cityInfo", "paymentStatusName", "paymentAmount", "paymentDateStr",
+                    "job", "subjectName", "study"
+                    , "studyTarget", "suggestion"}, records);
+            response.setContentType("application/octet-stream");
+            response.setHeader("Content-Disposition", "attac:wq" +
+                    "hment;filename=乐队指导训练营-" + DateUtil.getDate(new Date()) + ".xls");
+
+            outputStream = response.getOutputStream();
+            workbook.write(outputStream);
+            outputStream.flush();
+        } catch (Exception e) {
+            e.printStackTrace();
+        } finally {
+            if (outputStream != null) {
+                try {
+                    outputStream.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
         }
-        TempDirectorTrainingCamp trainingCamp = tempDirectorTrainingCampService.getById(queryInfo.getTempDirectorTrainingCampId());
-
-
-        TempDirectorTrainingCampDetailWrapper.DownloadInfo downloadInfo = generateExportExcelFile(records, TempDirectorTrainingCampDetailWrapper.TempDirectorTrainingCampDetail.class, trainingCamp.getName()+"导出", trainingCamp.getName()+"导出");
-        return succeed(downloadInfo);
     }
 
     @ApiOperation(value = "统计")
@@ -95,44 +107,5 @@ public class TempDirectorTrainingCampDetailController extends BaseController {
         return succeed(tempDirectorTrainingCampDetailService.queryPageStat(queryInfo));
     }
 
-
-    private TempDirectorTrainingCampDetailWrapper.DownloadInfo generateExportExcelFile(List<?> orderExports, Class<?> clazz, String fileName, String sheetName) {
-
-        // OSS上传文件目录
-        String uploadOssPath = MessageFormat.format("excel-download/{0}", DateTime.now().toString("yyyy-MM"));
-
-        // 文件上传下载地址
-        String uploadPath = MessageFormat.format("{0}/{1}-{2}.xlsx", uploadOssPath, fileName, DateTime.now().toString("MMddHHmmss"));
-
-        // 本地文件地址
-        String localPath = DownloadManager.getInstance().path(uploadPath);
-//        log.debug("pageExport localPath={}", localPath);
-
-        // 模板文件保存在springboot项目的resources/static下
-        // Resource resource = new ClassPathResource("static/预报名模板导出.xlsx");
-
-        EasyExcel
-            .write(localPath, clazz)
-            .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
-            //.withTemplate(resource.getStream()) // 利用模板的输出流
-            .sheet(0, sheetName)
-            .doWrite(orderExports);
-
-        // 上传本地文件到OSS服务器
-        String downloadPath = ossPluginContext.getPluginService(TencentOssPlugin.PLUGIN_NAME)
-            .uploadFile(uploadOssPath, new File(localPath));
-        log.debug("pageExport downloadPath={}", downloadPath);
-
-        // 删除本地缓存文件
-        DownloadManager.getInstance().deleteOnExit(localPath);
-
-        // 学生统计下载
-        return TempDirectorTrainingCampDetailWrapper.DownloadInfo
-            .builder()
-            .fileName(MessageFormat.format("{0}.xlsx", fileName))
-            .downloadPath(downloadPath)
-            .build();
-    }
-
 }
 

+ 2 - 2
mec-biz/pom.xml

@@ -35,11 +35,11 @@
 			<artifactId>mec-thirdparty</artifactId>
 		</dependency>
 
-        <dependency>
+<!--        <dependency>
             <groupId>com.alibaba</groupId>
             <artifactId>easyexcel</artifactId>
             <version>2.2.6</version>
-        </dependency>
+        </dependency>-->
 		<dependency>
 			<groupId>com.ym</groupId>
 			<artifactId>snakerflowy</artifactId>

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

@@ -23,7 +23,7 @@ public class SysMusicScoreAccompaniment {
 	private String cbsMusicSheetId;
 	
 	/**  */
-	private Integer subjectId;
+	private String subjectId;
 
 	/**  */
 	private String subjectName;

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TempDirectorTrainingCamp.java

@@ -56,6 +56,10 @@ public class TempDirectorTrainingCamp implements Serializable {
     @ApiModelProperty(value = "修改人")
     private Integer updateBy;
 
+    @TableField("del_flag_")
+    @ApiModelProperty(value = "是否删除")
+    private Boolean delFlag;
+
     @TableField("create_time_")
     @ApiModelProperty(value = "创建时间")
     private Date createTime;

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TempDirectorTrainingCampDetail.java

@@ -100,6 +100,10 @@ public class TempDirectorTrainingCampDetail implements Serializable {
     @ApiModelProperty(value = "需求或建议")
     private String suggestion;
 
+    @TableField("del_flag_")
+    @ApiModelProperty(value = "是否删除")
+    private Boolean delFlag;
+
     @TableField("create_time_")
     @ApiModelProperty(value = "创建时间")
     private Date createTime;

+ 2 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/SporadicChargeTypeEnum.java

@@ -18,7 +18,8 @@ public enum SporadicChargeTypeEnum implements BaseEnum<Integer, SporadicChargeTy
     HIGH_ONLINE_ACTIVITY(13,"网基课活动"),
     PRACTICE_GROUP_BUY(14,"加油包"),
     CLOUD_TEACHER_BUY(15,"系统购买"),
-    DOUBLE_ELEVEN2023(16,"2023双十一活动");
+    DOUBLE_ELEVEN2023(16,"2023双十一活动"),
+    DIRECTOR_TRAINING_CAMP(17,"乐队指导培训");
 
     private Integer code;
 

+ 2 - 27
mec-biz/src/main/java/com/ym/mec/biz/dal/wrapper/TempDirectorTrainingCampDetailWrapper.java

@@ -1,7 +1,5 @@
 package com.ym.mec.biz.dal.wrapper;
 
-import com.alibaba.excel.annotation.ExcelIgnore;
-import com.alibaba.excel.annotation.ExcelProperty;
 import com.microsvc.toolkit.common.response.paging.QueryInfo;
 import com.ym.mec.biz.dal.dto.PayParamBasicDto;
 import io.swagger.annotations.ApiModel;
@@ -169,101 +167,78 @@ public class TempDirectorTrainingCampDetailWrapper {
 
 
         @ApiModelProperty(value = "主键")
-        @ExcelIgnore
         private Integer id;
 
         @ApiModelProperty(value = "训练营编号")
-        @ExcelIgnore
         private Integer tempDirectorTrainingCampId;
 
         @ApiModelProperty(value = "姓名")
-        @ExcelProperty(value = "姓名",order = 1)
         private String username;
 
         @ApiModelProperty(value = "手机号")
-        @ExcelProperty(value = "联系电话",order = 2)
         private String mobile;
 
         @ApiModelProperty(value = "身份证号")
-        @ExcelProperty(value = "身份证号",order = 3)
         private String cardNo;
 
         @ApiModelProperty(value = "省份")
-        @ExcelIgnore
         private String province;
 
         @ApiModelProperty(value = "省份")
-        @ExcelIgnore
         private String provinceCode;
 
         @ApiModelProperty(value = "城市")
-        @ExcelIgnore
         private String cityCode;
 
         @ApiModelProperty(value = "城市")
-        @ExcelIgnore
         private String city;
 
         @ApiModelProperty(value = "区县")
-        @ExcelIgnore
         private String regionCode;
 
         @ApiModelProperty(value = "区县")
-        @ExcelIgnore
         private String region;
 
-        @ExcelProperty(value = "所在城市",order = 4)
+        @ApiModelProperty(value = "所在城市")
         private String cityInfo;
 
         @ApiModelProperty(value = "已缴费 PAID,未缴费 NO,已退费 REFUND")
-        @ExcelIgnore
         private String paymentStatus = "NO";
 
-        @ExcelProperty(value = "缴费状态",order = 10)
+        @ApiModelProperty(value = "缴费状态")
         private String paymentStatusName;
 
         @ApiModelProperty(value = "缴费金额")
-        @ExcelProperty(value = "缴费金额",order = 11)
         private String paymentAmount;
 
         @ApiModelProperty(value = "是否早鸟报名")
-        @ExcelIgnore
         private Boolean birdFlag = false;
 
         @ApiModelProperty(value = "缴费时间")
-        @ExcelIgnore
         private Date paymentDate;
 
         @ApiModelProperty(value = "缴费时间")
-        @ExcelProperty(value = "缴费时间",order = 12)
         private String paymentDateStr;
 
         @ApiModelProperty(value = "职业")
-        @ExcelProperty(value = "目前从事职业",order = 5)
         private String job;
 
         @ApiModelProperty(value = "声部")
-        @ExcelProperty(value = "第一主专业",order = 6)
         private String subjectName;
 
         @ApiModelProperty(value = "之前乐队指导学习基础")
-        @ExcelProperty(value = "之前乐队指导学习基础",order = 7)
         private String study;
 
         @ApiModelProperty(value = "目标效果")
-        @ExcelProperty(value = "目标效果",order = 8)
         private String studyTarget;
 
         @ApiModelProperty(value = "需求或建议")
-        @ExcelProperty(value = "需求或建议",order = 9)
         private String suggestion;
 
         @ApiModelProperty(value = "创建时间")
-        @ExcelIgnore
         private Date createTime;
 
         @ApiModelProperty(value = "修改时间")
-        @ExcelIgnore
         private Date updateTime;
     }
 

+ 9 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java

@@ -3329,12 +3329,16 @@ public class ExportServiceImpl implements ExportService {
             }
         });
         groupTypeConsumerMap1.put(GroupType.SPORADIC, (basicOrder) -> {
-            if (basicOrder.getType() != OrderTypeEnum.DEGREE_REGISTRATION && basicOrder.getChargeType() != null) {
-                for (SporadicChargeTypeEnum chargeType : SporadicChargeTypeEnum.values()) {
-                    if (!chargeType.getCode().equals(basicOrder.getChargeType())) {
-                        continue;
+            if(basicOrder.getType() == DIRECTOR_TRAINING_CAMP){
+                basicOrder.setSporadicType(SporadicChargeTypeEnum.DIRECTOR_TRAINING_CAMP.getMsg());
+            }else {
+                if (basicOrder.getType() != OrderTypeEnum.DEGREE_REGISTRATION && basicOrder.getChargeType() != null) {
+                    for (SporadicChargeTypeEnum chargeType : SporadicChargeTypeEnum.values()) {
+                        if (!chargeType.getCode().equals(basicOrder.getChargeType())) {
+                            continue;
+                        }
+                        basicOrder.setSporadicType(chargeType.getMsg());
                     }
-                    basicOrder.setSporadicType(chargeType.getMsg());
                 }
             }
         });

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

@@ -667,15 +667,15 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 
 	@Override
 	public boolean sendSecurityCode(MessageSender messageSender, Integer userId, MessageTypeEnum messageType, String receiver,String jpushType) {
-		String key1 = getVerificationCode1CacheKey(messageType, receiver);
+		String key1 = getVerificationCode1CacheKey(MessageTypeEnum.SMS_VERIFY_CODE_LOGIN, receiver);
 		if (redisCache.get(key1) != null) {
 			throw new BizException("请勿频繁操作,获取验证码间隔时间为60秒");
 		}
 
-		String key = getVerificationCodeCacheKey(messageType, receiver);
+		String key = getVerificationCodeCacheKey(MessageTypeEnum.SMS_VERIFY_CODE_LOGIN, receiver);
 		int code = DEFAULT_CODE;
 		if (!debugMode) {
-			code = getRandomCode(messageType, receiver);
+			code = getRandomCode(MessageTypeEnum.SMS_VERIFY_CODE_LOGIN, receiver);
 		}
 		Map<Integer, String> receivers = new HashMap<>(1);
 		receivers.put(userId, receiver);

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

@@ -216,6 +216,11 @@ public class SysMusicScoreAccompanimentServiceImpl extends BaseServiceImpl<Strin
 				record.setIsShowFingering(musicSheetApplication.getIsShowFingering());
 				record.setIsScoreRender(musicSheetApplication.getIsScoreRender());
 				record.setDefaultScoreRender(musicSheetApplication.getDefaultScoreRender());
+				if(StringUtils.isNotEmpty(accompaniment.getSubjectId())) {
+					//获取第一个声部
+					String[] subjectIds = accompaniment.getSubjectId().split(",");
+					record.setSubjectId(subjectIds[0]);
+				}
 				childAccompaniments.add(record);
 			}
 			result.addAll(childAccompaniments);

+ 6 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreServiceImpl.java

@@ -242,8 +242,11 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
         record.setEnableEvaluation(musicSheetApplication.getIsEvaluated());
         record.setIsConvertibleScore(musicSheetApplication.getIsConvertibleScore());
         record.setScoreType(musicSheetApplication.getScoreType().getCode());
-        if(StringUtils.isNotEmpty(musicSheetApplication.getMusicalInstrumentIds())){
-            if(StringUtils.isNotEmpty(record.getSubjectIds())){
+        if(StringUtils.isNotEmpty(record.getSubjectIds())){
+            //获取第一个声部
+            String[] subjectIds = record.getSubjectIds().split(",");
+            record.setSubjectId(Integer.parseInt(subjectIds[0]));
+            if(StringUtils.isNotEmpty(musicSheetApplication.getMusicalInstrumentIds())){
                 Set<String> subjectNames = new HashSet<>();
                 for (String subjectId : record.getSubjectIds().split(",")) {
                     Instrument instrument = instrumentMap.get(Integer.parseInt(subjectId));
@@ -518,7 +521,7 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
                     }
                     musicSheetSound.setTrack(sheetAccompaniment.getTrack());
                     if (sheetAccompaniment.getSubjectId() != null) {
-                        Subject subject = subjectService.get(sheetAccompaniment.getSubjectId());
+                        Subject subject = subjectService.get(Integer.parseInt(sheetAccompaniment.getSubjectId()));
                         if (Objects.nonNull(subject)) {
                             //获取关联的乐器
                             Instrument one = instrumentService.lambdaQuery().eq(Instrument::getSubjectId, subject.getId()).one();

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

@@ -88,7 +88,10 @@ public class TempDirectorTrainingCampDetailServiceImpl extends ServiceImpl<TempD
     @Transactional(rollbackFor = Exception.class)
     public TempDirectorTrainingCampDetailWrapper.ApplyCampResult applyCamp(TempDirectorTrainingCampDetailWrapper.ApplyCamp applyCamp) {
         Date now = new Date();
-        TempDirectorTrainingCamp trainingCamp = tempDirectorTrainingCampService.getById(applyCamp.getTempDirectorTrainingCampId());
+        TempDirectorTrainingCamp trainingCamp = tempDirectorTrainingCampService.lambdaQuery()
+                .eq(TempDirectorTrainingCamp::getId,applyCamp.getTempDirectorTrainingCampId())
+                .eq(TempDirectorTrainingCamp::getDelFlag,false)
+                .last("LIMIT 1").one();
         this.checkTraining(now,trainingCamp);
         if(!smsCodeService.verifyValidCode(applyCamp.getMobile(), applyCamp.getAuthCode())){
             throw new BizException("验证码校验失败");
@@ -148,6 +151,8 @@ public class TempDirectorTrainingCampDetailServiceImpl extends ServiceImpl<TempD
             teacherDao.insert(teacher);
         }else {
             if (sysUser.getUserType().contains("SCHOOL")) {
+                // 删除缓存锁
+                redissonClient.getBucket(submitLockKey).delete();
                 throw new BizException("已注册学校账号,请联系客服");
             }
             Teacher teacher = teacherDao.get(sysUser.getId());
@@ -205,7 +210,10 @@ public class TempDirectorTrainingCampDetailServiceImpl extends ServiceImpl<TempD
         Teacher teacher = teacherDao.get(userId);
         TenantContextHolder.setTenantId(teacher.getTenantId());
         Date now = new Date();
-        TempDirectorTrainingCamp trainingCamp = tempDirectorTrainingCampService.getById(campDetail.getTempDirectorTrainingCampId());
+        TempDirectorTrainingCamp trainingCamp = tempDirectorTrainingCampService.lambdaQuery()
+                .eq(TempDirectorTrainingCamp::getId,campDetail.getTempDirectorTrainingCampId())
+                .eq(TempDirectorTrainingCamp::getDelFlag,false)
+                .last("LIMIT 1").one();
         this.checkTraining(now,trainingCamp);
         List<StudentPaymentOrder> studentPaymentOrders = studentPaymentOrderService.queryByCondition(GroupType.SPORADIC,
                 tempDirectorTrainingCampDetailId.toString(),

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

@@ -101,7 +101,7 @@
 		    ses.name_,ses.type_,ses.url_,ses.id_ exam_song_id_,
 		       ses.cbs_music_categories_id_ categories_id_,ses.client_type_,
 		ses.rank_ids_,ses.render_from_,ses.enable_evaluation_,ses.metronome_url_,ses.midi_url_,ses.play_mode_,ses.render_from_,
-		ses.ext_config_json_,ses.ext_style_config_json_,ses.cbs_music_sheet_id_
+		ses.ext_config_json_,ses.ext_style_config_json_,ses.cbs_music_sheet_id_,ses.subject_ids_ subject_id_
 		FROM sys_music_score ses
 		<include refid="queryPageSql"/>
 		ORDER BY ses.order_,ses.name_

+ 2 - 3
mec-biz/src/main/resources/config/mybatis/TempDirectorTrainingCampDetailMapper.xml

@@ -4,14 +4,13 @@
 
     <select id="getStat"
             resultType="com.ym.mec.biz.dal.wrapper.TempDirectorTrainingCampWrapper$TempDirectorTrainingCamp">
-
         select
         t.temp_director_training_camp_id_ as id,
         count(t.id_) as applyCount,
         sum(if(t.payment_status_ = 'PAID',1,0)) as payCount,
         sum(if(t.payment_status_ = 'PAID',t.payment_amount_,0)) as payAmount
         from temp_director_training_camp_detail t
-        where t.temp_director_training_camp_id_ in
+        where t.del_flag_ = 0 AND t.temp_director_training_camp_id_ in
         <foreach collection="ids" item="id" open="(" separator="," close=")">
             #{id}
         </foreach>
@@ -19,6 +18,7 @@
     </select>
 
     <sql id="SelectSql">
+            t.del_flag_ = 0
         <if test="param.tempDirectorTrainingCampId != null">
             and t.temp_director_training_camp_id_ = #{param.tempDirectorTrainingCampId}
         </if>
@@ -40,7 +40,6 @@
     </sql>
     <select id="queryPage"
             resultType="com.ym.mec.biz.dal.wrapper.TempDirectorTrainingCampDetailWrapper$TempDirectorTrainingCampDetail">
-
         select *
         from temp_director_training_camp_detail t
         <where>

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

@@ -17,6 +17,7 @@
                update_time_
         from temp_director_training_camp t
         <where>
+            t.del_flag_ = 0
             <if test="param.search != null and param.search != ''">
                 and (t.name_ like concat('%', #{param.search}, '%') )
             </if>