java毕业设计——基于JAVA+SpringBoot+MySQL的大学生校内问题反馈平台设计与实现(毕业论文+程序源码)——大学生校内问题反馈平台

基于JAVA+SpringBoot+MySQL的大学生校内问题反馈平台设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于JAVA+SpringBoot+MySQL的大学生校内问题反馈平台设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦

文章目录:

1、项目简介

  1. 随着高校的不断发展,时代快速的变迁,高校的民主管理必将更加信息化,智能化。现在许多学校的管理方式还比较传统,大多是通过电话或者留言信箱进行反馈,或者通过班长收集相关反馈信息反馈给辅导员,辅导员再向上反馈。这样逐级向上反馈效率必然会受到损失。

  2. 为了去解决现在所存在的问题,本系统分析了高校的民主管理的一些现状以及现在的一些高校民主管理的方式,针对学生及老师们的一些需求去设计开发一套基于SpringBoot的大学生校内问题反馈平台。开发该系统使用IntelliJ IDEA作为开发环境,使用MySQL作为底层数据库,MyBatis作为持久层框架,前端使用LayUI框架+FreeMarker动态模板生成。学生能够直接在系统上提出自己的问题,老师也能够在系统上直接跟踪解决学生的问题,这样大大地提高了沟通的效率,降低了沟通的成本,直接在网络上就能得以解决。

  3. 本套系统实现能够很大的去方便高校的民主管理,让更有效率的一些管理方式去替代一些传统的民主管理方式,能够极大的去降低辅导员、学校、学生的一些沟通成本,让向上反馈的效率大大的提高。


2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:12291个字44页
包含内容:全套源码+配整论文
开题报告、论文答辩、课题报告等ppt模板推荐下载方式:
在这里插入图片描述


3、关键词

沟通成本,民主管理,SpringBoot,MyBatis

4、毕设简介

提示:以下为毕业论文的简略介绍,项目完整源码及完整毕业论文下载地址见文末。

第1章 项目概述
1.1 问题描述
近年来,随着高校的不断发展,时代快速的变迁,高校的民主管理必将更加信息化,智能化。现在许多学校的管理方式还比较传统,大多是通过电话或者留言信箱进行反馈,或者通过班长收集相关反馈信息反馈给辅导员,辅导员再向上反馈。这样逐级的向上反馈效率必然会受到损失。而且可能当学校收到了反馈信息之后不予以解决或者办事效率低下,学生那边得不到反馈。据了解,有许多学生都是希望自己所反馈的问题能够及时得到解决,也有许多学生想对学校的建设学校的发展课程的发展等提出自己的建议尽自己的一份力量,也有学生想要对学校某个点进行投诉反馈却找不到方法,这使得学生与学校的交流遇到了诸多不便。而站在老师的角度,老师也无法控制学校是否会处理学生提出的问题,老师只能尽力去帮学生催促学校,可能学生提出的问题没有一个准确的负责人,于是问题就一直得不到解决。站在学校的角度,学校接收到了建议,可能有时候不能对于学生有及时的反馈,没有这么一个系统去专门负责,只能靠人传人的方式去落实到位,而学校有时候却没有如此之多的精力去负责这么些事情,所以我们需要这么样的平台,对应每个不同的负责人,通过系统省去中间繁琐的步骤。

1.2 项目目标
本项目的目标是为学生,学校,老师三者之间提供沟通桥梁的平台,为了解决学生方面的问题,平台内学生可以在上面提出关于学校的任何建议,也可以提出任何想要解决的问题,反馈一些其他问题等。为了解决老师方面的问题,老师可以在这个平台上了解学生真正的需求,根据学生所提的建议对学生对症下药。为了解决学校方面的问题,学校对应的问题负责人可以直接通过平台和学生交流,也可以直接通过平台处理学生的问题。如果大学生校内反馈平台能够正常投入使用,那么学校、学生、老师三者的合作将会更加完美,学校会在三者的努力之下越来越好,学生的问题也能够得到及时的解决,大大提高了沟通效率,减去无效沟通。

