From b27eabf825aab5d9c7a9b0149bf54a857c1f297f Mon Sep 17 00:00:00 2001 From: whj <1070107765@qq.com> Date: 星期五, 09 九月 2022 15:34:33 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ycl-common/src/main/java/com/ycl/entity/platform/UmsThirdApplications.java | 48 ++++++ ycl-common/src/main/java/com/ycl/mapper/platform/UmsThirdApplicationsMapper.java | 16 ++ ycl-common/src/main/java/com/ycl/service/platform/UmsThirdApplicationsService.java | 16 ++ ycl-common/src/main/java/com/ycl/mapper/platform/UmsWebsiteLogoMapper.java | 16 ++ ycl-common/src/main/java/com/ycl/entity/platform/UmsWebsiteLogo.java | 51 ++++++ ycl-common/src/main/java/com/ycl/entity/user/UmsMenu.java | 3 ycl-common/src/main/java/com/ycl/service/platform/UmsWebsiteLogoService.java | 16 ++ ycl-common/src/main/java/com/ycl/service/platform/impl/UmsThirdApplicationsServiceImpl.java | 20 ++ ycl-common/src/main/java/com/ycl/service/platform/impl/UmsWebsiteLogoServiceImpl.java | 20 ++ ycl-common/src/main/resources/mapper/platform/UmsThirdApplicationsMapper.xml | 15 + ycl-common/src/main/java/com/ycl/entity/user/vo/UmsMenuVo.java | 60 +++++++ ycl-common/src/main/resources/mapper/platform/UmsWebsiteLogoMapper.xml | 14 + ycl-platform/src/main/java/com/ycl/controller/platform/UmsWebsitePortalController.java | 142 +++++++++++++++++ 13 files changed, 436 insertions(+), 1 deletions(-) diff --git a/ycl-common/src/main/java/com/ycl/entity/platform/UmsThirdApplications.java b/ycl-common/src/main/java/com/ycl/entity/platform/UmsThirdApplications.java new file mode 100644 index 0000000..c8a8eec --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/entity/platform/UmsThirdApplications.java @@ -0,0 +1,48 @@ +package com.ycl.entity.platform; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + +/** + * <p> + * + * </p> + * + * @author wl + * @since 2022-09-08 + */ +@Getter +@Setter +@TableName("ums_third_applications") +@ApiModel(value = "UmsThirdApplications瀵硅薄", description = "") +public class UmsThirdApplications implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + @ApiModelProperty("搴旂敤鎻忚堪") + private String applicationName; + + @ApiModelProperty("搴旂敤鍥炬爣") + private String applicationIconUrl; + + @ApiModelProperty("搴旂敤绫诲瀷(0 缃戦〉搴旂敤,1鎵嬫満绔簲鐢�,2 pc绔簲鐢�,3 ios ,4 mac)") + private Integer applicationType; + + @ApiModelProperty("缃戠珯url") + private String websiteUrl; + + @ApiModelProperty("搴旂敤鎻忚堪") + private String description; + + +} diff --git a/ycl-common/src/main/java/com/ycl/entity/platform/UmsWebsiteLogo.java b/ycl-common/src/main/java/com/ycl/entity/platform/UmsWebsiteLogo.java new file mode 100644 index 0000000..08c1f87 --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/entity/platform/UmsWebsiteLogo.java @@ -0,0 +1,51 @@ +package com.ycl.entity.platform; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * <p> + * + * </p> + * + * @author wl + * @since 2022-09-07 + */ +@Getter +@Setter +@TableName("ums_website_logo") +@ApiModel(value = "UmsWebsiteLogo瀵硅薄", description = "logo") +public class UmsWebsiteLogo implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id",type = IdType.AUTO) + private Long id; + + @ApiModelProperty("缃戠珯鏍囬") + @NotBlank(message = "缃戠珯鏍囬涓虹┖") + private String title; + + @ApiModelProperty("鐧诲綍椤靛浘鏍囧湴鍧�") + @NotBlank(message = "鐧诲綍椤靛浘鏍囧湴鍧�涓虹┖") + private String loginPageIconUrl; + + @ApiModelProperty("娴忚鍣ㄦ爣绛鹃〉鍥炬爣鍦板潃") + @NotBlank(message = "娴忚鍣ㄦ爣绛鹃〉鍥炬爣鍦板潃涓虹┖") + private String chromeLinkUrl; + + @ApiModelProperty("缃戦〉澶撮儴鍦板潃") + @NotBlank(message = "缃戦〉澶撮儴鍦板潃涓虹┖") + private String websiteHeadUrl; + + +} diff --git a/ycl-common/src/main/java/com/ycl/entity/user/UmsMenu.java b/ycl-common/src/main/java/com/ycl/entity/user/UmsMenu.java index e9c84b2..7bd5278 100644 --- a/ycl-common/src/main/java/com/ycl/entity/user/UmsMenu.java +++ b/ycl-common/src/main/java/com/ycl/entity/user/UmsMenu.java @@ -54,5 +54,6 @@ @ApiModelProperty(value = "鍓嶇闅愯棌") private Integer hidden; - + @ApiModelProperty(value = "鑿滃崟鎻忚堪") + private String description; } diff --git a/ycl-common/src/main/java/com/ycl/entity/user/vo/UmsMenuVo.java b/ycl-common/src/main/java/com/ycl/entity/user/vo/UmsMenuVo.java new file mode 100644 index 0000000..0ee884a --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/entity/user/vo/UmsMenuVo.java @@ -0,0 +1,60 @@ +package com.ycl.entity.user.vo; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * <p> + * 鑿滃崟vo + * </p> + * + * @author wl + * @since 2022-09-08 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("ums_menu") +@ApiModel(value="UmsMenuVo瀵硅薄", description="鑷畾涔夎彍鍗曡緭鍑�") +public class UmsMenuVo implements Serializable { + + private static final long serialVersionUID=1L; + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + @ApiModelProperty(value = "鐖剁骇ID") + private Long parentId; + + @ApiModelProperty(value = "鍒涘缓鏃堕棿") + private Date createTime; + + @ApiModelProperty(value = "鑿滃崟鍚嶇О") + private String title; + + @ApiModelProperty(value = "鑿滃崟绾ф暟") + private Integer level; + + @ApiModelProperty(value = "鑿滃崟鎺掑簭") + private Integer sort; + + @ApiModelProperty(value = "鍓嶇鍚嶇О") + private String name; + + @ApiModelProperty(value = "鍓嶇鍥炬爣") + private String icon; + + @ApiModelProperty(value = "鍓嶇闅愯棌") + private Integer hidden; + + List<UmsMenuVo> menuVoArrayList; +} diff --git a/ycl-common/src/main/java/com/ycl/mapper/platform/UmsThirdApplicationsMapper.java b/ycl-common/src/main/java/com/ycl/mapper/platform/UmsThirdApplicationsMapper.java new file mode 100644 index 0000000..78368fa --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/mapper/platform/UmsThirdApplicationsMapper.java @@ -0,0 +1,16 @@ +package com.ycl.mapper.platform; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ycl.entity.platform.UmsThirdApplications; + +/** + * <p> + * Mapper 鎺ュ彛 + * </p> + * + * @author wl + * @since 2022-09-08 + */ +public interface UmsThirdApplicationsMapper extends BaseMapper<UmsThirdApplications> { + +} diff --git a/ycl-common/src/main/java/com/ycl/mapper/platform/UmsWebsiteLogoMapper.java b/ycl-common/src/main/java/com/ycl/mapper/platform/UmsWebsiteLogoMapper.java new file mode 100644 index 0000000..1e55a4d --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/mapper/platform/UmsWebsiteLogoMapper.java @@ -0,0 +1,16 @@ +package com.ycl.mapper.platform; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ycl.entity.platform.UmsWebsiteLogo; + +/** + * <p> + * Mapper 鎺ュ彛 + * </p> + * + * @author wl + * @since 2022-09-07 + */ +public interface UmsWebsiteLogoMapper extends BaseMapper<UmsWebsiteLogo> { + +} diff --git a/ycl-common/src/main/java/com/ycl/service/platform/UmsThirdApplicationsService.java b/ycl-common/src/main/java/com/ycl/service/platform/UmsThirdApplicationsService.java new file mode 100644 index 0000000..fd2952d --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/service/platform/UmsThirdApplicationsService.java @@ -0,0 +1,16 @@ +package com.ycl.service.platform; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ycl.entity.platform.UmsThirdApplications; + +/** + * <p> + * 鏈嶅姟绫� + * </p> + * + * @author wl + * @since 2022-09-08 + */ +public interface UmsThirdApplicationsService extends IService<UmsThirdApplications> { + +} diff --git a/ycl-common/src/main/java/com/ycl/service/platform/UmsWebsiteLogoService.java b/ycl-common/src/main/java/com/ycl/service/platform/UmsWebsiteLogoService.java new file mode 100644 index 0000000..dde03ce --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/service/platform/UmsWebsiteLogoService.java @@ -0,0 +1,16 @@ +package com.ycl.service.platform; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ycl.entity.platform.UmsWebsiteLogo; + +/** + * <p> + * 鏈嶅姟绫� + * </p> + * + * @author wl + * @since 2022-09-07 + */ +public interface UmsWebsiteLogoService extends IService<UmsWebsiteLogo> { + +} diff --git a/ycl-common/src/main/java/com/ycl/service/platform/impl/UmsThirdApplicationsServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/platform/impl/UmsThirdApplicationsServiceImpl.java new file mode 100644 index 0000000..984cbd2 --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/service/platform/impl/UmsThirdApplicationsServiceImpl.java @@ -0,0 +1,20 @@ +package com.ycl.service.platform.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ycl.entity.platform.UmsThirdApplications; +import com.ycl.mapper.platform.UmsThirdApplicationsMapper; +import com.ycl.service.platform.UmsThirdApplicationsService; +import org.springframework.stereotype.Service; + +/** + * <p> + * 鏈嶅姟瀹炵幇绫� + * </p> + * + * @author wl + * @since 2022-09-08 + */ +@Service +public class UmsThirdApplicationsServiceImpl extends ServiceImpl<UmsThirdApplicationsMapper, UmsThirdApplications> implements UmsThirdApplicationsService { + +} diff --git a/ycl-common/src/main/java/com/ycl/service/platform/impl/UmsWebsiteLogoServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/platform/impl/UmsWebsiteLogoServiceImpl.java new file mode 100644 index 0000000..82e0d23 --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/service/platform/impl/UmsWebsiteLogoServiceImpl.java @@ -0,0 +1,20 @@ +package com.ycl.service.platform.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ycl.entity.platform.UmsWebsiteLogo; +import com.ycl.mapper.platform.UmsWebsiteLogoMapper; +import com.ycl.service.platform.UmsWebsiteLogoService; +import org.springframework.stereotype.Service; + +/** + * <p> + * 鏈嶅姟瀹炵幇绫� + * </p> + * + * @author wl + * @since 2022-09-07 + */ +@Service +public class UmsWebsiteLogoServiceImpl extends ServiceImpl<UmsWebsiteLogoMapper, UmsWebsiteLogo> implements UmsWebsiteLogoService { + +} diff --git a/ycl-common/src/main/resources/mapper/platform/UmsThirdApplicationsMapper.xml b/ycl-common/src/main/resources/mapper/platform/UmsThirdApplicationsMapper.xml new file mode 100644 index 0000000..ea02c62 --- /dev/null +++ b/ycl-common/src/main/resources/mapper/platform/UmsThirdApplicationsMapper.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.ycl.mapper.platform.UmsThirdApplicationsMapper"> + + <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 --> + <resultMap id="BaseResultMap" type="com.ycl.entity.platform.UmsThirdApplications"> + <id column="id" property="id" /> + <result column="application_name" property="applicationName" /> + <result column="application_icon_url" property="applicationIconUrl" /> + <result column="application_type" property="applicationType" /> + <result column="website_url" property="websiteUrl" /> + <result column="description" property="description" /> + </resultMap> + +</mapper> diff --git a/ycl-common/src/main/resources/mapper/platform/UmsWebsiteLogoMapper.xml b/ycl-common/src/main/resources/mapper/platform/UmsWebsiteLogoMapper.xml new file mode 100644 index 0000000..4962342 --- /dev/null +++ b/ycl-common/src/main/resources/mapper/platform/UmsWebsiteLogoMapper.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.ycl.mapper.platform.UmsWebsiteLogoMapper"> + + <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 --> + <resultMap id="BaseResultMap" type="com.ycl.entity.platform.UmsWebsiteLogo"> + <id column="id" property="id" /> + <result column="title" property="title" /> + <result column="login_page_icon_url" property="loginPageIconUrl" /> + <result column="chrome_link_url" property="chromeLinkUrl" /> + <result column="website_head_url" property="websiteHeadUrl" /> + </resultMap> + +</mapper> diff --git a/ycl-platform/src/main/java/com/ycl/controller/platform/UmsWebsitePortalController.java b/ycl-platform/src/main/java/com/ycl/controller/platform/UmsWebsitePortalController.java new file mode 100644 index 0000000..0e1ffd2 --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/controller/platform/UmsWebsitePortalController.java @@ -0,0 +1,142 @@ +package com.ycl.controller.platform; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ycl.api.CommonResult; +import com.ycl.entity.platform.UmsThirdApplications; +import com.ycl.entity.user.UmsMenu; +import com.ycl.entity.platform.UmsWebsiteLogo; +import com.ycl.entity.user.vo.UmsMenuVo; +import com.ycl.service.platform.UmsThirdApplicationsService; +import com.ycl.service.user.UmsMenuService; +import com.ycl.service.platform.UmsWebsiteLogoService; +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.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; + + @ApiOperation("logo绠$悊-娣诲姞logo") + @PostMapping("/logo/add") + public CommonResult addLogo(@RequestBody @Validated UmsWebsiteLogo umsWebsiteLogo) { + return CommonResult.success(umsWebsiteLogoService.save(umsWebsiteLogo)); + } + + @ApiOperation("logo绠$悊-淇敼logo") + @PutMapping("/logo/update") + public CommonResult updateLogo(@RequestBody UmsWebsiteLogo umsWebsiteLogo) { + return CommonResult.success(umsWebsiteLogoService.updateById(umsWebsiteLogo)); + } + + @ApiOperation("logo绠$悊-鏌ヨlogo") + @GetMapping("/logo/search") + public CommonResult searchLogo() { + return CommonResult.success(umsWebsiteLogoService.list(new QueryWrapper<>())); + } + + @ApiOperation("logo绠$悊-鏌ヨlogo") + @GetMapping("/logo/searchOne") + public CommonResult searchLogo(@RequestParam Integer id) { + return CommonResult.success(umsWebsiteLogoService.getOne(new QueryWrapper<UmsWebsiteLogo>().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() { + List<UmsMenuVo> umsMenuVoList ; + List<UmsMenu> firstMenu = umsMenuService.list(new QueryWrapper<UmsMenu>().eq("parent_id", 0)); + 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); + }); + } + return CommonResult.success(umsMenuVoList); + } + + @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("绗笁鏂规帴鍙g鐞�-娣诲姞") + @PostMapping("/thirdApp/add") + public CommonResult addThirdApp(@RequestBody @Validated UmsThirdApplications umsThirdApplications) { + return CommonResult.success(umsThirdApplicationsService.save(umsThirdApplications)); + } + + @ApiOperation("绗笁鏂规帴鍙g鐞�-淇敼") + @PutMapping("/thirdApp/update") + public CommonResult updateThirdApp(@RequestBody UmsThirdApplications umsThirdApplications) { + return CommonResult.success(umsThirdApplicationsService.updateById(umsThirdApplications)); + } + + @ApiOperation("绗笁鏂规帴鍙g鐞�-鏌ヨ") + @GetMapping("/thirdApp/search") + public CommonResult searchThirdApp() { + return CommonResult.success(umsThirdApplicationsService.list(new QueryWrapper<>())); + } + + @ApiOperation("绗笁鏂规帴鍙g鐞�-鏌ヨ閫氳繃id") + @GetMapping("/thirdApp/searchOne") + public CommonResult searchThirdApp(@RequestParam Integer id) { + return CommonResult.success(umsThirdApplicationsService.getOne(new QueryWrapper<UmsThirdApplications>().eq("id", id))); + } + + @ApiOperation("绗笁鏂规帴鍙g鐞�-鍒犻櫎") + @DeleteMapping("/thirdApp/delete") + public CommonResult removeThirdApp(@RequestParam Integer id) { + return CommonResult.success(umsThirdApplicationsService.removeById(id)); + } +} \ No newline at end of file -- Gitblit v1.8.0