Browse Source

移动端授权以及出库单添加推送备注修改

master
dimengzhe 3 years ago
parent
commit
cec77b77ae
  1. 22
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java
  2. 35
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenu.java
  3. 21
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuAllVo.java
  4. 36
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuDto.java
  5. 34
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuFeign.java
  6. 24
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuFeignFallback.java
  7. 37
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuListVo.java
  8. 36
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuVo.java
  9. 19
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRole.java
  10. 21
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleDto.java
  11. 33
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleFeign.java
  12. 24
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleFeignFallback.java
  13. 25
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleVo.java
  14. 20
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuMapper.java
  15. 58
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuMapper.xml
  16. 34
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuRest.java
  17. 67
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuService.java
  18. 45
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleMapper.java
  19. 31
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleMapper.xml
  20. 35
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleRest.java
  21. 128
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleService.java
  22. 50
      doc/databases/portal_tables.sql

22
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java

@ -193,8 +193,8 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
fEntity.setF_PAEZ_Decimal("0");//dto.getRebateMoneyOne()
String remarks = dto.getRemarks();
String note = "";
if(StringUtils.isNotBlank(remarks)){
note = note+remarks;
if (StringUtils.isNotBlank(remarks)) {
note = note + remarks;
}
// String note = remarks;
//备注
@ -202,19 +202,19 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
if (StringUtils.isNotBlank(dto.getMiddleTwo())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyOne())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo())) {
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "," + dto.getMiddleTwo() + dto.getRebateMoneyTwo() + "。";
fEntity.setFEntrynote(note);
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "," + dto.getMiddleTwo() + dto.getRebateMoneyTwo() + "。";
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyOne()).add(new BigDecimal(dto.getRebateMoneyTwo())).toString());
} else {
fEntity.setFEntrynote(note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。");
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。";
// fEntity.setFEntrynote(note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。");
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyOne()).toString());
}
} else {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo())) {
fEntity.setFEntrynote(note + " 返利情况:" + dto.getMiddleTwo() + dto.getRebateMoneyTwo() + "。");
note = note + " 返利情况:" + dto.getMiddleTwo() + dto.getRebateMoneyTwo() + "。";
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyTwo()).toString());//dto.getRebateMoneyOne()
}
@ -222,8 +222,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
} else {
if (StringUtils.isNotBlank(dto.getRebateMoneyOne())) {
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。";
fEntity.setFEntrynote(note);
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。";
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyOne()).toString());
}
@ -231,14 +230,17 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
} else {
if (StringUtils.isNotBlank(dto.getMiddleTwo())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo())) {
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。";
fEntity.setFEntrynote(note);
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。";
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyOne()).toString());
}
}
}
if (StringUtils.isNotBlank(note)) {
fEntity.setFEntrynote(note);
}
/*if (StringUtils.isNotBlank(dto.getRebateMoneyOne())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo())) {
note=note+"。返利情况:"+dto.getMiddleOne()+":"+dto.getRebateMoneyOne()+"," + dto.getMiddleTwo()+":"+dto.getRebateMoneyTwo()+"。";

35
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenu.java

@ -0,0 +1,35 @@
package com.yxt.anrui.portal.api.sysmobilemenu;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/10/25 20:32
* @Description
*/
@Data
public class SysMobileMenu extends BaseEntity {
private static final long serialVersionUID = 7612084533081655213L;
@ApiModelProperty("应用分类")
private String titleGroup;
@ApiModelProperty("应用名称")
private String title;
@ApiModelProperty("插件sid")
private String linkSid;
@ApiModelProperty("应用图标")
private String iconUrl;
@ApiModelProperty("应用路由")
private String path;
@ApiModelProperty("排序")
private String sortNo;
@ApiModelProperty("父级sid")
private String psid;
}

21
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuAllVo.java

