📄 modifyorder.java
字号:
package store;
import java.sql.*;
public class ModifyOrder {
DBConn conn=new DBConn();
public ModifyOrder(){}
/*orderid:订单号
*id:订单表中记录号
*newqu:更新的商品数量
*/
public boolean modifyItem(int orderid,int id,int newqu) throws Exception {
boolean flag=false;
int oldqu=getQuantity(id,conn);
ProInfo PI=(new OrderItems()).getProInfo(id);
float price=newqu*PI.getPrice(); //得到该条高品重新计算的总价
int _qu=newqu-oldqu; //得到更新数量与原数量的差
float nprice=_qu*PI.getPrice();
//更新订单表中的商品条目信息
int u1=conn.update("UPDATE orders SET quantity="+newqu+" WHERE id="+id);
//更新订单表中的订单信息
int u2=conn.update("UPDATE orders SET quantity=quantity+"+_qu+
",price=price+"+nprice+" WHERE isorder=1 AND orderid="+orderid);
if(u1>0&&u2>0)
flag=true;
conn.DBclose();
return flag;
}
public boolean deleteItem(int orderid,int id) throws Exception {
boolean flag=false;
ProInfo PI=(new OrderItems()).getProInfo(id);
float price=PI.getPrice();
int qu=PI.getSold();
//更新订单表中的订单信息
int u2=conn.update("UPDATE orders SET quantity=quantity-"+qu+
",price=price-"+price*qu+" WHERE isorder=1 AND orderid="+orderid);
//删除订单表中的商品条目信息
int u1=conn.update("DELETE from orders WHERE id="+id);
if(u1>0&&u2>0)
flag=true;
conn.DBclose();
return flag;
}
public boolean deleteOrder(int orderid) throws Exception {
boolean flag=false;
int u=conn.update("DELETE from orders WHERE orderid="+orderid);
if(u>0)
flag=true;
conn.DBclose();
return flag;
}
/*用于修改送货方式,付款方式
*orderid是单号,参数m用于控制修改的字段是送货方式或付款方式
*value的值根据参数的不同,表示的意义分别是送货方式或付款方式*/
public boolean modifyMethod(int orderid,int value,int m) throws Exception {
boolean flag=false;
int u=0;
if(m==1){
u = conn.update("UPDATE orders SET delivery=" + value +
" WHERE isorder=1 AND orderid=" + orderid);
}
if(m==2){
u = conn.update("UPDATE orders SET payment=" + value +
" WHERE isorder=1 AND orderid=" + orderid);
}
if(u>0)
flag=true;
conn.DBclose();
conn=null;
return flag;
}
/*获取指定定单中某商品数量
*id是orders表是的记录号,conn是数据库连接对象*/
public int getQuantity(int id,DBConn conn)throws Exception{
String sql1="SELECT * FROM orders WHERE id="+id;
ResultSet rs1=conn.query(sql1);
rs1.next();
int quantity=rs1.getInt("quantity");
rs1.close();
return quantity;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -