项目介绍
管理员角色包含以下功能:
管理员登录,业务员管理,修改密码,账户管理,业务管理等功能。
业务员角色包含以下功能:
业务员登录,账户管理,修改密码,建立新账户,销户,修改账户信息,存款,取款,转账等功能。
由于本程序规模不大,可供课程设计,毕业设计学习演示之用
环境需要
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版本;
6.是否Maven项目:否;
技术栈
1. 后端:mysql+Spring+hibernate+Struts 2
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/ 登录
运行截图
相关代码
转账管理控制器
public class HouChuActionn {
@Autowired
private DinnerOrderservice dinnerOrderservice;
// 分页条件
private Page pageUtil;
private Integer page;
private Integer limit;
private JSONObject houchujson;
public String houchu() {
pageUtil = new Page();
pageUtil.setPageIndex(page);
pageUtil.setPageSize(limit);
List<DinnerOrder> orderlist = dinnerOrderservice.getAllDinnerOrderByhouchu(pageUtil);
Map<String, Object> map = new HashMap<String, Object>();
map.put("code", 0);
map.put("msg", "");
map.put("count", pageUtil.getCount());
map.put("data",orderlist);
houchujson = JSONObject.fromObject(map);
return "success";
}
//修改id
private Integer updateid;
/**
* 后厨上菜齐全事件
* @return
* @throws IOException
*/
public void updateisFull() throws IOException{
PrintWriter out = ServletActionContext.getResponse().getWriter();
int res = dinnerOrderservice.UpdateisFull(updateid);
if(res>0){
out.print(1);
}else{
out.print(-1);
}
}
// 封装
public DinnerOrderservice getDinnerOrderservice() {
return dinnerOrderservice;
}
public void setDinnerOrderservice(DinnerOrderservice dinnerOrderservice) {
this.dinnerOrderservice = dinnerOrderservice;
}
public Page getPageUtil() {
return pageUtil;
}
public void setPageUtil(Page pageUtil) {
this.pageUtil = pageUtil;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public Integer getLimit() {
return limit;
}
public void setLimit(Integer limit) {
this.limit = limit;
}
public JSONObject getHouchujson() {
return houchujson;
}
public void setHouchujson(JSONObject houchujson) {
this.houchujson = houchujson;
}
public Integer getUpdateid() {
return updateid;
}
public void setUpdateid(Integer updateid) {
this.updateid = updateid;
}
}
用户管理控制器
public class UsersAction {
// 属性
private Usersservice usersservice;
// 分页
private Integer page;
private Integer limit;
private Page pageUtil;
private JSONObject usersjson;
// 搜索条件
private String name;
private Integer mtype;
// 登陆条件
private String logname;
private String logpass;
// 用户和Session绑定关系
public static final Map<String, HttpSession> user_session = new HashMap<String, HttpSession>();
// SessionId和用户的绑定关系
public static final Map<String, String> sessionId_user = new HashMap<String, String>();
/**
* 登陆用户
*
* @throws IOException
* io类异常声明
*/
public void Login() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
HttpSession session = ServletActionContext.getRequest().getSession();
HttpServletRequest request = ServletActionContext.getRequest();
//处理用户多端在线
// if(sessionId_user!=null){
// for (String str : sessionId_user.keySet()) {
// String uname = sessionId_user.get(str);
// if(uname.equals(logname)){
// out.print(-1);
// return;
// }
// }
// }
Users user = usersservice.LoginUser(logname);
if(user!=null && user.getUPwd().equals(logpass)){
//绑定用户与session的关系
user_session.put(logname, session);
//同一个浏览器打开新窗口sessionid也是一样,不同浏览器会有不同的sessionid
//绑定sessionID与用户的关系
sessionId_user.put(request.getSession().getId(), logname);
// 将用户加入session
session.setAttribute("user", user);
}
String jsonstr = JSONObject.fromObject(user).toString();
out.print(jsonstr);
}
/**
* 登陆后台主页
*/
public String goIndex() {
return "success";
}
/***
* 后台退出用户
*
* @throws IOException
*/
public void loginOut() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
if (user_session != null) {
user_session.remove(logname);
for (String str : sessionId_user.keySet()) {
String uname = sessionId_user.get(str);
if(uname.equals(logname)){
sessionId_user.remove(str);
}
}
}
out.print("<script>location.href='../login.jsp'</script>");
}
/***
* 前台退出用户
*
* @throws IOException
*/
public void loginQTOut() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
if (user_session != null) {
user_session.remove(logname);
for (String str : sessionId_user.keySet()) {
String uname = sessionId_user.get(str);
if(uname.equals(logname)){
sessionId_user.remove(str);
}
}
}
out.print("<script>location.href='login.jsp'</script>");
}
/**
* 分页形式获取所有员工信息
*
* @return
*/
public String getAllUsers() {
UserCond cond = new UserCond();
if (name != null && !name.equals("")) {
cond.setName("%" + name + "%");
}
if (mtype != null && !mtype.equals("")) {
cond.setMtype(mtype);
}
pageUtil = new Page();
pageUtil.setPageIndex(page);
pageUtil.setPageSize(limit);
List<Users> list = usersservice.getAllUsers(pageUtil, cond);
Map<String, Object> map = new HashMap<String, Object>();
map.put("code", 0);
map.put("msg", "");
map.put("count", pageUtil.getCount());
map.put("data", list);
usersjson = JSONObject.fromObject(map);
return "success";
}
// 根据id获取要修改的对象
private Integer uid;
private Users Upuser;
/**
* 获取修改信息
*
* @return
*/
public String getUserInfo() {
Upuser = usersservice.getOneuser(uid);
return "success";
}
// 修改/添加条件
private String loginname;
private String pwd;
private Integer role;
private String uname;
private String sex;
private String phone;
private String idcard;
private String address;
/**
* 修改用户方法
*
* @throws IOException
*/
public void UpdateUser() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
if (role == 1) {
out.print("<script>alert('禁止修改为管理员');location.href='getoneUser?uid="
+ uid + "';</script>");
} else {
Users user = new Users(uid, loginname, pwd, uname, sex, phone,
idcard, address, role);
int res = usersservice.UpdateUser(user);
if (res == 1) {
out.print("<script>alert('修改成功');location.href='yuangong.jsp';</script>");
} else {
out.print("<script>alert('修改失败');location.href='getoneUser?uid="
+ uid + "';</script>");
}
}
}
/**
* 添加用户
*
* @return
* @throws IOException
*/
public void AddUser() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
int flagloginName = usersservice.flagLoginName(loginname);
if (flagloginName == 0) {
if (role == 1) {
out.print(-2);
} else {
Users user = new Users(loginname, pwd, uname, sex, phone,
idcard, address, role);
int res = usersservice.addUser(user);
if (res > 0) {
out.print(1);
} else {
out.print(-1);
}
}
} else {
out.print(-3);
}
}
// 删除员工条件
private Integer delid;
/**
* 删除员工
*
* @return
* @throws IOException
*/
public void delUser() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
int res = usersservice.delUser(delid);
if (res > 0) {
out.print(1);
} else {
out.print(-1);
}
}
// 修改登陆用户密码条件
private String Uppwd;
/**
* 修改登录用户密码
*
* @return
* @throws IOException
*/
public void UpUserPwd() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
int res = usersservice.UpUserPwd(uid, Uppwd);
if (res > 0) {
out.print(1);
} else {
out.print(-1);
}
}
// 封装
public Usersservice getUsersservice() {
return usersservice;
}
public void setUsersservice(Usersservice usersservice) {
this.usersservice = usersservice;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public Integer getLimit() {
return limit;
}
public void setLimit(Integer limit) {
this.limit = limit;
}
public Page getPageUtil() {
return pageUtil;
}
public void setPageUtil(Page pageUtil) {
this.pageUtil = pageUtil;
}
public JSONObject getUsersjson() {
return usersjson;
}
public void setUsersjson(JSONObject usersjson) {
this.usersjson = usersjson;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getMtype() {
return mtype;
}
public void setMtype(Integer mtype) {
this.mtype = mtype;
}
public String getLogname() {
return logname;
}
public void setLogname(String logname) {
this.logname = logname;
}
public Integer getUid() {
return uid;
}
public void setUid(Integer uid) {
this.uid = uid;
}
public Users getUpuser() {
return Upuser;
}
public void setUpuser(Users upuser) {
Upuser = upuser;
}
public String getLoginname() {
return loginname;
}
public void setLoginname(String loginname) {
this.loginname = loginname;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public Integer getRole() {
return role;
}
public void setRole(Integer role) {
this.role = role;
}
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getIdcard() {
return idcard;
}
public void setIdcard(String idcard) {
this.idcard = idcard;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Integer getDelid() {
return delid;
}
public void setDelid(Integer delid) {
this.delid = delid;
}
public String getUppwd() {
return Uppwd;
}
public void setUppwd(String uppwd) {
Uppwd = uppwd;
}
public static Map<String, HttpSession> getUserSession() {
return user_session;
}
public static Map<String, String> getSessionidUser() {
return sessionId_user;
}
public String getLogpass() {
return logpass;
}
public void setLogpass(String logpass) {
this.logpass = logpass;
}
}
账户管理控制器
public class QianTaiAction {
private DiningTableservice diningTableservice;
private DinnerOrderservice dinnerOrderservice;
private List<DiningTable> dtableList;
/**
* 登陆后台主页
*/
public String goQTIndex() {
return "success";
}
// 餐桌使用情况
public String czsyqk() {
dtableList = diningTableservice.getAlldiningTable();
return "success";
}
// 餐桌Id
private Integer tabid;
public void jiuZuo() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
int res = diningTableservice.updateTableIsNo(tabid);
if (res > 0) {
out.print(1);
} else {
out.print(-1);
}
}
// 前台订单页面获取
// 条件
// 分页条件
private Page pageUtil;
private Integer page;
private Integer limit;
private JSONObject qtorderjson;
// 查询条件
private Integer ispay;
private Date startTime;
private Date endTime;
public String getAllOrderInfo() {
DinnerOrderCond cond = new DinnerOrderCond();
if (ispay != null && ispay != -1) {
cond.setIspay(ispay);
}
if (startTime != null && !startTime.equals("")) {
cond.setStartTime(startTime);
}
if (endTime != null && !endTime.equals("")) {
cond.setEndTime(endTime);
}
pageUtil = new Page();
pageUtil.setPageIndex(page);
pageUtil.setPageSize(limit);
List<DinnerOrder> orderlist = dinnerOrderservice.getAllDinnerOrderByQT(
pageUtil, cond);
Map<String, Object> map = new HashMap<String, Object>();
map.put("code", 0);
map.put("msg", "");
map.put("count", pageUtil.getCount());
map.put("data", orderlist);
qtorderjson = JSONObject.fromObject(map);
return "success";
}
private MemberTypeservice memberTypeservice;
private List<MemberType> membertypelist;
public void getAllMemberType() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
membertypelist = memberTypeservice.getAllMemberType();
JSONArray jsonObject = JSONArray.fromObject(membertypelist);
out.print(jsonObject.toString());
}
// 前台修改会员资料
// 条件
private Memberservice memberservice;
private Integer mid;
private Integer memberType;
private String name;
private String mphone;
private Integer mcode;
public void updateMember() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
MemberType mt = memberTypeservice.getOneMemberType(memberType);
Member member = new Member(mid, mt, name, mphone, mcode);
int res = memberservice.UpdateMember(member);
if (res > 0) {
out.print(1);
} else {
out.print(-1);
}
}
// 添加
public void AddMember() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
int flag = memberservice.flagMemberByphone(mphone);
if (flag == 0) {
int tmp = memberType / 1 * 1000;// 按照会员等级分配不同积分
MemberType mt = memberTypeservice.getOneMemberType(memberType);
Member member = new Member(mid, mt, name, mphone, tmp);
int res = memberservice.AddMember(member);
if (res > 0) {
out.print(1);
} else {
out.print(-2);
}
} else {
out.print(-1);
}
}
// 结算订单
// 条件
private Integer oid;
private Double sumPrice;
private String tabnum;
public void jieSuanOrder() throws IOException {
PrintWriter out = ServletActionContext.getResponse().getWriter();
if(!mphone.equals("") && mphone!=null){
int flagMember = memberservice.flagMemberByphone(mphone);
if(flagMember==1){
BigDecimal bd=new BigDecimal(sumPrice).setScale(0, BigDecimal.ROUND_HALF_UP);
int updateMembercode = memberservice.UpdateMemberByphone(mphone, Integer.parseInt(bd.toString()));
}else{
out.print(-2);
}
}else{
int orderres = dinnerOrderservice.updateOrder(oid, sumPrice);
if (orderres > 0) {
DiningTable dt = diningTableservice.getOneTableBytabNum(tabnum);
int tres = diningTableservice.updateTableIsOff(dt.getId());
if (tres > 0) {
out.print(1);
} else {
out.print(-1);
}
} else {
out.print(-1);
}
}
}
// 封装属性
public DiningTableservice getDiningTableservice() {
return diningTableservice;
}
public void setDiningTableservice(DiningTableservice diningTableservice) {
this.diningTableservice = diningTableservice;
}
public List<DiningTable> getDtableList() {
return dtableList;
}
public void setDtableList(List<DiningTable> dtableList) {
this.dtableList = dtableList;
}
public Integer getTabid() {
return tabid;
}
public void setTabid(Integer tabid) {
this.tabid = tabid;
}
public String getTabnum() {
return tabnum;
}
public void setTabnum(String tabnum) {
this.tabnum = tabnum;
}
public DinnerOrderservice getDinnerOrderservice() {
return dinnerOrderservice;
}
public void setDinnerOrderservice(DinnerOrderservice dinnerOrderservice) {
this.dinnerOrderservice = dinnerOrderservice;
}
public Memberservice getMemberservice() {
return memberservice;
}
public void setMemberservice(Memberservice memberservice) {
this.memberservice = memberservice;
}
public Page getPageUtil() {
return pageUtil;
}
public void setPageUtil(Page pageUtil) {
this.pageUtil = pageUtil;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public Integer getLimit() {
return limit;
}
public void setLimit(Integer limit) {
this.limit = limit;
}
public JSONObject getQtorderjson() {
return qtorderjson;
}
public void setQtorderjson(JSONObject qtorderjson) {
this.qtorderjson = qtorderjson;
}
public Integer getIspay() {
return ispay;
}
public void setIspay(Integer ispay) {
this.ispay = ispay;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getEndTime() {
return endTime;
}
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
public Integer getOid() {
return oid;
}
public void setOid(Integer oid) {
this.oid = oid;
}
public Double getSumPrice() {
return sumPrice;
}
public void setSumPrice(Double sumPrice) {
this.sumPrice = sumPrice;
}
public MemberTypeservice getMemberTypeservice() {
return memberTypeservice;
}
public void setMemberTypeservice(MemberTypeservice memberTypeservice) {
this.memberTypeservice = memberTypeservice;
}
public List<MemberType> getMembertypelist() {
return membertypelist;
}
public void setMembertypelist(List<MemberType> membertypelist) {
this.membertypelist = membertypelist;
}
public Integer getMid() {
return mid;
}
public void setMid(Integer mid) {
this.mid = mid;
}
public Integer getMemberType() {
return memberType;
}
public void setMemberType(Integer memberType) {
this.memberType = memberType;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getMphone() {
return mphone;
}
public void setMphone(String mphone) {
this.mphone = mphone;
}
public Integer getMcode() {
return mcode;
}
public void setMcode(Integer mcode) {
this.mcode = mcode;
}
}