?? stockinsave.java
字號:
package com.logistic.servlet;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.logistic.business.StockInManager;
import com.logistic.data.DataConnect;
import javax.servlet.http.HttpSession;
import java.sql.Statement;
import java.sql.ResultSet;
import java.util.Calendar;
import java.text.*;
public class StockInSave extends HttpServlet {
private static final long serialVersionUID = -2305260907601477327L;
HttpSession session=null;
DataConnect dc=new DataConnect();
Statement stat=null;
ResultSet rs=null;
int stockinid=0; //商品入庫單編號
String id=null;
String chargeid=null; //負責人編號
String indate=null; //入庫日期
String goodsid=null; //商品編號
String commodityid=null; //商品分類編號
String typeid=null; //商品型號編號
int stockinnum=0; //商品入庫數量
int goodsnum=0; //商品庫存量
String stockinmemo=null; //商品入庫備注信息
int flag=0;
RequestDispatcher requestdispatcher;
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("GB2312");
response.setContentType("text/html; charset=gb2312");
session=request.getSession();
/*
* 獲取stockininfotable表的StockId字段的最后插入的值,生成下一條記錄的StockInId
* 字段的值!
*
* */
String sql="select * from stockininfotable order by ID desc limit 1";
try{
stat=dc.getStmtread();
rs=stat.executeQuery(sql);
rs.previous();
while(rs.next()){
stockinid=Integer.valueOf(rs.getString("StockInId"));
}
if(stockinid>0){
stockinid+=1;
}else{
stockinid=10000+1;
}
}catch(Exception ex){ex.printStackTrace();}finally{dc.close();}
/* 進行數據類型轉化,把stockinid(原為Int型)轉化為String類型把stockinnum(原為String類型)轉化為Int類型 */
try{
id=String.valueOf(stockinid);
stockinnum=Integer.valueOf((String)request.getParameter("stockinnum"));
}catch(NumberFormatException ex){System.out.print("StockInNum類型轉換錯誤!");ex.printStackTrace();}
indate=(String)new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(Calendar.getInstance().getTime()); //格式化系統時間格式
chargeid=(String)request.getParameter("stockincharge");//獲得入庫負責人編號
goodsid=(String)request.getParameter("stockinname"); //獲得商品編號
commodityid=(String)request.getParameter("commodityid");//獲得商品分類編號
typeid=(String)request.getParameter("goodstype"); //獲得商品型號編號
stockinmemo=(String)request.getParameter("stockinmemo");//獲得入庫備注信息
if((stockinnum==0||stockinnum<0)||chargeid==null||goodsid==null||typeid==null){
session.setAttribute("errors", "入庫單數據添加失敗,*標識選項必須填寫!");
requestdispatcher=request.getRequestDispatcher("/errors/errorpage.jsp");
requestdispatcher.forward(request, response);
}
try{
int flag_get=-10; //查詢商品信息表的flag_get標志
int flag_update=-10;//更新商品信息表的flag_update標志
//下面的sqlgoods,select語句的功能是:從數據表goodsinfotabl檢索是否有符合goodsid,commodityid和typeid數據。
String sqlgoods="select * from goodsinfotable where GoodsId='"+goodsid+"'and GoodsCateId='"+commodityid+"'and TypeId='"+typeid+"'";
flag_get=dc.selectdata(sqlgoods);
if(flag_get>0){
try{
stat=dc.getStmtread();
rs=stat.executeQuery(sqlgoods);
rs.previous();
//取得商品庫存數量
while(rs.next()){
goodsnum=Integer.valueOf(rs.getString("GoodsStockNumber"));
}
//商品庫存量=原商品庫存+新入庫量
goodsnum=goodsnum+stockinnum;
//更新商品信息表的商品庫存量
flag_update=dc.updata("update goodsinfotable set GoodsStockNumber='"+goodsnum+"' where GoodsId='"+goodsid+"' and GoodsCateId='"+commodityid+"'and TypeId='"+typeid+"'");
//如果更新商品信息表成功,則添加商品入庫信息
if(flag_update>0){
StockInManager sm=new StockInManager();
flag=sm.AddStockIn(id, indate, chargeid, goodsid, stockinnum, typeid, commodityid, stockinmemo);
//如果添加商品入庫信息成功,則跳轉到stockinsave.jsp頁面
if(flag>0){
session.setAttribute("success","入庫單數據添加成功!");
requestdispatcher=request.getRequestDispatcher("/viewpage/datainput/stockinsave.jsp");
requestdispatcher.forward(request, response);
}else{
//如果添加商品入庫信息失敗,則跳轉到errorpage.jsp頁面
session.setAttribute("errors", "入庫單數據添加失敗!");
requestdispatcher=request.getRequestDispatcher("/errors/errorpage.jsp");
requestdispatcher.forward(request, response);
}
}
}catch(Exception ex){
ex.printStackTrace();
}
}else{
//如果flag_get<=0(符合的商品信息不存在)跳轉到errorpage.jsp
session.setAttribute("errors","入庫商品信息不存在,請先添加商品信息!");
requestdispatcher=request.getRequestDispatcher("/errors/errorpage.jsp");
requestdispatcher.forward(request, response);
}
}catch(Exception ex){ ex.printStackTrace();}
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -