package com.clw.medicine.user.controller;
import com.clw.medicine.user.po.User;
import com.clw.medicine.user.service.UserService;
import com.clw.medicine.utils.ErrorInfoUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* Description: 用户控制器
* Author: clw
* Date: 2018/3/19
* Version: 1.0
*/
@Controller
@RequestMapping(value = "user/user", method = {RequestMethod.POST})
public class UserController {
@Autowired
UserService userService;
/**
* 登录Controller
* @param request HttpServletRequest 对象
* @param username 用户名
* @param password 密码
* @return Map 返回相关状态
* @throws Exception 异常
*/
@RequestMapping(value = "login")
public @ResponseBody
Map<String, String> login(HttpServletRequest request, @RequestParam(value = "username", defaultValue = "") String username,
@RequestParam(value = "password", defaultValue = "") String password) throws Exception {
System.out.println("username: " + username + ", password: " + password);
User user = userService.loginCheck(username, password);
Map<String, String> resultMap =new HashMap<String, String>();
if (user != null) {
request.getSession().setAttribute("userid", user.getUid());
request.getSession().setAttribute("username", user.getUsername());
request.getSession().setAttribute("identity", "user");
resultMap.put("state", "success");
} else {
resultMap.put("state", "fail");
resultMap.put("reason", ErrorInfoUtil.getErrorInfo("user.login.check.null"));
}
return resultMap;
}
/**
* 获取指定用户ID的用户信息
* @param userIds 用户ID数组
* @return Map 返回相关状态及信息
* @throws Exception 异常
*/
@RequestMapping(value = "getSomeUser")
public @ResponseBody
Map<String, Object> getSomeUser(@RequestParam(value = "userIds[]") String[] userIds) throws Exception {
List<User> users = userService.getSomeUser(userIds);
Map<String, Object> result = new HashMap<String, Object>();
if (users.size() > 0) {
result.put("state", "success");
result.put("result", users);
} else {
result.put("state", "fail");
result.put("reason", null);
}
return result;
}
/**
* 获取用户总量
* @return Map 返回相关状态及信息
* @throws Exception 异常
*/
@RequestMapping(value = "getUserCount")
public @ResponseBody
Map<String, Object> getUserCount() throws Exception {
int count = userService.count();
Map<String, Object> result = new HashMap<String, Object>();
if (count > 0) {
result.put("state", "success");
result.put("result", count);
} else {
result.put("state", "fail");
result.put("reason", 0);
}
return result;
}
/**
* 获取指定数量的用户信息
* @param offset 偏移量
* @param limit 限制返回条数
* @return Map 返回相关状态及信息
* @throws Exception 异常
*/
@RequestMapping(value = "getLimitUser")
public @ResponseBody
Map<String, Object> getLimitUser(@RequestParam(value = "offset") int offset,
@RequestParam(value = "limit") int limit) throws Exception {
List<User> userList = userService.getLimitUser(offset, limit);
Map<String, Object> result = new HashMap<String, Object>();
if (userList.size() > 0) {
result.put("state", "success");
result.put("result", userList);
} else {
result.put("state", "fail");
result.put("reason", null);
}
return result;
}
/**
* 根据用户ID更新用户信息
* @param user 新的用户信息
* @return Map 返回相关状态及信息
* @throws Exception 异常
*/
@RequestMapping(value = "updateUserById")
public @ResponseBody
Map<String, Object> updateUserById(@RequestBody User user) throws Exception {
int updateCount = userService.updateById(user);
Map<String, Object> result = new HashMap<String, Object>();
if (updateCount > 0) {
result.put("state", "success");
result.put("result", updateCount);
} else {
result.put("state", "fail");
result.put("reason", 0);
}
return result;
}
/**
* 根据用户ID数组删除一些用户信息
* @param userIds 用户ID数组
* @return Map 返回相关状态及信息
* @throws Exception 异常
*/
@RequestMapping(value = "deleteSomeUser")
public @ResponseBody
Map<String, Object> deleteSomeUser(@RequestParam(value = "userIds[]") String[] userIds) throws Exception {
int deleteNum = userService.deleteSomeUser(userIds);
Map<String, Object> result = new HashMap<String, Object>();
if (deleteNum > 0) {
result.put("state", "success");
result.put("result", deleteNum);
} else {
result.put("state", "fail");
result.put("reason", null);
}
return result;
}
/**
* 添加用户
* @param user 用户信息
* @return Map 返回相关状态及信息
* @throws Exception 异常
*/
@RequestMapping(value = {"addUser", "registerUser"})
public @ResponseBody
Map<String, Object> addUser(@RequestBody User user) throws Exception {
int addCount = userService.addUser(user);
Map<String, Object> result = new HashMap<String, Object>();
if (addCount > 0) {
result.put("state", "success");
result.put("result", addCount);
} else {
result.put("state", "fail");
result.put("reason", 0);
}
return result;
}
/**
* 根据用户ID更新用户密码
* @param uid 用户ID
* @param originalPasswd 原密码
* @param newPasswd 新密码
* @return Map 返回相关状态及信息
* @throws Exception 异常
*/
@RequestMapping(value = "updateUserPasswdById")
public @ResponseBody
Map<String, Object> updateUserPasswdById(@RequestParam(value = "uid", defaultValue = "") String uid,
@RequestParam(value = "originalPasswd", defaultValue = "") String originalPasswd,
@RequestParam(value = "newPasswd", defaultValue = "") String newPasswd) throws Exception {
int updateCount = userService.updatePasswdById(uid, originalPasswd, newPasswd);
Map<String, Object> result = new HashMap<String, Object>();
if (updateCount > 0) {
result.put("state", "success");
result.put("result", updateCount);
} else {
result.put("state", "fail");
result.put("reason", 0);
}
return result;
}
/**
* 获取当前登录用户
* @return Map 返回相关状态及信息
* @throws Exception 异常
*/
@RequestMapping(value = "getCurrentUser")
public @ResponseBody
Map<String, Object> getCurrentUser(HttpServletRequest request) throws Exception {
String userId = (String) request.getSession().getAttribute("userid");
User user = null;
if (userId != null && !"".equals(userId)) {
user = userService.getUserById(userId);
}
Map<String, Object> result = new HashMap<String, Object>();
if (user != null) {
result.put("state", "success");
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
项目介绍 该项目是前后台的医药管理系统(写在了一个web项目里), 简单明了,界面高端大气,共6张表 后台管理系统用于药片的管理, 前台系统是用户购买药片,下订单使用。 主要功能介绍: 药品管理系统-后台: 订单管理 添加、编辑、删除 药品管理 添加、编辑、删除 - 药品名、药品类别、单价 药品类别管理 添加、编辑、删除 - 类别名称、描述 用户管理 添加、编辑、删除 - 用户名、电话、描述 药品商城-前台: 前台页面展示药品类别、药品缩略图、药品详情、可购买、加入购物车、形成订单 配置环境 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.是否Maven项目: 是;查看源码目录中是否包含pom.xml; 若包含,则为maven项目,否则为非maven项目 6.数据
资源推荐
资源详情
资源评论
收起资源包目录
Java项目:药品管理系统(java+SSM+html+jQuery+Tomcat+mysql) (360个子文件)
.classpath 1KB
org.eclipse.wst.common.component 677B
org.eclipse.wst.jsdt.ui.superType.container 49B
uikit.gradient.css 183KB
uikit.almost-flat.css 180KB
uikit.css 171KB
uikit.gradient.min.css 107KB
uikit.almost-flat.min.css 104KB
uikit.min.css 98KB
htmleditor.gradient.css 6KB
htmleditor.almost-flat.css 6KB
search.gradient.css 4KB
search.almost-flat.css 4KB
search.css 4KB
htmleditor.css 4KB
nestable.gradient.css 4KB
slideshow.almost-flat.css 3KB
slideshow.gradient.css 3KB
slideshow.css 3KB
htmleditor.gradient.min.css 3KB
progress.gradient.css 3KB
nestable.almost-flat.css 3KB
nestable.css 3KB
htmleditor.almost-flat.min.css 3KB
datepicker.gradient.css 3KB
progress.almost-flat.css 3KB
dotnav.almost-flat.css 3KB
dotnav.gradient.css 3KB
datepicker.almost-flat.css 3KB
dotnav.css 3KB
notify.gradient.css 3KB
notify.almost-flat.css 3KB
progress.css 2KB
datepicker.css 2KB
tooltip.gradient.css 2KB
tooltip.almost-flat.css 2KB
notify.css 2KB
tooltip.css 2KB
progress.gradient.min.css 2KB
search.gradient.min.css 2KB
search.almost-flat.min.css 2KB
slideshow.gradient.min.css 2KB
slideshow.almost-flat.min.css 2KB
slideshow.min.css 2KB
search.min.css 2KB
slidenav.gradient.css 2KB
slidenav.css 2KB
slidenav.almost-flat.css 2KB
htmleditor.min.css 2KB
form-advanced.gradient.css 2KB
form-advanced.css 2KB
form-advanced.almost-flat.css 2KB
slider.almost-flat.css 2KB
slider.gradient.css 2KB
slider.css 2KB
datepicker.gradient.min.css 2KB
progress.almost-flat.min.css 2KB
sortable.gradient.css 2KB
sortable.almost-flat.css 2KB
sortable.css 2KB
nestable.gradient.min.css 2KB
datepicker.almost-flat.min.css 1KB
progress.min.css 1KB
tooltip.gradient.min.css 1KB
tooltip.almost-flat.min.css 1KB
nestable.almost-flat.min.css 1KB
tooltip.min.css 1KB
dotnav.gradient.min.css 1KB
dotnav.almost-flat.min.css 1KB
nestable.min.css 1KB
datepicker.min.css 1KB
autocomplete.gradient.css 1KB
autocomplete.almost-flat.css 1KB
dotnav.min.css 1KB
form-advanced.almost-flat.min.css 1KB
form-advanced.gradient.min.css 1KB
form-advanced.min.css 1KB
autocomplete.css 1KB
notify.gradient.min.css 1KB
notify.almost-flat.min.css 1KB
accordion.gradient.css 1KB
accordion.almost-flat.css 1KB
accordion.css 1011B
slidenav.min.css 1008B
slidenav.almost-flat.min.css 1008B
slidenav.gradient.min.css 1008B
notify.min.css 979B
sticky.css 852B
sticky.almost-flat.css 852B
sticky.gradient.css 852B
form-password.css 815B
form-password.gradient.css 815B
form-password.almost-flat.css 815B
form-select.gradient.css 784B
form-select.css 784B
form-select.almost-flat.css 784B
form-file.gradient.css 766B
form-file.almost-flat.css 766B
form-file.css 766B
placeholder.css 761B
共 360 条
- 1
- 2
- 3
- 4
资源评论
- java_and_web2022-06-01用户下载后在一定时间内未进行评价,系统默认好评。
OldWinePot
- 粉丝: 8987
- 资源: 426
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于大数据环境搭建,本项目为大数据基础镜像组件,Hadoop、Spark、Hive、Tez、Hue、Flink、Zookeeper、Kafka、MySQL等,用
- 基于开源的flink,对其实时sql进行扩展;主要实现了流与维表的join,支持原生flink SQL所有的语法详细文档+全部资料.zip
- 基于开源flink,源码阅读注释详细文档+全部资料.zip
- 基于微服务架构的实时计算(Flink)展示平台详细文档+全部资料.zip
- 工具4:股权激励如何实施.xls
- 天津滨海快速交通发展有限公司股权激励机制探讨2.ppt
- 某某交通股份有限公司高层股权激励方案.doc
- 话费管理规定.docx
- 话费补贴申请书.doc
- 交通补贴及移动话费补贴政策.doc
- 话费补贴管理制度.doc
- 电话费补贴管理办法(暂行).doc
- 话费补助管理制度.doc
- 员工话费补贴管理制度.doc
- 手机补贴标准管理办法.doc
- 加班与加班费的控制技巧.ppt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功