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]======
没有合适的资源?快使用搜索试试~ 我知道了~
超市订单管理系统maven集成版
共201个文件
class:30个
java:29个
js:26个
需积分: 9 10 下载量 36 浏览量
2018-11-21
14:07:43
上传
评论
收藏 278KB 7Z 举报
温馨提示
这份代码在我之前发的超市订单管理系统的基本上删删改改了许多,把maven集成配置了上去,建议有知识储备的或者想要学习的下载观看。
资源推荐
资源详情
资源评论
收起资源包目录
超市订单管理系统maven集成版 (201个子文件)
access_log.2018-10-06 0B
access_log.2018-10-07 0B
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
entries 846B
entries 692B
entries 659B
entries 567B
entries 539B
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
共 201 条
- 1
- 2
- 3
资源评论
hyf1998
- 粉丝: 17
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功