基于javaweb+jsp的OA办公管理系统(java+Layui+SSM+Maven+mysql+JSP+html)
一、项目运行
环境配置:
Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)
项目技术:
JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
* @date 2018/9/16 16:12
*/
@RequestMapping("/editSave")
@RequiresPermissions("dept:update")
@Operlog(modal = "部门管理",descr = "修改信息")
@ResponseBody
public AjaxResult save(Dept dept)
{
int i = 0;
try
{
i = iDeptService.updateByPrimaryKeySelective(dept);
}
catch (Exception e)
{
return error(e.getMessage());
}
if (role.getRoleId().equals(getRoleId()))
{
ShiroUtils.reloadUser(iUserService.selectByPrimaryKey(getUserId()));
}
return result(i);
}
/**
* 校验名称唯一
*/
@PostMapping("/checkRoleNameUnique")
@ResponseBody
public String checkDeptNameUnique(Role role)
{
String uniqueFlag = "0";
if (role != null)
{
uniqueFlag = iRoleService.checkRoleNameUnique(role);
}
return uniqueFlag;
}
}
会议室管理控制层:
/**
}
return uniqueFlag;
}
public Map<String, Object> getRole_Post_Dept()
{
Map<String, Object> map = new HashMap<>();
// 角色
List<Role> roles = iRoleService.selectRoleList(new Role());
// 部门信息
List<Dept> depts = iDeptService.selectDeptList(new Dept());
// 岗位
List<Position> positions = iPositionService.selectPositionList(new Position());
map.put("role", roles);
map.put("dept", depts);
map.put("position", positions);
return map;
}
/**
* 用户个人信息查看页面
model.addAttribute("user", user);
return prefix + "edit";
}
/**
*
* @描述 保存用户
*
* @date 2018/9/15 18:53
*/
@PostMapping("/editSave")
@RequiresPermissions("user:update")
@Operlog(modal = "用户管理", descr = "修改用户信息")
@ResponseBody
public AjaxResult save(User user)
{
if (StringUtils.isNotNull(user.getUid()) && User.isBoss(user.getUid()))
{
@RequestMapping("/dept")
public class DeptController extends BaseController{
private String prefix = "system/dept/";
@Autowired
IDeptService iDeptService;
@Autowired
IUserService iUserService;
/**
*
* @描述 页面跳转到部门
*
* @date 2018/9/16 10:59
*/
@RequestMapping("/tolist")
@RequiresPermissions("dept:list")
public String tolist()
{
return prefix + "dept";
}
/**
*
* @描述 ajax请求的所有部门
*
@ResponseBody
public AjaxResult addUser(User user)
{
user.setSalt(ShiroUtils.randomSalt());
SimpleHash md5 = new SimpleHash("MD5", user.getPwd(), user.getSalt(), 1024);
user.setPwd(md5.toHex());
user.setAvatar(CsEnum.avatar.USER_AVATAR.getValue());
user.setCreateTime(new Date());
return result(iUserService.insertSelective(user));
}
/**
*
* @描述 批量删除
*
* @date 2018/9/16 9:31
* @描述 部门列表页
*
* @date 2018/9/16 10:52
*/
@RequestMapping("/tableList")
@ResponseBody
public TableDataInfo listPag(Dept dept)
{
//开启分页
startPage();
List<Dept> depts = iDeptService.selectDeptList(dept);
return getDataTable(depts);
}
/**
* @date 2018/9/16 11:37
*/
@RequestMapping("/toAdd")
@RequiresPermissions("role:add")
public String toAdd(Model model)
{
return prefix + "add";
}
/**
*
* @描述 批量删除
* @date 2018/9/16 14:06
*/
@RequestMapping("/edit/{id}")
@RequiresPermissions("dept:update")
public String edit(@PathVariable("id") String id, Model model)
{
Dept dept = iDeptService.selectByPrimaryKey(id);
List<User> users = iUserService.selectByUser(new User());
model.addAttribute("users", users);
model.addAttribute("Dept", dept);
return prefix + "edit";
}
/**
*
* @描述 修改保存
*
* @描述 保存用户
*
* @date 2018/9/15 18:53
*/
@PostMapping("/editSave")
@RequiresPermissions("user:update")
@Operlog(modal = "用户管理", descr = "修改用户信息")
@ResponseBody
public AjaxResult save(User user)
{
if (StringUtils.isNotNull(user.getUid()) && User.isBoss(user.getUid()))
* @描述: 根据ID 获取u他的所有权限 做回显
*
* @params: roleId 角色Id
* @return:
* @date: 2018/9/27 14:04
*/
@RequestMapping("/selectById/{roleId}")
@ResponseBody
public Role selectById(@PathVariable("roleId") Integer roleId)
{
* @描述: 根据ID 获取u他的所有权限 做回显
*
* @params: roleId 角色Id
* @return:
* @date: 2018/9/27 14:04
*/
@RequestMapping("/selectById/{roleId}")
@ResponseBody
public Role selectById(@PathVariable("roleId") Integer roleId)
{
Role role = iRoleService.selectByPrimaryKey(roleId);
return role;
}
/**
*
* @描述 编辑修改页面
*
* @date 2018/9/16 14:06
*/
@RequestMapping("/edit/{id}")
@RequiresPermissions("role:update")
*/
@RequestMapping("/editSave")
@RequiresPermissions("dept:update")
@Operlog(modal = "部门管理",descr = "修改信息")
@ResponseBody
public AjaxResult save(Dept dept)
{
int i = 0;
try
{
i = iDeptService.updateByPrimaryKeySelective(dept);
}
catch (Exception e)
{
return error(e.getMessage());
}
@Autowired
IDeptService iDeptService;
@Autowired
IUserService iUserService;
/**
*
* @描述 页面跳转到部门
*
* @date 2018/9/16 10:59
*/
@RequestMapping("/tolist")
*/
@RequestMapping("/updateAvatar")
public String toupdateAvatar(Model model)
{
model.addAttribute("user", getUser());
return prefix + "profile/avatar";
}
/**
* 修改保存用户头像
*/
@RequestMapping("/updateAvatarSave")
@RequiresPermissions("user:update")
@Operlog(modal = "个人信息", descr = "修改头像")
*
* @date 2018/9/16 14:06
*/
@RequestMapping("/edit/{id}")
@RequiresPermissions("role:update")
public String edit(@PathVariable("id") Integer id, Model model)
{
Role role = iRoleService.selectByPrimaryKey(id);
model.addAttribute("Role", role);
return prefix + "edit";
}
/**
*
* @描述 编辑修改权限页面
*
* @date 2018/9/16 14:06
*/
@RequestMapping("/editPower/{id}")
@RequiresPermissions("role:update")
public String editPower(@PathVariable("id") Integer id, Model model)
{
// 岗位
List<Position> positions = iPositionService.selectPositionList(new Position());
map.put("role", roles);
map.put("dept", depts);
map.put("position", positions);
return map;
}
/**
* 用户个人信息查看页面
*/
@RequestMapping("/myMsg")
public String ToMyMsg(Model model, HttpServletRequest request)
{
User user = iUserService.selectByPrimaryKey(getUserId());
model.addAttribute("user", user);
model.addAttribute("loginIp", HttpHeaderUtil.getIpAddr(request));
return prefix + "profile/msg";
}
/**
* 密码修改页面
*/
@Operlog(modal = "会议室管理",descr = "修改会议室")
@ResponseBody
public AjaxResult save(MeetingRoom meetingRoom)
{
return result(iMeetingRoomService.updateByPrimaryKeySelective(meetingRoom));
}
/**
* 校验部门名称
*/
@PostMapping("/checkRoomNameUnique")
@ResponseBody
public String checkMeetingRoomNameUnique(MeetingRoom meetingRoom)
{
String uniqueFlag = "0";
if (meetingRoom != null)
{
uniqueFlag = iMeetingRoomService.checkRoomNameUnique(meetingRoom);
* @描述 批量删除
*
* @date 2018/9/16 11:53
*/
@RequestMapping("/del")
@RequiresPermissions("dept:del")
@ResponseBody
@Operlog(modal = "部门管理",descr = "删除部门")
public AjaxResult del(String[] ids)
{
try
{
iDeptService.deleteByPrimaryKeys(ids);
}
catch (Exception e)
{
return error(e.getMessage());
}
return success();
}
/**
*
@RequestMapping("/toAdd")
@RequiresPermissions("role:add")
public String toAdd(Model model)
{
return prefix + "add";
}
/**
*
* @描述 批量删除
*
* @date 2018/9/16 11:53
*/
{
return error(e.getMessage());
}
//清空缓存
ShiroUtils.clearCachedAuthorizationInfo();
//如果用户正在修改的角色id 是当前用户的角色id 则刷新 subject的User信息
if (role.getRoleId().equals(getRoleId()))
{
ShiroUtils.reloadUser(iUserService.selectByPrimaryKey(getUserId()));
}
return result(i);
}
/**
* 校验名称唯一
*/
@PostMapping("/checkRoleNameUnique")
//清空缓存
ShiroUtils.clearCachedAuthorizationInfo();
return result(insert);
}
/**
*
* @描述: 根据ID 获取u他的所有权限 做回显
*
* @params: roleId 角色Id
* @return:
* @date: 2018/9/27 14:04
*/
@RequestMapping("/selectById/{roleId}")
@ResponseBody
public Role selectById(@PathVariable("roleId") Integer roleId)
{
* @date 2018/9/16 16:12
*/
@RequestMapping("/editSave")
@RequiresPermissions("role:update")
@Operlog(modal = "角色管理",descr = "修改角色信息")
@ResponseBody
public AjaxResult save(Role role)
{
int i = 0;
try
{
i = iRoleService.updateByPrimaryKeySelective(role);
}
return uniqueFlag;
}
户管理控制层:
/**
* @author yy
*/
@Controller
@RequestMapping("/user")
public class UserController extends BaseController{
private String prefix = "system/user/";
@Autowired
IUserService iUserService;
@Autowired
IRoleService iRoleService;
@Autowired
IDeptService iDeptService;
user.setUid(getUserId());
user.setAvatar(imgPath);
int i = iUserService.updateByPrimaryKeySelective(user);
if (i > 0)
{
ShiroUtils.reloadUser(iUserService.selectByPrimaryKey(getUserId()));
}
return result(i);
}
catch (IOException e)
{
return error();
}
catch (FileSizeException e)
{
//文件过大
return error(e.getMsg());
}
catch (FileNameLengthException e)
{
//文件名字超长
return error(e.getMsg());
/**
* @author yy
*/
@Controller
@RequestMapping("/room")
public class MeetRoomController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
private String prefix = "system/room/";
@Autowired
private IMeetingRoomService iMeetingRoomService;
/**
*
* @描述 页面跳转
*
* @date 2018/9/16 10:59
*/
@RequestMapping("/tolist")
public String tolist()
{
return prefix + "room";
}
/**
model.addAttribute("user", getUser());
return prefix + "profile/avatar";
}
/**
* 修改保存用户头像
*/
@RequestMapping("/updateAvatarSave")
@RequiresPermissions("user:update")
@Operlog(modal = "个人信息", descr = "修改头像")
@ResponseBody
public AjaxResult toupdateAvatar(MultipartFile file)
{
try
{
String imgPath = UploadFile.uploadUserImg(file);
if (StringUtils.isEmpty(imgPath))
{
return error("图片上传失败,稍后再试!");