1.3 项目适用范围
本项目适用于需要解决学生反馈的各个问题的学校工作人员,以及需要在平台上反馈学校问题的各个学生。
1.4 项目应遵守的规范与标准
本项目严格遵守中国法律法规,遵守J2EE的13个开发规范。
1.5 涉众
需求调研人员:负责撰写需求文档,整理每条需求及实现的可能方式。
系统开发人员:负责对所有需求进行编码实现,开发对应功能模块,有效的避免系统可能出现的缺陷。
系统测试人员:负责在开始对于需求编写测试用例,在系统开发完毕之后根据编写的测试用例对系统进行彻底的测试找出存在以及可能将来会引发的系统缺陷。
系统管理人员:负责管理各个学生及学校工作人员的信息,维护系统正常运行。

第2章 需求分析
2.1 业务需求
2.1.1 业务流程
学生的总体业务流程如图2.1所示。
在这里插入图片描述

图2.1 学生总体业务流程图
学校工作人员的总体业务流程如图2.2所示。
在这里插入图片描述

图2.2 学校工作人员总体业务流程图
管理员的总体业务流程如图2.3所示。
在这里插入图片描述

图2.3 管理员总体业务流程图

2.1.2 业务对象
本系统大体上有4个业务对象,有文章留言Article,留言分类Category,留言评论Comment,用户User(包括学校工作人员、学生、系统管理员),用户和三个对象都是一对多的关系,一个用户可以发表多个留言文章,可以在多个留言文章下发表多个评论,可以在多个分类下发表文章。一个分类下可以有多个留言文章,一个留言文章可以拥有多个用户的评论。领域模型如图2.4所示。
在这里插入图片描述

图2.4 领域模型
2.2 功能性需求
2.2.1 用例概述
在图2.5顶层用例图中抽取了一些满足用户的重要的一些基本需求的用例进行详细描述。这些用例可以从系统管理、学生问题解决、师生交流三个方面来保证整个校内问题反馈平台的正常运作。
在这里插入图片描述

图2.5 高层用例图
用例摘要描述如表2.1所示。
表2.1 用例摘要描述
用例标识(UC) 用例名称 摘要描述
1 搜索留言 学生可以在平台搜索任何公开的想看到的留言
2 发表留言 学生可以在平台上自由发表不违反法律法规的留言
3 发表评论 学生可以在任何一个留言下自由地发表自己的评论
4 登录系统 使用系统前需要先登录系统
5 管理用户 管理员可以通过管理后台管理用户
6 管理留言 管理员可以通过后台管理留言
7 管理留言分类 管理员可以通过后台管理留言的分类
8 查看留言 学校工作人员可以查看留言
9 回复留言 学校工作人员可以回复解决留言
10 发布留言 学校工作人员也可以发布留言
11 跟踪问题 学校工作人员需要跟踪学生的问题

2.2.2 用例描述
省略

2.3 非功能性需求
性能:避免网站崩溃发生,能够快速打开
正确性:业务及逻辑错误不允许出现。
兼容性:可以运行在各个操作系统并且兼容各个主流浏览器
安全性:学生及老师的所有信息完全保密,不准泄露。
并发性:能够承受住全校师生的大流量并发访问。
2.4 运行环境
本项目所需的软件环境:
(1)Java 8
(2)Tomcat 8
(3)MySQL 8.0.16
(4)IntelliJ IDEA 2021
计算机硬件环境配置要求:
(1)系统:Windows 10、Mac OS
(2)内存:512M以上
(3)硬盘:10G以上

第3章 系统设计
3.1 技术路线
后台开发框架使用SpringBoot,前端使用LayUI框架+FreeMarker动态模板生成,使用MyBatis做持久层框架,使用MySQL做底层数据库,使用Flowable作为系统的流程引擎。
SpringBoot减少了大量的开发时间并提高了生产力,避免编写大量的样板代码,注释和XML配置。它提供了嵌入式的HTTP服务器,大大方便了开发及测试Web应用程序。
Flowable是一个使用Java编写的轻量级业务流程引擎,支持BPMN2.0行业标准,允许通过导入XML文件建立流程,流程引擎是支持配置业务流转过程的关键模块。

