博客
关于我
抖音后端自动批量关注点赞(供学习参考使用)含java源码及数据库文件
阅读量:274 次
发布时间:2019-02-26

本文共 4226 字,大约阅读时间需要 14 分钟。

后端开发项目文档

登录接口

提供基于用户名密码的登录功能,支持状态管理和权限控制。

@PostMapping("/login")@ResponseBodypublic R login(String username, String password) {    String encodedPassword = CryptoUtil.encode64("100", password);    try {        SecurityUtils.getSubject().login(new UsernamePasswordToken(username, encodedPassword));        SecurityUtils.getSubject().getSession().setTimeout(-1000L);    } catch (AuthenticationException e) {        logger.info("登录失败");        return R.error();    }    return R.ok();}

##公告列表功能支持分页查询公告信息,根据创建时间降序排列。

@GetMapping("/getList")@ResponseBodypublic LayuiTable getList(int page, int limit) {    Page DYNoticePage = new Page(page, limit);    QueryWrapper queryWrapper = new QueryWrapper();    queryWrapper.orderByDesc("gmt_create");    IPage DYNoticeIPage = DYNoticeMapper.selectPage(DYNoticePage, queryWrapper);    return new LayuiTable(0, "", DYNoticeIPage.getTotal(), DYNoticeIPage.getRecords());}

邀请码管理

支持邀请码的增删查改,根据邀请码ID检查存在性。

@PostMapping("/addData")public R addData(String codeId, String codeSign) {    QueryWrapper queryWrapper = new QueryWrapper();    queryWrapper.eq("code_id", codeId);    int count = InvitationCodeMapper.count(queryWrapper);    if (count > 0) {        return R.error();    }    InvitationCode invitationCode = new InvitationCode();    invitationCode.setCodeId(codeId)        .setCodeSign(codeSign)        .setCodeStatus(false)        .setCreateTime(new Date());    boolean saveResult = InvitationCodeMapper.save(invitationCode);    return saveResult ? R.ok() : R.error();}

手机号管理

支持手机号的增删查改,包括手机号状态(锁定/解锁)和文件导入功能。

@PostMapping("/uploadData")@Transactionalpublic R uploadData(String filePath) throws IOException {    BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(new File(filePath)), "UTF-8"));    List
phoneMangerList = new ArrayList<>(); while ((String line = reader.readLine()) != null) { String phone = line.trim(); if (phone.length() != 11) { return R.error().message("手机号格式错误"); } QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.eq("phone", phone); int count = PhoneMangerMapper.count(queryWrapper); if (count > 0) { return R.error().message("手机号已存在"); } PhoneManger phoneManger = new PhoneManger() .setPhone(phone) .setGmtCreate(new Date()); phoneMangerList.add(phoneManger); } PhoneMangerMapper.saveBatch(phoneMangerList); return R.ok();}

任务管理

支持任务的创建、修改、删除以及关注任务的确认。

@PostMapping("/confirmTask")@Transactionalpublic R confirmTask(String taskData) throws Exception {    UserManger userManger = (UserManger) SecurityUtils.getSubject().getPrincipal();    if (userManger == null) {        return R.error().message("请重新登录");    }    List
orderTaskList = JSONObject.parseArray(taskData, OrderTask.class); for (OrderTask orderTask : orderTaskList) { if (orderTask.getStatus() == 0 || orderTask.getStatus() == 1) { return R.error().message("任务已执行或正在执行中"); } String[] numSplit = orderTask.getNumSplit(); Integer[] numArray = Convert.toIntArray(numSplit); List
uniqueUrls = Arrays.stream(numArray) .mapToObj(num -> orderTask.getVisitUrl()) .filter(url -> num > 0) .distinct() .collect(Collectors.toList()); List
taskListList = new ArrayList<>(); for (String url : uniqueUrls) { TaskList taskList = new TaskList(); taskList.setTaskId(orderTask.getTaskId()) .setTaskName(orderTask.getTaskName()) .setNeedNum(numArray[numSplit.indexOf(url)]) .setTaskType("关注任务") .setTaskUrl(url) .setTaskStatue(1); taskListList.add(taskList); } TaskListMapper.save(taskListList); OrderTask orderTaskUpdate = new OrderTask(); orderTaskUpdate.setConfirmUser(userManger.getUserName()) .setTaskId(orderTask.getTaskId()) .setConfirmDate(new Date()) .setStatus(0); OrderTaskMapper.updateById(orderTaskUpdate); } return R.ok();}

其他功能

包括文件上传、数据删除、锁定解锁操作以及批量导入手机号等功能。

以上功能模块支持分页查询、数据增删改查等操作,确保系统高效稳定运行。

转载地址:http://ylsz.baihongyu.com/

你可能感兴趣的文章
MySQL数据库与Informix:能否创建同名表?
查看>>
mysql自增id超大问题查询
查看>>
MySQL集群解决方案(4):负载均衡
查看>>
MySQL高级-视图
查看>>
nacos集群搭建
查看>>
Navicat for MySQL 查看BLOB字段内容
查看>>
Neo4j的安装与使用
查看>>
Neo4j(2):环境搭建
查看>>
nessus快速安装使用指南(非常详细)零基础入门到精通,收藏这一篇就够了
查看>>
Nessus漏洞扫描教程之配置Nessus
查看>>
Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
查看>>
Netpas:不一样的SD-WAN+ 保障网络通讯品质
查看>>
netsh advfirewall
查看>>
Netty WebSocket客户端
查看>>
Netty 异步任务调度与异步线程池
查看>>
Netty中集成Protobuf实现Java对象数据传递
查看>>
Netty工作笔记0006---NIO的Buffer说明
查看>>
Netty工作笔记0011---Channel应用案例2
查看>>
Netty工作笔记0013---Channel应用案例4Copy图片
查看>>
Netty工作笔记0014---Buffer类型化和只读
查看>>