Browse Source

平台管理员接口

shenhao 4 years ago
parent
commit
4f6e745f19

+ 39 - 0
src/main/java/com/ssj/api/domain/vo/homework/HomeworkReq.java

@@ -0,0 +1,39 @@
+package com.ssj.api.domain.vo.homework;
+
+import com.ssj.bean.common.framework.core.domain.BaseRequest;
+
+/**
+ * @author sh
+ * @className homeworkReq
+ * @description req
+ * @date 2021/2/18
+ */
+public class HomeworkReq extends BaseRequest {
+    private  Integer pageSize;
+    private  Integer pageNo;
+    private String teacherName;
+
+    public Integer getPageSize() {
+        return pageSize;
+    }
+
+    public void setPageSize(Integer pageSize) {
+        this.pageSize = pageSize;
+    }
+
+    public Integer getPageNo() {
+        return pageNo;
+    }
+
+    public void setPageNo(Integer pageNo) {
+        this.pageNo = pageNo;
+    }
+
+    public String getTeacherName() {
+        return teacherName;
+    }
+
+    public void setTeacherName(String teacherName) {
+        this.teacherName = teacherName;
+    }
+}

+ 21 - 0
src/main/java/com/ssj/api/domain/vo/homework/HomeworkTeacher.java

@@ -0,0 +1,21 @@
+package com.ssj.api.domain.vo.homework;
+
+import com.ssj.bean.common.framework.core.domain.BaseRequest;
+
+/**
+ * @author sh
+ * @className homeworkReq
+ * @description req
+ * @date 2021/2/18
+ */
+public class HomeworkTeacher extends BaseRequest {
+    private String teacherId;
+
+    public String getTeacherId() {
+        return teacherId;
+    }
+
+    public void setTeacherId(String teacherId) {
+        this.teacherId = teacherId;
+    }
+}

+ 30 - 0
src/main/java/com/ssj/api/domain/vo/teacher/HomeworkAllotReq.java

@@ -0,0 +1,30 @@
+package com.ssj.api.domain.vo.teacher;
+
+import com.ssj.bean.common.framework.core.domain.BaseRequest;
+
+/**
+ * @author sh
+ * @className teacherReq
+ * @description req
+ * @date 2021/2/18
+ */
+public class HomeworkAllotReq extends BaseRequest {
+    private String homeworkId;
+    private String teacherId;
+
+    public String getHomeworkId() {
+        return homeworkId;
+    }
+
+    public void setHomeworkId(String homeworkId) {
+        this.homeworkId = homeworkId;
+    }
+
+    public String getTeacherId() {
+        return teacherId;
+    }
+
+    public void setTeacherId(String teacherId) {
+        this.teacherId = teacherId;
+    }
+}

+ 10 - 0
src/main/java/com/ssj/dao/sys/homework/dao/HomeworkPictureDao.java

@@ -587,4 +587,14 @@ public interface HomeworkPictureDao extends JpaRepository<HomeworkPicture, Strin
             "  and t1.subject in ?3\n" +
             "  and t2.lib_id=?3")
     List<HomeworkPicture> findUncorrectedLibHomeworkList(String teacherId, String beginTime, List<String> subjects,String libId);
+
+    /**
+     * 查询未分配的作业
+     * @return
+     */
+    @Query(nativeQuery = true, value = "select count(distinct t.homework_id) from scon_homework_picture t join tb_lib_vip_service t11 on t.vip_id = t11.vip_id and t11.correct_type =100 where teacher_id is null  ")
+    long findNotAllotHomework();
+
+    @Query(nativeQuery = true, value = "SELECT count(1) from scon_homework_picture_correct t where homework_id=? and type=8 and start_time is not null ")
+    int findHomeworkIsCorrect(String homeworkId);
 }

+ 14 - 0
src/main/java/com/ssj/dao/sys/homework/dao/HomeworkQueryDao.java

@@ -78,4 +78,18 @@ public interface HomeworkQueryDao {
      * 查询指定学生当天存在纸面作业且未上传图片的计时记录的id
      */
     List<String> findIdPictureNotUpload(String vipId);
+
+    /**
+     * 查询未分配作业学生列表
+     * @return
+     */
+    List<Map<String, Object>> waitCorrectList();
+
+    /**
+     * 查询可分配老师列表
+     * @param params
+     * @param initPage
+     * @return
+     */
+    Page<Map<String, Object>> teacherList(Map<String, Object> params, Pageable initPage);
 }

+ 41 - 4
src/main/java/com/ssj/dao/sys/homework/dao/impl/HomeworkQueryDaoImpl.java

