package com.ssm.bms.controller;
import java.io.File;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.commons.io.FilenameUtils;
import org.apache.commons.lang.math.RandomUtils;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
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.multipart.MultipartFile;
import com.alibaba.fastjson.JSONArray;
import com.mysql.cj.util.StringUtils;
import com.ssm.bms.entity.Role;
import com.ssm.bms.entity.User;
import com.ssm.bms.service.RoleService;
import com.ssm.bms.service.UserService;
import com.ssm.bms.tools.Constants;
import com.ssm.bms.tools.PageSupport;
@Controller
@RequestMapping("/sys/user")
public class UserController extends BaseController{
private Logger logger = Logger.getLogger(UserController.class);
@Resource
private UserService userService;
@Resource
private RoleService roleService;
@RequestMapping(value="/list")
public String getUserList(Model model,
@RequestParam(value="queryname",required=false) String queryUserName,
@RequestParam(value="queryUserRole",required=false) String queryUserRole,
@RequestParam(value="pageIndex",required=false) String pageIndex){
logger.info("getUserList ---- > queryUserName: " + queryUserName);
logger.info("getUserList ---- > queryUserRole: " + queryUserRole);
logger.info("getUserList ---- > pageIndex: " + pageIndex);
Integer _queryUserRole = null;
List<User> userList = null;
List<Role> roleList = null;
//设置页面容量
int pageSize = Constants.pageSize;
//当前页码
int currentPageNo = 1;
if(queryUserName == null){
queryUserName = "";
}
if(queryUserRole != null && !queryUserRole.equals("")){
_queryUserRole = Integer.parseInt(queryUserRole);
}
if(pageIndex != null){
try{
currentPageNo = Integer.valueOf(pageIndex);
}catch(NumberFormatException e){
return "redirect:/syserror.html";
}
}
//总数量(表)
int totalCount = 0;
try {
totalCount = userService.getUserCount(queryUserName,_queryUserRole);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//总页数
PageSupport pages=new PageSupport();
pages.setCurrentPageNo(currentPageNo);
pages.setPageSize(pageSize);
pages.setTotalCount(totalCount);
int totalPageCount = pages.getTotalPageCount();
//控制首页和尾页
if(currentPageNo < 1){
currentPageNo = 1;
}else if(currentPageNo > totalPageCount){
currentPageNo = totalPageCount;
}
try {
userList = userService.getUserList(queryUserName,_queryUserRole,currentPageNo,pageSize);
roleList = roleService.getRoleList();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
model.addAttribute("userList", userList);
model.addAttribute("roleList", roleList);
model.addAttribute("queryUserName", queryUserName);
model.addAttribute("queryUserRole", queryUserRole);
model.addAttribute("totalPageCount", totalPageCount);
model.addAttribute("totalCount", totalCount);
model.addAttribute("currentPageNo", currentPageNo);
return "userlist";
}
@RequestMapping(value="/add",method=RequestMethod.GET)
public String addUser(@ModelAttribute("user") User user){
return "useradd";
}
//多文件上传
@RequestMapping(value="/addsave",method=RequestMethod.POST)
public String addUserSave(User user,HttpSession session,HttpServletRequest request,
@RequestParam(value ="attachs", required = false) MultipartFile[] attachs){
String idPicPath = null;
String workPicPath = null;
String errorInfo = null;
boolean flag = true;
String path = request.getSession().getServletContext().getRealPath("statics"+File.separator+"uploadfiles");
logger.info("uploadFile path ============== > "+path);
for(int i = 0;i < attachs.length ;i++){
MultipartFile attach = attachs[i];
if(!attach.isEmpty()){
if(i == 0){
errorInfo = "uploadFileError";
}else if(i == 1){
errorInfo = "uploadWpError";
}
String oldFileName = attach.getOriginalFilename();//原文件名
logger.info("uploadFile oldFileName ============== > "+oldFileName);
String prefix=FilenameUtils.getExtension(oldFileName);//原文件后缀
logger.debug("uploadFile prefix============> " + prefix);
int filesize = 500000;
logger.debug("uploadFile size============> " + attach.getSize());
if(attach.getSize() > filesize){//上传大小不得超过 500k
request.setAttribute(errorInfo, " * 上传大小不得超过 500k");
flag = false;
}else if(prefix.equalsIgnoreCase("jpg") || prefix.equalsIgnoreCase("png")
|| prefix.equalsIgnoreCase("jpeg") || prefix.equalsIgnoreCase("pneg")){//上传图片格式不正确
String fileName = System.currentTimeMillis()+RandomUtils.nextInt(1000000)+"_Personal.jpg";
logger.debug("new fileName======== " + attach.getName());
File targetFile = new File(path, fileName);
if(!targetFile.exists()){
targetFile.mkdirs();
}
//保存
try {
attach.transferTo(targetFile);
} catch (Exception e) {
e.printStackTrace();
request.setAttribute(errorInfo, " * 上传失败!");
flag = false;
}
if(i == 0){
idPicPath = path+File.separator+fileName;
}else if(i == 1){
workPicPath = path+File.separator+fileName;
}
logger.debug("idPicPath: " + idPicPath);
logger.debug("workPicPath: " + workPicPath);
}else{
request.setAttribute(errorInfo, " * 上传图片格式不正确");
flag = false;
}
}
}
if(flag){
user.setCreatedBy(((User)session.getAttribute(Constants.USER_SESSION)).getId());
user.setCreationDate(new Date());
user.setIdPicPath(idPicPath);
user.setWorkPicPath(workPicPath);
try {
if(userService.add(user)){
return "redirect:/sys/user/list";
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return "useradd";
}
@RequestMapping(value="/modify/{id}",method=RequestMethod.GET)
public String getUserById(@PathVariable String id,Model model,HttpServletRequest request){
User user = new User();
try {
user = userService.getUserById(Integer.parseInt(id));
if(user.getIdPicPath() != null && !"".equals(user.getIdPicPath())){
String[] paths = user.getIdPicPath().split("\\"+File.separator);
logger.debug("view picPath paths[paths.length-1]============ " + paths[paths.length-1]);
user.setIdPicPath(request.getContextPath()+"/statics/uploadfiles/"+paths[paths.length-1]);
}
if(user.getWorkPicPath() != null && !"".equals(user.getWorkPicPath())){
String[] paths = user.getWorkPicPath().split("\\"+File.separator);
logger.debug("view workPicPath paths[paths.length-1]======
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
系统简介:主要功能介绍:(1)订单管理模块;(2)供应商模块;(3)用户管理模块等。 项目技术:主要运用Spring+Spring MVC+MyBatis+JQuery+Jsp+Jstl+MySQL。 所用工具:Tomcat9.0、Eclipse2018、Mysql 硬件环境:Windows 10 功能模块: 订单管理模块:主要包含对订单信息包括商品的查询,修改,删除,添加功能; 供应商管理模块:主要包含对供应商的查询,修改,删除,添加功能; 用户管理模块:主要包含对所有用户信息的查询,修改,删除,添加功能; 密码模块:主要包含对当前登入用户密码进行修改操作; 本资源仅供学习使用。欢迎下载。
资源推荐
资源详情
资源评论
收起资源包目录
北大青鸟 超市管理系统 (314个子文件)
UserController.class 15KB
ProviderController.class 12KB
BillController.class 8KB
RoleController.class 5KB
User.class 5KB
Provider.class 4KB
UserServiceImpl.class 3KB
Bill.class 3KB
ProviderServiceImpl.class 3KB
BigDecimalUtil.class 3KB
LoginController.class 3KB
BillServiceImpl.class 2KB
RoleServiceImpl.class 2KB
Role.class 2KB
StringToDateConverter.class 2KB
PageSupport.class 1KB
SysInterceptor.class 1KB
BigDecimalUtil$BigDecimalOprations.class 1KB
UserMapper.class 1KB
BillMapper.class 1KB
BaseController.class 1KB
ProviderMapper.class 1KB
UserService.class 984B
ProviderService.class 868B
BillService.class 788B
RoleMapper.class 719B
AppTest.class 609B
RoleService.class 565B
App.class 537B
Constants.class 452B
.classpath 2KB
org.eclipse.wst.common.component 656B
org.eclipse.wst.jsdt.ui.superType.container 49B
style.css 9KB
public.css 6KB
datepicker.css 4KB
datepicker.css 4KB
WdatePicker.css 165B
wc.db 145KB
entries 3B
format 3B
img.gif 2KB
img.gif 2KB
datePicker.gif 1KB
My97DatePicker.htm 1KB
UserController.java 16KB
ProviderController.java 13KB
BillController.java 7KB
User.java 4KB
RoleController.java 4KB
BigDecimalUtil.java 4KB
ProviderServiceImpl.java 3KB
Provider.java 3KB
UserServiceImpl.java 3KB
Bill.java 3KB
LoginController.java 2KB
BillMapper.java 2KB
UserMapper.java 2KB
BillServiceImpl.java 2KB
ProviderMapper.java 2KB
RoleServiceImpl.java 2KB
UserService.java 2KB
ProviderService.java 1KB
BaseController.java 1KB
PageSupport.java 1KB
BillService.java 1KB
Role.java 1KB
RoleMapper.java 1KB
RoleService.java 1KB
SysInterceptor.java 937B
StringToDateConverter.java 869B
AppTest.java 677B
Constants.java 212B
App.java 187B
login_bg.jpg 45KB
clock.jpg 22KB
loginBg.jpg 18KB
bg.jpg 307B
jquery-1.8.3.min.js 91KB
calendar.js 19KB
WdatePicker.js 8KB
useradd.js 7KB
billadd.js 5KB
billmodify.js 5KB
userlist.js 4KB
usermodify.js 4KB
providerlist.js 3KB
provideradd.js 3KB
pwdmodify.js 3KB
billlist.js 3KB
roleadd.js 2KB
providermodify.js 2KB
rolelist.js 2KB
rolemodify.js 1KB
zh-cn.js 1KB
zh-tw.js 1KB
time.js 1KB
en.js 644B
common.js 543B
rollpage.js 505B
共 314 条
- 1
- 2
- 3
- 4
资源评论
过客而已
- 粉丝: 4
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功