一、登陆界面
可以让不同的用户进行登陆,总共有四种用户类型,分别为经理(可以对所有界面进行查看,修改),销售人员(可以对所有界面进行查看,但只能对销售界面进行操作),库存管理人员(可以对所有界面进行查看,但只能对库存界面进行操作),采购人员(可以对所有界面进行查看,但只能对进退货界面进行操作)。
二. 基本信息
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.util.ArrayList;
import com.shuangyulin.DBUtils.DB;
import com.shuangyulin.javabean.GoodClass;
/*关于商品类别处理的业务操作类*/
public class GoodClassDAO {
/*保存业务处理的错误信息*/
private String errMessage;
public static ArrayList QueryAllGoodClassInfo(){
ArrayList goodClassList = new ArrayList();
/*查询商品类别信息表中的所有的商品类别信息*/
String sql="select * from [goodClassInfo]";
DB db=new DB();
ResultSet rs;
try {
rs = db.executeQuery(sql);
while(rs.next()){
/*将数据库中的每条商品类别信息保存在商品类别信息模型对象中*/
GoodClass goodClass = new GoodClass();
goodClass.setGoodClassId(rs.getInt("goodClassId"));
goodClass.setGoodClassName(rs.getString("goodClassName"));
goodClassList.add(goodClass);
}
} catch (Exception e) {
System.out.println("遍历商品类别信息时发生了错误!");
e.printStackTrace();
} finally {
db.all_close();
}
return goodClassList;
}
/*向系统中加入新的商品信息*/
public boolean AddGoodClass(GoodClass goodClass){
/*查询商品类别信息表中是否已经存在该商品类别信息*/
String sql="select * from [goodClassInfo] where goodClassName='" + goodClass.getGoodClassName() + "'";
DB db=new DB();
boolean flag = true;
ResultSet rs;
try {
rs = db.executeQuery(sql);
if(rs.next()){
flag = false;
this.errMessage = "该商品类别已经存在了!";
db.all_close();
} else {
sql = "insert into [goodClassInfo] (goodClassName) values ('" + goodClass.getGoodClassName() + "')";
db.executeUpdate(sql);
db.all_close();
}
} catch (Exception e) {
flag = false;
this.errMessage = "数据操作发生了错误!";
}
return flag;
}
/*根据商品类别编号删除商品类别信息*/
public boolean DeleteGoodClassById(int goodClassId) {
boolean result = true;
String sqlString = "select count(*) from [goodInfo] where goodClassId=" + goodClassId;
DB db = new DB();
try {
if(db.getRecordCount(sqlString) != 0) {
errMessage = "该商品类别下还存在商品信息,不能删除!";
result = false;
db.all_close();
} else {
sqlString = "delete from [goodClassInfo] where goodClassId=" + goodClassId;
db.executeUpdate(sqlString);
db.all_close();
}
} catch (Exception e) {
// TODO Auto-generated catch block
errMessage = "发生了数据错误!";
result = false;
e.printStackTrace();
}
return result;
}
/*根据商品类别编号得到商品类别名称 */
public static String GetGoodClassNameById(int goodClassId) {
String goodClassName = "";
String sqlString = "select goodClassName from [goodClassInfo] where goodClassId=" + goodClassId;
DB db = new DB();
goodClassName = db.GetScalarString(sqlString);
db.all_close();
return goodClassName;
}
public String getErrMessage() {
return errMessage;
}
}