@ -0,0 +1,21 @@
package com.yxt.anrui.portal.api.sysmobilemenu;
import com.yxt.anrui.portal.api.appversion.AppVersionVo;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/26 10:02
* @Description
*/
@Data
public class SysMobileMenuAllVo implements Vo {
private static final long serialVersionUID = 6995910918440526218L;
private AppVersionVo appVersionVo;
private List<SysMobileMenuVo> list;
}

36
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuDto.java

@ -0,0 +1,36 @@
package com.yxt.anrui.portal.api.sysmobilemenu;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/10/25 20:42
* @Description
*/
@Data
public class SysMobileMenuDto implements Dto {
private static final long serialVersionUID = 2939430292974122530L;
@ApiModelProperty("插件appSid")
private String linkSid;
private String sid;
@ApiModelProperty("应用分类")
private String titleGroup;
@ApiModelProperty("应用名称")
private String title;
@ApiModelProperty("应用图标")
private String iconUrl;
@ApiModelProperty("应用路由")
private String path;
@ApiModelProperty("排序")
private String sortNo;
@ApiModelProperty(value = "父级sid",example = "0")
private String psid;
}

34
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuFeign.java

@ -0,0 +1,34 @@
package com.yxt.anrui.portal.api.sysmobilemenu;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
/**
* @Author dimengzhe
* @Date 2022/10/25 20:36
* @Description
*/
@Api(tags = "移动端插件的应用")
@FeignClient(
contextId = "anrui-portal-SysMobileMenu",
name = "anrui-portal",
path = "v1/sysmobilemenu",
fallback = SysMobileMenuFeignFallback.class)
public interface SysMobileMenuFeign {
@ApiOperation("新增/修改插件的应用 ")
@PostMapping("/saveOrUpdate")
@ResponseBody
ResultBean<String> saveOrUpdate(@RequestBody SysMobileMenuDto dto);
@ApiOperation("插件及应用列表 ")
@GetMapping("/list")
@ResponseBody
ResultBean<SysMobileMenuAllVo> list();
}

24
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuFeignFallback.java

@ -0,0 +1,24 @@
package com.yxt.anrui.portal.api.sysmobilemenu;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/25 20:41
* @Description
*/
@Component
public class SysMobileMenuFeignFallback implements SysMobileMenuFeign{
@Override
public ResultBean<String> saveOrUpdate(SysMobileMenuDto dto) {
return null;
}
@Override
public ResultBean<SysMobileMenuAllVo> list() {
return null;
}
}

37
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuListVo.java

@ -0,0 +1,37 @@
package com.yxt.anrui.portal.api.sysmobilemenu;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/25 21:18
* @Description
*/
@Data
public class SysMobileMenuListVo implements Vo {
private static final long serialVersionUID = 7521651989451963063L;
@ApiModelProperty("应用名称")
private String appName;
@ApiModelProperty("插件图标")
private String iconUrl;
@ApiModelProperty("应用分类")
private String versionName;
@ApiModelProperty("更新时间")
private String modifyTime;
@ApiModelProperty("应用路由:sorceAction")
private String sourceAction;
@ApiModelProperty("sid")
private String sid;
private List<SysMobileMenuListVo> mobileMenuList;
}

36
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuVo.java

@ -0,0 +1,36 @@
package com.yxt.anrui.portal.api.sysmobilemenu;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/25 21:10
* @Description
*/
@Data
public class SysMobileMenuVo implements Vo {
private static final long serialVersionUID = -3007989177724705110L;
@ApiModelProperty("插件名称")
private String appName;
@ApiModelProperty("插件图标")
private String iconUrl;
@ApiModelProperty("版本号")
private String versionName;
@ApiModelProperty("更新时间")
private String modifyTime;
@ApiModelProperty("应用路由:sorceAction")
private String sourceAction;
private String sid;
private String appSid;
private List<SysMobileMenuListVo> mobileMenuList;
}

19
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRole.java

@ -0,0 +1,19 @@
package com.yxt.anrui.portal.api.sysmobilemenurole;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/10/25 21:52
* @Description
*/
@Data
public class SysMobileMenuRole extends BaseEntity {
private static final long serialVersionUID = -5457349480183482010L;
@ApiModelProperty("移动端菜单")
private String menuSid;
@ApiModelProperty("角色sid")
private String roleSid;
}

