ソースを参照

Merge branch 'develop-new' of http://git.dayaedu.com/yonge/cooleshow into develop-new

zouxuan 1 年間 前
コミット
5c594d76ce

+ 10 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/tenant/controller/open/OpenStudentController.java

@@ -4,8 +4,10 @@ import com.alibaba.fastjson.JSON;
 import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.biz.dal.entity.Student;
+import com.yonge.cooleshow.biz.dal.entity.TenantGroup;
 import com.yonge.cooleshow.biz.dal.entity.TenantInfo;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
+import com.yonge.cooleshow.biz.dal.mapper.TenantGroupMapper;
 import com.yonge.cooleshow.biz.dal.service.ImGroupMemberService;
 import com.yonge.cooleshow.biz.dal.service.ImGroupService;
 import com.yonge.cooleshow.biz.dal.service.ImUserFriendService;
@@ -62,6 +64,9 @@ public class OpenStudentController extends BaseController {
     @Autowired
     private ImGroupMemberService imGroupMemberService;
 
+    @Autowired
+    private TenantGroupMapper tenantGroupMapper;
+
     @PostMapping("/save")
     @ApiOperation(value = "新增/修改", notes = "传入Student,换绑时按照返回错误码5004判断,是否需要换绑,updateTenant=true表示换绑")
     public HttpResponseResult<Boolean> save(@Validated @RequestBody StudentVo.Student student) {
@@ -80,6 +85,11 @@ public class OpenStudentController extends BaseController {
         if (tenantInfo == null) {
             throw new BizException("机构不存在");
         }
+        Long tenantGroupId = student.getTenantGroupId();
+        TenantGroup tenantGroup = tenantGroupMapper.selectById(tenantGroupId);
+        if (tenantGroup == null) {
+            throw new com.microsvc.toolkit.common.webportal.exception.BizException("机构小组不存在");
+        }
         Long studentId = student.getId();
 
         if (studentId == null) {

+ 3 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/tenant/vo/StudentVo.java

@@ -22,6 +22,9 @@ public class StudentVo {
         @ApiModelProperty("所属机构,开放接口必填")
         private Long tenantId;
 
+        @ApiModelProperty("机构小组ID")
+        private Long tenantGroupId;
+
         @ApiModelProperty("姓名")
         @NotNull
         private String name;

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

@@ -442,12 +442,6 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
             studentInfo.setTenantGroupId(-1L);
         }
 
-        Long tenantGroupId = studentInfo.getTenantGroupId();
-        TenantGroup tenantGroup = tenantGroupMapper.selectById(tenantGroupId);
-        if (tenantGroup == null) {
-            throw new BizException("机构小组不存在");
-        }
-
         if (studentInfo.getId() == null) {
             return createStudent(studentInfo);
         } else {

+ 8 - 10
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantAlbumCategoryServiceImpl.java

@@ -156,8 +156,8 @@ public class TenantAlbumCategoryServiceImpl extends ServiceImpl<TenantAlbumCateg
         List<Long> newUpdateIds = values.stream().map(TenantAlbumCategoryDetail::getId).filter(Objects::nonNull)
                 .collect(Collectors.toList());
 
-        List<TenantAlbumCategoryDetail> removeDetailIdList =
-                detailList.stream().filter(next -> !newUpdateIds.contains(next.getId())).collect(Collectors.toList());
+        List<Long> removeDetailIdList = detailList.stream().map(TenantAlbumCategoryDetail::getId)
+                .filter(next -> !newUpdateIds.contains(next)).collect(Collectors.toList());
         if (!removeDetailIdList.isEmpty()) {
             // 校验删除的分类值是否被使用,如果有使用,则提示
             TenantAlbumCategory albumCategory = this.getById(tenantAlbumCategory.getId());
@@ -171,16 +171,14 @@ public class TenantAlbumCategoryServiceImpl extends ServiceImpl<TenantAlbumCateg
             if (useCount > 0) {
                 checkTenantAlbumCategoryDetailUsed(albumCategory.getCategoryType(), removeDetailIdList);
             }
+            tenantAlbumCategoryDetailService.removeByIds(removeDetailIdList);
         }
-
-        tenantAlbumCategoryDetailService.lambdaUpdate()
-                .eq(TenantAlbumCategoryDetail::getTenantAlbumCategoryId, tenantAlbumCategory.getId())
-                .remove();
-        this.updateById(JSON.parseObject(tenantAlbumCategory.jsonString(), TenantAlbumCategory.class));
         if (!values.isEmpty()) {
             values.forEach(next -> next.setTenantAlbumCategoryId(tenantAlbumCategory.getId()));
-            tenantAlbumCategoryDetailService.saveBatch(values);
+            tenantAlbumCategoryDetailService.saveOrUpdateBatch(values);
         }
+
+        this.updateById(JSON.parseObject(tenantAlbumCategory.jsonString(), TenantAlbumCategory.class));
         return true;
     }
 
@@ -214,11 +212,11 @@ public class TenantAlbumCategoryServiceImpl extends ServiceImpl<TenantAlbumCateg
      * 校验专辑分类中的值是否有被应用
      */
     private void checkTenantAlbumCategoryDetailUsed(ETenantAlbumCategoryType categoryType,
-                                                    List<TenantAlbumCategoryDetail> list) {
+                                                    List<Long> list) {
         if (list.isEmpty()) {
             return;
         }
-        List<String> idStrList = list.stream().map(next -> next.getId().toString()).collect(Collectors.toList());
+        List<String> idStrList = list.stream().map(Object::toString).collect(Collectors.toList());
         QueryWrapper<TenantAlbumMusic> queryWrapper = new QueryWrapper<>();
         queryWrapper.lambda()
                 .in(ETenantAlbumCategoryType.CATEGORY_TYPE.equals(categoryType),

+ 1 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantAlbumCategoryMapper.xml

@@ -29,6 +29,7 @@
                 AND t.category_type_ = #{param.categoryType}
             </if>
         </where>
+        ORDER BY t.id_ DESC
 
     </select>
 

+ 1 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantGroupMapper.xml

@@ -30,6 +30,7 @@
                 t.admin_id_ = #{param.adminId}
             </if>
         </where>
+        ORDER BY t.id_ ASC
     </select>
 
 </mapper>

+ 11 - 1
cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/open/OpenStudentController.java

@@ -7,10 +7,12 @@ import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.biz.dal.entity.ImGroupMember;
 import com.yonge.cooleshow.biz.dal.entity.Student;
 import com.yonge.cooleshow.biz.dal.entity.Teacher;
+import com.yonge.cooleshow.biz.dal.entity.TenantGroup;
 import com.yonge.cooleshow.biz.dal.entity.TenantInfo;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.ImGroupMemberRoleType;
 import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
+import com.yonge.cooleshow.biz.dal.mapper.TenantGroupMapper;
 import com.yonge.cooleshow.biz.dal.service.ImGroupMemberService;
 import com.yonge.cooleshow.biz.dal.service.ImGroupService;
 import com.yonge.cooleshow.biz.dal.service.ImUserFriendService;
@@ -56,7 +58,7 @@ public class OpenStudentController extends BaseController {
     @Autowired
     private TenantInfoService tenantInfoService;
 
-    @Resource
+    @Autowired
     private SysUserFeignService sysUserFeignService;
 
     @Autowired
@@ -71,6 +73,9 @@ public class OpenStudentController extends BaseController {
     @Autowired
     private ImGroupMemberService imGroupMemberService;
 
+    @Autowired
+    private TenantGroupMapper tenantGroupMapper;
+
     @PostMapping("/save")
     @ApiOperation(value = "新增/修改", notes = "传入Student,换绑时按照返回错误码5004判断,是否需要换绑,updateTenant=true表示换绑")
     public HttpResponseResult<Boolean> save(@Validated @RequestBody StudentVo.Student student) {
@@ -89,6 +94,11 @@ public class OpenStudentController extends BaseController {
         if (tenantInfo == null) {
             throw new BizException("机构不存在");
         }
+        Long tenantGroupId = student.getTenantGroupId();
+        TenantGroup tenantGroup = tenantGroupMapper.selectById(tenantGroupId);
+        if (tenantGroup == null) {
+            throw new com.microsvc.toolkit.common.webportal.exception.BizException("机构小组不存在");
+        }
         Long studentId = student.getId();
 
         if (studentId == null) {