Bläddra i källkod

增加平台批改老师

shenhao 4 år sedan
förälder
incheckning
9871f1053f

+ 127 - 0
src/main/java/com/ssj/api/controller/ApiManagerTeacherController.java

@@ -0,0 +1,127 @@
+package com.ssj.api.controller;
+
+import com.alibaba.fastjson.JSONObject;
+import com.ssj.api.domain.vo.merchant.ServiceVo;
+import com.ssj.api.domain.vo.teacher.teacherAddReq;
+import com.ssj.api.domain.vo.teacher.teacherDelReq;
+import com.ssj.api.domain.vo.teacher.teacherReq;
+import com.ssj.api.security.annotation.IgnoreSecurity;
+import com.ssj.bean.sys.fx.domain.Merchant;
+import com.ssj.bean.sys.imlibuser.TbClassTeacherTemp;
+import com.ssj.bean.weixin.libmy.domain.TbLibManager;
+import com.ssj.framework.core.common.controller.BaseController;
+import com.ssj.framework.core.util.ResponseConstant;
+import com.ssj.framework.core.util.ResponseEntity;
+import com.ssj.service.sys.fx.service.MerchantService;
+import com.ssj.service.sys.homework.service.HomeworkPictureService;
+import com.ssj.service.sys.imlibuser.service.TbClassTeacherTempService;
+import com.ssj.service.weixin.library.service.IBookManagerService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.web.bind.annotation.*;
+
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+import java.util.*;
+
+@Api(value = "平台批改老师相关", tags = "平台批改老师相关")
+@RestController
+@RequestMapping("/api/teacher")
+public class ApiManagerTeacherController extends BaseController {
+	
+	@Autowired
+	private IBookManagerService managerService;
+
+	@Autowired
+	private HomeworkPictureService pictureService;
+
+    @Autowired
+    private TbClassTeacherTempService tbLibImTeacherTempService;
+
+
+	@RequestMapping(value = "/list", method = RequestMethod.POST)
+    @ApiOperation(value = "获取平台批改老师列表接口",  notes = "获取平台批改老师列表接口")
+    public ResponseEntity list(@RequestParam(name = "accessToken") String accessToken,@RequestBody teacherReq req) {
+        ResponseEntity responseEntity = new ResponseEntity();
+        Map<String,Object> data=new HashMap<>(2);
+        Map<String,Object> params=new HashMap<>(2);
+        try {
+        	params.put("type",30);
+        	params.put("name",req.getName());
+        	params.put("mobile",req.getMobile());
+			Page<Map<String,Object>> list = managerService.findTeacherManagerList(params,initPage(req.getPageNo(),req.getPageSize()));
+        	data.put("list",list.getContent());
+        	data.put("totalNums",list.getTotalElements());
+        	responseEntity.success(data,"获取平台批改老师列表成功!");
+        } catch (Exception e) {
+            logger.error("获取平台批改老师列表接口", e);
+            responseEntity.failure(ResponseConstant.CODE_500, "系统繁忙,请稍后重试");
+        }
+        logger.info("第三方调用接口【/open/api/teacher/list】,返回结果:"+JSONObject.toJSONString(responseEntity));
+        return responseEntity;
+    }
+
+
+    @RequestMapping(value = "/delTeacher", method = RequestMethod.POST)
+    @ApiOperation(value = "注销平台批改老师接口",  notes = "注销平台批改老师接口")
+    public ResponseEntity delTeacher(@RequestParam(name = "accessToken") String accessToken,@RequestBody teacherDelReq req) {
+        ResponseEntity responseEntity = new ResponseEntity();
+        try {
+            //查询老师是否有作业未批改
+            String userId = tokenManager.getUserId(accessToken);
+
+            TbLibManager manager = managerService.getById(req.getId());
+            if(Objects.isNull(manager)){
+                responseEntity.failure(ResponseConstant.CODE_000, "此老师数据不存在,请检查传参!");
+                return responseEntity;
+            }
+
+            long count = pictureService.countByTeacherIdAndIsFeedback(manager.getUserId(),0);
+            if(count >0){
+                responseEntity.failure(ResponseConstant.CODE_000, "此老师有作业未批改完不能注销!");
+                return responseEntity;
+            }
+
+            manager.setState(2);
+            managerService.save(manager);
+            //登录状态失效
+            tokenManager.delToken(manager.getUserId());
+            responseEntity.success("注销成功!");
+        } catch (Exception e) {
+            logger.error("获取平台批改老师列表接口", e);
+            responseEntity.failure(ResponseConstant.CODE_500, "系统繁忙,请稍后重试");
+        }
+        logger.info("第三方调用接口【/open/api/teacher/delTeacher】,返回结果:"+JSONObject.toJSONString(responseEntity));
+        return responseEntity;
+    }
+
+    @RequestMapping(value = "/addTeacher", method = RequestMethod.POST)
+    @ApiOperation(value = "添加平台批改老师接口",  notes = "添加平台批改老师接口")
+    public ResponseEntity addTeacher(@RequestParam(name = "accessToken") String accessToken,@RequestBody teacherAddReq req) {
+        ResponseEntity responseEntity = new ResponseEntity();
+        try {
+            TbClassTeacherTemp tbLibImTeacherTemp=new TbClassTeacherTemp();
+            tbLibImTeacherTemp.setLeagueName("平台批改老师");
+            tbLibImTeacherTemp.setTeacherName(req.getName());
+            tbLibImTeacherTemp.setTeacherPhone(req.getMobile());
+            tbLibImTeacherTemp.setSubject(req.getCourseName());
+            tbLibImTeacherTemp.setIsCorrect(1);
+            List<TbClassTeacherTemp> list = new ArrayList<>();
+            list.add(tbLibImTeacherTemp);
+            int num = tbLibImTeacherTempService.insertBatchTbAllImTeacher(list);
+            if(num<1){
+                responseEntity.failure(ResponseConstant.CODE_000, list.get(0).getErrorReason());
+                return responseEntity;
+            }
+            responseEntity.success("添加成功");
+        } catch (Exception e) {
+            logger.error("添加平台批改老师接口", e);
+            responseEntity.failure(ResponseConstant.CODE_500, "系统繁忙,请稍后重试");
+        }
+        logger.info("第三方调用接口【/open/api/teacher/addTeacher】,返回结果:"+JSONObject.toJSONString(responseEntity));
+        return responseEntity;
+    }
+
+}

