package com.boying.controller; import com.boying.common.BaseController; import com.boying.entity.ChangDept; import com.boying.entity.Dept; import com.boying.entity.StudyDir; import com.boying.entity.User; import com.boying.service.ChangDeptService; import com.boying.service.DeptService; import com.boying.service.StudyDirService; import com.boying.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.HashMap; import java.util.List; import java.util.Map; @RestController @RequestMapping("dept") public class DeptController extends BaseController { @Autowired private DeptService deptService; @Autowired private UserService userService; @Autowired private ChangDeptService changDeptService; @PostMapping("findPage") public Object findPage() { return success("",deptService.findAll("parentId", null)); } @PostMapping("findByParentId") public Object findByParentId(Long id) { return success("",deptService.findAll("parentId", id)); } @PostMapping("save") public Object save(Dept dept) { if(dept.getParentId()!=null&&dept.getId()==null){ Dept byId = (Dept) deptService.findById(dept.getParentId()); byId.setHasChildren(true); deptService.save(byId); } deptService.save(dept); return success("保存成功"); } @PostMapping("delete") public Object delete(Long id) { Dept byId = (Dept) deptService.findById(id); deptService.delete(id); List parentId = deptService.findAll("parentId", byId.getParentId()); if(parentId.size()==0){ Dept dept = (Dept) deptService.findById(byId.getParentId()); dept.setHasChildren(false); deptService.save(dept); } return success("删除成功"); } @PostMapping("setAdmin") public Object setAdmin(Long userId,String userName,Long deptId) { Dept dept = (Dept) deptService.findById(deptId); dept.setUserId(userId); dept.setUserName(userName); deptService.save(dept); return success("设置管理员成功"); } @PostMapping("setHuiZhang") public Object setHuiZhang(Long userId,String userName,Long deptId) { Dept dept = (Dept) deptService.findById(deptId); dept.setHuiZhangId(userId); dept.setHuiZhangName(userName); deptService.save(dept); return success("设置会长成功"); } @PostMapping("findAll") public Object findAll(String name) { return success("",deptService.findAllByLike(1,"name", name)); } @PostMapping("findByInfo") public Object findAll(Long deptId,Long userId) { Dept dept = (Dept) deptService.findById(deptId); Map map = new HashMap(); if(dept.getHuiZhangId()!=null){ User user = (User) userService.findById(dept.getHuiZhangId()); map.put("adminImg",user); } Pageable pageable = PageRequest.of(0,4, Sort.Direction.DESC,"id"); Page pages = userService.findPage(pageable,"deptId",deptId); List list = pages.getContent(); map.put("members",list); List list2 = changDeptService.findAll("shenHeId", userId,"status",0,"status2",1); map.put("changDepts",list2);//新部门的审核列表 List list4 = changDeptService.findAll("shenHeId2", userId,"status2",0); map.put("changDepts3",list4);//旧部门的审核列表 List list3 = changDeptService.findAll("userId", userId,"status",1); map.put("changDepts2",list3); return success("",map); } }