haonan 2 лет назад
Родитель
Сommit
0e01e55ee7

+ 8 - 5
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/TenantInfoController.java

@@ -39,7 +39,7 @@ public class TenantInfoController extends BaseController {
      */
     @PostMapping("/page")
     @ApiOperation(value = "查询分页", notes = "TenantInfo")
-    @PreAuthorize("@pcs.hasPermissions('tenantInfo/page')")
+    //@PreAuthorize("@pcs.hasPermissions('tenantInfo/page')")
     public HttpResponseResult<PageInfo<TenantInfoWrapper.TenantInfo>> page(@RequestBody TenantInfoWrapper.TenantInfoQuery query) {
 
         IPage<TenantInfoWrapper.TenantInfo> pages = tenantInfoService.selectPage(PageUtil.getPage(query), query);
@@ -53,7 +53,7 @@ public class TenantInfoController extends BaseController {
      */
     @PostMapping("/update")
     @ApiOperation(value = "修改", notes = "传入TenantInfo")
-    @PreAuthorize("@pcs.hasPermissions('tenantInfo/update')")
+    //@PreAuthorize("@pcs.hasPermissions('tenantInfo/update')")
     public HttpResponseResult<Boolean> updateTenantInfo(@Valid @RequestBody TenantInfo info) {
 
         return succeed(tenantInfoService.updateTenantInfo(info));
@@ -64,7 +64,7 @@ public class TenantInfoController extends BaseController {
      */
     @PostMapping("/detail")
     @ApiOperation(value = "查看详情", notes = "查看详情")
-    @PreAuthorize("@pcs.hasPermissions('tenantInfo/detail')")
+    //@PreAuthorize("@pcs.hasPermissions('tenantInfo/detail')")
     public HttpResponseResult<TenantInfoWrapper.TenantInfo > detail(@Valid @RequestBody TenantInfo info) {
         Long id = info.getId();
         return succeed(tenantInfoService.Infodetail(id));
@@ -77,8 +77,11 @@ public class TenantInfoController extends BaseController {
      */
     @PostMapping("/insert")
     @ApiOperation(value = "更新", notes = "传入TenantInfo")
-    @PreAuthorize("@pcs.hasPermissions('tenantInfo/insert')")
-    public HttpResponseResult<Boolean> insertTenantInfo(@Validated(TenantInfo.class) @RequestBody TenantInfo info) {
+    //@PreAuthorize("@pcs.hasPermissions('tenantInfo/insert')")
+    public HttpResponseResult<Boolean> insertTenantInfo( @RequestBody TenantInfo info) {
+
+
+
         return succeed(tenantInfoService.add(info));
     }
 

+ 27 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/StudentCounts.java

@@ -0,0 +1,27 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @Author:haonan
+ * @Date:2023/7/31 18:45
+ * @Filename:TeacherCounts
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class StudentCounts {
+
+    @ApiModelProperty("学生数量")
+    private Integer studentCounts;
+
+
+    @ApiModelProperty("对应id")
+    private Integer id;
+
+}

+ 26 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/TeacherCounts.java

@@ -0,0 +1,26 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * @Author:haonan
+ * @Date:2023/7/31 18:45
+ * @Filename:TeacherCounts
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class TeacherCounts {
+
+    @ApiModelProperty("老师数量")
+    private Integer teacherCounts;
+
+    @ApiModelProperty("对应id")
+    private Integer id;
+
+}

+ 5 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/mapper/TenantInfoMapper.java

@@ -1,10 +1,12 @@
 package com.yonge.cooleshow.biz.dal.mapper;
 
-import java.util.ArrayList;
+
 import java.util.List;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.cooleshow.biz.dal.entity.StudentCounts;
+import com.yonge.cooleshow.biz.dal.entity.TeacherCounts;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 import com.yonge.cooleshow.biz.dal.entity.TenantInfo;
@@ -43,9 +45,9 @@ public interface TenantInfoMapper extends BaseMapper<TenantInfo> {
 
 	Boolean insertInfo(@Param("param") TenantInfo tenantInfo);
 
-	List<Integer> queryTeacherCounts(@Param("listId") List<Integer> listId);
+	TeacherCounts queryTeacherCounts(@Param("id") Long Id);
 
-	List<Integer> queryStudentCounts(@Param("listId") List<Integer> listId);
+	StudentCounts queryStudentCounts(@Param("id") long Id);
 
 	List<TenantInfoWrapper.TenantInfo> selectApplyPage(@Param("page") IPage<TenantInfoWrapper.TenantInfo> page, @Param("param") TenantInfoWrapper.TenantInfoQuery query);
 

+ 19 - 28
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantInfoServiceImpl.java

@@ -5,11 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.yonge.cooleshow.biz.dal.entity.SysArea;
-import com.yonge.cooleshow.biz.dal.entity.SysUser;
-import com.yonge.cooleshow.biz.dal.entity.TenantEntryRecord;
-import com.yonge.cooleshow.biz.dal.entity.TenantInfo;
-import com.yonge.cooleshow.biz.dal.entity.TenantStaff;
+import com.yonge.cooleshow.biz.dal.entity.*;
 import com.yonge.cooleshow.biz.dal.mapper.SysUserMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantApplyRecordMapper;
 import com.yonge.cooleshow.biz.dal.mapper.TenantEntryRecordMapper;
@@ -103,30 +99,19 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoMapper, TenantI
         //分页查询
         List<TenantInfoWrapper.TenantInfo> tenantInfos = baseMapper.selectPage(page, query);
         //获取id
-        ArrayList<Integer> listId = new ArrayList<>();
+
+        //查询对应机构的老师学生数量
+        TeacherCounts  teacherCounts= new TeacherCounts();
+        StudentCounts  studentCounts= new StudentCounts();
+
         for (int i = 0; i < tenantInfos.size(); i++) {
             TenantInfoWrapper.TenantInfo info = tenantInfos.get(i);
             long id = info.getId();
-            listId.add(i,(int)id);
-        }
-        //查询对应机构的老师数量
-        List<Integer> listTeacher = new ArrayList<>();
-        //查询对应机构的学生数量
-        List<Integer> listStudent = new ArrayList<>();
-        if (!CollectionUtils.isEmpty(listId)) {
-            listTeacher = tenantInfoMapper.queryTeacherCounts(listId);
-            listStudent = tenantInfoMapper.queryStudentCounts(listId);
-        }
-
+            teacherCounts = tenantInfoMapper.queryTeacherCounts(id);
+            studentCounts = tenantInfoMapper.queryStudentCounts(id);
+            info.setTeacherCounts(teacherCounts.getTeacherCounts().toString());
+            info.setStudentCounts(studentCounts.getStudentCounts().toString());
 
-        for (int j = 0; j < tenantInfos.size(); j++) {
-            TenantInfoWrapper.TenantInfo tenantInfo = tenantInfos.get(j);
-            for (int z = 0; z < listTeacher.size(); z++) {
-                tenantInfo.setTeacherCounts(listTeacher.get(z).toString());
-            }
-            for (int t = 0; t < listStudent.size(); t++) {
-                tenantInfo.setStudentCounts(listStudent.get(t).toString());
-            }
         }
 
 
@@ -145,17 +130,19 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoMapper, TenantI
     @Override
     public Boolean add(TenantInfo tenantInfo) {
         SysUser sysUser = getOrCreateAccount(tenantInfo);
+        tenantInfo.setEnableFlag(true);
+        tenantInfo.setUserId(sysUser.getId());
+        tenantInfoMapper.insert(tenantInfo);
 
         TenantStaff tenantStaff = new TenantStaff();
-        tenantStaff.setTenantId(tenantStaff.getTenantId());
+        tenantStaff.setTenantId(tenantInfo.getId());
         tenantStaff.setUserId(sysUser.getId());
         tenantStaff.setAvatar(sysUser.getAvatar());
         tenantStaff.setNickname(tenantInfo.getUsername());
         tenantStaff.setStatus(UserLockFlag.NORMAL);
         tenantStaffMapper.insert(tenantStaff);
 
-        tenantInfo.setEnableFlag(true);
-        tenantInfoMapper.insert(tenantInfo);
+
         return true;
     }
 
@@ -261,6 +248,8 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoMapper, TenantI
             }
             //修改机构账号冻结状态
             flag = tenantInfoMapper.updateFlag(id);
+            //修改机构staff状态
+            tenantStaffMapper.updateById();
             //是否更改结算方式
             if (query.getIfMethod() == 1) {
                 tenantInfoMapper.updateMethod(id);
@@ -299,6 +288,8 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoMapper, TenantI
                 .set(TenantInfo::getProvinceCode, info.getProvinceCode())
                 .set(TenantInfo::getCityCode, info.getCityCode())
                 .set(TenantInfo::getRegionCode, info.getRegionCode())
+                .set(TenantInfo::getPhone,  info.getPhone())
+                .set(TenantInfo::getUsername, info.getUsername())
                 .eq(TenantInfo::getId, info.getId())
         );
         return true;

+ 5 - 6
cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantInfoMapper.xml

@@ -106,16 +106,16 @@
 
 	</select>
 
-    <select id="queryTeacherCounts" resultType="java.lang.Integer">
-        SELECT count(t.tenant_id_) FROM teacher t where t.tenant_id_ IN (<foreach collection="listId" separator="," item="Id">#{Id}</foreach>)
+    <select id="queryTeacherCounts" resultType="com.yonge.cooleshow.biz.dal.entity.TeacherCounts">
+        SELECT count(t.tenant_id_) as teacherCounts ,t.tenant_id_  as id FROM teacher t where t.tenant_id_  = #{id}
     </select>
 
     <select id="queryTeacherCount" resultType="java.lang.String">
         SELECT count(t.tenant_id_) FROM teacher t where t.tenant_id_ = #{id}
     </select>
 
-    <select id="queryStudentCounts" resultType="java.lang.Integer">
-        SELECT count(s.tenant_id_) FROM student s where s.tenant_id_ IN (<foreach collection="listId" separator="," item="Id">#{Id}</foreach>)
+    <select id="queryStudentCounts" resultType="com.yonge.cooleshow.biz.dal.entity.StudentCounts">
+        SELECT count(s.tenant_id_) as studentCounts, s.tenant_id_  as id FROM student s where s.tenant_id_ =  #{id}
     </select>
     <select id="queryStudentCount" resultType="java.lang.String">
         SELECT count(s.tenant_id_) FROM student s where s.tenant_id_ = #{id}
@@ -220,9 +220,8 @@
         from tenant_info t
         where 1=1
         <if test="id != null">
-           id_ = #{id}
+           and id_ = #{id}
         </if>
-        }
 
     </select>