21
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleDto.java

@ -0,0 +1,21 @@
package com.yxt.anrui.portal.api.sysmobilemenurole;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/10/26 11:20
* @Description
*/
@Data
public class SysMobileMenuRoleDto implements Dto {
private static final long serialVersionUID = -397117381631086411L;
@ApiModelProperty("菜单sid")
private String menuSid;
@ApiModelProperty("角色sid")
private String roleSid;
}

33
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleFeign.java

@ -0,0 +1,33 @@
package com.yxt.anrui.portal.api.sysmobilemenurole;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/26 10:17
* @Description
*/
@Api(tags = "移动端应用授权")
@FeignClient(
contextId = "anrui-portal-SysMobileMenuRole",
name = "anrui-portal",
path = "v1/sysmobilemenurole",
fallback = SysMobileMenuRoleFeignFallback.class)
public interface SysMobileMenuRoleFeign {
@ApiOperation("应用授权列表 ")
@GetMapping("/getRoleMenuList")
@ResponseBody
ResultBean<List<SysMobileMenuRoleVo>> getRoleMenuList(@RequestParam("roleSid") String roleSid);
@ApiOperation("应用授权 ")
@PostMapping("/saveRoleMenuList")
@ResponseBody
ResultBean saveRoleMenuList(@RequestBody SysMobileMenuRoleDto dto);
}

24
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleFeignFallback.java

@ -0,0 +1,24 @@
package com.yxt.anrui.portal.api.sysmobilemenurole;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/26 10:18
* @Description
*/
@Component
public class SysMobileMenuRoleFeignFallback implements SysMobileMenuRoleFeign{
@Override
public ResultBean<List<SysMobileMenuRoleVo>> getRoleMenuList(String roleSid) {
return null;
}
@Override
public ResultBean saveRoleMenuList(SysMobileMenuRoleDto dto) {
return null;
}
}

25
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleVo.java

@ -0,0 +1,25 @@
package com.yxt.anrui.portal.api.sysmobilemenurole;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/26 10:32
* @Description
*/
@Data
public class SysMobileMenuRoleVo implements Vo {
private static final long serialVersionUID = -2992681724218948454L;
@ApiModelProperty("菜单名称")
private String menuName;
@ApiModelProperty("菜单sid")
private String menuSid;
@ApiModelProperty("是否选中,1:未选中,0:选中")
private String checked;
private List<SysMobileMenuRoleVo> childrenList;
}

20
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuMapper.java

@ -0,0 +1,20 @@
package com.yxt.anrui.portal.biz.sysmobilemenu;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenu;
import com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/25 20:51
* @Description
*/
@Mapper
public interface SysMobileMenuMapper extends BaseMapper<SysMobileMenu> {
//插件列表及应用列表
List<SysMobileMenuVo> listAll(@Param("path") String path, @Param("linkSid") String linkSid);
}

58
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuMapper.xml

