当前位置:   article > 正文

基于JAVA的资产管理信息系统的设计与实现_基于java的二级学院资产设备信息化平台设计开发所要解决的问题

基于java的二级学院资产设备信息化平台设计开发所要解决的问题

末尾获取源码
开发语言:Java
Java开发工具:JDK1.8
后端框架:SSM
前端:Vue
数据库:MySQL5.7和Navicat管理工具结合
服务器:Tomcat8.5
开发软件:IDEA / Eclipse
是否Maven项目:是


目录

一、项目简介

二、系统功能

三、系统项目截图

管理员角色功能设计

个人中心

管理员管理

保管人员管理

固定资产管理

资产折旧管理

资产借出管理

资产维修管理

基础数据管理

保管人员角色功能设计

个人中心

固定资产管理

资产折旧管理

资产借出管理

资产维修管理

四、核心代码

登录相关

文件上传

封装


一、项目简介

当下,正处于信息化的时代,许多行业顺应时代的变化,结合使用计算机技术向数字化、信息化建设迈进。以前企业对于资产信息的管理和控制,采用人工登记的方式保存相关数据,这种以人力为主的管理模式已然落后。本人结合使用主流的程序开发技术,设计了一款基于SSM的资产管理信息系统,可以较大地减少人力、财力的损耗,方便相关人员及时更新和保存信息。本系统主要使用B/S架构,在idea开发平台上编写相关的Java代码,实现对系统的功能模块的设计,MySQL数据库管理相关的系统数据信息,SSM框架设计和创建系统架构,最后通过使用Tomcat服务器将所研发的系统发布到网上,便于相关的用户运行和使用本系统。本文对系统进行实现的可行性分析,设计的功能及数据库规划,以及设计的主要功能模块测试等内容做了较为详细的介绍,并且在本文中也展示了系统主要的功能模块设计界面和操作界面,并对其做出了必要的解释说明,方便用户对系统进行操作和使用,以及后期的相关人员对系统进行更新和维护。本系统的实现可以极大地提高企业的工作效率,提升用户的使用体验,因此在现实生活中运用本系统具有很大的使用价值。


二、系统功能



三、系统项目截图

管理员角色功能设计

个人中心

通过设计个人中心功能模块,管理用户可以选择查看个人资料信息,选择更新个人相关的资料信息记录;也可以选择修改账号密码,通过不定期的对个人账户密码进行更新,保障个人信息安全

 

管理员管理

通过设计管理员管理功能模块,管理用户可以选择查看详细的管理员信息资料,比如查看管理员用户名、管理员密码等信息;可以选择修改相关管理员信息记录;也可以选择删除已经失效的管理员信息记录 

 

保管人员管理

通过设计用户管理功能模块,管理用户可以管理相关的用户信息资料,可以选择查看用户详细资料,比如查看用户账号、姓名、头像、手机号等信息;可以选择修改用户相关的信息记录;可以选择删除已经注销的用户信息记录;也可以选择添加新的用户信息记录,需要注意的是,需要输入正确的字符格式,才能成功添加新的用户信息记录

 

固定资产管理

通过设计固定资产管理功能模块,管理用户可以管理相关的固定资产信息记录,可以选择查看固定资产详情,比如查看资产名称、资产类型、资产照片、单位、制造厂家等信息;可以选择修改固定资产相关的信息记录;可以选择删除已经失效的固定资产信息记录;根据固定资产的实际情况,可以选择增加或者减少资产的现价;也可以选择添加新的固定资产信息记录,需要注意的是,需要输入正确的字符格式,才能成功添加新的固定资产信息记录

 

资产折旧管理

通过设计资产折旧管理功能模块,管理用户可以管理相关的资产折旧信息记录,可以选择查看资产折旧详情,比如查看资产名称、资产类型、资产照片、制造厂家、出厂日期等信息;可以选择修改资产折旧相关的信息记录;可以选择删除已经失效的资产折旧信息记录;根据资产折旧的实际情况,可以选择增加或者减少资产的折旧价格;也可以选择添加新的资产折旧信息记录,需要注意的是,需要输入正确的字符格式,才能成功添加新的资产折旧信息记录

 

资产借出管理

通过设计资产借出管理功能模块,管理用户可以管理相关的资产借出信息记录,可以选择查看资产借出详情,比如查看资产名称、资产状态、资产照片、制造厂家、出厂日期等信息;可以选择修改资产借出相关的信息记录;可以选择删除已经失效的资产借出信息记录;根据资产借出的实际情况,可以选择增加或者减少资产的保管人员;也可以选择添加新的资产借出信息记录,需要注意的是,需要输入正确的字符格式,才能成功添加新的资产借出信息记录

 

资产维修管理

