jsp版超市信息管理系统-EmployeeDAO.java

一、登陆界面

可以让不同的用户进行登陆,总共有四种用户类型,分别为经理(可以对所有界面进行查看,修改),销售人员(可以对所有界面进行查看,但只能对销售界面进行操作),库存管理人员(可以对所有界面进行查看,但只能对库存界面进行操作),采购人员(可以对所有界面进行查看,但只能对进退货界面进行操作)。

二. 基本信息

1. 供应商信息管理

2. 商品信息管理

3. 员工信息管理

三. 进退货信息管理

1、进货登记:进行商品进货登记

2、退货登记:商品退货登记,损坏或质量问题的货品退给供应商,因规格或其他问题的商品将退货回库存。

3、进货查询:可根据时间段,商品类别,供应商进行查询

4、退货查询:可根据时间段,商品类别,供应商进行查询

四 、销售管理

1、商品销售处理:可实现多种商品的销售,有销售日期,小票号以及销售人员的编号。

2、销售退货处理: 可依据小票号进行退货,并要有备注可表明退货原因,以及要有退货日期

3、销售查询:按商品名称查询,按销售人员查询,按销售日期查询

4、退货查询:按小票号查询,按商品名称查询,按销售人员查询,按退货日期查询

五. 信息统计查询

1. 商品销售统计排行:可以按时间段,单类商品销售量,多种商品销售量进行查询

2. 销售人员业绩排行:按销售出商品的总金额进行排行

3. 营业历程对比:按月份销售额或季度销售额进行图形或文字或表状(有一种类型的就可以了)的对比。

六、库存管理

1、库存查询:可按商品名进行查询,商品类别进行查询(可实现模糊查询)

2、库存盘点:进货金额和销售金额的对比

3、库存上溢,下限预警,以及库存报损(当库存少于或多于限定数量时就会显示相关文字进行提醒)

七、系统管理设置

1、用户信息管理(限制不同用户的权限)

2. 用户密码修改

 

package com.shuangyulin.dao;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import com.shuangyulin.DBUtils.DB;
import com.shuangyulin.javabean.Admin;
import com.shuangyulin.javabean.Employee;
import com.shuangyulin.javabean.Good;

/*关于员工信息操作的业务操作类*/
public class EmployeeDAO {
	/*errMessage保存业务处理的错误消息*/
	private String errMessage;
	private final int  pageSize = 8; /*设置每页显示的员工数量*/
	private int recordCount = 0;	/*保存查询到的总的记录条数*/
	private int totalPage = 0;		/*符合查询条件的总的页数*/
	private int currentPage = 1; 	/*当前要显示的页面*/
	private String employeeNo = ""; /*查询员工的编号关键字*/
	private String employeeName = ""; /*查询员工的姓名关键字*/
	
	public int getCurrentPage() {
		return currentPage;
	}

	public void setCurrentPage(int currentPage) {
		this.currentPage = currentPage;
	}

	public String getEmployeeName() {
		return employeeName;
	}

	public void setEmployeeName(String employeeName) {
		this.employeeName = employeeName;
	}

	public String getEmployeeNo() {
		return employeeNo;
	}

	public void setEmployeeNo(String employeeNo) {
		this.employeeNo = employeeNo;
	}

	public int getPageSize() {
		return pageSize;
	}

	public int getRecordCount() {
		return recordCount;
	}

	public void setRecordCount(int recordCount) {
		this.recordCount = recordCount;
	}

	public int getTotalPage() {
		return totalPage;
	}

	public void setTotalPage(int totalPage) {
		this.totalPage = totalPage;
	}

	public String getErrMessage() {
		return errMessage;
	}

	/*验证员工登陆系统帐号和密码的正确行*/
	public static boolean checkLogin(Employee employee) {
		DB db = new DB();
		boolean flag = false;
		String sql = "select * from employeeInfo where employeeNo='"
				+ employee.getEmployeeNo() + "' and employeePassword='"
				+ employee.getEmployeePassword() + "'";
		try {
			ResultSet rs = db.executeQuery(sql);
			if (rs.next())
				flag = true;
			else
				flag = false;
			
		} catch (Exception e) {
			flag = false;
			e.printStackTrace();
		} finally {
			db.all_close();
		}
		return flag;
	}
	