+ 39 - 0
src/main/java/com/ssj/api/domain/vo/teacher/teacherAddReq.java

@@ -0,0 +1,39 @@
+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 teacherAddReq extends BaseRequest {
+    private  String name;
+    private String mobile;
+    private String courseName;
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getMobile() {
+        return mobile;
+    }
+
+    public void setMobile(String mobile) {
+        this.mobile = mobile;
+    }
+
+    public String getCourseName() {
+        return courseName;
+    }
+
+    public void setCourseName(String courseName) {
+        this.courseName = courseName;
+    }
+}

+ 21 - 0
src/main/java/com/ssj/api/domain/vo/teacher/teacherDelReq.java

@@ -0,0 +1,21 @@
+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 teacherDelReq extends BaseRequest {
+    private  String id;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+}

+ 48 - 0
src/main/java/com/ssj/api/domain/vo/teacher/teacherReq.java

@@ -0,0 +1,48 @@
+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 teacherReq extends BaseRequest {
+    private  Integer pageSize;
+    private  Integer pageNo;
+    private String name;
+    private String mobile;
+
+    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 getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getMobile() {
+        return mobile;
+    }
+
+    public void setMobile(String mobile) {
+        this.mobile = mobile;
+    }
+}

+ 2 - 0
src/main/java/com/ssj/dao/weixin/library/dao/ILibJoinQueryDao.java

