From cf9081d69fb5d48deff392b7bf7c8c87bfaa22e9 Mon Sep 17 00:00:00 2001 From: 77 <77@77.com> Date: Sat, 3 Aug 2024 19:19:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/1.2.0.sql | 36 ++++++ .../cai/admin/AccountBlackController.java | 107 ++++++++++++++++++ .../com/ruoyi/cai/domain/AccountBlack.java | 39 +++++++ .../java/com/ruoyi/cai/domain/Anchor.java | 5 + .../ruoyi/cai/dto/admin/vo/UserAdminVo.java | 6 + .../ruoyi/cai/mapper/AccountBlackMapper.java | 18 +++ .../cai/service/AccountBlackService.java | 14 +++ .../service/impl/AccountBlackServiceImpl.java | 17 +++ .../mapper/cai/AccountBlackMapper.xml | 20 ++++ 9 files changed, 262 insertions(+) create mode 100644 doc/1.2.0.sql create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/web/controller/cai/admin/AccountBlackController.java create mode 100644 ruoyi-cai/src/main/java/com/ruoyi/cai/domain/AccountBlack.java create mode 100644 ruoyi-cai/src/main/java/com/ruoyi/cai/mapper/AccountBlackMapper.java create mode 100644 ruoyi-cai/src/main/java/com/ruoyi/cai/service/AccountBlackService.java create mode 100644 ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/AccountBlackServiceImpl.java create mode 100644 ruoyi-cai/src/main/resources/mapper/cai/AccountBlackMapper.xml diff --git a/doc/1.2.0.sql b/doc/1.2.0.sql new file mode 100644 index 00000000..0c93f50c --- /dev/null +++ b/doc/1.2.0.sql @@ -0,0 +1,36 @@ +CREATE TABLE `cai_account_black` +( + `id` bigint unsigned NOT NULL, + `card_account` varchar(50) NOT NULL COMMENT '账户号', + `card_name` varchar(50) NOT NULL COMMENT '账户名称', + `enable_status` tinyint NOT NULL DEFAULT '1' COMMENT '是否开启', + `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + PRIMARY KEY (`id`) USING BTREE, + KEY `idx_account` (`card_account`, `card_name`) USING BTREE +) ENGINE = InnoDB + DEFAULT CHARSET = utf8mb4 + COLLATE = utf8mb4_general_ci + ROW_FORMAT = DYNAMIC COMMENT ='账户黑名单'; + +ALTER TABLE `cai_anchor` +ADD COLUMN `enable_greet` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否允许群发' AFTER `recommend_status`; + +-- 菜单 SQL +insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +values(1819683762522001409, '账户黑名单', '1737668638361206786', '1', 'accountBlack', 'cai/accountBlack/index', 1, 0, 'C', '0', '0', 'cai:accountBlack:list', '#', 'admin', sysdate(), '', null, '账户黑名单菜单'); + +-- 按钮 SQL +insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +values(1819683762522001410, '账户黑名单查询', 1819683762522001409, '1', '#', '', 1, 0, 'F', '0', '0', 'cai:accountBlack:query', '#', 'admin', sysdate(), '', null, ''); + +insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +values(1819683762522001411, '账户黑名单新增', 1819683762522001409, '2', '#', '', 1, 0, 'F', '0', '0', 'cai:accountBlack:add', '#', 'admin', sysdate(), '', null, ''); + +insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +values(1819683762522001412, '账户黑名单修改', 1819683762522001409, '3', '#', '', 1, 0, 'F', '0', '0', 'cai:accountBlack:edit', '#', 'admin', sysdate(), '', null, ''); + +insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +values(1819683762522001413, '账户黑名单删除', 1819683762522001409, '4', '#', '', 1, 0, 'F', '0', '0', 'cai:accountBlack:remove', '#', 'admin', sysdate(), '', null, ''); + +insert into sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +values(1819683762522001414, '账户黑名单导出', 1819683762522001409, '5', '#', '', 1, 0, 'F', '0', '0', 'cai:accountBlack:export', '#', 'admin', sysdate(), '', null, ''); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/cai/admin/AccountBlackController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/cai/admin/AccountBlackController.java new file mode 100644 index 00000000..223a87c4 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/cai/admin/AccountBlackController.java @@ -0,0 +1,107 @@ +package com.ruoyi.web.controller.cai.admin; + +import cn.dev33.satoken.annotation.SaCheckPermission; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.cai.domain.AccountBlack; +import com.ruoyi.cai.dto.admin.vo.UserAdminVo; +import com.ruoyi.cai.mapper.AccountBlackMapper; +import com.ruoyi.cai.mapper.AccountMapper; +import com.ruoyi.cai.service.AccountBlackService; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.annotation.RepeatSubmit; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.PageQuery; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.core.validate.AddGroup; +import com.ruoyi.common.core.validate.EditGroup; +import com.ruoyi.common.enums.BusinessType; +import lombok.RequiredArgsConstructor; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; +import java.util.Arrays; + +/** + * 账户黑名单 + * + * @author 77 + * @date 2024-08-03 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/cai/accountBlack") +public class AccountBlackController extends BaseController { + + private final AccountBlackService accountBlackService; + @Resource + private AccountBlackMapper accountBlackMapper; + + /** + * 查询账户黑名单列表 + */ + @SaCheckPermission("cai:accountBlack:list") + @GetMapping("/list") + public TableDataInfo list(AccountBlack bo, PageQuery pageQuery) { + Page page = accountBlackService.page(pageQuery.build(), Wrappers.lambdaQuery(bo)); + return TableDataInfo.build(page); + } + + @GetMapping("/user") + public TableDataInfo userList(AccountBlack bo, PageQuery pageQuery) { + Page page = accountBlackMapper.pageUserAdmin(pageQuery.build(), bo.getCardAccount(), bo.getCardName()); + return TableDataInfo.build(page); + } + + /** + * 获取账户黑名单详细信息 + * + * @param id 主键 + */ + @SaCheckPermission("cai:accountBlack:query") + @GetMapping("/{id}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable String id) { + return R.ok(accountBlackService.getById(id)); + } + + /** + * 新增账户黑名单 + */ + @SaCheckPermission("cai:accountBlack:add") + @Log(title = "账户黑名单", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody AccountBlack bo) { + return toAjax(accountBlackService.save(bo)); + } + + /** + * 修改账户黑名单 + */ + @SaCheckPermission("cai:accountBlack:edit") + @Log(title = "账户黑名单", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody AccountBlack bo) { + return toAjax(accountBlackService.updateById(bo)); + } + + /** + * 删除账户黑名单 + * + * @param ids 主键串 + */ + @SaCheckPermission("cai:accountBlack:remove") + @Log(title = "账户黑名单", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable String[] ids) { + return toAjax(accountBlackService.removeBatchByIds(Arrays.asList(ids))); + } +} diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/AccountBlack.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/AccountBlack.java new file mode 100644 index 00000000..9b38c6cd --- /dev/null +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/AccountBlack.java @@ -0,0 +1,39 @@ +package com.ruoyi.cai.domain; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + * 账户黑名单对象 cai_account_black + * + * @author 77 + * @date 2024-08-03 + */ +@Data +@TableName("cai_account_black") +public class AccountBlack implements Serializable { + + private static final long serialVersionUID=1L; + + /** + * + */ + @TableId(value = "id") + private String id; + private String cardAccount; + /** + * 账户名称 + */ + private String cardName; + /** + * 是否开启 + */ + private Integer enableStatus; + + private LocalDateTime createTime; + +} diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/Anchor.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/Anchor.java index b55b6b8f..ce7dc67b 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/Anchor.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/domain/Anchor.java @@ -85,6 +85,11 @@ public class Anchor implements Serializable{ */ private Integer status; + /** + * 是否允许 发布群发 + */ + private Integer enableGreet; + private LocalDateTime createTime; } diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/vo/UserAdminVo.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/vo/UserAdminVo.java index f805ccac..f0626a7f 100644 --- a/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/vo/UserAdminVo.java +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/dto/admin/vo/UserAdminVo.java @@ -33,4 +33,10 @@ public class UserAdminVo extends User { private LocalDateTime regBeginTime; private LocalDateTime regEndTime; + + private String cardAccount; + /** + * 账户名称 + */ + private String cardName; } diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/mapper/AccountBlackMapper.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/mapper/AccountBlackMapper.java new file mode 100644 index 00000000..7a498dcc --- /dev/null +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/mapper/AccountBlackMapper.java @@ -0,0 +1,18 @@ +package com.ruoyi.cai.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.cai.domain.AccountBlack; +import com.ruoyi.cai.dto.admin.vo.UserAdminVo; +import org.apache.ibatis.annotations.Param; + +/** + * 账户黑名单Mapper接口 + * + * @author 77 + * @date 2024-08-03 + */ +public interface AccountBlackMapper extends BaseMapper { + + Page pageUserAdmin(@Param("build") Page build, @Param("cardAccount") String cardAccount, @Param("cardName") String cardName); +} diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/AccountBlackService.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/AccountBlackService.java new file mode 100644 index 00000000..cd005c83 --- /dev/null +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/AccountBlackService.java @@ -0,0 +1,14 @@ +package com.ruoyi.cai.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.cai.domain.AccountBlack; + +/** + * 账户黑名单Service接口 + * + * @author 77 + * @date 2024-08-03 + */ +public interface AccountBlackService extends IService { + +} diff --git a/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/AccountBlackServiceImpl.java b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/AccountBlackServiceImpl.java new file mode 100644 index 00000000..4fe0c4a0 --- /dev/null +++ b/ruoyi-cai/src/main/java/com/ruoyi/cai/service/impl/AccountBlackServiceImpl.java @@ -0,0 +1,17 @@ +package com.ruoyi.cai.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.cai.domain.AccountBlack; +import com.ruoyi.cai.mapper.AccountBlackMapper; +import com.ruoyi.cai.service.AccountBlackService; +import org.springframework.stereotype.Service; + +/** + * 账户黑名单Service业务层处理 + * + * @author 77 + * @date 2024-08-03 + */ +@Service +public class AccountBlackServiceImpl extends ServiceImpl implements AccountBlackService { +} diff --git a/ruoyi-cai/src/main/resources/mapper/cai/AccountBlackMapper.xml b/ruoyi-cai/src/main/resources/mapper/cai/AccountBlackMapper.xml new file mode 100644 index 00000000..7f0767fb --- /dev/null +++ b/ruoyi-cai/src/main/resources/mapper/cai/AccountBlackMapper.xml @@ -0,0 +1,20 @@ + + + + + + + +