通过设计资产维修管理功能模块,管理用户可以管理相关的资产维修信息记录,可以选择查看资产维修详情,比如查看资产名称、资产照片、资产状态、制造厂家、维修原因等信息;可以选择修改资产维修相关的信息记录;可以选择删除已经失效的资产维修信息记录;根据资产借出的实际情况,可以选择修改资产的维修状态;也可以选择添加新的资产维修信息记录,需要注意的是,需要输入正确的字符格式,才能成功添加新的资产维修信息记录

 

基础数据管理

通过设计基础数据管理功能模块,管理用户可以管理相关的资产增加方式、存放地点、使用部门、资产类型信息记录,可以选择查看资产增加方式、存放地点、使用部门、资产类型的编码、名称等信息;可以选择删除已经失效的资产增加方式、存放地点、使用部门、资产类型信息记录;根据资产的实际情况,可以选择修改资产增加方式、存放地点、使用部门、资产类型相关的信息;也可以选择添加新的资产增加方式、存放地点、使用部门、资产类型信息记录,需要注意的是,需要输入正确的字符格式,才能成功添加新的资产增加方式、存放地点、使用部门、资产类型信息记录

 

 

保管人员角色功能设计

个人中心

通过设计的个人中心功能模块,保管人员用户可以查看个人相关的信息资料,比如姓名、头像、手机号、身份证号、性别、邮箱等;也可以通过输入姓名、手机号、性别等信息,选择更新个人信息资料,需要注意的是,需要输入正确的字符格式,才能成功更新个人资料信息记录;也可以选择修改个人密码信息,保障个人账户安全 

 

固定资产管理

通过设计固定资产管理功能模块,保管人员用户可以管理相关的固定资产信息记录,可以选择查看固定资产详情,比如查看保管人员姓名、资产名称、资产类型、使用部门、存放地点、增加方式、资产状态、资产图片等信息;可以选择删除已经失效的固定资产信息记录;可以通过输入正确格式的资产名称或者资产类型信息,查询相关的固定资产信息记录;也可以选择修改更新资产名称、资产类型、资产状态、制造厂家等相关信息 

 

资产折旧管理

通过设计资产折旧管理功能模块,保管人员用户可以管理相关的资产折旧信息记录,可以选择查看资产折旧详情,比如查看资产编号、资产名称、资产类型、使用部门、存放地点、增加方式、资产状态、资产照片、制造厂家、出厂日期、折旧价格等信息;可以选择删除已经失效的资产折旧信息记录;可以通过输入正确格式的资产名称或者资产类型信息,查询相关的资产折旧信息记录;也可以选择修改更新资产名称、资产类型、单位、折旧价格等相关信息

 

资产借出管理

通过设计资产借出管理功能模块,保管人员用户可以管理相关的资产借出信息记录,可以选择查看资产借出详情,比如查看资产编号、资产名称、资产类型、使用部门、存放地点、增加方式、资产状态、资产照片、单位、制造厂家、保管人员姓名等信息;可以选择删除已经失效的资产借出信息记录;可以通过输入正确格式的资产名称或者资产类型信息,查询相关的资产借出信息记录;也可以选择修改更新资产名称、资产类型、现价、保管人员姓名等相关信息

 

资产维修管理

通过设计资产维修管理功能模块,保管人员用户可以管理相关的资产维修信息记录,可以选择查看资产维修详情,比如查看资产编号、资产名称、资产类型、使用部门、存放地点、增加方式、资产状态、资产照片、单位、制造厂家、出厂日期、维修原因、维修状态等信息;可以选择删除已经失效的资产维修信息记录;可以通过输入正确格式的资产名称或者资产类型信息,查询相关的资产维修信息记录;也可以选择更新修改资产名称、资产类型、维修原因、维修状态等相关信息

 


四、核心代码