@@ -100,4 +100,6 @@ public interface ILibJoinQueryDao {
 	Map<String, Object> getIsbnBorrowInfo(String isbn13);
 	List<TbLibJoin> findByLikeNameAndCity(String name, String province, String city, String area,Integer pageNo,Integer pageSize);
 	Long countByLikeNameAndCity(String name, String province, String city, String area);
+
+	Page<Map<String, Object>> findTeacherManagerList(Map<String, Object> params, Pageable initPage);
 }

+ 39 - 9
src/main/java/com/ssj/dao/weixin/library/dao/impl/LibJoinQueryDaoImpl.java

@@ -7,16 +7,15 @@ import com.ssj.bean.weixin.libmy.domain.TbLibSubscribe;
 import com.ssj.dao.weixin.library.dao.ILibJoinQueryDao;
 import com.ssj.framework.core.persistence.PagingHibernateJdbcDao;
 import com.ssj.framework.core.util.StringUtil;
+import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Repository;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+
 @Repository
 public class LibJoinQueryDaoImpl implements ILibJoinQueryDao{
 
@@ -30,13 +29,23 @@ public class LibJoinQueryDaoImpl implements ILibJoinQueryDao{
 	        List<Object> queryParams = new ArrayList<Object>();
 	        selSQL.append(" SELECT  t.* ,ifnull(t.name,u.wx_name) as wx_name,ifnull(t_photo,u.photo) as photo  from   tb_lib_manager   t LEFT JOIN  tb_user  u ");
 	        selSQL.append("  on t.user_id  = u.id  ");
-	        selSQL.append(" where  t.lib_id = ? and t.state = 1 ");
+	        selSQL.append(" where   t.state = 1 ");
+
+	        if(Objects.nonNull(searchParams.get("libId")) && StringUtils.isNotBlank(MapUtils.getString(searchParams,"libId"))){
+				selSQL.append(" and  t.lib_id = ?  ");
+				queryParams.add(searchParams.get("libId"));
+			}
+	        if(Objects.nonNull(searchParams.get("type")) && StringUtils.isNotBlank(MapUtils.getString(searchParams,"type"))){
+				selSQL.append(" and  t.type = ?  ");
+				queryParams.add(searchParams.get("type"));
+			}
 
 	        if (searchParams.get("wx_name") != null && !searchParams.get("wx_name").equals("")) {
-	            selSQL.append(" and  u.wx_name LIKE  CONCAT(CONCAT('%',?,'%')) ");
+	            selSQL.append(" and  (u.wx_name LIKE  CONCAT('%',?,'%') or  t.name like CONCAT('%',?,'%') )");
+	            queryParams.add(searchParams.get("wx_name"));
 	            queryParams.add(searchParams.get("wx_name"));
 	        }
-	        queryParams.add(searchParams.get("libId"));
+
 			selSQL.append(" order by t.create_time desc ");
 	        return dao.findPage(selSQL.toString(), queryParams.toArray(), pageable);
 	}
@@ -1227,6 +1236,27 @@ public class LibJoinQueryDaoImpl implements ILibJoinQueryDao{
 		}
         return dao.count(selSQL.toString(), queryParams.toArray());
 	}
-	
-	
+
+	@Override
+	public Page<Map<String, Object>> findTeacherManagerList(Map<String, Object> params, Pageable initPage) {
+		StringBuilder selSQL = new StringBuilder();
+		List<Object> queryParams = new ArrayList<Object>();
+		selSQL.append("select id,name,telephone,course_name as courseName from tb_lib_manager where state = 1 ");
+		if(Objects.nonNull(params.get("type")) && StringUtils.isNotEmpty(MapUtils.getString(params,"type"))){
+			selSQL.append(" and type = ?");
+			queryParams.add(params.get("type"));
+		}
+		if(Objects.nonNull(params.get("name")) && StringUtils.isNotEmpty(MapUtils.getString(params,"name"))){
+			selSQL.append(" and name like concat('%',?,'%') ");
+			queryParams.add(params.get("name"));
+		}
+		if(Objects.nonNull(params.get("mobile")) && StringUtils.isNotEmpty(MapUtils.getString(params,"mobile"))){
+			selSQL.append(" and telephone like concat('%',?,'%') ");
+			queryParams.add(params.get("mobile"));
+		}
+		selSQL.append(" order by create_time desc ");
+		return  dao.findPage(selSQL.toString(),queryParams.toArray(),initPage);
+	}
+
+
 }