@@ -2,6 +2,7 @@ package com.ssj.dao.sys.homework.dao.impl;
 
 import com.ssj.dao.sys.homework.dao.HomeworkQueryDao;
 import com.ssj.framework.core.persistence.PagingHibernateJdbcDao;
+import com.ssj.framework.core.util.StringUtil;
 import com.ssj.service.conch.conch.vo.HomeworkVO;
 import com.ssj.service.conch.student.dto.AppWrongTopicBookDto;
 import com.ssj.service.conch.student.dto.WrongTopicBookDto;
@@ -13,10 +14,7 @@ import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Repository;
 
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @author chchen
@@ -266,6 +264,45 @@ public class HomeworkQueryDaoImpl implements HomeworkQueryDao {
     }
 
     @Override
+    public List<Map<String, Object>> waitCorrectList() {
+        List<Object> paramList = new ArrayList<>();
+        StringBuilder sql = new StringBuilder();
+        sql.append("SELECT t.child_name as studentName,t12.homework_id as homeworkId,\n ");
+        sql.append("SEC_TO_TIME(timestampdiff(SECOND,min(t12.create_time),NOW())) as waitTime,t12.`subject`,t13.grade  \n ");
+        sql.append(" from tb_lib_vip t \n ");
+        sql.append("join tb_lib_vip_service t11 on t.id = t11.vip_id  and t11.correct_type=100\n ");
+        sql.append("join scon_homework_picture t12 on t.id = t12.vip_id\n ");
+        sql.append("join scon_homework t13 on t12.homework_id = t13.id\n ");
+        sql.append("where t12.teacher_id is null \n ");
+        sql.append("GROUP BY t12.homework_id  \n ");
+        return dao.findMap(sql.toString(), paramList.toArray());
+    }
+
+    @Override
+    public Page<Map<String, Object>> teacherList(Map<String, Object> params, Pageable initPage) {
+        List<Object> paramList = new ArrayList<>();
+        StringBuilder sql = new StringBuilder();
+        sql.append("SELECT t.name as teacherName,t.user_id as teacherId,t.is_online as state,  \n ");
+        sql.append("(select count(1) from scon_homework_picture a where a.teacher_id = t.user_id and a.is_feedback = 0) as waitNums  \n ");
+        sql.append("from tb_lib_manager t  \n ");
+        sql.append("where t.type=30 \n ");
+        if(Objects.nonNull(params.get("subject")) && StringUtil.isEmpty(params.get("subject").toString())){
+            sql.append(" and t.course_name like concat('%',?,'%')");
+            paramList.add(params.get("subject"));
+        }
+        if(Objects.nonNull(params.get("teacherId")) && StringUtil.isEmpty(params.get("teacherId").toString())){
+            sql.append(" and t.user_id <> ?");
+            paramList.add(params.get("teacherId"));
+        }
+        if(Objects.nonNull(params.get("teacherName")) && StringUtil.isEmpty(params.get("teacherName").toString())){
+            sql.append(" and t.name like concat('%',?,'%')");
+            paramList.add(params.get("teacherName"));
+        }
+        sql.append("order by t.is_online desc  \n ");
+        return dao.findPage(sql.toString(), paramList.toArray(),initPage);
+    }
+
+    @Override
     public Page<Map<String, Object>> findHomeworkByPage(Map<String, Object> searchParam, Pageable pageable) {
         String childName = searchParam.get("LIKE_childName").toString();
         String beginTime = searchParam.get("beginTimeStr").toString();

+ 10 - 0
src/main/java/com/ssj/framework/core/util/Constant.java

@@ -89,6 +89,16 @@ public class Constant {
     public static final int ALL_TEACHER_TYPE = 30;
 
     /**
+     * 40 批注平台管理员
+     */
+    public static final int MANAGER_TEACHER_TYPE = 40;
+
+    /**
+     * 50 批注平台质检员
+     */
+    public static final int CHECK_TEACHER_TYPE = 50;
+
+    /**
      * 作业批改
      */
     public static final int TEACHER_TASK_HOMEWORK = 1;

+ 34 - 3
src/main/java/com/ssj/service/sys/homework/service/HomeworkPictureService.java

@@ -1,10 +1,14 @@
 package com.ssj.service.sys.homework.service;
 
 import com.ssj.bean.sys.homework.domain.HomeworkPicture;
+
 import com.ssj.framework.core.common.service.BaseService;
 import com.ssj.service.kmt.correctsys.dto.HomeworkPictureDto;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author sh
@@ -27,14 +31,41 @@ public interface HomeworkPictureService extends BaseService<HomeworkPicture, Str
     List<HomeworkPicture> findAllByHomeworkId(String id);
 
     long countByTeacherIdAndIsFeedback(String userId, int i);
-    
+
+    /**
+     * 查询未分配的作业数
+     * @return
+     */
+    long findNotAllotHomework();
+
+    /**
+     * 查询未分配作业学生列表
+     * @return
+     */
+    List<Map<String, Object>> waitCorrectList();
+
+    /**
+     * 查询可分配老师列表
+     * @param params
+     * @param initPage
+     * @return
+     */
+    Page<Map<String, Object>> teacherList(Map<String, Object> params, Pageable initPage);
+
+    /**
+     * 查询作业正在批改的数量
+     * @param homeworkId
+     * @return
+     */
+    int findHomeworkIsCorrect(String homeworkId);
+
     /**
      * 匹配知识点老师作业图片列表
      * @param homeworkId
      * @return
      */
     List<HomeworkPictureDto> findKnowCheckHomeworkPictureByHomeworkId (String homeworkId);
-    
+
     /**
      * 批改老师作业图片列表
      * @param homeworkId
@@ -42,5 +73,5 @@ public interface HomeworkPictureService extends BaseService<HomeworkPicture, Str
      */
     List<HomeworkPictureDto> findCheckHomeworkPictureByHomeworkId (String homeworkId);
 
-    
+
 }

+ 28 - 1
src/main/java/com/ssj/service/sys/homework/service/impl/HomeworkPictureServiceImpl.java

@@ -5,6 +5,7 @@ import com.ssj.bean.sys.homework.domain.HomeworkPictureCorrect;
 import com.ssj.bean.sys.imlibuser.TbClassTeacher;
 import com.ssj.bean.weixin.libmy.domain.TbLibManager;
 import com.ssj.dao.sys.homework.dao.HomeworkPictureDao;
+import com.ssj.dao.sys.homework.dao.HomeworkQueryDao;
 import com.ssj.dao.sys.homework.dao.HomeworkPictureQueryDao;
 import com.ssj.framework.core.common.service.BaseServiceImpl;
 import com.ssj.framework.core.util.StringUtil;
@@ -15,6 +16,8 @@ import com.ssj.service.sys.homework.service.HomeworkPictureService;
 import com.ssj.service.sys.imlibuser.service.TbClassTeacherService;
 import com.ssj.service.weixin.library.service.IBookManagerService;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
 import org.springframework.data.repository.PagingAndSortingRepository;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -22,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
 import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author sh
@@ -43,10 +47,13 @@ public class HomeworkPictureServiceImpl extends BaseServiceImpl<HomeworkPicture,
 
     @Autowired
     private HomeworkPictureCorrectService homeworkPictureCorrectService;
-    
+
     @Autowired
     private HomeworkPictureQueryDao homeworkPictureQueryDao;
 
+    @Autowired
+    private HomeworkQueryDao queryDao;
+
     @Override
     public PagingAndSortingRepository<HomeworkPicture, String> getDao() {
         return homeworkPictureDao;
@@ -128,6 +135,26 @@ public class HomeworkPictureServiceImpl extends BaseServiceImpl<HomeworkPicture,
         return homeworkPictureDao.countByTeacherIdAndIsFeedback(userId,isFeedback);
     }
 
+    @Override
+    public long findNotAllotHomework() {
+        return homeworkPictureDao.findNotAllotHomework();
+    }
+
+    @Override
+    public List<Map<String, Object>> waitCorrectList() {
+        return queryDao.waitCorrectList();
+    }
+
+    @Override
+    public Page<Map<String, Object>> teacherList(Map<String, Object> params, Pageable initPage) {
+        return queryDao.teacherList(params,initPage);
+    }
+
+    @Override
+    public int findHomeworkIsCorrect(String homeworkId) {
+        return homeworkPictureDao.findHomeworkIsCorrect(homeworkId);
+    }
+
     private String getBeginTime() {
         Date now = new Date();
         String nowString = DateUtil.format_yyyyMMddHHmmss(now);

+ 10 - 0
src/main/java/com/ssj/service/weixin/library/service/impl/BookManagerServiceImpl.java

@@ -1027,6 +1027,16 @@ public class BookManagerServiceImpl extends BaseServiceImpl<TbLibManager, String
     public Page<Map<String, Object>> findTeacherManagerList(Map<String, Object> params, Pageable initPage) {
         return libJoinQueryDao.findTeacherManagerList(params,initPage);
     }
+
+    @Override
+    public Map<String, Object> findHeadInfo() {
+        return libJoinQueryDao.findHeadInfo();
+    }
+
+    @Override
+    public Page<Map<String, Object>> findTeacherHomeworkList(Map<String, Object> params, Pageable initPage) {
+        return libJoinQueryDao.findTeacherHomeworkList(params,initPage);
+    }
 }