登录相关

  1. package com.controller;
  2. import java.util.Arrays;
  3. import java.util.Calendar;
  4. import java.util.Date;
  5. import java.util.Map;
  6. import javax.servlet.http.HttpServletRequest;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.stereotype.Controller;
  9. import org.springframework.web.bind.annotation.GetMapping;
  10. import org.springframework.web.bind.annotation.PathVariable;
  11. import org.springframework.web.bind.annotation.PostMapping;
  12. import org.springframework.web.bind.annotation.RequestBody;
  13. import org.springframework.web.bind.annotation.RequestMapping;
  14. import org.springframework.web.bind.annotation.RequestParam;
  15. import org.springframework.web.bind.annotation.ResponseBody;
  16. import org.springframework.web.bind.annotation.RestController;
  17. import com.annotation.IgnoreAuth;
  18. import com.baomidou.mybatisplus.mapper.EntityWrapper;
  19. import com.entity.TokenEntity;
  20. import com.entity.UserEntity;
  21. import com.service.TokenService;
  22. import com.service.UserService;
  23. import com.utils.CommonUtil;
  24. import com.utils.MD5Util;
  25. import com.utils.MPUtil;
  26. import com.utils.PageUtils;
  27. import com.utils.R;
  28. import com.utils.ValidatorUtils;
  29. /**
  30. * 登录相关
  31. */
  32. @RequestMapping("users")
  33. @RestController
  34. public class UserController{
  35. @Autowired
  36. private UserService userService;
  37. @Autowired
  38. private TokenService tokenService;
  39. /**
  40. * 登录
  41. */
  42. @IgnoreAuth
  43. @PostMapping(value = "/login")
  44. public R login(String username, String password, String captcha, HttpServletRequest request) {
  45. UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
  46. if(user==null || !user.getPassword().equals(password)) {
  47. return R.error("账号或密码不正确");
  48. }
  49. String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
  50. return R.ok().put("token", token);
  51. }
  52. /**
  53. * 注册
  54. */
  55. @IgnoreAuth
  56. @PostMapping(value = "/register")
  57. public R register(@RequestBody UserEntity user){
  58. // ValidatorUtils.validateEntity(user);
  59. if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
  60. return R.error("用户已存在");
  61. }
  62. userService.insert(user);
  63. return R.ok();
  64. }
  65. /**
  66. * 退出
  67. */
  68. @GetMapping(value = "logout")
  69. public R logout(HttpServletRequest request) {
  70. request.getSession().invalidate();
  71. return R.ok("退出成功");
  72. }
  73. /**
  74. * 密码重置
  75. */
  76. @IgnoreAuth
  77. @RequestMapping(value = "/resetPass")
  78. public R resetPass(String username, HttpServletRequest request){
  79. UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
  80. if(user==null) {
  81. return R.error("账号不存在");
  82. }
  83. user.setPassword("123456");
  84. userService.update(user,null);
  85. return R.ok("密码已重置为:123456");
  86. }
  87. /**
  88. * 列表
  89. */
  90. @RequestMapping("/page")
  91. public R page(@RequestParam Map<String, Object> params,UserEntity user){
  92. EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
  93. PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
  94. return R.ok().put("data", page);
  95. }
  96. /**
  97. * 列表
  98. */
  99. @RequestMapping("/list")
  100. public R list( UserEntity user){
  101. EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
  102. ew.allEq(MPUtil.allEQMapPre( user, "user"));
  103. return R.ok().put("data", userService.selectListView(ew));
  104. }
  105. /**
  106. * 信息
  107. */
  108. @RequestMapping("/info/{id}")
  109. public R info(@PathVariable("id") String id){
  110. UserEntity user = userService.selectById(id);
  111. return R.ok().put("data", user);
  112. }
  113. /**
  114. * 获取用户的session用户信息
  115. */
  116. @RequestMapping("/session")
  117. public R getCurrUser(HttpServletRequest request){
  118. Long id = (Long)request.getSession().getAttribute("userId");
  119. UserEntity user = userService.selectById(id);
  120. return R.ok().put("data", user);
  121. }
  122. /**
  123. * 保存
  124. */
  125. @PostMapping("/save")
  126. public R save(@RequestBody UserEntity user){
  127. // ValidatorUtils.validateEntity(user);
  128. if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
  129. return R.error("用户已存在");
  130. }
  131. userService.insert(user);
  132. return R.ok();
  133. }
  134. /**
  135. * 修改
  136. */
  137. @RequestMapping("/update")
  138. public R update(@RequestBody UserEntity user){
  139. // ValidatorUtils.validateEntity(user);
  140. userService.updateById(user);//全部更新
  141. return R.ok();
  142. }
  143. /**
  144. * 删除
  145. */
  146. @RequestMapping("/delete")
  147. public R delete(@RequestBody Long[] ids){
  148. userService.deleteBatchIds(Arrays.asList(ids));
  149. return R.ok();
  150. }
  151. }