+ 6 - 1
src/main/java/com/ssj/framework/core/util/Constant.java

@@ -82,7 +82,12 @@ public class Constant {
      * tb_lib_manager 机构作业自批改老师
      */
     public static final int LIB_TEACHER_TYPE = 15;
-    
+
+    /**
+     * 20210207提出的平台老师类型
+     */
+    public static final int ALL_TEACHER_TYPE = 30;
+
     /**
      * 作业批改
      */

+ 2 - 0
src/main/java/com/ssj/service/sys/homework/service/HomeworkPictureService.java

@@ -24,4 +24,6 @@ public interface HomeworkPictureService extends BaseService<HomeworkPicture, Str
     List<HomeworkPicture> findNoFeedbackByHomeworkId(String id);
 
     List<HomeworkPicture> findAllByHomeworkId(String id);
+
+    long countByTeacherIdAndIsFeedback(String userId, int i);
 }

+ 5 - 0
src/main/java/com/ssj/service/sys/homework/service/impl/HomeworkPictureServiceImpl.java

@@ -118,6 +118,11 @@ public class HomeworkPictureServiceImpl extends BaseServiceImpl<HomeworkPicture,
         return homeworkPictureDao.queryHomeworkPictureByHomeworkId(homeworkId);
     }
 
+    @Override
+    public long countByTeacherIdAndIsFeedback(String userId, int isFeedback) {
+        return homeworkPictureDao.countByTeacherIdAndIsFeedback(userId,isFeedback);
+    }
+
     private String getBeginTime() {
         Date now = new Date();
         String nowString = DateUtil.format_yyyyMMddHHmmss(now);

+ 4 - 4
src/main/java/com/ssj/service/sys/imlibuser/service/TbClassTeacherTempService.java

@@ -21,7 +21,7 @@ public interface TbClassTeacherTempService extends BaseService<TbClassTeacherTem
 	
 	 /**
 	  * 添加老师
-	  * @param TbClassTeacher
+	  * @param
 	  * @return
 	  */
 	 int insertTbLibImTeacher(TbLibJoin libJoin,TbClassTeacherTemp tbLibImTeacherTemp);
@@ -31,7 +31,7 @@ public interface TbClassTeacherTempService extends BaseService<TbClassTeacherTem
 	 
 	 /**
 	  * 批量老师
-	  * @param TbClassTeacher
+	  * @param
 	  * @return
 	  */
 	 int insertBatchTbLibImTeacher(List<TbClassTeacherTemp> tbLibImTeacherTemps);
@@ -43,7 +43,7 @@ public interface TbClassTeacherTempService extends BaseService<TbClassTeacherTem
 	 int insertBatchTbLibImHeadmaster(List<TbClassTeacherTemp> tbLibImTeacherTemps);
 	 
 	 TbClassTeacherTemp getTbLibImTeacherTempByLibId(String libId,String teacherId);
-	 
-	 
 
+
+    Integer insertBatchTbAllImTeacher(List<TbClassTeacherTemp> tbLibImTeacherTemps);
 }

+ 101 - 5
src/main/java/com/ssj/service/sys/imlibuser/service/impl/TbClassTeacherTempServiceImpl.java

@@ -29,10 +29,7 @@ import org.springframework.data.repository.PagingAndSortingRepository;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 @Service
 @Transactional
@@ -138,7 +135,16 @@ public class TbClassTeacherTempServiceImpl extends BaseServiceImpl<TbClassTeache
 					user.setPassword(PasswordUtil.initPassword(user.getPassword(), user.getPwdSalt()));
 					user=userService.save(user);
 				}
