Java项目:SSM设备台账管理系统

作者主页:源码空间站2022

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

项目介绍

管理员角色包含以下功能:
管理员登录,物理设备管理,IP地址资源管理,虚拟机管理,通知公告管理,学历管理,部门管理,员工管理等功能。

员工角色包含以下功能:

员工角色登录,查看物理设备,查看IP地址,查看虚拟机,通知公告查看等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 

5.数据库:MySql 5.7版本;

技术栈

1. 后端:Spring+SpringMVC+Mybatis

2. 前端:HTML+CSS+JavaScript+jsp

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;

2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;

若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;

3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;

4. 运行项目,输入localhost:8080/ 登录

运行截图

 

相关代码

 账号控制器

package com.fangwu.controller.admin;

import java.util.HashMap;
import java.util.Map;

import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;

import com.fangwu.entity.Account;
import com.fangwu.page.admin.Page;
import com.fangwu.service.AccountService;

/**
 * 用户管理后台控制器
 * @author Administrator
 *
 */
@RequestMapping("/admin/account")
@Controller
public class AccountController {
	
	@Autowired
	private AccountService accountService;
	
	
	/**
	 * 用户管理列表页面
	 * @param model
	 * @return
	 */
	@RequestMapping(value="/list",method=RequestMethod.GET)
	public ModelAndView list(ModelAndView model){
		System.out.println("list---GET");
		model.setViewName("account/list");
		return model;
	}
	
	/**
	 * 用户信息添加操作
	 * @param account
	 * @return
	 */
	@RequestMapping(value="/add",method=RequestMethod.POST)
	@ResponseBody
	public Map<String, String> add(Account account){
		Map<String, String> ret = new HashMap<String, String>();
		if(account == null){
			ret.put("type", "error");
			ret.put("msg", "请填写正确的用户信息!");
			return ret;
		}
		if(StringUtils.isEmpty(account.getName())){
			ret.put("type", "error");
			ret.put("msg", "用户名称不能为空!");
			return ret;
		}
		if(StringUtils.isEmpty(account.getPassword())){
			ret.put("type", "error");
			ret.put("msg", "用户密码不能为空!");
			return ret;
		}
		if(isExist(account.getName(), 0l)){
			ret.put("type", "error");
			ret.put("msg", "该用户名已经存在!");
			return ret;
		}
		if(accountService.add(account) <= 0){
			ret.put("type", "error");
			ret.put("msg", "添加失败,请联系管理员!");
			return ret;
		}
		ret.put("type", "success");
		ret.put("msg", "添加成功!");
		return ret;
	}
	
	/**
	 * 用户信息编辑操作
	 * @param account
	 * @return
	 */
	@RequestMapping(value="/edit",method=RequestMethod.POST)
	@ResponseBody
	public Map<String, String> edit(Account account){
		Map<String, String> ret = new HashMap<String, String>();
		if(account == null){
			ret.put("type", "error");
			ret.put("msg", "请填写正确的用户信息!");
			return ret;
		}
		if(StringUtils.isEmpty(account.getName())){
			ret.put("type", "error");
			ret.put("msg", "用户名称不能为空!");
			return ret;
		}
		if(StringUtils.isEmpty(account.getPassword())){
			ret.put("type", "error");
			ret.put("msg", "用户密码不能为空!");
			return ret;
		}
		if(isExist(account.getName(), account.getId())){
			ret.put("type", "error");
			ret.put("msg", "该用户名已经存在!");
			return ret;
		}
		if(accountService.edit(account) <= 0){
			ret.put("type", "error");
			ret.put("msg", "添加失败,请联系管理员!");
			return ret;
		}
		ret.put("type", "success");
		ret.put("msg", "修改成功!");
		return ret;
	}
	
	/**
	 * 分页查询用户信息
	 * @param name
	 * @param page
	 * @return
	 */
	@RequestMapping(value="/list",method=RequestMethod.POST)
	@ResponseBody
	public Map<String,Object> list(
			@RequestParam(name="name",defaultValue="") String name,
			@RequestParam(name="realName",defaultValue="") String realName,
			@RequestParam(name="idCard",defaultValue="") String idCard,
			@RequestParam(name="mobile",defaultValue="") String mobile,
			@RequestParam(name="status",required=false) Integer status,
			Page page
			){
		System.out.println("---list--POST");
		Map<String,Object> ret = new HashMap<String, Object>();
		Map<String,Object> queryMap = new HashMap<String, Object>();
		queryMap.put("name", name);
		queryMap.put("status", status);
		queryMap.put("realName", realName);
		queryMap.put("idCard", idCard);
		queryMap.put("mobile", mobile);
		queryMap.put("offset", page.getOffset());
		queryMap.put("pageSize", page.getRows());
		ret.put("rows", accountService.findList(queryMap));
		ret.put("total", accountService.getTotal(queryMap));
		return ret;
	}
	
	/**
	 * 用户信息删除操作
	 * @param id
	 * @return
	 */
	@RequestMapping(value="/delete",method=RequestMethod.POST)
	@ResponseBody
	public Map<String, String> delete(Long id){
		Map<String, String> ret = new HashMap<String, String>();
		if(id == null){
			ret.put("type", "error");
			ret.put("msg", "请选择要删除的信息!");
			return ret;
		}
		try {
			if(accountService.delete(id) <= 0){
				ret.put("type", "error");
				ret.put("msg", "删除失败,请联系管理员!");
				return ret;
			}
		} catch (Exception e) {
			// TODO: handle exception
			ret.put("type", "error");
			ret.put("msg", "该用户下存在订单信息,请先删除该用户下的所有订单信息!");
			return ret;
		}
		ret.put("type", "success");
		ret.put("msg", "删除成功!");
		return ret;
	}
	