3.2 软件体系结构设计
3.2.1 功能结构
根据对于系统给的需求调研确定大学生校内问题反馈平台主要包括以下功能模块,如图3.1所示。
在这里插入图片描述

图3.1系统功能结构图
3.2.2 系统架构
服务端分为五层。在系统中都各自担当着不同的职责。视图层负责向用户显示Web界面,展现系统业务,使用FreeMarker模板引擎进行渲染。应用管理层负责提供多个业务服务器进行负载均衡。接口层为系统各个业务提供HTTP接口、业务接口等。基础层为软件提供必要的支持,比如说防火墙服务器等等。应用数据层实现数据持久化及数据缓存。服务端系统架构图如图3.2所示。
在这里插入图片描述

图3.2 服务端系统架构图
3.3 数据库设计
3.3.1 概念结构设计
ER图如图3.3所示。
在这里插入图片描述

图3.3 ER图
3.3.2 表的详细设计
通过对领域模型、业务对象以及对各个业务对象之间的关联关系的分析,对本系统平台的底层数据库表进行了一些设计,如表3.1-表3.5所示。本系统采用MySQL作为系统的底层数据库引擎。
在这里插入图片描述
在这里插入图片描述

3.4 用例实现
3.4.1 用户注册用例实现
用户首先进入网站首页,在网站首页的右上角可以看到注册按钮,点击向系统发送请求进入到注册界面,用户填写所有的注册信息之后确认注册,这时候会调用UserController的doRegister方法,doRegister方法中调用了UserService中的register方法,register方法通过UserMapper调用insert方法将用户插入数据库将数据插入库中从而完成注册。用户注册用例的实现顺序图如图3.4所示。
在这里插入图片描述

图3.4用户注册用例顺序图
3.4.2 文章置顶用例实现
管理员进入后台管理首页,点击左侧文章管理按钮,之后点击查询显示出系统中所有的文章列表,这时候管理员选择一篇需要置顶的文章,点击置顶按钮,这时候会调用ArticleController中的setTop方法,setTop方法中调用了articleService中的setTopStatus方法,setTopStatus方法通过ArticleMapper调用getArticleById方法传入文章id得到当前文章并对当前文章通过调用updateTopStatus方法作置顶处理,true为置顶,false为未置顶。文章置顶用例的实现顺序图如图3.5所示。
在这里插入图片描述

图3.5文章置顶用例顺序图
3.4.3 发表评论用例实现
用户进入网站首页,随机在所有文章中选择一篇文章进入文章详情页面,在页面最下方填写自己所要评论的内容,然后点击提交回复按钮,这时候会调用ArticleController中的addComment方法,addComment方法通过commentService调用create方法传入comment,create方法再通过commentMapper调用create方法最后将用户新发表的评论写入数据库中。发表评论用例的实现顺序图如图3.6所示。
在这里插入图片描述

图3.6发表评论用例顺序图
3.4.4 发表新帖用例实现
用户进入网站首页,登录之后在网站右上角能够看到发表新帖按钮,点击发表新帖按钮会跳转到文章添加页面,在该页面选择文章的分类及标题,最后写上正文内容,点击立即发布,这时候会调用ArticleController中的add方法,add方法进行业务处理并通过ArticleService调用create方法,create方法通过articleMapper调用insert方法将新文章插入到数据库中。发表新帖用例的实现顺序图如图3.7所示。
在这里插入图片描述

图3.7发表新帖用例顺序图
3.5 对象设计
3.5.1 模块设计
本系统由许多模块构成,domain模块负责存放业务实体,vo模块负责存放展现给前端的实体属性,service模块负责存放业务处理接口,serviceImpl模块负责存放业务处理接口实现类,dao模块负责存放数据库对象映射接口,mapper模块负责存放数据库xml文件,controller模块负责存放各个功能的控制类。controller依赖domain和service,service和mapper依赖dao,serviceImpl依赖service。各模块间依赖关系如图3.8所示。
在这里插入图片描述

图3.8模块依赖关系图
3.5.2 业务实体类的设计
业务实体包括问卷系统所有业务中涉及到的独立实体,业务实体设计及各个业务实体之间的关系如图3.9所示。
在这里插入图片描述

