📄 stoupdateaction.java
字号:
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package cangku.action;
import java.io.UnsupportedEncodingException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.sql.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import cangku.javabeans.CKSql;
import cangku.javabeans.DBConn;
import cangku.javabeans.OrderdetailBeans;
/**
* MyEclipse Struts Creation date: 09-09-2007
*
* XDoclet definition:
*
* @struts.action scope="request" validate="true"
*/
public class StoupdateAction extends Action {
/*
* Generated Methods
*/
/**
* Method execute
*
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
String target = "success";
Date sendtime = new java.sql.Date(System.currentTimeMillis());
// java.sql.Date dt= new java.sql.Date(System.currentTimeMillis());
// String date=new SimpleDateFormat("YYYY-MM-DD").format(dt);
// 取到要修改的订单号
Integer sendID = (Integer) request.getSession().getAttribute("sendID");
request.getSession().removeAttribute("sendID");
// 取到当前仓库号
Integer warehouseid = new Integer((String) request.getSession()
.getAttribute("wareID"));
System.out.print("仓库号" + warehouseid + "终");
Integer haulerid = new Integer(request.getParameter("selectShang")); // 得到承运商ID
String haulername = request.getParameter("hlrname"); // 得到承运商名称
try {
// haulername转换为中文显示
haulername = new String(haulername.getBytes("ISO8859-1"), "gb2312");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.print("hauler" + haulerid + "承运商" + haulername + "终");
Connection conn = null;
conn = DBConn.getconn();
List orderdetail = (ArrayList) request.getSession().getAttribute(
"orderdetail");
boolean fashong = true; // 是否对发货单状态进行修改
String shuliang = ","; // 提示药品数量库存不够或没有时用;
for (int i = 0; i < orderdetail.size(); i++) {
OrderdetailBeans obs;
obs = (OrderdetailBeans) orderdetail.get(i);
Integer drugid = obs.getDrugID();
String drugname = obs.getDrugname();
int counts = obs.getCounts();
Integer orderid = obs.getOrderID();
System.out.print("kucunn" + drugname + drugid + counts + orderid); // 后台打印订单中药品数量,名称
String ckypcc = CKSql.ckypcc; // 查看库存量
// ckypcc="select counts from storage where drugID=? and
// warehouseID=? "; 某仓库某药品的数量
PreparedStatement sta = null;
ResultSet rs = null;
try {
sta = conn.prepareStatement(ckypcc);
sta.setInt(1, drugid.intValue());
sta.setInt(2, warehouseid.intValue());
rs = sta.executeQuery();
if (rs.next()) {
// fashong=true;
int cccounts = rs.getInt("counts");
if (counts <= cccounts) {
// drugname药品此仓库库存足够,修改库存药品数量,修改发货单状态
cccounts = cccounts - counts;
System.out.print(i + "药品所剩数量" + cccounts);
// ckypkc="update storage set counts=? where drugID=?
// and warehouseID=?"; 修改库存信息
rs.close();
sta.close();
String ckypkc = CKSql.ckypkc; // 修改库存信息语句
sta = conn.prepareStatement(ckypkc);
sta.setInt(1, cccounts);
sta.setInt(2, drugid.intValue());
sta.setInt(3, warehouseid.intValue());
sta.executeUpdate();
// 修改数据库中的库存信息后,修改发货单状态,标示已发货
rs.close();
sta.close();
System.out.print("修改库存成功" + i);
} else {
// drugname药品此仓库库存不够
System.out.print("药品此仓库库存不够" + i);
shuliang = shuliang + drugname + "药品此仓库库存不够";
target="error";
fashong=false;
}
} else {
// drugname药品此仓库库存没有
System.out.print("药品此仓库库存没有" + i);
shuliang = shuliang + drugname + "药品此仓库库存不够";
fashong=false;
target="error";
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(shuliang!=","){
request.setAttribute("updateerror", shuliang);
target="error";
}
// cksendupdate="update send set status=?,haulerID=?,hauler=?,sendtime=?
// where ID=?";
// 修改发货单状态,选择承运商
String cksendupdate = CKSql.cksendupdate;
try {
if (fashong) {
PreparedStatement sta = null;
sta = conn.prepareStatement(cksendupdate);
sta.setString(1, "是");
sta.setInt(2, haulerid.intValue());
sta.setString(3, haulername);
// sta.setString(4, date);
// sta.setString(5, date);
sta.setDate(4, sendtime);
sta.setInt(5, sendID.intValue());
sta.executeUpdate();
System.out.print("修改状态成功");
// 成功修改信息
sta.close();
conn.close();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if ((!conn.isClosed()) && conn == null) {
conn.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
return mapping.findForward(target);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -