liujc 1 år sedan
förälder
incheckning
2832730cd1

+ 18 - 4
cooleshow-app/src/main/java/com/yonge/cooleshow/admin/controller/TenantAlbumController.java

@@ -39,10 +39,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.ArrayList;
-import java.util.Comparator;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
@@ -202,6 +199,14 @@ public class TenantAlbumController {
         if (CollectionUtils.isNotEmpty(list)){
             throw new BizException("当前机构已有专辑");
         }
+        // 检查曲目重复
+        if (CollectionUtils.isNotEmpty(album.getMusicSheetData())) {
+            List<Long> musicIds = album.getMusicSheetData().stream().flatMap(o -> o.getMusicSheetList().stream().map(m -> m.getId())).collect(Collectors.toList());
+            Set<Long> musicSet = new HashSet<>(musicIds);
+            if (musicSet.size() < musicIds.size()) {
+                throw new BizException("不予许添加相同的曲目");
+            }
+        }
 
         TenantAlbum tenantAlbum = JSON.parseObject(album.jsonString(), TenantAlbum.class);
         List<TenantAlbumVo.MusicSheetData> musicSheetData = album.getMusicSheetData();
@@ -241,6 +246,15 @@ public class TenantAlbumController {
             });
 
         }
+        // 检查曲目重复
+        if (CollectionUtils.isNotEmpty(album.getMusicSheetData())) {
+            List<Long> musicIds = album.getMusicSheetData().stream().flatMap(o -> o.getMusicSheetList().stream().map(m -> m.getId())).collect(Collectors.toList());
+            Set<Long> musicSet = new HashSet<>(musicIds);
+            if (musicSet.size() < musicIds.size()) {
+                throw new BizException("不予许添加相同的曲目");
+            }
+        }
+
         TenantAlbum tenantAlbum = JSON.parseObject(album.jsonString(), TenantAlbum.class);
         List<TenantAlbumVo.MusicSheetData> musicSheetData = album.getMusicSheetData();
 

+ 14 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/student/controller/MusicSheetController.java

@@ -29,6 +29,7 @@ import com.yonge.cooleshow.biz.dal.wrapper.music.MusicCompareWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.enums.YesOrNoEnum;
+import com.yonge.toolset.base.exception.BizException;
 import com.yonge.toolset.base.page.PageInfo;
 import com.yonge.toolset.base.page.QueryInfo;
 import com.yonge.toolset.base.util.StringUtil;
@@ -412,4 +413,17 @@ public class MusicSheetController extends BaseController {
         return succeed(musicSheetService.search(queryInfo));
     }
 
+
+    @ApiOperation(value = "搜索机构")
+    @PostMapping(value="/searchTenant")
+    public HttpResponseResult<MusicCompareWrapper.SearchData> searchTenant(@RequestBody MusicCompareWrapper.MusicSearch queryInfo) {
+
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            throw new BizException("用户信息获取失败");
+        }
+        queryInfo.setUserId(sysUser.getId());
+        return succeed(musicSheetService.searchTenant(queryInfo));
+    }
+
 }

+ 13 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/tenant/controller/open/OpenTenantController.java

@@ -63,6 +63,19 @@ public class OpenTenantController {
         return HttpResponseResult.status(true);
     }
 
+    @GetMapping("/checkPhone")
+    @ApiOperation(value = "检查手机是否已经注册机构账户")
+    public HttpResponseResult<Boolean> checkPhone(String phone) {
+
+
+        // 根据手机号 判断是否已经有机构账户
+        TenantStaff tenantStaff = tenantStaffService.getByPhone(phone);
+        if (tenantStaff != null) {
+            throw new BizException("该手机号已经有机构账号");
+        }
+        return HttpResponseResult.status(true);
+    }
+
 
     @GetMapping("/bindWechat")
     @ApiOperation(value = "绑定微信")