飞道的博客

基于微信小程序的电影交流平台小程序

360人阅读  评论(0)

文末联系获取源码

开发语言:Java

框架:ssm

JDK版本:JDK1.8

服务器:tomcat7

数据库:mysql 5.7/8.0

数据库工具:Navicat11

开发软件:eclipse/myeclipse/idea

Maven包:Maven3.3.9

浏览器:谷歌浏览器

小程序框架:uniapp

小程序开发软件:HBuilder X

小程序运行软件:微信开发者

一、前言介绍 

随着信息化时代的到来,管理系统都趋向于智能化、系统化,电影交流平台小程序也不例外,但目前国内的市场仍都使用人工管理,市场规模越来越大,同时信息量也越来越庞大,人工管理显然已无法应对时代的变化,而电影交流平台小程序能很好地解决这一问题,轻松应对电影交流平时的工作,既能提高人力物力财力,又能加快工作的效率,取代人工管理是必然趋势。

本电影交流平台小程序以ssm作为框架,b/s模式以及MySql作为后台运行的数据库,同时使用Tomcat用为系统的服务器。本系统主要包括首页、个人中心、用户管理、电影类型管理、电影中心管理、留言反馈、系统管理等功能,通过这些功能的实现能够基本满足日常电影交流管理的操作。

二、总体设计

根据电影交流平台小程序的功能需求,进行系统设计。

前台功能:用户进入系统可以实现首页、电影中心、留言反馈、我的等,在我的页面可以对个人中心、我的收藏管理、留言反馈等功能进行操作;

后台主要是管理员操作,管理员功能包括首页、个人中心、用户管理、电影类型管理、电影中心管理、留言反馈、系统管理等;

系统对这些功能进行整合,产生的功能结构图如下:

三、小程序端

3.1登录

用户通过输入账号和密码,选择角色并点击登录进行系统登录操作,如图

3.2用户注册

在用户注册页面通过填写用户账号、密码、确认密码、用户姓名、性别、手机号码等信息进行注册操作;如图

3.3首页

用户登陆小程序端,可以对首页、电影中心、留言反馈、我的等功能进行详细操作,如图

3.4电影中心

在电影中心页面可以查看电影名称、电影类型、导演、主演、封面、时长、上映日期、制片地区、评分、点击次数、电影简介等信息,并根据需要进行评论或收藏操作;如图

3.5我的

在我的页面可以对个人中心、我的收藏管理、留言反馈等详细信息进行操作,如图

四、管理员功能模块

管理员登录,管理员通过输入账号、密码,并点击登录进入系统操作界面,如图 

4.1首页页面

管理员登陆系统后,可以对首页、个人中心、用户管理、电影类型管理、电影中心管理、留言反馈、系统管理等功能进行相应操作,如图 

4.2用户管理

在用户管理页面可以对索引、用户账号、用户姓名、头像、性别、手机号码、审核回复、审核状态、审核等内容进行详情、修改或删除等操作,如图 

4.3电影类型管理

在电影类型管理页面可以对索引、电影类型等内容进行详情,修改或删除操作,如图 

4.4电影中心管理

在电影中心管理页面可以对索引、电影名称、海报、电影类型、导演、主演、时长、上映日期、制片地区、评分等内容进行详情,修改,查看评论或删除操作,如图 

4.5留言反馈

在留言反馈页面可以对索引、用户名、留言内容、留言图片、回复内容、回复图片等内容进行详情,修改,回复和删除操作,如图 

4.6系统管理

在电影资讯页面可以对索引、标题、图片等内容进行详情,修改或删除等操作,还可以对轮播图管理进行详细操作;如图 

五、部分核心代码

5.1登录系统主要代码

 


  
  1. /**
  2. * 登录
  3. */
  4. @IgnoreAuth
  5. @RequestMapping(value = "/login")
  6. public R login( String username, String password, String captcha, HttpServletRequest request) {
  7. YonghuEntity user = yonghuService. selectOne( new EntityWrapper< YonghuEntity>(). eq( "yonghuzhanghao", username));
  8. if(user== null || !user. getMima(). equals(password)) {
  9. return R. error( "账号或密码不正确");
  10. }
  11. String token = tokenService. generateToken(user. getId(), username, "yonghu", "用户" );
  12. return R. ok(). put( "token", token);
  13. }

5.2上传文件关键代码


  
  1. @RequestMapping("/upload")
  2. public R upload (@RequestParam("file") MultipartFile file,String type) throws Exception {
  3. if (file.isEmpty()) {
  4. throw new EIException( "上传文件不能为空");
  5. }
  6. String fileExt = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf( ".")+ 1);
  7. File path = new File(ResourceUtils.getURL( "classpath:static").getPath());
  8. if(!path.exists()) {
  9. path = new File( "");
  10. }
  11. File upload = new File(path.getAbsolutePath(), "/upload/");
  12. if(!upload.exists()) {
  13. upload.mkdirs();
  14. }
  15. String fileName = new Date().getTime()+ "."+fileExt;
  16. File dest = new File(upload.getAbsolutePath()+ "/"+fileName);
  17. file.transferTo(dest);
  18. /**
  19. * 如果使用idea或者eclipse重启项目,发现之前上传的图片或者文件丢失,将下面一行代码注释打开
  20. * 请将以下的"D:\\springbootq33sd\\src\\main\\resources\\static\\upload"替换成你本地项目的upload路径,
  21. * 并且项目路径不能存在中文、空格等特殊字符
  22. */
  23. // FileUtils.copyFile(dest, new File("D:\\springbootq33sd\\src\\main\\resources\\static\\upload"+"/"+fileName)); /**修改了路径以后请将该行最前面的//注释去掉**/
  24. if(StringUtils.isNotBlank(type) && type.equals( "1")) {
  25. ConfigEntity configEntity = configService.selectOne( new EntityWrapper<ConfigEntity>().eq( "name", "faceFile"));
  26. if(configEntity== null) {
  27. configEntity = new ConfigEntity();
  28. configEntity.setName( "faceFile");
  29. configEntity.setValue(fileName);
  30. } else {
  31. configEntity.setValue(fileName);
  32. }
  33. configService.insertOrUpdate(configEntity);
  34. }
  35. return R.ok().put( "file", fileName);
  36. }

转载:https://blog.csdn.net/qq_61827376/article/details/128679368
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场