📄 saleoperation.java
字号:
package operation;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Calendar;
import dataBase.DataBase;
import entity.EnterCheckView;
public class SaleOperation
{
private ResultSet rs;
private DataBase db;
public SaleOperation()
{
db=new DataBase();
}
public String getSaleID()
{
String SaleID=null;
Calendar cal=Calendar.getInstance();
String Year=String.valueOf(cal.get(Calendar.YEAR));
int m=Integer.parseInt(String.valueOf(cal.get(Calendar.MONTH)+1));
String Month=null;
if(m<10)
{
Month="0"+String.valueOf(m);
}
else
Month=String.valueOf(m);
String Day=null;
int f=cal.get(Calendar.DAY_OF_MONTH);
if(f<10)
{
Day="0"+String.valueOf(f);
}
else
Day=String.valueOf(f);
String Date=Year+Month+Day;
//查询是否存在当天的销售记录
String sql="select * from SaleInfo where SaleID like '%"+Date+"%'";
try
{
rs=db.getResult(sql);
if(rs.next())
{
rs.last();
int Row=rs.getRow();
String R=String.valueOf(Row+1);
SaleID="S"+Date+"00"+R; //生成销售编号
}
else
SaleID="S"+Date+"001"; //若不存在当天的销售记录,记为001
}
catch(SQLException e)
{
e.printStackTrace();
}
return SaleID;
}
public int getProductID(String ProductName) //从商品信息中得到商品编号
{
int ProductID=0;
String sql="select * from ProductInfo where ProductName='"+ProductName+"'";
try
{
rs=db.getResult(sql);
if(rs.next())
{
ProductID=rs.getInt("ProductID");
}
}
catch(SQLException e)
{
e.printStackTrace();
}
return ProductID;
}
public int getCustomerID(String CustomerName) //从商品信息中得到商品编号
{
int CustomerID=0;
String sql="select * from CustomerInfo where CustomerName='"+CustomerName+"'";
try
{
rs=db.getResult(sql);
if(rs.next())
{
CustomerID=rs.getInt("CustomerID");
}
}
catch(SQLException e)
{
e.printStackTrace();
}
return CustomerID;
}
public boolean checkStock(int ProductID,int SaleQuantity) //判断该种商品库存够不够
{
boolean a=false;
String sql="select * from StockRecord where ProductID="+ProductID;
try
{
rs=db.getResult(sql);
if(rs.next())
{
int q=rs.getInt("ProductQuantity");
if(q>=SaleQuantity)
{
a=true;
}
}
}
catch(Exception e)
{
e.printStackTrace();
}
return a;
}
public int getProductQuantity(int ProductID)
{
int ProductQuantity=0;
String sql="select * from StockRecord where ProductID="+ProductID;
try
{
rs=db.getResult(sql);
rs.next();
ProductQuantity=rs.getInt("ProductQuantity");
}catch(Exception e)
{
e.printStackTrace();
}
return ProductQuantity;
}
public ArrayList getEnterList(int ProductQuantity,int ProductID,int SaleQuantity)
{
ArrayList list=new ArrayList();
String sql="select * from EnterInfo where ProductId='"+ProductID+"'";
try
{
//int i=SaleQuantity; //i就是卖货的数量
rs=db.getResult(sql);
rs.last();
int EnterQuantity=rs.getInt("EnterQuantity");
while (EnterQuantity<ProductQuantity)
{
rs.previous();
EnterQuantity+=rs.getInt("EnterQuantity");
}
int intervene=EnterQuantity-ProductQuantity; //本条进货纪录中已经卖出的部分
int i=SaleQuantity-(rs.getInt("EnterQuantity")-intervene); //i本条记录中销售后剩余部分
if(i>=0)
{
EnterQuantity=rs.getInt("EnterQuantity")-intervene;
}
if(i<0)
{
EnterQuantity=SaleQuantity;
}
EnterCheckView ecv=new EnterCheckView();
ecv.setEnterID(rs.getString("EnterID"));
ecv.setEnterQuantity(EnterQuantity);
list.add(ecv);
while(i>=0)
{
rs.next();
i-=rs.getInt("EnterQuantity");
if(i<0)
{
EnterQuantity=rs.getInt("EnterQuantity")+i;
}
else
EnterQuantity=rs.getInt("EnterQuantity");
ecv=new EnterCheckView();
ecv.setEnterID(rs.getString("EnterID"));
ecv.setEnterQuantity(EnterQuantity);
list.add(ecv);
}
}
catch(Exception e)
{
e.printStackTrace();
}
return list;
}
public void EnterInfoInsert(String SaleID,int ProductID,int CustomerID,int SaleQuantity,float SalePrice,float SaleSum,Date SaleDate,
String Chargeman,String Transportor,String SaleNotice,String ShouldGetID,float ShouldGetSum,float LeaveSum,
Date ShouldGetDate,String ShouldGetNotice,ArrayList list)
{
String ShouldGetFlag="否";
String sql1="insert into SaleInfo values('"+SaleID+"',"+ProductID+","+CustomerID+","
+SaleQuantity+","+SalePrice+","+SaleSum+",'"+SaleDate+"','"+Chargeman+"','"+Transportor+"','"+SaleNotice+"')";
String sql2="insert into ShouldGetList values('"+ShouldGetID+"','"+SaleID+"',"+ShouldGetSum+","+LeaveSum+",'"
+ShouldGetFlag+ "','"+Chargeman+"','"+ShouldGetDate+"','"+ShouldGetNotice+"')";
String sql3="update StockRecord set ProductQuantity=ProductQuantity-"+SaleQuantity+" where ProductID="+ProductID;
try
{
db.ExeQuery(sql1,sql2,sql3,list,SaleID);
}
catch(Exception e)
{
e.printStackTrace();
}
}
public void Close()
{
db.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -