diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java index 9442484eec..aa902950da 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java +++ b/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 staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(customerTemp.getStaffSid()); + if (staffOrgResultBean.getSuccess()) { + SysStaffOrg sysStaffOrg = staffOrgResultBean.getData(); + if (sysStaffOrg != null) { + ResultBean resultBean1 = sysStaffOrgFeign.getOrgSidByPath(sysStaffOrg.getOrgSidPath()); + if (resultBean1.getSuccess()) { + String osid = resultBean1.getData(); + if (StringUtils.isNotBlank(osid)) { + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(osid); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgAbbre(); + } + } + } + String orgSid1 = sysStaffOrg.getOrgSid(); + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(orgSid1); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgCode(); + } + } + } + String customerNo = customerNoPrefix + HanZiConverterPinYin.getPinYinFirst(customerTemp.getName()) + customerTemp.getMobile(); customerTemp.setCustomerNo(customerNo); boolean updateBoolean = updateById(customerTemp); if (updateBoolean) { @@ -662,7 +688,33 @@ public class CrmCustomerTempService extends MybatisBaseService staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(customerTemp.getStaffSid()); + if (staffOrgResultBean.getSuccess()) { + SysStaffOrg sysStaffOrg = staffOrgResultBean.getData(); + if (sysStaffOrg != null) { + ResultBean resultBean1 = sysStaffOrgFeign.getOrgSidByPath(sysStaffOrg.getOrgSidPath()); + if (resultBean1.getSuccess()) { + String osid = resultBean1.getData(); + if (StringUtils.isNotBlank(osid)) { + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(osid); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgAbbre(); + } + } + } + String orgSid1 = sysStaffOrg.getOrgSid(); + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(orgSid1); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgCode(); + } + } + } + //客户编码 + String customerNo = customerNoPrefix + HanZiConverterPinYin.getPinYinFirst(customerTemp.getName()) + customerTemp.getMobile(); customerTemp.setCustomerNo(customerNo); save(customerTemp); // 增加跟进记录 @@ -838,8 +890,33 @@ public class CrmCustomerTempService extends MybatisBaseService staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(sysUserInfoVo.getStaffSid()); + if (staffOrgResultBean.getSuccess()) { + SysStaffOrg sysStaffOrg = staffOrgResultBean.getData(); + if (sysStaffOrg != null) { + ResultBean resultBean1 = sysStaffOrgFeign.getOrgSidByPath(sysStaffOrg.getOrgSidPath()); + if (resultBean1.getSuccess()) { + String osid = resultBean1.getData(); + if (StringUtils.isNotBlank(osid)) { + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(osid); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgAbbre(); + } + } + } + String orgSid1 = sysStaffOrg.getOrgSid(); + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(orgSid1); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgCode(); + } + } + } //客户编码 - String customerNo = HanZiConverterPinYin.getPinYinFirst(crmCustomerTemp.getName()) + crmCustomerTemp.getMobile(); + String customerNo = customerNoPrefix + HanZiConverterPinYin.getPinYinFirst(crmCustomerTemp.getName()) + crmCustomerTemp.getMobile(); crmCustomerTemp.setCustomerNo(customerNo); save(crmCustomerTemp); // 增加跟进记录 @@ -917,7 +994,32 @@ public class CrmCustomerTempService extends MybatisBaseService staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(customerTemp.getStaffSid()); + if (staffOrgResultBean.getSuccess()) { + SysStaffOrg sysStaffOrg = staffOrgResultBean.getData(); + if (sysStaffOrg != null) { + ResultBean resultBean1 = sysStaffOrgFeign.getOrgSidByPath(sysStaffOrg.getOrgSidPath()); + if (resultBean1.getSuccess()) { + String osid = resultBean1.getData(); + if (StringUtils.isNotBlank(osid)) { + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(osid); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgAbbre(); + } + } + } + String orgSid1 = sysStaffOrg.getOrgSid(); + ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(orgSid1); + if (sysOrganizationVoResultBean.getSuccess()) { + SysOrganizationVo sysOrganizationVo = sysOrganizationVoResultBean.getData(); + customerNoPrefix = customerNoPrefix + sysOrganizationVo.getOrgCode(); + } + } + } + String customerNo = customerNoPrefix + HanZiConverterPinYin.getPinYinFirst(customerTemp.getName()) + customerTemp.getMobile(); customerTemp.setCustomerNo(customerNo); baseMapper.updateById(customerTemp); //更新运营信息 diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenu.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenu.java new file mode 100644 index 0000000000..95452db7fe --- /dev/null +++ b/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; +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuAllVo.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuAllVo.java new file mode 100644 index 0000000000..f793fa65f7 --- /dev/null +++ b/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 list; +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuDto.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuDto.java new file mode 100644 index 0000000000..55ead8cbdd --- /dev/null +++ b/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; +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuFeign.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuFeign.java new file mode 100644 index 0000000000..92d58aa14c --- /dev/null +++ b/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 saveOrUpdate(@RequestBody SysMobileMenuDto dto); + + @ApiOperation("插件及应用列表 ") + @GetMapping("/list") + @ResponseBody + ResultBean list(); +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuFeignFallback.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuFeignFallback.java new file mode 100644 index 0000000000..337bb76faa --- /dev/null +++ b/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 saveOrUpdate(SysMobileMenuDto dto) { + return null; + } + + @Override + public ResultBean list() { + return null; + } +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuListVo.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuListVo.java new file mode 100644 index 0000000000..31989e557b --- /dev/null +++ b/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 mobileMenuList; +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuVo.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenu/SysMobileMenuVo.java new file mode 100644 index 0000000000..2bfc46a3f6 --- /dev/null +++ b/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 mobileMenuList; +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRole.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRole.java new file mode 100644 index 0000000000..8d0418fbaf --- /dev/null +++ b/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; +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleDto.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleDto.java new file mode 100644 index 0000000000..f430b66558 --- /dev/null +++ b/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; +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleFeign.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleFeign.java new file mode 100644 index 0000000000..858af1c39b --- /dev/null +++ b/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> getRoleMenuList(@RequestParam("roleSid") String roleSid); + + @ApiOperation("应用授权 ") + @PostMapping("/saveRoleMenuList") + @ResponseBody + ResultBean saveRoleMenuList(@RequestBody SysMobileMenuRoleDto dto); +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleFeignFallback.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleFeignFallback.java new file mode 100644 index 0000000000..e8d33c3717 --- /dev/null +++ b/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> getRoleMenuList(String roleSid) { + return null; + } + + @Override + public ResultBean saveRoleMenuList(SysMobileMenuRoleDto dto) { + return null; + } +} diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleVo.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysmobilemenurole/SysMobileMenuRoleVo.java new file mode 100644 index 0000000000..7bf8722228 --- /dev/null +++ b/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 childrenList; +} diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuMapper.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuMapper.java new file mode 100644 index 0000000000..9780fb0382 --- /dev/null +++ b/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 { + //插件列表及应用列表 + List listAll(@Param("path") String path, @Param("linkSid") String linkSid); +} diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuMapper.xml b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuMapper.xml new file mode 100644 index 0000000000..c88459a520 --- /dev/null +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuMapper.xml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuRest.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuRest.java new file mode 100644 index 0000000000..057ea3b889 --- /dev/null +++ b/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 saveOrUpdate(SysMobileMenuDto dto) { + return sysMobileMenuService.saveorUpdateAll(dto); + } + + @Override + public ResultBean list() { + return sysMobileMenuService.listAll(); + } +} diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenu/SysMobileMenuService.java new file mode 100644 index 0000000000..5b15cf8f13 --- /dev/null +++ b/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 { + @Autowired + private FileUploadComponent fileUploadComponent; + @Autowired + private AppVersionService appVersionService; + + public ResultBean saveorUpdateAll(SysMobileMenuDto dto) { + ResultBean 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 listAll() { + ResultBean 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 list = baseMapper.listAll(path, linkSid); + list.removeAll(Collections.singleton(null)); + vo.setList(list); + return rb.success().setData(vo); + } +} diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleMapper.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleMapper.java new file mode 100644 index 0000000000..6d45079c6b --- /dev/null +++ b/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 { + /** + * 查询插件下的应用 + * + * @param roleSid 角色sid + * @param s 插件下应用 + * @param appSid appSid + * @return + */ + List listAllByRoleSid(@Param("roleSid") String roleSid, @Param("psid") String s, @Param("appSid") String appSid); + + /** + * 查询应用下的应用 + * + * @param roleSid 角色sid + * @param sid 应用的sid + * @param appSid appSid + * @return + */ + List getChildrensByRoleSid(@Param("roleSid") String roleSid, @Param("psid") String sid, @Param("appSid") String appSid); + + /** + * 根据角色sid删除相关的菜单授权 + * + * @param roleSid 角色sid + * @return + */ + int deleteByRoleSid(String roleSid); +} diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleMapper.xml b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleMapper.xml new file mode 100644 index 0000000000..359080e133 --- /dev/null +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + + delete + from sys_mobile_menu_role + where roleSid = #{roleSid} + + \ No newline at end of file diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleRest.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleRest.java new file mode 100644 index 0000000000..7f138823c4 --- /dev/null +++ b/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> getRoleMenuList(String roleSid) { + return sysMobileMenuRoleService.getRoleMenuList(roleSid); + } + + @Override + public ResultBean saveRoleMenuList(SysMobileMenuRoleDto dto) { + return sysMobileMenuRoleService.saveRoleMenuList(dto); + } +} diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysmobilemenurole/SysMobileMenuRoleService.java new file mode 100644 index 0000000000..243a8a07cb --- /dev/null +++ b/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 { + + 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> getRoleMenuList(String roleSid) { + ResultBean> rb = new ResultBean<>(); + if (StringUtils.isBlank(roleSid)) { + return rb.setMsg("角色sid不能为空"); + } + //查询所有的插件 + String linkSid = LINKSID; + String path = fileUploadComponent.getUrlPrefix(); + List appSubsetVersionVoList = appSubsetVersionService.selectVersionList(linkSid, path); + List 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 listAllByRoleSid(String roleSid, String appSid) { + List 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 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(); + } +} diff --git a/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplication.vue b/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplication.vue index b7e09ed110..793b1f9962 100644 --- a/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplication.vue +++ b/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplication.vue @@ -524,6 +524,13 @@ export default { this.formobj.expenseName = vdata.expenseName // 费用名称 this.formobj.totalExpenseAmount = vdata.totalExpenseAmount // 费用金额合计 this.formobj.orgSid = vdata.orgSid // 部门sid + this.formobj.carBrandName = vdata.carBrandName + this.formobj.carBrandSid = vdata.carBrandSid + this.formobj.purchaseSystemName = vdata.purchaseSystemName + this.formobj.purchaseSystemSid = vdata.purchaseSystemSid + this.formobj.depositUseRuleValue = vdata.depositUseRuleValue + this.formobj.depositUseRuleKey = vdata.depositUseRuleKey + this.formobj.vehicleTypeKey = vdata.vehicleTypeKey this.formobj.baseOutsourcingApplicationVehicleDtos = vdata.baseOutsourcingApplicationVehicleVos } }).catch(e => { diff --git a/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationAdd.vue b/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationAdd.vue index 112029f970..2e8a4bc5c9 100644 --- a/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationAdd.vue +++ b/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationAdd.vue @@ -480,6 +480,16 @@ export default { } }) }, + ZongDeposit() { + if (this.formobj.purchasePrice !== '' && this.formobj.purchasePrice !== 0 && this.formobj.num !== '' && this.formobj.num !== 0) { + return parseInt(this.formobj.purchasePrice) * parseInt(this.formobj.num) + } + }, + ShengYuMoney() { + if (this.formobj.purchasePrice !== '' && this.formobj.purchasePrice !== 0 && this.formobj.num !== '' && this.formobj.num !== 0 && this.formobj.deposit !== '') { + return parseInt(this.formobj.purchasePrice) * parseInt(this.formobj.num) - parseInt(this.formobj.deposit) + } + }, // 删除附件 handleRemoveAttachment(file, files) { this.fileList = this.fileList.filter(item => item.uid !== file.uid) diff --git a/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationInfo.vue b/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationInfo.vue index 6340aff20a..176e7962af 100644 --- a/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationInfo.vue +++ b/anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationInfo.vue @@ -384,6 +384,13 @@ export default { this.formobj.expenseName = vdata.expenseName // 费用名称 this.formobj.totalExpenseAmount = vdata.totalExpenseAmount // 费用金额合计 this.formobj.orgSid = vdata.orgSid // 部门sid + this.formobj.carBrandName = vdata.carBrandName + this.formobj.carBrandSid = vdata.carBrandSid + this.formobj.purchaseSystemName = vdata.purchaseSystemName + this.formobj.purchaseSystemSid = vdata.purchaseSystemSid + this.formobj.depositUseRuleValue = vdata.depositUseRuleValue + this.formobj.depositUseRuleKey = vdata.depositUseRuleKey + this.formobj.vehicleTypeKey = vdata.vehicleTypeKey this.formobj.baseOutsourcingApplicationVehicleDtos = vdata.baseOutsourcingApplicationVehicleVos } }).catch(e => { diff --git a/doc/databases/portal_tables.sql b/doc/databases/portal_tables.sql index 2c289ab814..fb19e80c6a 100644 --- a/doc/databases/portal_tables.sql +++ b/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 ='移动端用户授权表';