فهرست منبع

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

Eric 1 سال پیش
والد
کامیت
088b04b361

+ 1 - 0
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/enums/EClientType.java

@@ -12,6 +12,7 @@ public enum EClientType implements BaseEnum<String, EClientType> {
     TEACHER("老师端"),
     STUDENT("学生端"),
     TENANT_STUDENT("机构-学生端"),
+    ORGANIZATION("机构-小程序"),
     SYSTEM("平台端"),
     WEBSITE("官网"),
     ;

+ 2 - 0
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/web/controller/TokenController.java

@@ -48,6 +48,7 @@ import java.io.IOException;
 import java.text.MessageFormat;
 import java.util.Base64;
 import java.util.Calendar;
+import java.util.Locale;
 import java.util.Map;
 import java.util.UUID;
 import java.util.concurrent.TimeUnit;
@@ -110,6 +111,7 @@ public class TokenController extends BaseController {
     public Object apiQueryUserInfo(@RequestParam(value = "clientType", required = false, defaultValue = "TEACHER") String clientType) {
 
         // 校验客户端类型
+        clientType = clientType.toUpperCase(Locale.ENGLISH);
         if (EClientType.invalid(clientType)) {
             return failed("无效的客户端类型");
         }

+ 10 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/MusicAlbumDetailSearch.java

@@ -42,6 +42,16 @@ public class MusicAlbumDetailSearch extends MusicSheetSearch {
 
     private List<String> paymentTypes;
 
+    @ApiModelProperty(value = "登录学生id",hidden = true)
+    private Long studentId;
+
+    public Long getStudentId() {
+        return studentId;
+    }
+
+    public void setStudentId(Long studentId) {
+        this.studentId = studentId;
+    }
 
     public Integer getRelatedNum() {
         return relatedNum;

+ 1 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/ClientEnum.java

@@ -13,6 +13,7 @@ public enum ClientEnum implements BaseEnum<String, ClientEnum> {
     TEACHER("老师端"),
     STUDENT("学生端"),
     TENANT_STUDENT("机构-学生端"),
+    ORGANIZATION("机构-小程序"),
     SYSTEM("平台端"),
     WEBSITE("官网"),
     TENANT("机构端"),

+ 4 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicAlbumServiceImpl.java

@@ -161,6 +161,10 @@ public class MusicAlbumServiceImpl extends ServiceImpl<MusicAlbumDao,MusicAlbum>
             }*/
         }
 
+        if (sysUser != null) {
+            query.setStudentId(sysUser.getId());
+        }
+        query.setClientType(client);
         IPage<MusicSheetVo> musicSheetVoIPage = musicSheetService.selectAlbumDetailPage(page,query);
 
         List<MusicSheetVo> records = musicSheetVoIPage.getRecords();

+ 25 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetServiceImpl.java

@@ -363,7 +363,31 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
 
     @Override
     public IPage<MusicSheetVo> selectAlbumDetailPage(IPage<MusicSheetVo> page, MusicAlbumDetailSearch query) {
-        return page.setRecords(baseMapper.selectAlbumDetailPage(page, query));
+        IPage<MusicSheetVo> musicSheetVoIPage = page.setRecords(baseMapper.selectAlbumDetailPage(page, query));
+
+        List<MusicSheetVo> records = musicSheetVoIPage.getRecords();
+        if (CollectionUtils.isEmpty(records)) {
+            return musicSheetVoIPage;
+        }
+        // 是否关注
+        if (query.getStudentId() != null) {
+            List<Long> musicIdList = records.stream().map(MusicSheetVo::getId).collect(Collectors.toList());
+            List<MusicFavorite> musicFavoriteList = musicFavoriteService.lambdaQuery()
+                    .eq(MusicFavorite::getUserId, query.getStudentId())
+                    .eq(MusicFavorite::getClientType, query.getClientType())
+                    .in(MusicFavorite::getMusicSheetId, musicIdList)
+                    .list();
+            if (CollectionUtils.isNotEmpty(musicFavoriteList)) {
+                Set<Long> set = musicFavoriteList.stream()
+                        .map(MusicFavorite::getMusicSheetId)
+                        .collect(Collectors.toSet());
+                for (MusicSheetVo record : records) {
+                    record.setFavorite(set.contains(record.getId())?YesOrNoEnum.YES:YesOrNoEnum.NO);
+                }
+            }
+        }
+
+        return musicSheetVoIPage;
     }
 
     @Override

+ 4 - 3
cooleshow-user/user-biz/src/main/resources/config/mybatis/PlatformCashAccountRecordMapper.xml

@@ -157,9 +157,10 @@
 
 	<select id="queryCanAccountByBizType"
 			resultType="com.yonge.cooleshow.biz.dal.entity.PlatformCashAccountRecord">
-		select * from platform_cash_account_record
-		where post_status_ = 'WAIT' and account_period_time_ &lt; now()
-		and biz_type_ IN
+		select t.* from platform_cash_account_record t
+        left join tenant_account_record tar on tar.platform_cash_account_record_id_ = t.id_
+		where t.post_status_ = 'WAIT' and t.account_period_time_ &lt; now() and tar.id_ is null
+		and t.biz_type_ IN
 		<foreach collection="bizTypes" item="item" open="(" separator="," close=")">
 			#{item}
 		</foreach>