图3.9业务实体及实体间关系图
3.5.3 业务处理类的设计
(1)问卷业务类的设计
系统中所有业务实体间业务关系由业务对象负责维护,问卷业务对象设计及各个业务对象之间的关系如图3.10所示。
在这里插入图片描述

图3.10文章业务对象关系图

第4章 系统实现
4.1 核心功能实现
4.1.1 全局搜索功能
在网站首页界面,用户可以在右上角的搜索框输入想要搜索的词条关键字,然后点击旁边的放大镜搜索按钮进行搜索,在帖子列表模块就会显示出模糊搜索的结果,如图4.1所示。
在这里插入图片描述

图4.1 全局搜索界面
全局搜索的部分关键代码如下所示。

int pageIndex = 0;
// 一页显示10篇文章
if (page != null) {
    pageIndex = (page - 1) * 10;
}
List<Article> hotArticles = articleService.getHotArticles();
List<Category> list = categoryService.getAllCategory();
request.setAttribute("category", list);
List<ArticleVO> articleList;
int count = 0;
if (search == null) {
    if (cId == null || cId == 0) {
        // 通过页数得到首页文章
        articleList = articleService.getIndexArticles(pageIndex);
        count = articleService.countIndexArticles();
        for (ArticleVO articleVO : articleList) {
            // 给文章设置评论数量
            articleVO.setCommentCount(commentService.getCommentByArticleId(articleVO.getId()).size());
        }
    } else {
        articleList = articleService.getArticlesByCategoryId(cId, pageIndex);
        count = articleService.countArticleByCateId();
        for (ArticleVO articleVO : articleList) {
            articleVO.setCommentCount(commentService.getCommentByArticleId(articleVO.getId()).size());
        }
    }
    if ("hot".equals(order)) {
        articleList.sort(Comparator.comparing(ArticleVO::getCommentCount).reversed());
    }
    if ("new".equals(order)) {
        articleList.sort(Comparator.comparing(ArticleVO::getCreateTime).reversed());
    }
} else {
    articleList = articleService.searchArticle(null, null, null, search);
}
List<ArticleVO> topArticleList = articleService.getTopArticle();
if (topArticleList.size() > 0) {
    request.setAttribute("topArticleList", topArticleList);
}

4.1.2 发表新帖功能
在进入网站首页时,能够在全局搜索框的旁边发现一个发表新帖按钮,在没登录的状态下点击改按钮会直接跳转到登录界面,登录成功之后跳回首页再进行发表新帖的一些操作,用户能够在网站上发表自己的问题。如图4.2所示。
在这里插入图片描述

图4.2 发表新帖界面
发表新帖的部分关键代码如下所示。

@RequestMapping("/add")
@ResponseBody
public ReturnJson add(HttpServletRequest request, @RequestBody Article article) {
    try {
        User user;
        if (request.getSession().getAttribute("adminUser") != null) {
            user = (User) request.getSession().getAttribute("adminUser");
        } else {
            user = (User) request.getSession().getAttribute("user");
        }
        if ("禁言".equals(user.getStatus())) {
            return new ReturnJson(1, "您被禁言,无法发布文章!");
        }
        article.setUserId(user.getId());
        if (article.getId() == null) {
            articleService.create(article);
        } else {
            articleService.update(article);
        }
        return new ReturnJson(0, "发布成功");
    } catch (Exception e) {
        return new ReturnJson(1, "发布失败");
    }
}

4.1.3 发表评论功能
在网站首页界面,用户可以随机选择一篇文章进去发表自己对这篇文章的评论。如图4.3所示。
在这里插入图片描述

图4.3 发表评论界面
发表评论的部分关键代码如下所示。

@RequestMapping("/addComment")
@ResponseBody
public ReturnJson addComment(@RequestBody Comment comment) {
    try {
        User user = userService.getUserById(comment.getUserId());
        if ("禁言".equals(user.getStatus())) {
            return new ReturnJson(1, "您被禁言,无法发表评论!");
        }
        commentService.create(comment);
        return new ReturnJson("评论成功");
    } catch (Exception e) {
        return new ReturnJson(1, "评论失败");
    }
}