-				
+
+				//导入老师不能是30平台批改,40平台批改管理员,50平台批改质检员
+				List<TbLibManager> platList=managerService.findByUserIdAndTypeInAndState(user.getId(),new int[]{30,40,50},1);
+				if(Objects.nonNull(platList) && !platList.isEmpty()){
+					tbLibImTeacherTemp.setTeacherId(user.getId());
+					tbLibImTeacherTemp.setStatus(0);
+					tbLibImTeacherTemp.setErrorReason("与平台批改老师信息冲突");
+					this.save(tbLibImTeacherTemp);
+					return 0;
+				}
 				//如果之前有这个老师的,就统一使用用旧老师的名称,如果没有就使用新的名称。
 				TbLibManager tbLibManager=managerService.findAllByUserIdAndTypeAndState(user.getId(),Constant.TEACHER_TYPE,1);
 				if(tbLibManager==null){//有老师user,生成type=2的老师
@@ -301,6 +307,96 @@ public class TbClassTeacherTempServiceImpl extends BaseServiceImpl<TbClassTeache
 		return dao.getTbLibImTeacherTempByLibId(libId, teacherId);
 	}
 
+	@Override
+	public Integer insertBatchTbAllImTeacher(List<TbClassTeacherTemp> tbLibImTeacherTemps) {
+		int successNum=0;
+		for (TbClassTeacherTemp tbLibImTeacherTemp : tbLibImTeacherTemps) {
+			try {
+				successNum=successNum+this.insertTbAllImTeacher(tbLibImTeacherTemp);
+			} catch (Exception e) {
+				e.printStackTrace();
+			}
+		}
+		return successNum;
+	}
+
+	public int  insertTbAllImTeacher(TbClassTeacherTemp tbLibImTeacherTemp){
+			tbLibImTeacherTemp.setCreateTime(new Date());
+			tbLibImTeacherTemp.setStatus(1);
+
+			try {
+				if(StringUtils.isNotEmpty(tbLibImTeacherTemp.getSubject())) {
+					String subject=tbLibImTeacherTemp.getSubject();
+					if(StringUtils.isNotEmpty(subject.replaceFirst("语文", "").replaceFirst("数学", "").replaceFirst("英语", "").replaceAll(",", ""))) {
+						tbLibImTeacherTemp.setStatus(0);
+						tbLibImTeacherTemp.setErrorReason("填写科目不正确,科目只能包含语文,数学,英语与英文逗号分隔");
+						this.save(tbLibImTeacherTemp);
+						return 0;
+					}
+					int contain=containSubject(subject);
+					if(contain<=0) {
+						tbLibImTeacherTemp.setStatus(0);
+						tbLibImTeacherTemp.setErrorReason("填写科目不正确,科目只能包含语文,数学,英语");
+						this.save(tbLibImTeacherTemp);
+						return 0;
+					}else {
+						if(contain>=2 && !subject.contains(",")) {
+							tbLibImTeacherTemp.setStatus(0);
+							tbLibImTeacherTemp.setErrorReason("多个科目间隔使用英语逗号分隔','");
+							this.save(tbLibImTeacherTemp);
+							return 0;
+						}
+					}
+				}
+
+				User user=userService.findByMobile(tbLibImTeacherTemp.getTeacherPhone());
+				//无老师user,生成老师user
+				if(user==null){
+					user=new User();
+					user.setId(IdWorker.generateId());
+					user.setUserName(tbLibImTeacherTemp.getTeacherName());
+					user.setMobile(tbLibImTeacherTemp.getTeacherPhone());
+					user.setCreateTime(new Date());
+					user.setPassword("123456");
+					user.setPwdSalt(PasswordUtil.generateSalt());
+					user.setPassword(PasswordUtil.initPassword(user.getPassword(), user.getPwdSalt()));
+					user=userService.save(user);
+				}
+
+				//如果之前有这个老师的,就统一使用用旧老师的名称,如果没有就使用新的名称。
+				TbLibManager tbLibManager=managerService.findByUserId(user.getId());
+				if(tbLibManager==null){
+					tbLibManager=new TbLibManager();
+					tbLibManager.settPhoto(user.getPhoto());
+					tbLibManager.setUserId(user.getId());
+					tbLibManager.setType(Constant.ALL_TEACHER_TYPE);
+					tbLibManager.setCreateTime(new Date());
+					tbLibManager.setName(tbLibImTeacherTemp.getTeacherName());
+					tbLibManager.setTelephone(tbLibImTeacherTemp.getTeacherPhone());
+					tbLibManager.setCourseName(tbLibImTeacherTemp.getSubject());
+					if(StringUtils.isEmpty(tbLibImTeacherTemp.getSubject())) {
+						tbLibManager.setCourseName("语文,数学,英语");
+					}
+					tbLibManager.setGrade(tbLibImTeacherTemp.getGrade());
+					tbLibManager.setSchool(tbLibImTeacherTemp.getSchool());
+					tbLibManager.setOrgName(tbLibImTeacherTemp.getSchool());
+					tbLibManager.setLibId(tbLibImTeacherTemp.getLibId());
+					tbLibManager.setIsCorrect(1);
+					tbLibManager.setState(1);
+					managerService.save(tbLibManager);
+				}else {
+					tbLibImTeacherTemp.setTeacherId(user.getId());
+					tbLibImTeacherTemp.setStatus(0);
+					tbLibImTeacherTemp.setErrorReason("与平台已有老师信息冲突");
+					this.save(tbLibImTeacherTemp);
+					return 0;
+				}
+
+			} catch (Exception e) {
+				e.printStackTrace();
+			}
+			return 1;
+	}
 
 	@Override
 	public int insertBatchTbLibImPrincipal(List<TbClassTeacherTemp> tbLibImTeacherTemps) {

+ 8 - 0
src/main/java/com/ssj/service/weixin/library/service/IBookManagerService.java

@@ -530,4 +530,12 @@ public interface IBookManagerService extends BaseService<TbLibManager, String> {
 	 * @return
 	 */
     Response managerAddSave(String libId, String name, String mobile);
+
+	/**
+	 * 查询平台批改老师
+	 * @param params
+	 * @param initPage
+	 * @return
+	 */
+    Page<Map<String, Object>> findTeacherManagerList(Map<String, Object> params, Pageable initPage);
 }

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

@@ -1022,6 +1022,11 @@ public class BookManagerServiceImpl extends BaseServiceImpl<TbLibManager, String
         auditService.save(audit);
         return response.success();
     }