	/**
	 * 判断用户名是否存在
	 * @param name
	 * @param id
	 * @return
	 */
	private boolean isExist(String name,Long id){
		Account findByName = accountService.findByName(name);
		if(findByName == null)return false;
		if(findByName.getId().longValue() == id.longValue())return false;
		return true;
	}
}

 如果也想学习本系统,下面领取。关注并回复:139ssm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Chemex是一个免费、开源、现代化设计的信息资产管理运维平台。软硬件资产管理、归属/使用者追溯、盘点。基于优雅的Laravel框架开发。附移动端工具、OTA升级。 Chemex是一个轻量的、现代设计风格的ICT设备资产管理系统。得益于 Laravel 框架以及 Dcat Admin 开发平台,使其具备了优雅、简洁的优秀体验。 Chemex是完全免费且开源的,任何人都可以无限制的修改代码以及部署服务,这对于很多想要对ICT资产做信息化管理的中小型企业来说,是一个很好的选择、低廉的成本换回的是高效的管理方案,同时又有健康的生态提供支持。 系统拥有以下模块: 设备台账管理 其中包含了设备的名称、所有软硬件、制造商、购入日期、保护日期、IP地址、MAC、使用者等维护内容,同时拥有设备相关历史记录。 支持在线 SSH 远程访问管理设备设备归属到使用者。 设备故障报告。 硬件台账管理 其中包含了硬件的名称、规格、序列号、归属设备管理等维护内容,同时拥有硬件相关历史记录。 设备故障报告。 软件台账管理 其中包含了软件的名称、版本、分发方式、授权方式、购入金额、序列号、授权数量管理等维护内容,也有软件相关历史记录。 雇员管理 雇员清单。 部门清单。 服务程序管理 其中包含了服务程序所在的宿主服务器、服务状态、异常报告等。 服务程序异常的修复。 首页特别的看板。 盘点管理 设备、硬件、软件盘点任务的创建、完成和取消。 盘盈盘亏。 指定盘点负责人员。 Chemex Tool 移动端盘点工具。 数据图表 各模块的基础数据。 各服务状态实时展示,包括异常内容,发生时间和恢复时间。 盘点进度展示。 多国语言 目前暂时最优支持中文简体,后续会发布英文语言,同时会支持语言切换。 私有化部署 是的,只需要一个 LNMP 环境,就可以无限制的私有化部署。 OTA升级 已经支持了在线升级,不用本地手工进行版本维护。 环境要求: PHP 7.3 + MariaDB 10.5 + ext-zip 扩展,注意和 PHP 版本相同 ext-json 扩展,注意和 PHP 版本相同 源码开发依赖于 composer 包管理器。 生产环境部署: 生产环境下为遵守安全策略,我们非常建议在服务器本地进行部署,暂时不提供相关线上初始化安装的功能。因此,虽然前期部署的步骤较多,但已经为大家自动化处理了很大部分的流程,只需要跟着下面的命令一步步执行,一般是不会有部署问题的。 1、为你的计算机安装 PHP 环境,参考、PHP官方 。 2、为你的计算机安装 mariaDB ,并且有可以使用的 mariadb-client 客户端工具,一般安装完 MariaDB 会自动安装,如果在 Ubuntu 上可能需要另外执行 sudo apt install mariadb-client 进行安装。 3、创建一个数据库,命名任意,但记得之后填写配置时需要对应正确,并且数据库字符集为 utf8-general-ci。 4、下载 发行版 ,解压得到程序目录,放置到你想要放置的地方。 5、在项目根目录中,复制 .env.example 文件为一份新的,并重命名为 .env。 6、在 .env 中配置数据库信息。 7、执行 php artisan chemex:install 进行安装。 8、你可能使用的web服务器为 nginx 以及 apache,无论怎样,应用的起始路径在 /public 目录,请确保指向正确。 9、修改web服务器的伪静态规则为、try_files $uri $uri/ /index.php?$args;。 10、为了确保在线自动更新可用,请确认网站根目录及其所有子目录的权限为 755,拥有者为 www。 开发环境部署: 欢迎对此感兴趣的开发者进行协同开发,使 Chemex 更趋于完美。开发过程相对于简单,没有过多的环境配置和改动。 1、为你的计算机安装 PHP 环境,参考、PHP官方 。 2、安装 composer 包管理工具,参考、composer官方 。 3、进入项目根目录,执行 composer install以安装相关依赖。 4、在项目根目录中,复制 .env.example 为 .env。 5、编辑 .env 文件中的数据库连接配置相关字段。 6、仍然在项目根目录中,执行 php artisan migrate 进行数据库迁移。 7、参考 Laravel 以及 Dcat Admin 相关文档进行开发。     Chemex资产管理运维平台 更新日志: v3.0.9 修复 自定义字段排序在列表页面中无效的问题。 自定义字段排序在字段选择下拉框中无效的问题。 自定义字段排序在详情页中无效的问题。 待办无法删除的问题。 新增 为观察者角色增加了盘点相关权限。 增加了阅读通

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值