Parcourir la source

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

Eric il y a 1 an
Parent
commit
eb37fae183

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

@@ -103,6 +103,9 @@ public class MusicSheetSearch  extends QueryInfo{
     @ApiModelProperty(value = "曲谱类型(SINGLE:单曲,CONCERT:合奏)")
     private MusicSheetTypeEnum musicSheetType;
 
+    @ApiModelProperty("指定关联专辑的曲目排在最后")
+    private Long sortByAlbumIdDesc;
+
     public SourceTypeEnum getProviderType() {
         return providerType;
     }
@@ -313,4 +316,12 @@ public class MusicSheetSearch  extends QueryInfo{
     public void setDataCorrect(Boolean dataCorrect) {
         DataCorrect = dataCorrect;
     }
+
+    public Long getSortByAlbumIdDesc() {
+        return sortByAlbumIdDesc;
+    }
+
+    public void setSortByAlbumIdDesc(Long sortByAlbumIdDesc) {
+        this.sortByAlbumIdDesc = sortByAlbumIdDesc;
+    }
 }

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

@@ -272,7 +272,7 @@ public class TenantAlbumServiceImpl extends ServiceImpl<TenantAlbumMapper, Tenan
                 }
 
                 // 判断学生是否在小组
-                if (orderGoodsInfo.getTenantGroupAlbumId().equals(student.getTenantGroupId())) {
+                if (!tenantGroupAlbum.getTenantGroupId().equals(student.getTenantGroupId())) {
                     log.error("订单创建前检测,学生购买机构专辑,学生不在小组,userId={},tenantGroupAlbumId={}", orderGoodsInfo.getUserId(), orderGoodsInfo.getTenantGroupAlbumId());
                     throw new BizException("该专辑已不可购买");
                 }

+ 6 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetMapper.xml

@@ -103,6 +103,9 @@
             where find_in_set(s.id_,t.music_subject_) and s.del_flag_ = 0 ) as subjectNames
         from music_sheet t
         left join sys_user su on t.create_by_ = su.id_
+        <if test="param.sortByAlbumIdDesc != null">
+            left join tenant_album_music tam on tam.music_sheet_id_ = t.id_ and tam.tenant_album_id_ = #{param.sortByAlbumIdDesc} and tam.del_flag_=0
+        </if>
         <where>
             su.del_flag_ = 0
             <include refid="QueryInfo"/>
@@ -120,6 +123,9 @@
             </if>
         </where>
         order by
+        <if test="param.sortByAlbumIdDesc != null">
+            if(isnull(tam.id_),0,1),
+        </if>
         <if test="param.myself == null or param.myself == false ">
             t.top_flag_ desc,t.sort_number_ desc,
         </if>