⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stoupdateaction.java

📁 很好的东东 本人随便做的 仅供学习之用
💻 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 + -