4.1.4 文章置顶功能
管理员可以在后台管理界面将指定文章置顶,被置顶的文章在我们刚刚进入系统时就能看到文章挂在最前面并且有明显的红色置顶标识。如图4.4所示。
在这里插入图片描述

图4.4 文章置顶界面
文章置顶的部分关键代码如下所示。

@RequestMapping("/setTop")
@ResponseBody
public ReturnJson setTopArticle(@RequestBody String param) {
    try {
        JSONObject json = JSON.parseObject(param);
        Integer articleId = json.getInteger("value");
        articleService.setTopStatus(articleId);
        return new ReturnJson("置顶成功");
    } catch (Exception e) {
        return new ReturnJson(1, "置顶失败");
    }
}

4.1.5 个人中心功能
每个用户都能够进入自己的个人中心查看自己之前所有发布的文章并且能够点击查看,以及自己的个性签名及注册网站的日期。如图4.5所示。
在这里插入图片描述

图4.5 个人中心界面
个人中心部分关键代码如下所示。

@RequestMapping("/user/{id}")
public String userHome(HttpServletRequest request, @PathVariable(value = "id") Integer id) {
    List<ArticleVO> articleVOList = articleService.getArticlesByUserId(id);
    for (ArticleVO articleVO : articleVOList) {
        articleVO.setCommentCount(commentService.getCommentByArticleId(articleVO.getId()).size());
    }
    User userInfo = userService.getUserById(id);
    request.getSession().setAttribute("userInfo", userInfo);
    request.getSession().setAttribute("articleVOList", articleVOList);
    return "/frontend/user/home";
}

4.1.6 流程推进功能
管理员可以在后台管理界面创建新的处理流程,在流程管理的界面可以看到所有管理员创建的流程,这些流程用于学校处理学生的问题。如图4.6所示。
在这里插入图片描述

图4.6 流程推进界面
流程推进的部分关键代码如下所示。

@RequestMapping(value = "startLeaveProcess")
@ResponseBody
public String startLeaveProcess(String staffId) {
    HashMap<String, Object> map = new HashMap<>();
    map.put("leaveTask", staffId);
    ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("Leave", map);
    StringBuilder sb = new StringBuilder();
    sb.append("创建问题流程 processId:" + processInstance.getId());
    List<Task> tasks = taskService.createTaskQuery().taskAssignee(staffId).orderByTaskCreateTime().desc().list();
    for (Task task : tasks) {
        sb.append("任务taskId:" + task.getId());
    }
    return sb.toString();
}

4.2 关键技术难点与解决方案
本系统的关键技术难点在于平台的问题解决推进流程的开发,采用了SpringBoot + Flowable的组合去实现流程的设计及实现,关键代码如下所示。
省略

4.3 编码规范
本系统以SUN的标准Java代码规范为基础,力求做到标识符的命名风格统一。
变量及类的命名遵循驼峰法则。类的首字母大写,方法的首字母小写。每个功能代码需要写上注释,每个类上需要写上作者名字及创建时间,使用Java Doc规范标准。

第5章 系统测试
大学生校内问题反馈平台的测试在需求分析阶段我们就需要对该系统进行一个全面的评估,写下测试用例,本系统在开发的过程中难免会出现一些不可预知的缺陷,这需要我们在开发完成系统之后对整个系统做完整的功能测试,在开发的阶段需要做每个功能的单元测试,下面我主要说说对核心模块的功能测试、非功能测试以及测试总结三个方面来完成系统测试说明。
5.1 功能测试
本系统对全局搜索功能、发表新帖功能、注册功能、登录功能等几个核心功能进行了功能测试,测试设计如下所示。
(1)核心模块功能测试
核心模块模块测试包括全局搜索功能,发表新帖功能,登录注册功能。核心模块测试用例如表5.1-5.6所示。
在这里插入图片描述
在这里插入图片描述

5.2 非功能测试
兼容性测试用例如表5.5所示。
在这里插入图片描述
在这里插入图片描述