	/*根据员工编号查询系统中是否已经存在该记录*/
	public boolean IsExistEmployee(String employeeNo) {
		boolean isExist = false;
		String sql = "select * from [employeeInfo] where employeeNo='" + employeeNo + "'";
		ResultSet rs = null;
		DB db = new DB();
		try {
			rs = db.executeQuery(sql);
			if(rs.next()) isExist = true;
			db.all_close();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return isExist;
	}
	
	/*传入员工信息bean,执行该员工信息加入数据库*/
	public boolean AddEmployeeInfo(Employee employee) {
		/*首先查询系统中该员工编号是否已经存在*/
		if(IsExistEmployee(employee.getEmployeeNo())) {
			this.errMessage = "系统中已经存在了该员工编号!";
			return false;
		}
		String sql = "insert into [employeeInfo] " +
				"(employeeNo,employeeName,employeePassword,employeeSex," +
				"employeeBirthday,employeeEducationId,employeeHomeTel," +
				"employeeMobile,employeeCard,employeeEmail,employeeAddress) values ('";
		sql += employee.getEmployeeNo() + "','";
		sql += employee.getEmployeeName() + "','";
		sql += employee.getEmployeePassword() + "','";
		sql += employee.getEmployeeSex() + "','";
		sql += employee.getEmployeeBirthday() + "',";
		sql += employee.getEmployeeEducationId() + ",'";
		sql += employee.getEmployeeHomeTel() + "','";
		sql += employee.getEmployeeMobile() + "','";
		sql += employee.getEmployeeCard() + "','";
		sql += employee.getEmployeeEmail() + "','";
		sql += employee.getEmployeeAddress() + "')";
		
		boolean isSuccess = true;
		DB db = new DB();
		try {
			if(db.executeUpdate(sql) <= 0) {
				this.errMessage = "数据添加时发生了错误!";
				isSuccess = false;
			}
		} catch (Exception e) {
			// TODO Auto-generated catch block
			this.errMessage = "数据添加时发生了错误!";
			isSuccess = false;
			e.printStackTrace();
		} finally {
			db.all_close();
		}
		return isSuccess;
		
	}
	
	/*根据查询条件执行员工信息的查询*/
	public ArrayList QueryEmployeeInfo() {
		this.PrepareQuery();	/*首先根据查询条件计算总的记录和总的页数*/
		ArrayList<Employee> employeeList = new ArrayList<Employee>();
		String sqlString = "select * from [employeeInfo] where 1=1";
		if(employeeNo != "")
			sqlString += " and employeeNo like '%" + employeeNo + "%'";
		if(employeeName != "")
			sqlString += " and employeeName like '%" + employeeName + "%'";
		/*调用数据层进行查询*/
		DB db = new DB();
		try {
			ResultSet rs = db.executeQuery(sqlString);
			if(this.currentPage < 1) this.currentPage = 1;
			if(this.currentPage > this.totalPage) this.currentPage = this.totalPage;
			/*计算要移动多少记录数才可以到达要显示的页面*/
			int moveRecordCount = this.pageSize * (this.currentPage - 1);
			for(int i=0;i<moveRecordCount;i++) rs.next();
			/*移动rs记录指针到达目标页后就对目标页的每条记录进行处理*/
			for(int i=0;i<this.pageSize;i++) {
				if(rs.next()) {
					Employee employee = new Employee();
					employee.setEmployeeNo(rs.getString("employeeNo"));
					employee.setEmployeeName(rs.getString("employeeName"));
					employee.setEmployeePassword(rs.getString("employeePassword"));
					employee.setEmployeeSex(rs.getString("employeeSex"));
					employee.setEmployeeBirthday(rs.getDate("employeeBirthday"));
					employee.setEmployeeEducationId(rs.getInt("employeeEducationId"));
					employee.setEmployeeHomeTel(rs.getString("employeeHomeTel"));
					employee.setEmployeeMobile(rs.getString("employeeMobile"));
					employee.setEmployeeCard(rs.getString("employeeCard"));
					employee.setEmployeeEmail(rs.getString("employeeEmail"));
					employee.setEmployeeAddress(rs.getString("employeeAddress"));
					employeeList.add(employee);
				} else {
					break;
				}
			}
			db.all_close();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return employeeList;
	}

	private void PrepareQuery() {
		String sqlString = "select count(*) from [employeeInfo] where 1=1";
		if(employeeNo != "")
			sqlString += " and employeeNo like '%" + employeeNo + "%'";
		if(employeeName != "")
			sqlString += " and employeeName like '%" + employeeName + "%'";
		DB db = new DB();
		try {
			/*得到符合条件的总的记录数*/
			recordCount = db.getRecordCount(sqlString);
			db.all_close();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		/*根据总的记录数和每页显示的记录条数计算总的页数*/
		this.totalPage = (this.recordCount + pageSize - 1) / this.pageSize;
		
	}
	
	/*根据员工编号查询该员工的详细信息并返回*/
	public static Employee GetEmployeeInfoByNo(String employeeNo) {
		Employee employee = null;
		String sql = "select * from [employeeInfo] where employeeNo='" + employeeNo + "'";
		DB db = new DB();
		try {
			ResultSet rs = db.executeQuery(sql);
			if(rs.next()) {
				employee = new Employee();
				employee.setEmployeeNo(employeeNo);
				employee.setEmployeeName(rs.getString("employeeName"));
				employee.setEmployeePassword(rs.getString("employeePassword"));
				employee.setEmployeeSex(rs.getString("employeeSex"));
				employee.setEmployeeBirthday(rs.getDate("employeeBirthday"));
				employee.setEmployeeEducationId(rs.getInt("employeeEducationId"));
				employee.setEmployeeHomeTel(rs.getString("employeeHomeTel"));
				employee.setEmployeeMobile(rs.getString("employeeMobile"));
				employee.setEmployeeCard(rs.getString("employeeCard"));
				employee.setEmployeeEmail(rs.getString("employeeEmail"));
				employee.setEmployeeAddress(rs.getString("employeeAddress"));
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return employee;
	}
	
	/*传入员工实体模型,执行该员工信息的更新操作*/
	public int UpdateEmployeeInfo(Employee employee) {
		/*构造更新的sql语句*/
		String sql = "update [employeeInfo] set employeeName='";
		sql += employee.getEmployeeName() + "',employeeSex='";
		sql += employee.getEmployeeSex() + "',employeeEducationId=";
		sql += employee.getEmployeeEducationId() + ",employeeBirthday='";
		sql += employee.getEmployeeBirthday() + "',employeePassword='";
		sql += employee.getEmployeePassword() + "',employeeMobile='";
		sql += employee.getEmployeeMobile() + "',employeeCard='";
		sql += employee.getEmployeeCard() + "',employeeEmail='";
		sql += employee.getEmployeeEmail() + "',employeeAddress='";
		sql += employee.getEmployeeAddress() + "' where employeeNo='" + employee.getEmployeeNo() + "'";
		/*调用数据层执行更新*/
		DB db = new DB();
		int result = 0;
		try {
			result = db.executeUpdate(sql);
			db.all_close();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return result;
		
	}
	
	public static boolean ChangePassword(Employee employee) {
		try {
			DB db = new DB();
			String sql = "update [employeeInfo] set employeePassword='" + employee.getEmployeePassword() + "' where employeeNo='" + employee.getEmployeeNo() + "'";
			int result = db.executeUpdate(sql);
			db.all_close();
			if( result > 0)
				return true;
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return false;
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
随着计算机和网络的不断革新,世界已经进入了前所未有的电子时代。作为实用性强、应用范围广泛的会员管理系统也正在被越来越多的各类企业用于消费管理领域。然而,那些针对性强、企业理念清晰的大型超市也正发展迅速,这些大型超市应该具备一套实用便捷的会员积分管理系统来经营产品,让消费者和超市紧密联系起来。如今现有的会员管理系统已经不能充分满足超市用户的需求,用户需要更好的积分管理体系来体验丰富的管理方案,因此需要设计开发在效率、功能和技术上都有所提高的会员积分管理系统。 本文从超市会员管理的实质入手,从本质区别超市会员管理与其他商业消费的会员管理的根本区别,针对专一积分管理提出看法,希望让系统更适用于商业超市的发展。让积分制度实施在一个合适的领域内,并不是所谓的通用格式,而是一个适合超市的专属模式。因此设计开发一种适合超市使用的会员积分管理系统可以实效得解决问题,能够让超市的会员真实的感受到会员积分带来的好处。 本系统是专门设计适用于超市的会员积分管理系统。整体采用B/S架构开发,通过对系统深入细致的分析,以及对业务背景和需求的了解,结合流行成熟的Web开发技术J2EE,设计搭建双管理权限。系统的总体技术框架为JSP+Servlet+JavaBean。前台浏览器浏览,后台服务器直接连接SQL Server2000数据库。通过各客户端计算机接入会员积分的各项事务,实现积分管理的规范性和安全性。同时作为会员信息管理系统的组成部分,将来可以有很好的扩展性和通用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BinaryStarXin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值