Commit 855c3998 authored by prane's avatar prane

WOStockMaterialReq.java JB merged for [Workorder partial stock - JSP to show...

WOStockMaterialReq.java JB merged for [Workorder partial stock - JSP to show possible production quantity as per available stock].

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@197875 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 3d972912
/********************************************************
Title : WOStockMaterialReq
Date : 01/03/19
********************************************************/
package ibase.webitm.ejb.mfg;
import ibase.webitm.utility.*;
import ibase.utility.BaseLogger;
import ibase.utility.E12GenericUtility;
import ibase.utility.UserInfoBean;
import ibase.system.config.*;
import java.util.*;
import java.sql.*;
public class WOStockMaterialReq {
E12GenericUtility genericUtility = new E12GenericUtility();
public ArrayList<HashMap> getPartialStock(String workOrder, UserInfoBean userInfo) throws ITMException {
BaseLogger.log("2", null, null, "------------:: WOStockMaterialReq ~ getPartialStock() ::------------");
String sql = "";
String itemCode ="";
String itemSer = "";
String itemDescr = "";
String uom = "";
double requiredQty = 0.0;
double availQty = 0.0;
double shortQty = 0.0;
double currBatchQty = 0.0;
double availPer = 0.0;
Connection conn = null;
ConnDriver connDriver = null;
ResultSet rs = null;
PreparedStatement pstmt = null;
HashMap dataMap = null;
ArrayList<HashMap> dataList = null;
try
{
BaseLogger.log("3", null, null, "Pavan WOStockMaterialReq:: userInfo:: ["+ userInfo+"]");
String transDB = userInfo.getTransDB();
BaseLogger.log("3", null, null, "Pavan WOStockMaterialReq:: transDB:: ["+ transDB+"]");
dataList = new ArrayList<>();
connDriver = new ConnDriver();
if (transDB != null && transDB.trim().length() > 0) {
conn = connDriver.getConnectDB(transDB);
} else {
conn = connDriver.getConnectDB("Driver");
}
sql = "SELECT current_batch_qty FROM workorder WHERE work_order = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, workOrder);
rs = pstmt.executeQuery();
if(rs.next())
{
currBatchQty = rs.getDouble("current_batch_qty");
}
closeResources(pstmt, rs);
sql = "SELECT a.item_code, a.descr, a.unit, a.quantity, a.stock_qty, a.avail_perc, b.item_ser"
+ " FROM wo_firmplan_summ a, item b"
+ " WHERE a.item_code = b.item_code"
+ " AND a.work_order = ? " ;
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, workOrder);
rs = pstmt.executeQuery();
while (rs.next())
{
itemCode = checkNullandTrim(rs.getString("item_code"));
itemDescr = checkNullandTrim(rs.getString("descr"));
uom = checkNullandTrim(rs.getString("unit"));
requiredQty = rs.getDouble("quantity");
availQty = rs.getDouble("stock_qty");
availPer = rs.getDouble("avail_perc");
itemSer = checkNullandTrim(rs.getString("item_ser"));
shortQty = ((currBatchQty * availPer) / 100);
//BaseLogger.log("3", null, null, "shortQty[ "+shortQty+" ]");
dataMap = new HashMap();
dataMap.put("item_code", itemCode);
dataMap.put("item_ser", itemSer);
dataMap.put("descr", itemDescr);
dataMap.put("uom", uom);
dataMap.put("reqd_qty", requiredQty);
dataMap.put("avail_qty", availQty);
dataMap.put("short_qty", shortQty);
dataList.add(dataMap);
}
closeResources(pstmt, rs);
BaseLogger.log("3", null, null,"Pavan R 2019[" + dataList + "]");
}
catch (SQLException s) {
BaseLogger.log("0", null, null,"SQLException in WOStockMaterialReq: getAllocDetail::" + s.getMessage());
s.printStackTrace();
throw new ITMException(s);
} catch (Exception e) {
BaseLogger.log("0", null, null,"Exception in WOStockMaterialReq: getAllocDetail::" + e.getMessage());
e.printStackTrace();
throw new ITMException(e);
}finally{
try
{
if (conn != null)
{
closeResources(pstmt, rs);
conn.close();
conn = null;
}
} catch (Exception e)
{
e.printStackTrace();
}
}
return dataList;
}
private void closeResources(PreparedStatement pstmt, ResultSet rs ){
try {
if(rs != null){
rs.close();
rs = null;
}
if(pstmt != null){
pstmt.close();
pstmt = null;
}
} catch (Exception e) {
BaseLogger.log("0", null, null,"Exception::" + e.getMessage());
}
}
public static String checkNullandTrim(String input)
{
if (input == null || "null".equalsIgnoreCase(input) || "undefined".equalsIgnoreCase(input))
{
input= "";
}
return input.trim();
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment