package com.ycl.controller.portal;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.ycl.annotation.LogSave;
|
import com.ycl.api.CommonResult;
|
import com.ycl.bo.AdminUserDetails;
|
import com.ycl.entity.portal.ThirdApplications;
|
import com.ycl.entity.portal.WebsiteLogo;
|
import com.ycl.entity.user.AdminMenuRelation;
|
import com.ycl.entity.user.UmsMenu;
|
import com.ycl.entity.user.vo.UmsMenuVo;
|
import com.ycl.service.portal.UmsThirdApplicationsService;
|
import com.ycl.service.portal.UmsWebsiteLogoService;
|
import com.ycl.service.user.IAdminMenuRelationService;
|
import com.ycl.service.user.UmsMenuService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.security.core.context.SecurityContextHolder;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
@Api(tags = "系统管理-门户管理")
|
@RestController
|
@RequestMapping("/system/portal")
|
public class UmsWebsitePortalController {
|
|
@Autowired
|
UmsWebsiteLogoService umsWebsiteLogoService;
|
@Autowired
|
UmsMenuService umsMenuService;
|
@Autowired
|
UmsThirdApplicationsService umsThirdApplicationsService;
|
@Autowired
|
IAdminMenuRelationService iAdminMenuRelationService;
|
|
@ApiOperation("logo管理-添加logo")
|
@PostMapping("/logo/add")
|
public CommonResult addLogo(@RequestBody @Validated WebsiteLogo websiteLogo) {
|
return CommonResult.success(umsWebsiteLogoService.save(websiteLogo));
|
}
|
|
@ApiOperation("logo管理-修改logo")
|
@PutMapping("/logo/update")
|
public CommonResult updateLogo(@RequestBody WebsiteLogo websiteLogo) {
|
return CommonResult.success(umsWebsiteLogoService.updateById(websiteLogo));
|
}
|
|
@ApiOperation("logo管理-查询logo")
|
@GetMapping("/logo/search")
|
public CommonResult searchLogo() {
|
return CommonResult.success(umsWebsiteLogoService.list(new QueryWrapper<>()).get(0));
|
}
|
|
@ApiOperation("logo管理-查询logo")
|
@GetMapping("/logo/searchOne")
|
public CommonResult searchLogo(@RequestParam Integer id) {
|
return CommonResult.success(umsWebsiteLogoService.getOne(new QueryWrapper<WebsiteLogo>().eq("id", id)));
|
}
|
|
@ApiOperation("logo管理-删除logo")
|
@DeleteMapping("/logo/delete")
|
public CommonResult removeLogo(@RequestParam Integer id) {
|
return CommonResult.success(umsWebsiteLogoService.removeById(id));
|
}
|
|
@ApiOperation("自定义菜单-菜单查询")
|
@GetMapping("/menu/search")
|
public CommonResult searchMenus(Page page) {
|
Page menus = umsMenuService.page(page, new QueryWrapper<UmsMenu>().eq("parent_id", 0));
|
List<UmsMenuVo> umsMenuVoList;
|
List<UmsMenu> firstMenu = menus.getRecords();
|
umsMenuVoList = firstMenu.stream().map(item -> {
|
UmsMenuVo umsMenuVo = new UmsMenuVo();
|
BeanUtils.copyProperties(item, umsMenuVo);
|
return umsMenuVo;
|
}).collect(Collectors.toList());
|
if (firstMenu.size() != 0) {
|
umsMenuVoList.forEach(item -> {
|
List<UmsMenuVo> secondMenuListVos;
|
List<UmsMenu> secondMenuList = umsMenuService.list(new QueryWrapper<UmsMenu>().eq("parent_id", item.getId()));
|
secondMenuListVos = secondMenuList.stream().map(itm2 -> {
|
UmsMenuVo umsMenuVo = new UmsMenuVo();
|
BeanUtils.copyProperties(itm2, umsMenuVo);
|
return umsMenuVo;
|
}).collect(Collectors.toList());
|
if (secondMenuListVos.size() != 0 && secondMenuListVos != null) {
|
secondMenuListVos.forEach(item1 -> {
|
List<UmsMenuVo> thirdMenuVos;
|
List<UmsMenu> thirdMenu = umsMenuService.list(new QueryWrapper<UmsMenu>().eq("parent_id", item1.getId()));
|
thirdMenuVos = thirdMenu.stream().map(itm3 -> {
|
UmsMenuVo umsMenuVo = new UmsMenuVo();
|
BeanUtils.copyProperties(itm3, umsMenuVo);
|
return umsMenuVo;
|
}).collect(Collectors.toList());
|
item1.setMenuVoArrayList(thirdMenuVos);
|
});
|
}
|
item.setMenuVoArrayList(secondMenuListVos);
|
});
|
}
|
menus.setRecords(umsMenuVoList);
|
return CommonResult.success(menus);
|
}
|
|
@ApiOperation("菜单权限-个人菜单查询")
|
@GetMapping("/menu/search_myself")
|
@LogSave(contain = "登录拿到个人菜单",operationType = "个人操作")
|
public CommonResult searchMenusMyself() {
|
AdminUserDetails user = (AdminUserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
|
return CommonResult.success(umsMenuService.ListTreeMyself(user.getUserId()));
|
}
|
|
@ApiOperation("菜单权限-个人菜单状态修改")
|
@PutMapping("/menu/modification_myself")
|
public CommonResult modifyMenusMyself(@RequestParam Long relationId, Integer status) {
|
AdminMenuRelation adminMenuRelation = new AdminMenuRelation();
|
adminMenuRelation.setId(relationId);
|
adminMenuRelation.setIsStart(status);
|
return CommonResult.success(iAdminMenuRelationService.updateById(adminMenuRelation));
|
}
|
|
@ApiOperation("自定义菜单-添加菜单")
|
@PostMapping("/menu/add")
|
public CommonResult addMenu(@RequestBody UmsMenu umsMenu) {
|
return CommonResult.success(umsMenuService.save(umsMenu));
|
}
|
|
@ApiOperation("自定义菜单-修改菜单")
|
@PostMapping("/menu/update")
|
public CommonResult updateMenu(@RequestBody UmsMenu umsMenu) {
|
return CommonResult.success(umsMenuService.updateById(umsMenu));
|
}
|
|
@ApiOperation("第三方接口管理-添加")
|
@PostMapping("/thirdApp/add")
|
public CommonResult addThirdApp(@RequestBody @Validated ThirdApplications thirdApplications) {
|
return CommonResult.success(umsThirdApplicationsService.save(thirdApplications));
|
}
|
|
@ApiOperation("第三方接口管理-修改")
|
@PutMapping("/thirdApp/update")
|
public CommonResult updateThirdApp(@RequestBody ThirdApplications thirdApplications) {
|
return CommonResult.success(umsThirdApplicationsService.updateById(thirdApplications));
|
}
|
|
@ApiOperation("第三方接口管理-查询")
|
@GetMapping("/thirdApp/search")
|
public CommonResult searchThirdApp(Page page) {
|
return CommonResult.success(umsThirdApplicationsService.page(page, new QueryWrapper<>()));
|
}
|
|
@ApiOperation("第三方接口管理-查询通过id")
|
@GetMapping("/thirdApp/searchOne")
|
public CommonResult searchThirdApp(@RequestParam Integer id) {
|
return CommonResult.success(umsThirdApplicationsService.getOne(new QueryWrapper<ThirdApplications>().eq("id", id)));
|
}
|
|
@ApiOperation("第三方接口管理-删除")
|
@DeleteMapping("/thirdApp/delete")
|
public CommonResult removeThirdApp(@RequestParam Integer id) {
|
return CommonResult.success(umsThirdApplicationsService.removeById(id));
|
}
|
}
|