package org.jeecg.modules.system.controller; import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.stream.Collectors; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.lang3.StringUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.util.oConvertUtils; import org.jeecg.modules.system.entity.SysDepartTeam; import org.jeecg.modules.system.entity.SysDepartTeamUser; import org.jeecg.modules.system.entity.SysUser; import org.jeecg.modules.system.service.ISysDepartTeamService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.extern.slf4j.Slf4j; import org.jeecg.modules.system.service.ISysDepartTeamUserService; import org.jeecgframework.poi.excel.ExcelImportUtil; import org.jeecgframework.poi.excel.def.NormalExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; import org.jeecgframework.poi.excel.entity.ImportParams; import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; import org.jeecg.common.system.base.controller.JeecgController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; import com.alibaba.fastjson.JSON; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.jeecg.common.aspect.annotation.AutoLog; /** * @Description: sys_depart_team * @Author: jeecg-boot * @Date: 2024-03-04 * @Version: V1.0 */ @Api(tags="sys_depart_team") @RestController @RequestMapping("/sys/sysDepartTeam") @Slf4j public class SysDepartTeamController extends JeecgController { @Autowired private ISysDepartTeamService sysDepartTeamService; @Autowired private ISysDepartTeamUserService sysDepartTeamUserService; /** * 分页列表查询 * * @param sysDepartTeam * @param pageNo * @param pageSize * @param req * @return */ @AutoLog(value = "sys_depart_team-分页列表查询") @ApiOperation(value="sys_depart_team-分页列表查询", notes="sys_depart_team-分页列表查询") @GetMapping(value = "/list") public Result queryPageList(SysDepartTeam sysDepartTeam, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(sysDepartTeam, req.getParameterMap()); Page page = new Page(pageNo, pageSize); IPage pageList = sysDepartTeamService.page(page, queryWrapper); return Result.OK(pageList); } @AutoLog(value = "sys_depart_team_user分页列表查询") @ApiOperation(value="sys_depart_team_user分页列表查询-分页列表查询", notes="sys_depart_team_user分页列表查询-分页列表查询") @GetMapping(value = "/teamUserList") public Result getUserListByDepartId(SysDepartTeamUser sysDepartTeamUser, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, HttpServletRequest req) { QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(sysDepartTeamUser, req.getParameterMap()); Page page = new Page(pageNo, pageSize); IPage pageList = sysDepartTeamUserService.page(page, queryWrapper); return Result.OK(pageList); } /** * 添加 * * @param sysDepartTeam * @return */ @AutoLog(value = "sys_depart_team-添加") @ApiOperation(value="sys_depart_team-添加", notes="sys_depart_team-添加") @PostMapping(value = "/add") public Result add(@RequestBody SysDepartTeam sysDepartTeam) { sysDepartTeamService.save(sysDepartTeam); return Result.OK("添加成功!"); } @AutoLog(value = "sys_depart_team_user-添加") @ApiOperation(value="sys_depart_team_user-添加", notes="sys_depart_team_user-添加") @PostMapping(value = "/addTeamUser") public Result addTeamUser(@RequestBody SysDepartTeamUser sysDepartTeamUser) { if(StringUtils.isEmpty(sysDepartTeamUser.getUserId()) || StringUtils.isEmpty(sysDepartTeamUser.getDteamId())){ return Result.error("参数错误!"); } String userId = sysDepartTeamUser.getUserId(); String[] split = userId.split(","); for (int i = 0; i < split.length; i++) { SysDepartTeamUser user = new SysDepartTeamUser(); user.setDteamId(sysDepartTeamUser.getDteamId()); user.setUserId(split[i]); sysDepartTeamUserService.save(user); } return Result.OK("添加成功!"); } /** * 编辑 * * @param sysDepartTeam * @return */ @AutoLog(value = "sys_depart_team-编辑") @ApiOperation(value="sys_depart_team-编辑", notes="sys_depart_team-编辑") @PutMapping(value = "/edit") public Result edit(@RequestBody SysDepartTeam sysDepartTeam) { sysDepartTeamService.updateById(sysDepartTeam); return Result.OK("编辑成功!"); } /** * 通过id删除 * * @param id * @return */ @AutoLog(value = "sys_depart_team-通过id删除") @ApiOperation(value="sys_depart_team-通过id删除", notes="sys_depart_team-通过id删除") @DeleteMapping(value = "/delete") public Result delete(@RequestParam(name="id",required=true) String id) { sysDepartTeamService.removeById(id); //同事删除sys_depart_team_user QueryWrapper delWrapper = new QueryWrapper<>(); delWrapper.lambda().eq(SysDepartTeamUser::getDteamId,id); sysDepartTeamUserService.remove(delWrapper); return Result.OK("删除成功!"); } @AutoLog(value = "sys_depart_team_user-通过id删除") @ApiOperation(value="sys_depart_team_user-通过id删除", notes="sys_depart_team_user-通过id删除") @DeleteMapping(value = "/deleteTeamUser") public Result deleteTeamUser(@RequestParam(name="id",required=true) String id) { sysDepartTeamUserService.removeById(id); return Result.OK("删除成功!"); } /** * 批量删除 * * @param ids * @return */ @AutoLog(value = "sys_depart_team-批量删除") @ApiOperation(value="sys_depart_team-批量删除", notes="sys_depart_team-批量删除") @DeleteMapping(value = "/deleteBatch") public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { this.sysDepartTeamService.removeByIds(Arrays.asList(ids.split(","))); List list = Arrays.asList(ids.split(",")); for (int i = 0; i < list.size(); i++) { String id = list.get(i); //同事删除sys_depart_team_user QueryWrapper delWrapper = new QueryWrapper<>(); delWrapper.lambda().eq(SysDepartTeamUser::getDteamId,id); sysDepartTeamUserService.remove(delWrapper); } return Result.OK("批量删除成功!"); } /** * 通过id查询 * * @param id * @return */ @AutoLog(value = "sys_depart_team-通过id查询") @ApiOperation(value="sys_depart_team-通过id查询", notes="sys_depart_team-通过id查询") @GetMapping(value = "/queryById") public Result queryById(@RequestParam(name="id",required=true) String id) { SysDepartTeam sysDepartTeam = sysDepartTeamService.getById(id); if(sysDepartTeam==null) { return Result.error("未找到对应数据"); } return Result.OK(sysDepartTeam); } /** * 导出excel * * @param request * @param sysDepartTeam */ @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, SysDepartTeam sysDepartTeam) { return super.exportXls(request, sysDepartTeam, SysDepartTeam.class, "sys_depart_team"); } /** * 通过excel导入数据 * * @param request * @param response * @return */ @RequestMapping(value = "/importExcel", method = RequestMethod.POST) public Result importExcel(HttpServletRequest request, HttpServletResponse response) { return super.importExcel(request, response, SysDepartTeam.class); } }