+
+    @Override
+    public Page<Map<String, Object>> findTeacherManagerList(Map<String, Object> params, Pageable initPage) {
+        return libJoinQueryDao.findTeacherManagerList(params,initPage);
+    }
 }
 
 

+ 86 - 8
src/main/java/com/ssj/sys/controller/ImLibUserController.java

@@ -121,6 +121,9 @@ public class ImLibUserController extends BaseController {
 
 	@Autowired
 	private RequestMethodLogService requestMethodLogService;
+
+	@Autowired
+	private ILibJoinService libJoinService;
 	
 	/**
 	 * ----------------机构相关功能-----------------------
@@ -863,7 +866,60 @@ public class ImLibUserController extends BaseController {
 			response.failure("导入异常:"+e.getMessage());
 		}
 		return response;
-	}	
+	}
+	//平台批改老师导入
+	@RequestMapping(value="/teacher/allImport")
+	@ResponseBody
+	public Response allImport(Model model,@RequestParam("file") MultipartFile file) {
+		Response response = new  Response();
+		try {
+			List<Map<String,String>> datas=analysisExFile(file);
+			if(datas!=null && datas.size()>0){
+				List<TbClassTeacherTemp> tbLibImTeacherTemps=new ArrayList<TbClassTeacherTemp>();
+				TbClassTeacherTemp tbLibImTeacherTemp=null;
+				boolean iserror=false;
+
+
+				for (Map<String,String> map : datas) {
+					tbLibImTeacherTemp=new TbClassTeacherTemp();
+					tbLibImTeacherTemp.setLeagueName("平台批改老师");
+					tbLibImTeacherTemp.setTeacherName(map.get("data_0"));
+					tbLibImTeacherTemp.setTeacherPhone(map.get("data_1"));
+					tbLibImTeacherTemp.setGrade(map.get("data_2"));
+					tbLibImTeacherTemp.setClassName(map.get("data_3"));
+					tbLibImTeacherTemp.setSubject(map.get("data_4"));
+					tbLibImTeacherTemp.setIsCorrect(1);
+
+					tbLibImTeacherTemps.add(tbLibImTeacherTemp);
+
+					if(StringUtils.isEmpty(tbLibImTeacherTemp.getTeacherName())){
+						response.failure("老师姓名不能为空");
+						iserror=true;
+						break;
+					}
+					if(StringUtils.isEmpty(tbLibImTeacherTemp.getTeacherPhone()) || tbLibImTeacherTemp.getTeacherPhone().length()!=11){
+						response.failure("老师电话号码不正确");
+						iserror=true;
+						break;
+					}
+
+				}
+				if(!iserror){
+					Integer successNum=tbLibImTeacherTempService.insertBatchTbAllImTeacher(tbLibImTeacherTemps);
+					if(tbLibImTeacherTemps.size()!=successNum) {
+						response.failure("存在导入失败数据,请查看失败列表!");
+					}else{
+						response.success("成功");
+					}
+				}
+			}
+
+		} catch (Exception e) {
+			logger.error("异常", e);
+			response.failure("导入异常:"+e.getMessage());
+		}
+		return response;
+	}
 	
 	
 	
@@ -1385,14 +1441,36 @@ public class ImLibUserController extends BaseController {
 		}
 		response.success("查询成功");
 		return response;
-	}	
-	
+	}
+
+
+	/**
+	 * 平台老师(新)相关功能
+ 	 */
+	@RequestMapping("/correctTeacherList")
+	public String correctTeacherList(Model model,@RequestParam(required = false, defaultValue = "15") int pageSize,
+									 @RequestParam(required = false, defaultValue = "1") int pageNo){
+
+		Map<String, Object> params = new HashMap<String, Object>();
+
+		params.put("wx_name",request.getParameter("wx_name") == null ? "" : request.getParameter("wx_name"));
+		params.put("type",Constant.ALL_TEACHER_TYPE);
+		SplitPage sp = new SplitPage();
+		sp.setAction(request.getRequestURI());
+		sp.setPageNo(pageNo);
+		sp.setPageSize(pageSize);
+		sp.setParams(params);
+		Page<Map<String, Object>> page = libJoinService.findForPage(params, initPage(pageNo, pageSize));
+		sp.setRowCnt((int) page.getTotalElements());
+		model.addAttribute("list", page.getContent());
+		model.addAttribute("listNavigatHtml", sp.getSysPaginHtml());
+		model.addAttribute("page", sp);
+		model.addAttribute("search", params);
+		return "sys/imlibuser/teacherCorrectList";
+	}
+
+
 
-	
-	
-	
-	
-	
 	/**
 	 * ----------------解析文档相关功能-----------------------
 	 */

BIN
src/main/resources/static/sys/excel/teacher_all.xlsx


+ 120 - 0
src/main/resources/templates/sys/imlibuser/teacherCorrectList.html

@@ -0,0 +1,120 @@
+<html xmlns:th="http://www.thymeleaf.org">
+<head>
+<title>私塾家</title>
+<script th:include="sys/common/metaCSS" th:remove="tag"></script> 
+<script th:include="sys/common/metaJS" th:remove="tag"></script> 
+</head>
+<style>
+	.tablelink{margin-right:10px;}
+	.stylecss{
+	      color: red;
+	}
+	.stylecss2{
+		  color:blue;
+	}
+	.select_width{
+	     width: 80px;
+	}
+	.date_width{
+	     width: 100px;
+	}
+	.stylecss{
+	      color: red;
+	}
+</style>
+<body>
+<div class="place">
+	<span>位置:</span>
+	<ul class="placeul">
+		<li><a href="#">批改平台</a></li>
+		<li><a th:href="@{/sys/imlibuser/correctTeacherList.html}">平台批改老师</a></li>
+	</ul>
+</div>
+<div class="rightinfo">
+	<form id="seachform" th:action="@{/sys/imlibuser/correctTeacherList.html}" method="post">
+	<ul class="seachform">
+		<li>
+			<label>昵称</label>
+			<input name="wx_name" type="text" class="scinput" th:value="${search.get('wx_name')} == null  ? '': ${search.get('wx_name')}"/>
+		</li>
+		<li>
+			<label>&nbsp;</label>
+			<input type="button" class="scbtn" value="查询" />
+		</li>
+
+		<li>
+				<ul class="toolbar">
+					<a th:href="${sysUrl+'/sys/imlibuser/school/list'}">返回上一级</a>
+				</ul>
+		</li>
+	</ul>
+	</form>
+	<table class="tablelist">
+		<thead>
+		    <tr>
+		        <th style="width: 50px;">序号</th>
+		        <th>昵称</th>
+		        <th>类型</th>
+		        <th>头像</th>
+		        <th>科目</th>
+		        <th>年级</th>
+		        <th>添加时间</th>
+		        <th>操作</th>
+		    </tr>
+		</thead>
+		<tbody>
+			<tr th:each="item:${list}" >
+				<td th:text="${itemStat.count}" ></td>
+					<td th:title="${item.get('wx_name')}" th:text="${item.get('wx_name')} ? (${#strings.length(item.get('wx_name'))} &gt; 40 ? ${#strings.substring(item.get('wx_name'),0,40)} :${item.get('wx_name')} ) :'' ">
+					</td>
+					<td th:switch="${item.get('type')}" >
+				    <a href="javascript:;" th:case="30" >平台批改老师</a>
+					</td>
+					<td  class="imgtd">
+							<img  th:if="${item.get('photo')}!=null" th:src="${imgUrl}+''+${item.get('photo')}" style="width: 50px;height: 50px;" />
+					</td>
+					<td  th:text="${item.get('course_name')}" ></td>
+					<td  th:text="${item.get('grade')}" ></td>
+					<td  th:text="${#calendars.format(item.get('create_time'),'yyyy-MM-dd HH:mm:ss')}" ></td>
+					<td>
+						<a href="javascript:;" th:onclick="'deleteById(\''+${item.id}+'\')'"   class="tablelink" >删除</a>
+				    </td>
+				
+			</tr>
+		</tbody>
+	</table>
+	<!-- 分页 -->
+	<div class="pagin">
+    	<div class="message">共<i class="blue">[[${page.rowCnt}]]</i>条记录,当前显示第&nbsp;<i class="blue">[[${page.pageNo }]]&nbsp;</i>页</div>
+    	<div th:utext='${listNavigatHtml}' th:remove="tag" ></div>
+   	</div>
+</div>
+</body>
+<script type="text/javascript">
+function deleteById(id){
+	layer.confirm("确定删除该管理员?",
+			{icon: 4, btn: ['确定','取消']
+	}, function(){
+		$.ajax({
+			url: '[[${sysUrl}]]/sys/lib/libManagerDelete',
+			type: "post",
+			data:{
+				'id': id
+			},
+			dataType: "json",
+			success:function(data){
+					
+					if(data.meta.success){
+						layer.msg("删除成功",{icon:1});
+				    	setTimeout(function(){
+				    		location.reload();
+						},1000);
+					}else{
+						layer.msg(data.meta.message,{icon:11});
+					}
+			}
+		});
+	});
+}
+</script>
+</html>