文件上传

  1. package com.controller;
  2. import java.io.File;
  3. import java.io.FileNotFoundException;
  4. import java.io.IOException;
  5. import java.util.Arrays;
  6. import java.util.Date;
  7. import java.util.HashMap;
  8. import java.util.List;
  9. import java.util.Map;
  10. import java.util.Random;
  11. import java.util.UUID;
  12. import org.apache.commons.io.FileUtils;
  13. import org.apache.commons.lang3.StringUtils;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.http.HttpHeaders;
  16. import org.springframework.http.HttpStatus;
  17. import org.springframework.http.MediaType;
  18. import org.springframework.http.ResponseEntity;
  19. import org.springframework.util.ResourceUtils;
  20. import org.springframework.web.bind.annotation.PathVariable;
  21. import org.springframework.web.bind.annotation.RequestBody;
  22. import org.springframework.web.bind.annotation.RequestMapping;
  23. import org.springframework.web.bind.annotation.RequestParam;
  24. import org.springframework.web.bind.annotation.RestController;
  25. import org.springframework.web.multipart.MultipartFile;
  26. import com.annotation.IgnoreAuth;
  27. import com.baomidou.mybatisplus.mapper.EntityWrapper;
  28. import com.entity.ConfigEntity;
  29. import com.entity.EIException;
  30. import com.service.ConfigService;
  31. import com.utils.R;
  32. /**
  33. * 上传文件映射表
  34. */
  35. @RestController
  36. @RequestMapping("file")
  37. @SuppressWarnings({"unchecked","rawtypes"})
  38. public class FileController{
  39. @Autowired
  40. private ConfigService configService;
  41. /**
  42. * 上传文件
  43. */
  44. @RequestMapping("/upload")
  45. public R upload(@RequestParam("file") MultipartFile file,String type) throws Exception {
  46. if (file.isEmpty()) {
  47. throw new EIException("上传文件不能为空");
  48. }
  49. String fileExt = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1);
  50. File path = new File(ResourceUtils.getURL("classpath:static").getPath());
  51. if(!path.exists()) {
  52. path = new File("");
  53. }
  54. File upload = new File(path.getAbsolutePath(),"/upload/");
  55. if(!upload.exists()) {
  56. upload.mkdirs();
  57. }
  58. String fileName = new Date().getTime()+"."+fileExt;
  59. File dest = new File(upload.getAbsolutePath()+"/"+fileName);
  60. file.transferTo(dest);
  61. FileUtils.copyFile(dest, new File("C:\\Users\\Desktop\\jiadian\\springbootl7own\\src\\main\\resources\\static\\upload"+"/"+fileName));
  62. if(StringUtils.isNotBlank(type) && type.equals("1")) {
  63. ConfigEntity configEntity = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "faceFile"));
  64. if(configEntity==null) {
  65. configEntity = new ConfigEntity();
  66. configEntity.setName("faceFile");
  67. configEntity.setValue(fileName);
  68. } else {
  69. configEntity.setValue(fileName);
  70. }
  71. configService.insertOrUpdate(configEntity);
  72. }
  73. return R.ok().put("file", fileName);
  74. }
  75. /**
  76. * 下载文件
  77. */
  78. @IgnoreAuth
  79. @RequestMapping("/download")
  80. public ResponseEntity<byte[]> download(@RequestParam String fileName) {
  81. try {
  82. File path = new File(ResourceUtils.getURL("classpath:static").getPath());
  83. if(!path.exists()) {
  84. path = new File("");
  85. }
  86. File upload = new File(path.getAbsolutePath(),"/upload/");
  87. if(!upload.exists()) {
  88. upload.mkdirs();
  89. }
  90. File file = new File(upload.getAbsolutePath()+"/"+fileName);
  91. if(file.exists()){
  92. /*if(!fileService.canRead(file, SessionManager.getSessionUser())){
  93. getResponse().sendError(403);
  94. }*/
  95. HttpHeaders headers = new HttpHeaders();
  96. headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
  97. headers.setContentDispositionFormData("attachment", fileName);
  98. return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),headers, HttpStatus.CREATED);
  99. }
  100. } catch (IOException e) {
  101. e.printStackTrace();
  102. }
  103. return new ResponseEntity<byte[]>(HttpStatus.INTERNAL_SERVER_ERROR);
  104. }
  105. }

封装

  1. package com.utils;
  2. import java.util.HashMap;
  3. import java.util.Map;
  4. /**
  5. * 返回数据
  6. */
  7. public class R extends HashMap<String, Object> {
  8. private static final long serialVersionUID = 1L;
  9. public R() {
  10. put("code", 0);
  11. }
  12. public static R error() {
  13. return error(500, "未知异常,请联系管理员");
  14. }
  15. public static R error(String msg) {
  16. return error(500, msg);
  17. }
  18. public static R error(int code, String msg) {
  19. R r = new R();
  20. r.put("code", code);
  21. r.put("msg", msg);
  22. return r;
  23. }
  24. public static R ok(String msg) {
  25. R r = new R();
  26. r.put("msg", msg);
  27. return r;
  28. }
  29. public static R ok(Map<String, Object> map) {
  30. R r = new R();
  31. r.putAll(map);
  32. return r;
  33. }
  34. public static R ok() {
  35. return new R();
  36. }
  37. public R put(String key, Object value) {
  38. super.put(key, value);
  39. return this;
  40. }
  41. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/414619
推荐阅读
相关标签
  

闽ICP备14008679号