5.3 测试总结
本系统测试用例一共26个,其中有功能性测试用例19个,性能测试用例3个,兼容性测试用例3个,执行了26个,通过26个,其他状态的0个,验证了系统的完整性以及健壮性,系统符合预期,完成度良好。
测试过程中没有发现特别明显的缺陷。

第6章 结论与展望
大学生校内问题反馈平台,在本系统的开发过程中,我运用了软件工程中所学习的知识,从最开始需求的分析与设计,到整个系统的分析与设计,以及对于系统功能的实现,到最后对于系统功能以及非功能的测试用例设计及执行,最终完成了本系统的开发实现。系统仍然存在许多有待完善的地方。
本系统使用RESTFul风格去设计每个功能的接口,该风格可谓是好处多多,比如说可以前后端分离,减少流量、防止了注入性安全问题等等。系统分为管理员端和用户端,后端采用SpringBoot + MyBatis + MySQL的技术架构方案,SpringBoot是基于Spring构建的,简化了配置,不需要编写太多的xml配置文件,使开发者能够专注于自己的业务开发。MyBatis是一种非常优秀的持久层框架,能够很好的与各种数据库兼容,与JDBC相比,也减少了50%以上的代码量,这对于开发效率来说提升是非常高的。前端采用了FreeMarker作为模板引擎。FreeMarker最初的设计,是被用来在MVC模式的Web开发框架中生成HTML页面的,它没有被绑定到 Servlet或HTML或任意Web相关的东西上。它也可以用于非Web应用环境中。本项目的目标是为学生,学校,老师三者之间提供沟通桥梁的平台,学生可以在平台上反应问题,老师和学校可以在平台上为学生解决问题,学校也可以在平台上发表一些通知供全校学生们查看,管理员也可以查看监督各个问题解决的流程进度。
在未来本系统也会加上一些新的功能,例如每位同学都能查看自己问题解决的流程进度,添加一些可视化的仪表盘界面展示已经解决的问题数量,学生提出问题频率等等,这样可以更好的去运营本平台。也可以和校外一些广告机构合作给学校及开发者带来一些流量收益,确保有足够的资金能够一直将本平台持续运行维护下去。

参考文献
[1]张恒铭.基于SpringBoot+MyBatis框架的高校人事信息发布系统设计与实现[J].电脑知识与技术,2020,16(18):68-70.
[2] 周常志,甘恒.基于SpringBoot的智慧就业服务平台的设计与实现[J].电脑知识与技术,2021,17(28):182-184+187.
[3]蒋晟,陈科.基于SpringBoot的学生宿舍管理系统的设计与实现[J].现代信息科技,2021,5(12):6-9.
[4]刘闯,陶学恒,于晓强.基于JAVA开源框架的PDM系统开发[J].机电产品开发与创新,2009,22(01):77-79.
[5]梁锟,邓璞,陈子杨,周宇龙,尚雪,徐鉴.基于Java+MySQL礼品代理平台的研究开发[J].微型电脑应用,2021,37(10):25-28.
[6]刘艺.经济背景下我国高校信息素养网络教育平台研究——交流共享设计[J].营销界,2020,(34):81-83.
[7]马永忠,郭智强.高校教学信息资源共享与交流平台建设[J].科技创新导报,2017,14(34):216-217.
[8]胡园园,刘飞.基于Web的高校学生信息交流平台[J].电脑知识与技术,2018,14(19):71-74.
[9]冯棡,毕明洋,戎杰,康哲,廖巧.互联网环境下高校师生信息反馈平台研究[J].合作经济与科技,2017,(12):117-119.
[10]张剑,王佳茵.高校网络舆情现状与管理对策研究[J].高教学刊,2015,(01):89-90.

致 谢
省略


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号毕业设计全套资源(点击下载)
本项目源码基于JAVA+SpringBoot+MySQL的大学生校内问题反馈平台设计与实现(源码+文档)_JAVA_BS架构_大学生校内问题反馈平台.zip

6、更多JAVA毕业设计项目

精选JAVA毕业设计83套——源码+论文完整资源

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕业设计方案专家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值