Selaa lähdekoodia

1.接口同步

yuanliang 1 vuosi sitten
vanhempi
commit
5c2af5ee65

+ 44 - 7
cooleshow-app/src/main/java/com/yonge/cooleshow/tenant/controller/StudentController.java

@@ -10,11 +10,13 @@ import com.yonge.cooleshow.biz.dal.entity.TenantActivationCode;
 import com.yonge.cooleshow.biz.dal.entity.TenantInfo;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.service.ImUserFriendService;
+import com.yonge.cooleshow.biz.dal.service.OssFileService;
 import com.yonge.cooleshow.biz.dal.service.StudentService;
 import com.yonge.cooleshow.biz.dal.service.TeacherService;
 import com.yonge.cooleshow.biz.dal.service.TenantActivationCodeService;
 import com.yonge.cooleshow.biz.dal.service.TenantInfoService;
 import com.yonge.cooleshow.biz.dal.vo.StudentVo;
+import com.yonge.cooleshow.biz.dal.wrapper.OssFileWrapper;
 import com.yonge.cooleshow.biz.dal.wrapper.StudentWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
@@ -44,7 +46,10 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -58,18 +63,17 @@ public class StudentController extends BaseController {
 
     @Autowired
     private StudentService studentService;
-    @Autowired
-    private TeacherService teacherService;
-    @Autowired
+    @Resource
     private SysUserFeignService sysUserFeignService;
     @Autowired
-    private ImUserFriendService imUserFriendService;
-    @Autowired
     private TenantInfoService tenantInfoService;
 
     @Autowired
     private TenantActivationCodeService tenantActivationCodeService;
 
+    @Autowired
+    private OssFileService ossFileService;
+
     @GetMapping("/detail/{id}")
     @ApiOperation(value = "详情", notes = "传入id")
     public HttpResponseResult<StudentVo> detail(@PathVariable("id") Long id) {
@@ -93,7 +97,7 @@ public class StudentController extends BaseController {
         rows.stream().forEach(r->{
             if (StringUtils.isEmpty(r.getRealName())){
                 if (StringUtils.isNotEmpty(r.getUsername()))
-                r.setRealName(r.getUsername());
+                    r.setRealName(r.getUsername());
             }
         });
 
@@ -102,7 +106,7 @@ public class StudentController extends BaseController {
         if (!rows.isEmpty() && query.getTenantAlbumPurchaseId() != null) {
             List<String> studentPhones =
                     rows.stream().map(StudentVo::getPhone).filter(StringUtils::isNotEmpty).collect(Collectors.toList());
-             groupByPhone = tenantActivationCodeService.lambdaQuery()
+            groupByPhone = tenantActivationCodeService.lambdaQuery()
                     .eq(TenantActivationCode::getId, query.getTenantAlbumPurchaseId())
                     .in(TenantActivationCode::getActivationPhone, studentPhones)
                     .list().stream().collect(Collectors.groupingBy(TenantActivationCode::getActivationPhone));
@@ -126,6 +130,39 @@ public class StudentController extends BaseController {
         return succeed(PageUtil.pageInfo(pages));
     }
 
+    @PostMapping("/exportStudent")
+    @ApiOperation(value = "导出学生", notes = "传入TeacherSearch")
+    public HttpResponseResult<OssFileWrapper.ExportFile> exportTeacher(@RequestBody StudentSearch query) {
+        TenantInfo tenantInfo = getTenantInfo();
+        query.setTenantId(tenantInfo.getId());
+        query.setDelFlag(YesOrNoEnum.NO);
+        query.setLockFlag(UserLockFlag.NORMAL);
+        query.setOrderBy("u.username_ asc");
+        query.setPage(1);
+        query.setRows(9999);
+
+        IPage<StudentVo> pages = studentService.selectPage(PageUtil.getPage(query), query);
+        List<StudentVo> rows = pages.getRecords();
+
+        if (rows.isEmpty()) {
+            throw new BizException("没有可导出数据");
+        }
+
+        List<StudentWrapper.ExportStudentTemplate> templateList = rows.stream().map(next -> {
+            StudentWrapper.ExportStudentTemplate template = new StudentWrapper.ExportStudentTemplate();
+            template.setUserName(next.getUsername());
+            template.setPhone(next.getPhone());
+            template.setSubjectName(next.getSubjectName());
+            template.setTenantGroupName(next.getTenantGroupName());
+            return template;
+        }).collect(Collectors.toList());
+
+        String format = new SimpleDateFormat("yyyyMMddHHmm").format(new Date());
+        OssFileWrapper.ExportFile exportFile = ossFileService.uploadFile(templateList,
+                StudentWrapper.ExportStudentTemplate.class, format, "学生");
+        return succeed(exportFile);
+    }
+
     @PostMapping("/save")
     @ApiOperation(value = "新增/修改", notes = "传入Student")
     public HttpResponseResult<Boolean> save(

+ 44 - 1
cooleshow-app/src/main/java/com/yonge/cooleshow/tenant/controller/TeacherController.java

@@ -10,9 +10,11 @@ import com.yonge.cooleshow.biz.dal.entity.Teacher;
 import com.yonge.cooleshow.biz.dal.entity.TeacherStyleVideo;
 import com.yonge.cooleshow.biz.dal.entity.TenantInfo;
 import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
+import com.yonge.cooleshow.biz.dal.service.OssFileService;
 import com.yonge.cooleshow.biz.dal.service.TeacherService;
 import com.yonge.cooleshow.biz.dal.service.TenantInfoService;
 import com.yonge.cooleshow.biz.dal.vo.TeacherVo;
+import com.yonge.cooleshow.biz.dal.wrapper.OssFileWrapper;
 import com.yonge.cooleshow.biz.dal.wrapper.teacher.TeacherWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
@@ -33,7 +35,10 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.annotation.Resource;
 import javax.validation.Valid;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -45,12 +50,15 @@ public class TeacherController extends BaseController {
     @Autowired
     private TeacherService teacherService;
 
-    @Autowired
+    @Resource
     private SysUserFeignService sysUserFeignService;
 
     @Autowired
     private TenantInfoService tenantInfoService;
 
+    @Autowired
+    private OssFileService ossFileService;
+
     /**
      * 查询单条
      */
@@ -102,6 +110,41 @@ public class TeacherController extends BaseController {
         return succeed(PageUtil.pageInfo(pages));
     }
 
+
+    @PostMapping("/exportTeacher")
+    @ApiOperation(value = "导出老师", notes = "传入TeacherSearch")
+    public HttpResponseResult<OssFileWrapper.ExportFile> exportTeacher(@RequestBody TeacherSearch query) {
+        TenantInfo tenantInfo = getTenantInfo();
+        query.setTenantId(tenantInfo.getId());
+        query.setDelFlag(YesOrNoEnum.NO);
+        query.setLockFlag(UserLockFlag.NORMAL);
+        query.setPage(1);
+        query.setRows(9999);
+        query.setOrderBy("u.username_ asc");
+
+        IPage<TeacherVo> pages = teacherService.selectPage(PageUtil.getPage(query), query);
+        List<TeacherVo> rows = pages.getRecords();
+
+        if (rows.isEmpty()) {
+            throw new BizException("没有可导出数据");
+        }
+
+        List<TeacherWrapper.ExportTeacherTemplate> templates = rows.stream().map(next -> {
+            TeacherWrapper.ExportTeacherTemplate template = new TeacherWrapper.ExportTeacherTemplate();
+            template.setUserName(next.getUsername());
+            template.setPhone(next.getPhone());
+            template.setMusicSheet(next.getMusicSheetName());
+            template.setSubjectName(next.getSubjectName());
+            template.setSettlementFrom(next.getSettlementFrom() == null ? "" : next.getSettlementFrom().getMsg());
+            return template;
+        }).collect(Collectors.toList());
+
+        String format = new SimpleDateFormat("yyyyMMddHHmm").format(new Date());
+        OssFileWrapper.ExportFile exportFile = ossFileService.uploadFile(templates,
+                TeacherWrapper.ExportTeacherTemplate.class, format, "老师");
+        return succeed(exportFile);
+    }
+
     /**
      * 新增或修改
      */

+ 1 - 1
cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/StudentController.java

@@ -137,7 +137,7 @@ public class StudentController extends BaseController {
         return succeed(PageUtil.pageInfo(pages));
     }
 
-    @GetMapping("/exportStudent")
+    @PostMapping("/exportStudent")
     @ApiOperation(value = "导出学生", notes = "传入TeacherSearch")
     public HttpResponseResult<OssFileWrapper.ExportFile> exportTeacher(@RequestBody StudentSearch query) {
         TenantInfo tenantInfo = getTenantInfo();

+ 1 - 1
cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/TeacherController.java

@@ -111,7 +111,7 @@ public class TeacherController extends BaseController {
     }
 
 
-    @GetMapping("/exportTeacher")
+    @PostMapping("/exportTeacher")
     @ApiOperation(value = "导出老师", notes = "传入TeacherSearch")
     public HttpResponseResult<OssFileWrapper.ExportFile> exportTeacher(@RequestBody TeacherSearch query) {
         TenantInfo tenantInfo = getTenantInfo();

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

@@ -48,5 +48,8 @@ public class StudentVo {
 
         @ApiModelProperty("短信验证码")
         private String code;
+
+        @ApiModelProperty("机构小组ID")
+        private Long tenantGroupId;
     }
 }