From ff3b36036c20dd6159774d1f468f6eeecfce27a1 Mon Sep 17 00:00:00 2001 From: "382696293@qq.com" <382696293@qq.com> Date: Thu, 21 Dec 2023 16:47:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=9A=E5=91=98=E7=AE=A1=E7=90=86=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/domain/entity/WxUserTag.java | 2 +- .../common/core/enums/TagTypeStatus.java | 2 +- .../common/core/mapper/SysTagMapper.java | 2 + .../main/resources/mapper/SysTagMapper.xml | 11 +- .../ActivityChannelInfoController.java | 10 ++ .../system/controller/SysTagController.java | 62 ++++---- .../service/IActivityChannelInfoService.java | 4 + .../system/service/ISysTagService.java | 5 + .../impl/ActivityChannelInfoServiceImpl.java | 43 ++++-- .../service/impl/SysTagServiceImpl.java | 144 +++++++++--------- flossom-ui/src/api/system/member.js | 30 ++++ flossom-ui/src/views/system/member/index.vue | 112 +++++++++++++- 12 files changed, 308 insertions(+), 119 deletions(-) diff --git a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/domain/entity/WxUserTag.java b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/domain/entity/WxUserTag.java index d2cc666..71f1ef8 100644 --- a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/domain/entity/WxUserTag.java +++ b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/domain/entity/WxUserTag.java @@ -34,7 +34,7 @@ public class WxUserTag extends BaseEntity { private Long tagId; /** - * 标签类型:1企业微信标签 2小程序标签 + * 标签类型:1小程序标签 2企业微信标签 */ private Integer type; diff --git a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/enums/TagTypeStatus.java b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/enums/TagTypeStatus.java index 85a19dc..5d4a12b 100644 --- a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/enums/TagTypeStatus.java +++ b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/enums/TagTypeStatus.java @@ -6,7 +6,7 @@ package com.flossom.common.core.enums; * @author flossom */ public enum TagTypeStatus { - ENTERPRISE_WECHAT(1, "正常"), MINI_PROGRAM(2, "停用"); + MINI_PROGRAM(1, "小程序标签"), ENTERPRISE_WECHAT(2, "企业微信标签"); private final Integer code; private final String info; diff --git a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/SysTagMapper.java b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/SysTagMapper.java index c550488..472fdc1 100644 --- a/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/SysTagMapper.java +++ b/flossom-common/flossom-common-core/src/main/java/com/flossom/common/core/mapper/SysTagMapper.java @@ -115,4 +115,6 @@ public interface SysTagMapper { * @return 结果 */ public int deleteDeptById(Long id); + + List selectSecondTagByType(@Param("type") Integer type); } diff --git a/flossom-common/flossom-common-core/src/main/resources/mapper/SysTagMapper.xml b/flossom-common/flossom-common-core/src/main/resources/mapper/SysTagMapper.xml index 440f047..5e74cad 100644 --- a/flossom-common/flossom-common-core/src/main/resources/mapper/SysTagMapper.xml +++ b/flossom-common/flossom-common-core/src/main/resources/mapper/SysTagMapper.xml @@ -89,7 +89,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where tag_name=#{tagName} and parent_id = #{parentId} and del_flag = '0' limit 1 - + + + insert into sys_tag( id, parent_id, diff --git a/flossom-modules/flossom-system/src/main/java/com/flossom/system/controller/ActivityChannelInfoController.java b/flossom-modules/flossom-system/src/main/java/com/flossom/system/controller/ActivityChannelInfoController.java index c52ad35..03dc69c 100644 --- a/flossom-modules/flossom-system/src/main/java/com/flossom/system/controller/ActivityChannelInfoController.java +++ b/flossom-modules/flossom-system/src/main/java/com/flossom/system/controller/ActivityChannelInfoController.java @@ -4,6 +4,7 @@ import java.util.List; import java.io.IOException; import javax.servlet.http.HttpServletResponse; +import com.flossom.common.core.domain.R; import com.flossom.common.core.domain.entity.ActivityChannelInfo; import com.flossom.common.core.utils.poi.ExcelUtil; import com.flossom.common.core.web.controller.BaseController; @@ -103,4 +104,13 @@ public class ActivityChannelInfoController extends BaseController { return toAjax(activityChannelInfoService.deleteActivityChannelInfoByIds(ids)); } + + /** + * 获取购买渠道 + * @return + */ + @GetMapping("/getPurchaseChannel") + public R getPurchaseChannel() { + return R.ok(activityChannelInfoService.getPurchaseChannel()); + } } diff --git a/flossom-modules/flossom-system/src/main/java/com/flossom/system/controller/SysTagController.java b/flossom-modules/flossom-system/src/main/java/com/flossom/system/controller/SysTagController.java index daa6349..1735059 100644 --- a/flossom-modules/flossom-system/src/main/java/com/flossom/system/controller/SysTagController.java +++ b/flossom-modules/flossom-system/src/main/java/com/flossom/system/controller/SysTagController.java @@ -1,6 +1,7 @@ package com.flossom.system.controller; import com.flossom.common.core.constant.UserConstants; +import com.flossom.common.core.domain.R; import com.flossom.common.core.domain.entity.SysDept; import com.flossom.common.core.domain.entity.SysTag; import com.flossom.common.core.utils.StringUtils; @@ -26,8 +27,7 @@ import java.util.List; */ @RestController @RequestMapping("/tagInfo") -public class SysTagController extends BaseController -{ +public class SysTagController extends BaseController { @Autowired private ISysTagService tagService; @@ -36,8 +36,7 @@ public class SysTagController extends BaseController */ @RequiresPermissions("system:dept:list") @GetMapping("/list") - public AjaxResult list(SysTag sysTag) - { + public AjaxResult list(SysTag sysTag) { List tags = tagService.selectDeptList(sysTag); return success(tags); } @@ -47,8 +46,7 @@ public class SysTagController extends BaseController */ @RequiresPermissions("system:tagInfo:list") @GetMapping("/list/exclude/{id}") - public AjaxResult excludeChild(@PathVariable(value = "id", required = false) Long id) - { + public AjaxResult excludeChild(@PathVariable(value = "id", required = false) Long id) { List tags = tagService.selectDeptList(new SysTag()); tags.removeIf(d -> d.getId().intValue() == id || ArrayUtils.contains(StringUtils.split(d.getAncestors(), ","), id + "")); return success(tags); @@ -59,8 +57,7 @@ public class SysTagController extends BaseController */ @RequiresPermissions("system:tagInfo:query") @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable Long id) - { + public AjaxResult getInfo(@PathVariable Long id) { tagService.checkDeptDataScope(id); return success(tagService.selectDeptById(id)); } @@ -71,10 +68,8 @@ public class SysTagController extends BaseController @RequiresPermissions("system:tagInfo:add") @Log(title = "标签管理", businessType = BusinessType.INSERT) @PostMapping - public AjaxResult add(@Validated @RequestBody SysTag tag) - { - if (!tagService.checkDeptNameUnique(tag)) - { + public AjaxResult add(@Validated @RequestBody SysTag tag) { + if (!tagService.checkDeptNameUnique(tag)) { return error("新增标签'" + tag.getTagName() + "'失败,标签名称已存在"); } tag.setCreateBy(SecurityUtils.getUsername()); @@ -87,20 +82,14 @@ public class SysTagController extends BaseController @RequiresPermissions("system:tagInfo:edit") @Log(title = "标签管理", businessType = BusinessType.UPDATE) @PutMapping - public AjaxResult edit(@Validated @RequestBody SysTag tag) - { + public AjaxResult edit(@Validated @RequestBody SysTag tag) { Long id = tag.getId(); tagService.checkDeptDataScope(id); - if (!tagService.checkDeptNameUnique(tag)) - { + if (!tagService.checkDeptNameUnique(tag)) { return error("修改标签'" + tag.getTagName() + "'失败,标签名称已存在"); - } - else if (tag.getParentId().equals(id)) - { + } else if (tag.getParentId().equals(id)) { return error("修改标签'" + tag.getTagName() + "'失败,上级标签不能是自己"); - } - else if (StringUtils.equals(UserConstants.DEPT_DISABLE, tag.getStatus()) && tagService.selectNormalChildrenDeptById(id) > 0) - { + } else if (StringUtils.equals(UserConstants.DEPT_DISABLE, tag.getStatus()) && tagService.selectNormalChildrenDeptById(id) > 0) { return error("该标签包含未停用的子标签!"); } tag.setUpdateBy(SecurityUtils.getUsername()); @@ -113,10 +102,8 @@ public class SysTagController extends BaseController @RequiresPermissions("system:dept:remove") @Log(title = "标签管理", businessType = BusinessType.DELETE) @DeleteMapping("/{id}") - public AjaxResult remove(@PathVariable Long id) - { - if (tagService.hasChildByDeptId(id)) - { + public AjaxResult remove(@PathVariable Long id) { + if (tagService.hasChildByDeptId(id)) { return warn("存在下级标签,不允许删除"); } // if (tagService.checkDeptExistUser(id)) @@ -133,8 +120,27 @@ public class SysTagController extends BaseController */ @RequiresPermissions("system:user:list") @GetMapping("/tagTree") - public AjaxResult tagTree(SysTag tag) - { + public AjaxResult tagTree(SysTag tag) { return success(tagService.selectTagTreeList(tag)); } + + /** + * 获取小程序标签 + * + * @return + */ + @GetMapping("/getMiniProgramTags") + public R getMiniProgramTags() { + return R.ok(tagService.getMiniProgramTags()); + } + + /** + * 获取企微标签 + * + * @return + */ + @GetMapping("/getWecomTags") + public R getWecomTags() { + return R.ok(tagService.getWecomTags()); + } } diff --git a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/IActivityChannelInfoService.java b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/IActivityChannelInfoService.java index 9a0e029..b3c9050 100644 --- a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/IActivityChannelInfoService.java +++ b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/IActivityChannelInfoService.java @@ -3,6 +3,7 @@ package com.flossom.system.service; import com.flossom.common.core.domain.entity.ActivityChannelInfo; import java.util.List; +import java.util.Map; /** * 活动渠道信息Service接口 @@ -59,4 +60,7 @@ public interface IActivityChannelInfoService * @return 结果 */ public int deleteActivityChannelInfoById(Long id); + + List> getPurchaseChannel(); + } diff --git a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/ISysTagService.java b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/ISysTagService.java index fd03429..3a84967 100644 --- a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/ISysTagService.java +++ b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/ISysTagService.java @@ -5,6 +5,7 @@ import com.flossom.common.core.domain.entity.SysTag; import com.flossom.common.core.domain.vo.TreeSelect; import java.util.List; +import java.util.Map; /** @@ -132,4 +133,8 @@ public interface ISysTagService * @return 标签树信息集合 */ public List selectTagTreeList(SysTag tag); + + List> getMiniProgramTags(); + + List> getWecomTags(); } diff --git a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/ActivityChannelInfoServiceImpl.java b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/ActivityChannelInfoServiceImpl.java index 2b5be8e..c1c7fbc 100644 --- a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/ActivityChannelInfoServiceImpl.java +++ b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/ActivityChannelInfoServiceImpl.java @@ -1,8 +1,12 @@ package com.flossom.system.service.impl; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; import com.flossom.common.core.domain.entity.ActivityChannelInfo; +import com.flossom.common.core.domain.entity.SysTag; import com.flossom.common.core.mapper.ActivityChannelInfoMapper; import com.flossom.common.core.utils.DateUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -16,8 +20,7 @@ import com.flossom.system.service.IActivityChannelInfoService; * @date 2023-12-20 */ @Service -public class ActivityChannelInfoServiceImpl implements IActivityChannelInfoService -{ +public class ActivityChannelInfoServiceImpl implements IActivityChannelInfoService { @Autowired private ActivityChannelInfoMapper activityChannelInfoMapper; @@ -28,8 +31,7 @@ public class ActivityChannelInfoServiceImpl implements IActivityChannelInfoServi * @return 活动渠道信息 */ @Override - public ActivityChannelInfo selectActivityChannelInfoById(Long id) - { + public ActivityChannelInfo selectActivityChannelInfoById(Long id) { return activityChannelInfoMapper.selectActivityChannelInfoById(id); } @@ -40,8 +42,7 @@ public class ActivityChannelInfoServiceImpl implements IActivityChannelInfoServi * @return 活动渠道信息 */ @Override - public List selectActivityChannelInfoList(ActivityChannelInfo activityChannelInfo) - { + public List selectActivityChannelInfoList(ActivityChannelInfo activityChannelInfo) { return activityChannelInfoMapper.selectActivityChannelInfoList(activityChannelInfo); } @@ -52,8 +53,7 @@ public class ActivityChannelInfoServiceImpl implements IActivityChannelInfoServi * @return 结果 */ @Override - public int insertActivityChannelInfo(ActivityChannelInfo activityChannelInfo) - { + public int insertActivityChannelInfo(ActivityChannelInfo activityChannelInfo) { activityChannelInfo.setCreateTime(DateUtils.getNowDate()); return activityChannelInfoMapper.insertActivityChannelInfo(activityChannelInfo); } @@ -65,8 +65,7 @@ public class ActivityChannelInfoServiceImpl implements IActivityChannelInfoServi * @return 结果 */ @Override - public int updateActivityChannelInfo(ActivityChannelInfo activityChannelInfo) - { + public int updateActivityChannelInfo(ActivityChannelInfo activityChannelInfo) { return activityChannelInfoMapper.updateActivityChannelInfo(activityChannelInfo); } @@ -77,8 +76,7 @@ public class ActivityChannelInfoServiceImpl implements IActivityChannelInfoServi * @return 结果 */ @Override - public int deleteActivityChannelInfoByIds(Long[] ids) - { + public int deleteActivityChannelInfoByIds(Long[] ids) { return activityChannelInfoMapper.deleteActivityChannelInfoByIds(ids); } @@ -89,8 +87,25 @@ public class ActivityChannelInfoServiceImpl implements IActivityChannelInfoServi * @return 结果 */ @Override - public int deleteActivityChannelInfoById(Long id) - { + public int deleteActivityChannelInfoById(Long id) { return activityChannelInfoMapper.deleteActivityChannelInfoById(id); } + + @Override + public List> getPurchaseChannel() { + List> channelList = new ArrayList<>(); + ActivityChannelInfo query = new ActivityChannelInfo(); + List activityChannelInfoList = activityChannelInfoMapper.selectActivityChannelInfoList(query); + if (activityChannelInfoList != null && activityChannelInfoList.size() > 0) { + Map map; + for (ActivityChannelInfo activityChannelInfo : activityChannelInfoList) { + map = new HashMap<>(); + map.put("label", activityChannelInfo.getChannelName()); + map.put("value", activityChannelInfo.getId()); + channelList.add(map); + } + } + + return channelList; + } } diff --git a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/SysTagServiceImpl.java b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/SysTagServiceImpl.java index 8eb57d2..f7ffb30 100644 --- a/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/SysTagServiceImpl.java +++ b/flossom-modules/flossom-system/src/main/java/com/flossom/system/service/impl/SysTagServiceImpl.java @@ -6,6 +6,7 @@ import com.flossom.common.core.domain.entity.SysRole; import com.flossom.common.core.domain.entity.SysTag; import com.flossom.common.core.domain.entity.SysUser; import com.flossom.common.core.domain.vo.TreeSelect; +import com.flossom.common.core.enums.TagTypeStatus; import com.flossom.common.core.exception.ServiceException; import com.flossom.common.core.mapper.SysDeptMapper; import com.flossom.common.core.mapper.SysRoleMapper; @@ -20,10 +21,7 @@ import com.flossom.system.service.ISysTagService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; /** @@ -32,8 +30,7 @@ import java.util.stream.Collectors; * @author flossom */ @Service -public class SysTagServiceImpl implements ISysTagService -{ +public class SysTagServiceImpl implements ISysTagService { @Autowired private SysTagMapper tagMapper; @@ -48,8 +45,7 @@ public class SysTagServiceImpl implements ISysTagService */ @Override @DataScope(deptAlias = "d") - public List selectDeptList(SysTag tag) - { + public List selectDeptList(SysTag tag) { return tagMapper.selectDeptList(tag); } @@ -60,8 +56,7 @@ public class SysTagServiceImpl implements ISysTagService * @return 标签树信息集合 */ @Override - public List selectDeptTreeList(SysTag tag) - { + public List selectDeptTreeList(SysTag tag) { List tags = SpringUtils.getAopProxy(this).selectDeptList(tag); return buildDeptTreeSelect(tags); } @@ -73,21 +68,17 @@ public class SysTagServiceImpl implements ISysTagService * @return 树结构列表 */ @Override - public List buildDeptTree(List tags) - { + public List buildDeptTree(List tags) { List returnList = new ArrayList(); List tempList = tags.stream().map(SysTag::getId).collect(Collectors.toList()); - for (SysTag tag : tags) - { + for (SysTag tag : tags) { // 如果是顶级节点, 遍历该父节点的所有子节点 - if (!tempList.contains(tag.getParentId())) - { + if (!tempList.contains(tag.getParentId())) { recursionFn(tags, tag); returnList.add(tag); } } - if (returnList.isEmpty()) - { + if (returnList.isEmpty()) { returnList = tags; } return returnList; @@ -100,8 +91,7 @@ public class SysTagServiceImpl implements ISysTagService * @return 下拉树结构列表 */ @Override - public List buildDeptTreeSelect(List tags) - { + public List buildDeptTreeSelect(List tags) { List deptTrees = buildDeptTree(tags); return deptTrees.stream().map(TreeSelect::new).collect(Collectors.toList()); } @@ -113,8 +103,7 @@ public class SysTagServiceImpl implements ISysTagService * @return 选中标签列表 */ @Override - public List selectDeptListByRoleId(Long roleId) - { + public List selectDeptListByRoleId(Long roleId) { SysRole role = roleMapper.selectRoleById(roleId); return tagMapper.selectDeptListByRoleId(roleId, role.isDeptCheckStrictly()); } @@ -126,8 +115,7 @@ public class SysTagServiceImpl implements ISysTagService * @return 标签信息 */ @Override - public SysTag selectDeptById(Long id) - { + public SysTag selectDeptById(Long id) { return tagMapper.selectDeptById(id); } @@ -138,8 +126,7 @@ public class SysTagServiceImpl implements ISysTagService * @return 子标签数 */ @Override - public int selectNormalChildrenDeptById(Long id) - { + public int selectNormalChildrenDeptById(Long id) { return tagMapper.selectNormalChildrenDeptById(id); } @@ -150,8 +137,7 @@ public class SysTagServiceImpl implements ISysTagService * @return 结果 */ @Override - public boolean hasChildByDeptId(Long id) - { + public boolean hasChildByDeptId(Long id) { int result = tagMapper.hasChildByDeptId(id); return result > 0; } @@ -163,8 +149,7 @@ public class SysTagServiceImpl implements ISysTagService * @return 结果 true 存在 false 不存在 */ @Override - public boolean checkDeptExistUser(Long id) - { + public boolean checkDeptExistUser(Long id) { int result = tagMapper.checkDeptExistUser(id); return result > 0; } @@ -176,12 +161,10 @@ public class SysTagServiceImpl implements ISysTagService * @return 结果 */ @Override - public boolean checkDeptNameUnique(SysTag tag) - { + public boolean checkDeptNameUnique(SysTag tag) { Long deptId = StringUtils.isNull(tag.getId()) ? -1L : tag.getId(); SysTag info = tagMapper.checkDeptNameUnique(tag.getTagName(), tag.getParentId()); - if (StringUtils.isNotNull(info) && info.getId().longValue() != deptId.longValue()) - { + if (StringUtils.isNotNull(info) && info.getId().longValue() != deptId.longValue()) { return UserConstants.NOT_UNIQUE; } return UserConstants.UNIQUE; @@ -193,15 +176,12 @@ public class SysTagServiceImpl implements ISysTagService * @param id 标签id */ @Override - public void checkDeptDataScope(Long id) - { - if (!SysUser.isAdmin(SecurityUtils.getUserId())) - { + public void checkDeptDataScope(Long id) { + if (!SysUser.isAdmin(SecurityUtils.getUserId())) { SysTag tag = new SysTag(); tag.setId(id); List tags = SpringUtils.getAopProxy(this).selectDeptList(tag); - if (StringUtils.isEmpty(tags)) - { + if (StringUtils.isEmpty(tags)) { throw new ServiceException("没有权限访问标签数据!"); } } @@ -214,15 +194,14 @@ public class SysTagServiceImpl implements ISysTagService * @return 结果 */ @Override - public int insertDept(SysTag tag) - { + public int insertDept(SysTag tag) { SysTag info = tagMapper.selectDeptById(tag.getParentId()); // 如果父节点不为正常状态,则不允许新增子节点 // if (!UserConstants.DEPT_NORMAL.equals(info.getStatus())) // { // throw new ServiceException("标签停用,不允许新增"); // } - if(Objects.isNull(info)) { + if (Objects.isNull(info)) { tag.setAncestors("0"); tag.setParentId(0l); } @@ -237,12 +216,10 @@ public class SysTagServiceImpl implements ISysTagService * @return 结果 */ @Override - public int updateDept(SysTag tag) - { + public int updateDept(SysTag tag) { SysTag newParentDept = tagMapper.selectDeptById(tag.getParentId()); SysTag oldDept = tagMapper.selectDeptById(tag.getId()); - if (StringUtils.isNotNull(newParentDept) && StringUtils.isNotNull(oldDept)) - { + if (StringUtils.isNotNull(newParentDept) && StringUtils.isNotNull(oldDept)) { String newAncestors = newParentDept.getAncestors() + "," + newParentDept.getId(); String oldAncestors = oldDept.getAncestors(); tag.setAncestors(newAncestors); @@ -250,8 +227,7 @@ public class SysTagServiceImpl implements ISysTagService } int result = tagMapper.updateDept(tag); if (UserConstants.DEPT_NORMAL.equals(tag.getStatus()) && StringUtils.isNotEmpty(tag.getAncestors()) - && !StringUtils.equals("0", tag.getAncestors())) - { + && !StringUtils.equals("0", tag.getAncestors())) { // 如果该标签是启用状态,则启用该标签的所有上级标签 updateParentDeptStatusNormal(tag); } @@ -263,8 +239,7 @@ public class SysTagServiceImpl implements ISysTagService * * @param */ - private void updateParentDeptStatusNormal(SysTag tag) - { + private void updateParentDeptStatusNormal(SysTag tag) { String ancestors = tag.getAncestors(); Long[] deptIds = Convert.toLongArray(ancestors); tagMapper.updateDeptStatusNormal(deptIds); @@ -277,15 +252,12 @@ public class SysTagServiceImpl implements ISysTagService * @param newAncestors 新的父ID集合 * @param oldAncestors 旧的父ID集合 */ - public void updateDeptChildren(Long id, String newAncestors, String oldAncestors) - { + public void updateDeptChildren(Long id, String newAncestors, String oldAncestors) { List children = tagMapper.selectChildrenDeptById(id); - for (SysTag child : children) - { + for (SysTag child : children) { child.setAncestors(child.getAncestors().replaceFirst(oldAncestors, newAncestors)); } - if (children.size() > 0) - { + if (children.size() > 0) { tagMapper.updateDeptChildren(children); } } @@ -297,8 +269,7 @@ public class SysTagServiceImpl implements ISysTagService * @return 结果 */ @Override - public int deleteDeptById(Long id) - { + public int deleteDeptById(Long id) { return tagMapper.deleteDeptById(id); } @@ -308,18 +279,49 @@ public class SysTagServiceImpl implements ISysTagService return buildDeptTreeSelect(tags); } + @Override + public List> getMiniProgramTags() { + List> tagList = new ArrayList<>(); + // 获取小程序标签 + List miniProgramTags = tagMapper.selectSecondTagByType(TagTypeStatus.MINI_PROGRAM.getCode()); + if (miniProgramTags != null && miniProgramTags.size() > 0) { + Map map; + for (SysTag miniProgramTag : miniProgramTags) { + map = new HashMap<>(); + map.put("label", miniProgramTag.getTagName()); + map.put("value", miniProgramTag.getId()); + tagList.add(map); + } + } + return tagList; + } + + @Override + public List> getWecomTags() { + List> tagList = new ArrayList<>(); + // 获取小程序标签 + List miniProgramTags = tagMapper.selectSecondTagByType(TagTypeStatus.ENTERPRISE_WECHAT.getCode()); + if (miniProgramTags != null && miniProgramTags.size() > 0) { + Map map; + for (SysTag miniProgramTag : miniProgramTags) { + map = new HashMap<>(); + map.put("label", miniProgramTag.getTagName()); + map.put("value", miniProgramTag.getId()); + tagList.add(map); + } + } + return tagList; + } + /** * 递归列表 */ - private void recursionFn(List list, SysTag t) - { + private void recursionFn(List list, SysTag t) { // 得到子节点列表 List childList = getChildList(list, t); t.setChildren(childList); - for (SysTag tChild : childList) - { - if (hasChild(list, tChild)) - { + for (SysTag tChild : childList) { + if (hasChild(list, tChild)) { recursionFn(list, tChild); } } @@ -328,15 +330,12 @@ public class SysTagServiceImpl implements ISysTagService /** * 得到子节点列表 */ - private List getChildList(List list, SysTag t) - { + private List getChildList(List list, SysTag t) { List tlist = new ArrayList(); Iterator it = list.iterator(); - while (it.hasNext()) - { + while (it.hasNext()) { SysTag n = (SysTag) it.next(); - if (StringUtils.isNotNull(n.getParentId()) && n.getParentId().longValue() == t.getId().longValue()) - { + if (StringUtils.isNotNull(n.getParentId()) && n.getParentId().longValue() == t.getId().longValue()) { tlist.add(n); } } @@ -346,8 +345,7 @@ public class SysTagServiceImpl implements ISysTagService /** * 判断是否有子节点 */ - private boolean hasChild(List list, SysTag t) - { + private boolean hasChild(List list, SysTag t) { return getChildList(list, t).size() > 0 ? true : false; } } diff --git a/flossom-ui/src/api/system/member.js b/flossom-ui/src/api/system/member.js index da16d5a..a481632 100644 --- a/flossom-ui/src/api/system/member.js +++ b/flossom-ui/src/api/system/member.js @@ -42,3 +42,33 @@ export function delMember(id) { method: 'delete' }) } + +export function selectUserCount() { + return request({ + url: '/system/member/selectUserCount', + method: 'get', + }) +} + +export function getMiniProgramTags() { + return request({ + url: '/system/tagInfo/getMiniProgramTags', + method: 'get', + }) +} + +export function getWecomTags() { + return request({ + url: '/system/tagInfo/getWecomTags', + method: 'get', + }) +} + +export function getPurchaseChannel() { + return request({ + url: '/system/channelInfo/getPurchaseChannel', + method: 'get', + }) +} + + diff --git a/flossom-ui/src/views/system/member/index.vue b/flossom-ui/src/views/system/member/index.vue index e3f646e..823bdee 100644 --- a/flossom-ui/src/views/system/member/index.vue +++ b/flossom-ui/src/views/system/member/index.vue @@ -1,5 +1,10 @@