@ -0,0 +1,58 @@
<?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.yxt.anrui.portal.biz.sysmobilemenu.SysMobileMenuMapper">
<select id="listAll" resultMap="listMap">
SELECT asv.sortNo,
asv.appName,
asv.appSid,
asv.versionCode,
if(length(asv.iconUrl) > 0, concat(#{path}, asv.iconUrl), '') as iconUrl,
asv.versionName,
asv.`id`,
asv.sid,
DATE_FORMAT(asv.modifyTime, '%Y-%m-%d') as modifyTime,
asv.sourceAction
FROM app_subset_version asv
WHERE linkSid = #{linkSid}
AND id IN (SELECT MAX(id) FROM app_subset_version GROUP BY appSid)
ORDER BY sortNo ASC
</select>
<resultMap id="listMap" type="com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuVo">
<result column="appName" jdbcType="VARCHAR" property="appName"/>
<result column="sid" jdbcType="VARCHAR" property="sid"/>
<result column="iconUrl" jdbcType="VARCHAR" property="iconUrl"/>
<result column="versionName" jdbcType="INTEGER" property="versionName"/>
<result column="modifyTime" jdbcType="VARCHAR" property="modifyTime"/>
<result column="sourceAction" jdbcType="VARCHAR" property="sourceAction"/>
<result column="appSid" jdbcType="VARCHAR" property="appSid"/>
<collection property="mobileMenuList" ofType="com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuListVo"
select="mobileMenuList" column="appSid">
</collection>
</resultMap>
<resultMap id="childrenMap" type="com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuListVo">
<result column="appName" jdbcType="VARCHAR" property="appName"/>
<result column="sid" jdbcType="VARCHAR" property="sid"/>
<result column="iconUrl" jdbcType="VARCHAR" property="iconUrl"/>
<result column="versionName" jdbcType="INTEGER" property="versionName"/>
<result column="modifyTime" jdbcType="VARCHAR" property="modifyTime"/>
<result column="sourceAction" jdbcType="VARCHAR" property="sourceAction"/>
<collection property="mobileMenuList" ofType="com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuListVo"
select="childrenList" column="sid">
</collection>
</resultMap>
<select id="mobileMenuList" resultMap="childrenMap">
select title appName, titleGroup versionName, DATE_FORMAT(modifyTime, '%Y-%m-%d') as modifyTime, path as sourceAction, sortNo, sid, iconUrl
from sys_mobile_menu
where linkSid = #{appSid} and psid = '0'
order by sortNo asc
</select>
<select id="childrenList" resultMap="childrenMap">
select title appName, titleGroup versionName, DATE_FORMAT(modifyTime, '%Y-%m-%d') as modifyTime, path as sourceAction, sortNo, sid, iconUrl
from sys_mobile_menu
where pSid = #{sid}
order by sortNo asc
</select>
</mapper>

34
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuRest.java

@ -0,0 +1,34 @@
package com.yxt.anrui.portal.biz.sysmobilemenu;
import com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuAllVo;
import com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuDto;
import com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuFeign;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @Author dimengzhe
* @Date 2022/10/25 20:50
* @Description
*/
@Api(tags = "移动端插件应用")
@Controller
@RequestMapping("v1/sysmobilemenu")
public class SysMobileMenuRest implements SysMobileMenuFeign {
@Autowired
private SysMobileMenuService sysMobileMenuService;
@Override
public ResultBean<String> saveOrUpdate(SysMobileMenuDto dto) {
return sysMobileMenuService.saveorUpdateAll(dto);
}
@Override
public ResultBean<SysMobileMenuAllVo> list() {
return sysMobileMenuService.listAll();
}
}

67
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuService.java

@ -0,0 +1,67 @@
package com.yxt.anrui.portal.biz.sysmobilemenu;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.portal.api.appversion.AppVersionVo;
import com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenu;
import com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuAllVo;
import com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuDto;
import com.yxt.anrui.portal.api.sysmobilemenu.SysMobileMenuVo;
import com.yxt.anrui.portal.biz.appversion.AppVersionService;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/25 20:51
* @Description
*/
@Service
public class SysMobileMenuService extends MybatisBaseService<SysMobileMenuMapper, SysMobileMenu> {
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private AppVersionService appVersionService;
public ResultBean<String> saveorUpdateAll(SysMobileMenuDto dto) {
ResultBean<String> rb = ResultBean.fireFail();
String sid = dto.getSid();
if (StringUtils.isBlank(sid)) {
SysMobileMenu sysMobileMenu = new SysMobileMenu();
BeanUtil.copyProperties(dto, sysMobileMenu, "sid");
baseMapper.insert(sysMobileMenu);
sid = sysMobileMenu.getSid();
} else {
SysMobileMenu sysMobileMenu = fetchBySid(sid);
if (sysMobileMenu == null) {
return rb.setMsg("该应用不存在");
}
BeanUtil.copyProperties(dto, sysMobileMenu);
baseMapper.updateById(sysMobileMenu);
}
return rb.success().setData(sid);
}
public ResultBean<SysMobileMenuAllVo> listAll() {
ResultBean<SysMobileMenuAllVo> rb = ResultBean.fireFail();
SysMobileMenuAllVo vo = new SysMobileMenuAllVo();
//查询最新版的框架信息
AppVersionVo appVersionVo = appVersionService.selectNewAppVersion();
if (appVersionVo != null) {
vo.setAppVersionVo(appVersionVo);
}
String path = fileUploadComponent.getUrlPrefix();
String linkSid = "147694bb-c765-4426-8f67-d19a66585f31";
List<SysMobileMenuVo> list = baseMapper.listAll(path, linkSid);
list.removeAll(Collections.singleton(null));
vo.setList(list);
return rb.success().setData(vo);
}
}

45
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleMapper.java

@ -0,0 +1,45 @@
package com.yxt.anrui.portal.biz.sysmobilemenurole;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRole;
import com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRoleVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/26 10:19
* @Description
*/
@Mapper
public interface SysMobileMenuRoleMapper extends BaseMapper<SysMobileMenuRole> {
/**
* 查询插件下的应用
*
* @param roleSid 角色sid
* @param s 插件下应用
* @param appSid appSid
* @return
*/
List<SysMobileMenuRoleVo> listAllByRoleSid(@Param("roleSid") String roleSid, @Param("psid") String s, @Param("appSid") String appSid);
/**
* 查询应用下的应用
*
* @param roleSid 角色sid
* @param sid 应用的sid
* @param appSid appSid
* @return
*/
List<SysMobileMenuRoleVo> getChildrensByRoleSid(@Param("roleSid") String roleSid, @Param("psid") String sid, @Param("appSid") String appSid);
/**
* 根据角色sid删除相关的菜单授权
*
* @param roleSid 角色sid
* @return
*/
int deleteByRoleSid(String roleSid);
}

31
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleMapper.xml

@ -0,0 +1,31 @@
<?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.yxt.anrui.portal.biz.sysmobilemenurole.SysMobileMenuRoleMapper">
<select id="listAllByRoleSid" resultType="com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRoleVo">
SELECT menu.title menuName, menu.sid menuSid, ISNULL(menuRole.sid) as checked
FROM sys_mobile_menu menu
left join sys_mobile_menu_role menuRole
on menu.sid = menuRole.menuSid AND menuRole.roleSid = #{roleSid}
where menu.pSid = #{psid}
<if test="appSid != null">
and menu.linkSid = #{appSid}
</if>
</select>
<select id="getChildrensByRoleSid" resultType="com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRoleVo">
SELECT menu.title menuName, menu.sid menuSid, ISNULL(menuRole.sid) as checked
FROM sys_mobile_menu menu
left join sys_mobile_menu_role menuRole
on menu.sid = menuRole.menuSid AND menuRole.roleSid = #{roleSid}
where menu.pSid = #{psid}
<if test="appSid != null">
and menu.linkSid = #{appSid}
</if>
</select>
<delete id="deleteByRoleSid">
delete
from sys_mobile_menu_role
where roleSid = #{roleSid}
</delete>
</mapper>

35
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleRest.java

@ -0,0 +1,35 @@
package com.yxt.anrui.portal.biz.sysmobilemenurole;
import com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRoleDto;
import com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRoleFeign;
import com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRoleVo;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/26 10:19
* @Description
*/
@Api(tags = "移动端应用授权")
@Controller
@RequestMapping("v1/sysmobilemenurole")
public class SysMobileMenuRoleRest implements SysMobileMenuRoleFeign {
@Autowired
private SysMobileMenuRoleService sysMobileMenuRoleService;
@Override
public ResultBean<List<SysMobileMenuRoleVo>> getRoleMenuList(String roleSid) {
return sysMobileMenuRoleService.getRoleMenuList(roleSid);
}
@Override
public ResultBean saveRoleMenuList(SysMobileMenuRoleDto dto) {
return sysMobileMenuRoleService.saveRoleMenuList(dto);
}
}

128
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleService.java

@ -0,0 +1,128 @@
package com.yxt.anrui.portal.biz.sysmobilemenurole;
import com.yxt.anrui.portal.api.appsubsetversion.AppSubsetVersionVo;
import com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRole;
import com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRoleDto;
import com.yxt.anrui.portal.api.sysmobilemenurole.SysMobileMenuRoleVo;
import com.yxt.anrui.portal.api.sysrole.SysRole;
import com.yxt.anrui.portal.biz.appsubsetversion.AppSubsetVersionService;
import com.yxt.anrui.portal.biz.sysrole.SysRoleService;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/10/26 10:19
* @Description
*/
@Service
public class SysMobileMenuRoleService extends MybatisBaseService<SysMobileMenuRoleMapper, SysMobileMenuRole> {
public static final String LINKSID = "147694bb-c765-4426-8f67-d19a66585f31";
@Autowired
private AppSubsetVersionService appSubsetVersionService;
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private SysRoleService sysRoleService;
/**
* 移动端应用授权列表
*
* @param roleSid 角色sid
* @return
*/
public ResultBean<List<SysMobileMenuRoleVo>> getRoleMenuList(String roleSid) {
ResultBean<List<SysMobileMenuRoleVo>> rb = new ResultBean<>();
if (StringUtils.isBlank(roleSid)) {
return rb.setMsg("角色sid不能为空");
}
//查询所有的插件
String linkSid = LINKSID;
String path = fileUploadComponent.getUrlPrefix();
List<AppSubsetVersionVo> appSubsetVersionVoList = appSubsetVersionService.selectVersionList(linkSid, path);
List<SysMobileMenuRoleVo> sysMobileMenuRoleVos = new ArrayList<>();
for (AppSubsetVersionVo s : appSubsetVersionVoList) {
SysMobileMenuRoleVo sysMenuVo = new SysMobileMenuRoleVo();
sysMenuVo.setMenuName(s.getAppName());
sysMenuVo.setMenuSid(s.getAppSid());
sysMenuVo.setChecked("1");
String appSid = s.getAppSid();
sysMenuVo.setChildrenList(listAllByRoleSid(roleSid, appSid));
sysMobileMenuRoleVos.add(sysMenuVo);
}
return rb.success().setData(sysMobileMenuRoleVos);
}
/**
* 查询插件下的应用
*
* @param roleSid 角色sid
* @param appSid appSid
* @return
*/
public List<SysMobileMenuRoleVo> listAllByRoleSid(String roleSid, String appSid) {
List<SysMobileMenuRoleVo> sysMenuVos = baseMapper.listAllByRoleSid(roleSid, "0", appSid);
for (SysMobileMenuRoleVo s : sysMenuVos) {
getChildrensByRoleSid(s, roleSid, appSid);
}
return sysMenuVos;
}
/**
* 查询应用下的应用
*
* @param s 插件下的应用
* @param roleSid 角色sid
* @param appSid appSid
*/
private void getChildrensByRoleSid(SysMobileMenuRoleVo s, String roleSid, String appSid) {
String sid = s.getMenuSid();
List<SysMobileMenuRoleVo> sysMenuVos = baseMapper.getChildrensByRoleSid(roleSid, sid, appSid);
if (!sysMenuVos.isEmpty()) {
for (SysMobileMenuRoleVo smv : sysMenuVos) {
getChildrensByRoleSid(smv, roleSid, appSid);
}
}
s.setChildrenList(sysMenuVos);
}
/**
* 移动端应用授权
*
* @param dto 参数
* @return
*/
public ResultBean saveRoleMenuList(SysMobileMenuRoleDto dto) {
String roleSid = dto.getRoleSid();
String menuSid = dto.getMenuSid();
if (StringUtils.isBlank(roleSid)) {
return ResultBean.fireFail().setMessage("角色sid不能为空");
} else {
SysRole sysRole = sysRoleService.fetchBySid(roleSid);
if (sysRole == null || StringUtils.isBlank(sysRole.getSid())) {
return ResultBean.fireFail().setMessage("角色sid不存在");
}
}
baseMapper.deleteByRoleSid(roleSid);
ResultBean rb = ResultBean.fireFail();
if (!StringUtils.isBlank(menuSid)) {
String[] sids = menuSid.split(",");
for (String sid : sids) {
SysMobileMenuRole sysMenuRole = new SysMobileMenuRole();
sysMenuRole.setMenuSid(sid);
sysMenuRole.setRoleSid(roleSid);
baseMapper.insert(sysMenuRole);
}
}
return rb.success();
}
}

50
doc/databases/portal_tables.sql

@ -617,3 +617,53 @@ CREATE TABLE `system_log`
/*!40014 SET FOREIGN_KEY_CHECKS = @OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS = @OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES = @OLD_SQL_NOTES */;
DROP TABLE IF EXISTS `sys_mobile_menu`;
CREATE TABLE `sys_mobile_menu`
(
`id` int(11) NOT NULL AUTO_INCREMENT,
`sid` varchar(64) NOT NULL COMMENT 'sid',
`lockVersion` int(11) NOT NULL DEFAULT '0' COMMENT '记录版本,锁',
`createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
`modifyTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录最后修改时间',
`isEnable` int(11) NOT NULL DEFAULT '1' COMMENT '记录是否可用,1:可用,0:不可用',
`state` int(11) DEFAULT '1' COMMENT '隐藏本部门:隐藏本部门开启后,本部门将不会显示在公司通讯录中',
`isDelete` int(11) DEFAULT NULL COMMENT '记录是否被删除,0:未删除,1:已经删除',
`remarks` varchar(255) DEFAULT NULL COMMENT '备注信息',
`createBySid` varchar(64) DEFAULT NULL COMMENT '创建者',
`updateBySid` varchar(64) DEFAULT NULL COMMENT '更新者',
`titleGroup` varchar(64) DEFAULT NULL COMMENT '应用分类',
`title` varchar(64) DEFAULT NULL COMMENT '应用名称',
`linkSid` varchar(64) DEFAULT NULL COMMENT '插件sid',
`iconUrl` varchar(64) DEFAULT NULL COMMENT '应用图标',
`path` varchar(64) DEFAULT NULL COMMENT '应用路由',
`sortNo` int(32) DEFAULT NULL COMMENT '排序',
`psid` varchar(64) DEFAULT NULL COMMENT '父级sid',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = InnoDB
AUTO_INCREMENT = 18
DEFAULT CHARSET = utf8 COMMENT ='移动端插件下应用表';
DROP TABLE IF EXISTS `sys_mobile_menu_role`;
CREATE TABLE `sys_mobile_menu_role`
(
`id` int(11) NOT NULL AUTO_INCREMENT,
`sid` varchar(64) NOT NULL COMMENT 'sid',
`lockVersion` int(11) NOT NULL DEFAULT '0' COMMENT '记录版本,锁',
`createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
`modifyTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录最后修改时间',
`isEnable` int(11) NOT NULL DEFAULT '1' COMMENT '记录是否可用,1:可用,0:不可用',
`state` int(11) DEFAULT '1' COMMENT '隐藏本部门:隐藏本部门开启后,本部门将不会显示在公司通讯录中',
`isDelete` int(11) DEFAULT NULL COMMENT '记录是否被删除,0:未删除,1:已经删除',
`remarks` varchar(255) DEFAULT NULL COMMENT '备注信息',
`createBySid` varchar(64) DEFAULT NULL COMMENT '创建者',
`updateBySid` varchar(64) DEFAULT NULL COMMENT '更新者',
`menuSid` varchar(64) DEFAULT NULL COMMENT '菜单sid',
`roleSid` varchar(64) DEFAULT NULL COMMENT '角色sid',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = InnoDB
AUTO_INCREMENT = 18
DEFAULT CHARSET = utf8 COMMENT ='移动端用户授权表';

Loading…
Cancel
Save