Commit 65da8abd authored by dpawar's avatar dpawar

added new functionality for pending qty


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@95232 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 22ba514d
//OLD
package ibase.webitm.ejb.dis; package ibase.webitm.ejb.dis;
import ibase.system.config.ConnDriver; import ibase.system.config.ConnDriver;
...@@ -35,6 +36,7 @@ import org.w3c.dom.NodeList; ...@@ -35,6 +36,7 @@ import org.w3c.dom.NodeList;
//import com.sun.jmx.snmp.Timestamp; //import com.sun.jmx.snmp.Timestamp;
@Stateless @Stateless
public class PODProcess extends ProcessEJB implements PODProcessLocal,PODProcessRemote public class PODProcess extends ProcessEJB implements PODProcessLocal,PODProcessRemote
{ {
String siteCodeG="",invTypeG="",xtraParamsG="",schemeCodeG="",multipleScheme=""; String siteCodeG="",invTypeG="",xtraParamsG="",schemeCodeG="",multipleScheme="";
...@@ -228,90 +230,43 @@ public String process(Document dom, Document dom2, String windowName, String xtr ...@@ -228,90 +230,43 @@ public String process(Document dom, Document dom2, String windowName, String xtr
pstmt.close(); pstmt.close();
pstmt=null; pstmt=null;
System.out.println("Size of arrayList inv45dayList----->>["+inv45dayList.size()+"]"); System.out.println("Size of arrayList inv45dayList----->>["+inv45dayList.size()+"]");
if(inv45dayList.size() > 0){ //if(inv45dayList.size() > 0){
System.out.println("Data found for process---------------"); System.out.println("Data found for process---------------");
/*podProcessInvIDList=getDoneInvoiceIdHDR( conn, inv45dayList);
if(podProcessInvIDList.contains("Error")){ // inv45dayList.clear();
//handle error if array list contain error. // inv45dayList.add("618ID00047");
errCode="VTPRCNCP"; // inv45dayList.add("618ID00032");
errorString =itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString; System.out.println("inv45dayList-->>["+inv45dayList+"]");
} miscDrCrInvList=getDoneInvoiceIDFromMiscDrCrRcp(conn, inv45dayList);
System.out.println("podProcessInvIDList---->>["+podProcessInvIDList+"]"); System.out.println("miscDrCrInvList11121---->>["+miscDrCrInvList+"]");
System.out.println("Size of podProcessInvIDList---->>["+podProcessInvIDList.size()+"]"); if(miscDrCrInvList.contains("Error")){
podNotConfList=getNotConfirmedInvIdFromHdr(conn);
if(podNotConfList.contains("Error")){
errCode="VTPRCNCP";
errorString =itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString;
}
System.out.println("podNotConfList---->>["+podNotConfList+"]");
System.out.println("Size of podNotConfList---->>["+podNotConfList.size()+"]");
//check in podNotConfList if invoice id in podProcessInvIDList present or not.
//if present then remove from podProcessInvIDList.
if(podNotConfList.size() > 0 && podProcessInvIDList.size() > 0)
{
Iterator<String> it = podProcessInvIDList.iterator();
while (it.hasNext()) {
String id=it.next();
if(podNotConfList.contains(id))
{
System.out.println("id removed------>>["+id+"]");
it.remove();
podProcessInvIDList.remove(id);
}
}
}
*/
System.out.println("inv45dayList-->>["+inv45dayList+"]");
PodHdrInvList=getDoneInvoiceIDFromPODHdr(conn,inv45dayList);
System.out.println("POD header123---->>["+PodHdrInvList+"]");
if(PodHdrInvList.contains("Error")){
errCode="VTPRCNCP"; errCode="VTPRCNCP";
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn); errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString; return errorString;
} }
/*Iterator<String> it1 = podProcessInvIDList.iterator();
if(miscDrCrInvList.size() > 0){ //PodHdrInvList=getDoneInvoiceIDFromPODHdr(conn,miscDrCrInvList);
while (it1.hasNext()) { //System.out.println("POD header123---->>["+PodHdrInvList+"]");
String podPrcId=it1.next(); PodHdrInvList.addAll(miscDrCrInvList);
if(miscDrCrInvList.contains(podPrcId) && !(podObject.isPartialyInvoiceChk(conn, podPrcId, "PRC"))){
System.out.println("---in misc arrayList------"+podPrcId);
it1.remove();
podProcessInvIDList.remove(podPrcId);
}
}
}*/
if(PodHdrInvList.size() > 0){ if(PodHdrInvList.size() > 0){
miscDrCrInvList=getDoneInvoiceIDFromMiscDrCrRcp(conn, PodHdrInvList); podProcessInvIDList.addAll(PodHdrInvList);
System.out.println("miscDrCrInvList---->>["+miscDrCrInvList+"]");
}else{
errCode="VTDNFIN"; //Data not found
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString;
}
if(miscDrCrInvList.contains("Error")){
errCode="VTPRCNCP";
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString;
} }
//podProcessInvIDList.clear();
System.out.println("miscDrCrInvList size-->>["+miscDrCrInvList.size()+"]"); System.out.println("Final partialInvoiceMapG---->>["+partialInvoiceMapG+"]");
if(miscDrCrInvList.size() > 0){ System.out.println("final podProcessInvIDList---->>["+podProcessInvIDList+"]");
podProcessInvIDList.addAll(miscDrCrInvList);
}else{
if(podProcessInvIDList.size()<=0 && partialInvoiceMapG.size() <= 0){
errCode="VTDNFIN"; //Data not found errCode="VTDNFIN"; //Data not found
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn); errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString; return errorString;
} }
//podProcessInvIDList.clear();
//podProcessInvIDList.add("618ID00047");
System.out.println("Final invoice Id ready for debit note12---->>["+podProcessInvIDList+"]"); System.out.println("Final invoice Id ready for debit note12---->>["+podProcessInvIDList+"]");
...@@ -333,13 +288,15 @@ public String process(Document dom, Document dom2, String windowName, String xtr ...@@ -333,13 +288,15 @@ public String process(Document dom, Document dom2, String windowName, String xtr
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn); errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString; return errorString;
} }
}
/* }
else{ else{
errCode="VTDNFIN"; //Data not found errCode="VTDNFIN"; //Data not found
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn); errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString; return errorString;
}// inv45dayList.size end }// inv45dayList.size end
*/
} }
}//end try }//end try
catch(Exception e) catch(Exception e)
...@@ -400,7 +357,9 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -400,7 +357,9 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
System.out.println("priceListL123------>>["+priceListL+"]"); System.out.println("priceListL123------>>["+priceListL+"]");
totalInvoice=podProcessInvIDListL.size(); totalInvoice=podProcessInvIDListL.size();
System.out.println("total invoice for process------>>["+totalInvoice+"]"); System.out.println("total invoice for process------>>["+totalInvoice+"]");
if(totalInvoice > 0){ System.out.println("total partialInvoiceMapG for process------>>["+partialInvoiceMapG.size()+"]");
if(totalInvoice > 0 || partialInvoiceMapG.size() > 0){
if(totalInvoice > 0){
for(String invoiceId :podProcessInvIDListL) for(String invoiceId :podProcessInvIDListL)
{ {
detail2xmlString=""; detail2xmlString="";
...@@ -624,6 +583,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -624,6 +583,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
} }
} //end invoice id for loop } //end invoice id for loop
}
}else{ }else{
errCode="VTDNFFP"; //No data found for processing errCode="VTDNFFP"; //No data found for processing
...@@ -633,7 +593,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -633,7 +593,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
} }
System.out.println("errString before partial method--->>["+errString+"]"); System.out.println("errString before partial method--->>["+errString+"]");
System.out.println("partialInvoiceMapG before partial mrthod--->>["+partialInvoiceMapG+"]"); System.out.println("partialInvoiceMapG before partial mrthod--->>["+partialInvoiceMapG+"]");
if(errString.length() > 0 && partialInvoiceMapG.size() > 0){ if(partialInvoiceMapG.size() > 0){
errString =actualQtyPODProcessPartial(conn); //partialInvoiceMapV errString =actualQtyPODProcessPartial(conn); //partialInvoiceMapV
System.out.println("Returing STring from actualQtyPODProcessPartial-->>["+errString+"]"); System.out.println("Returing STring from actualQtyPODProcessPartial-->>["+errString+"]");
if((errString != null ) && errString.indexOf("CONFSUCCES") > -1){ if((errString != null ) && errString.indexOf("CONFSUCCES") > -1){
...@@ -1253,7 +1213,8 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S ...@@ -1253,7 +1213,8 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S
System.out.println("------in getDoneInvoiceIDFromPODHdr------"); System.out.println("------in getDoneInvoiceIDFromPODHdr------");
PreparedStatement pstmt=null,pstmt1=null; PreparedStatement pstmt=null,pstmt1=null;
ResultSet rs=null,rs1=null; ResultSet rs=null,rs1=null;
String sql="",remarks="",subInvId="",TranId="",sql1="",itemCode="",itemCodeM="",confirmed=""; String sql="",remarks="",subInvId="",TranId="",sql1="",itemCode="",itemCodeM="",confirmed="",
lotNo="",lotSl="",lotNoM="",lotSlM="",lineNoTraceI="";
int lineNoTrace=0,lineNoTraceM=0,deleteId=0; int lineNoTrace=0,lineNoTraceM=0,deleteId=0;
double sumQuantityMisc=0,sumQuantityInv=0,qty=0,qtyM=0; double sumQuantityMisc=0,sumQuantityInv=0,qty=0,qtyM=0;
HashSet<String> unqInvID=new HashSet <String>(); HashSet<String> unqInvID=new HashSet <String>();
...@@ -1271,7 +1232,8 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S ...@@ -1271,7 +1232,8 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S
confirmed=confirmed==null ? "N" :confirmed.trim(); confirmed=confirmed==null ? "N" :confirmed.trim();
System.out.println("confirmed-->["+confirmed+"] invID-->["+id+"]"); System.out.println("confirmed-->["+confirmed+"] invID-->["+id+"]");
if("Y".equalsIgnoreCase(confirmed)){ if("Y".equalsIgnoreCase(confirmed)){
sql="select sum(quantity),item_code from invoice_trace where invoice_id = ? group by item_code,invoice_id"; sql="select sum(quantity),item_code,lot_no,lot_sl,inv_line_no from invoice_trace where invoice_id = ? "
+ "group by item_code,lot_no, lot_sl,inv_line_no";
pstmt=conn.prepareStatement(sql); pstmt=conn.prepareStatement(sql);
pstmt.setString(1, id); pstmt.setString(1, id);
rs=pstmt.executeQuery(); rs=pstmt.executeQuery();
...@@ -1279,13 +1241,20 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S ...@@ -1279,13 +1241,20 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S
//lineNoTrace=rs.getInt(1); //lineNoTrace=rs.getInt(1);
qty=rs.getDouble(1); qty=rs.getDouble(1);
itemCode=rs.getString(2); itemCode=rs.getString(2);
lotNo=rs.getString(3);
lotSl=rs.getString(4);
lineNoTraceI=rs.getString(5);
itemCode=itemCode==null ? "" :itemCode.trim(); itemCode=itemCode==null ? "" :itemCode.trim();
lotNo=lotNo==null ? "" :lotNo.trim();
lotSl=lotSl==null ? "" :lotSl.trim();
/* sql1="seleline_no__invtracect d.,d.item_code,d.quantity,h.remarks from " /* sql1="seleline_no__invtracect d.,d.item_code,d.quantity,h.remarks from "
+ "misc_drcr_rcp h,misc_drcr_rdet d where h.tran_id=d.tran_id and h.remarks " + "misc_drcr_rcp h,misc_drcr_rdet d where h.tran_id=d.tran_id and h.remarks "
+ "like ? order by line_no__invtrace";*/ + "like ? order by line_no__invtrace";*/
sql1="select sum(nvl(d.quantity__resale,0)),d.item_code from spl_sales_por_hdr h,spl_sales_por_det d " sql1="select sum(nvl(d.quantity__resale,0)),d.item_code,d.lot_no,d.lot_sl,d.line_no__trace "
+ "where h.tran_id = d.tran_id and h.invoice_id = ? group by d.item_code"; + "from spl_sales_por_hdr h,spl_sales_por_det d "
+ "where h.tran_id = d.tran_id and h.invoice_id = ? "
+ "group by d.item_code,d.lot_no,d.lot_sl,d.line_no__trace";
pstmt1=conn.prepareStatement(sql1); pstmt1=conn.prepareStatement(sql1);
pstmt1.setString(1, id); pstmt1.setString(1, id);
rs1=pstmt1.executeQuery(); rs1=pstmt1.executeQuery();
...@@ -1293,15 +1262,21 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S ...@@ -1293,15 +1262,21 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S
//lineNoTraceM=rs1.getInt(1); //lineNoTraceM=rs1.getInt(1);
qtyM=rs1.getDouble(1); qtyM=rs1.getDouble(1);
itemCodeM=rs1.getString(2); itemCodeM=rs1.getString(2);
lotNoM=rs1.getString(3);
lotSlM=rs1.getString(4);
itemCodeM=itemCodeM==null ? "" :itemCodeM.trim(); itemCodeM=itemCodeM==null ? "" :itemCodeM.trim();
lotNoM=lotNoM==null ? "" :lotNoM.trim();
lotSlM=lotSlM==null ? "" :lotSlM.trim();
System.out.println("itemCode-->>["+itemCode+"] itemCodeM-->["+itemCodeM+"]"); System.out.println("itemCode-->>["+itemCode+"] itemCodeM-->["+itemCodeM+"]");
System.out.println("qtyM-->>["+qtyM+"] qty-->["+qty+"]"); System.out.println("lotNo-->>["+lotNo+"] lotNoM-->["+lotNoM+"]");
if(qtyM < qty && itemCode.equalsIgnoreCase(itemCodeM)){ System.out.println("lotSl-->>["+lotSl+"] lotSlM-->["+lotSlM+"]");
System.out.println("qty-->>["+qty+"] qtyM-->["+qtyM+"]");
if(qtyM < qty && itemCode.equalsIgnoreCase(itemCodeM) && lotNoM.equalsIgnoreCase(lotNo) && lotSlM.equalsIgnoreCase(lotSl)){
InvIDTemp.add(id); InvIDTemp.add(id);
partialInvoiceMapG.put(id+":"+itemCode.trim(), qty- qtyM); partialInvoiceMapG.put(id+":"+itemCode+":"+lotNoM+":"+lotSlM, qty- qtyM);
System.out.println("partial map11111----->>["+partialInvoiceMapG+"]");
}else{ }else{
System.out.println("deleted ID--------->>["+deleteId+"]"); System.out.println("deleted ID--------->>["+deleteId+"]");
if(deleteId==1){ if(deleteId==1){
...@@ -1360,115 +1335,116 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S ...@@ -1360,115 +1335,116 @@ private ArrayList<String> getDoneInvoiceIDFromPODHdr(Connection conn,ArrayList<S
} }
private ArrayList<String> getDoneInvoiceIDFromMiscDrCrRcp(Connection conn,ArrayList<String>inv45dayListL) private ArrayList<String> getDoneInvoiceIDFromMiscDrCrRcp(Connection conn,ArrayList<String>inv45dayListL)
{ {
System.out.println("------in getDoneInvoiceIDFromMiscDrCrRcp1234------"); System.out.println("------in getDoneInvoiceIDFromMiscDrCrRcp12345678------");
PreparedStatement pstmt=null,pstmt1=null;
ResultSet rs=null,rs1=null; ResultSet rs=null,rs1=null;
String sql="",remarks="",subInvId="",TranId="",sql1="",itemCode="",itemCodeM="",confirmed=""; PreparedStatement pstmt=null,pstmt1=null;
int lineNoTrace=0,lineNoTraceM=0; String sql="",sql1="",itemCodeT="",lotNoT="",lotSlT="",lineNoT="",itemCodeM="",lotNoM="",lotSlM="",lineNoM="";
double sumQuantityMisc=0,sumQuantityInv=0,qty=0,qtyM=0; String invoiceId="";
HashSet<String> unqInvID=new HashSet <String>(); double quantityT=0,quantityM=0;
ArrayList<String> tranIDList=new ArrayList <String>(); int listSize=0,count =0,noOfRecordMatched=0,noOfRecords=0;
ArrayList<String> InvIDList=new ArrayList <String>(); HashSet<String> partialInvID=new HashSet <String>();
ArrayList<String> InvIDTemp=new ArrayList <String>(); try{
ProofOfDelivery podL=ProofOfDelivery.getInstance(); for(int i=0;i< inv45dayListL.size();i++){
boolean isDuplicate=false,isDuplicate1=false; invoiceId=inv45dayListL.get(i);
try{ System.out.println("invoiceId in for---->>["+invoiceId+"]");
Iterator<String> it=inv45dayListL.iterator(); sql="select sum(quantity),item_code,lot_no,lot_sl,inv_line_no from invoice_trace where invoice_id = ? "
while(it.hasNext()) + "group by item_code,lot_no,lot_sl,inv_line_no";
{ pstmt=conn.prepareStatement(sql);
String id=it.next(); pstmt.setString(1, invoiceId);
/*confirmed=podL.getColumnDescr(conn,"confirmed","spl_sales_por_hdr","invoice_id",id); rs=pstmt.executeQuery();
confirmed=confirmed==null ? "N" :confirmed.trim(); while(rs.next()){
System.out.println("confirmed-->["+confirmed+" invID-->["+id+"]");*/ count++;
quantityT=rs.getDouble(1);
sql="select sum(quantity),item_code from invoice_trace where invoice_id = ? group by item_code,invoice_id"; itemCodeT=rs.getString(2) == null ? "" : rs.getString(2).trim();
pstmt=conn.prepareStatement(sql); lotNoT=rs.getString(3) == null ? "" : rs.getString(3).trim();
pstmt.setString(1, id); lotSlT=rs.getString(4) == null ? "" : rs.getString(4).trim();
rs=pstmt.executeQuery(); lineNoT=rs.getString(5) == null ? "" : rs.getString(5).trim();
while(rs.next()){
//lineNoTrace=rs.getInt(1); sql1="select sum(d.quantity) as Quantity,d.item_code,d.lot_no,d.lot_sl,d.line_no__invtrace from misc_drcr_rcp h,misc_drcr_rdet d "
isDuplicate=false; + "where h.tran_id = d.tran_id and h.remarks like ? and quantity is not null "
qty=rs.getDouble(1); + "group by d.item_code,d.lot_no,d.lot_sl,d.line_no__invtrace";
itemCode=rs.getString(2);
pstmt1=conn.prepareStatement(sql1);
pstmt1.setString(1, "%POD%"+invoiceId.trim());
rs1=pstmt1.executeQuery();
while(rs1.next()){
quantityM=rs1.getDouble(1);
itemCodeM=rs1.getString(2) == null ? "" : rs1.getString(2).trim();
lotNoM=rs1.getString(3) == null ? "" : rs1.getString(3).trim();
lotSlM=rs1.getString(4) == null ? "" : rs1.getString(4).trim();
lineNoM=rs1.getString(5) == null ? "" : rs1.getString(5).trim();
System.out.println("count1--------------->>["+count+"]");
System.out.println("quantityT--->>["+quantityT+"] quantityM-->["+quantityM+"]");
System.out.println("itemCodeT--->>["+itemCodeT+"] itemCodeM-->["+itemCodeM+"]");
System.out.println("lotNoT--->>["+lotNoT+"] lotNoM-->["+lotNoM+"]");
System.out.println("lotSlT--->>["+lotSlT+"] lotSlM-->["+lotSlM+"]");
System.out.println("lineNoT--->>["+lineNoT+"] lineNoM-->["+lineNoM+"]");
sql1="select sum(nvl(d.quantity,0)) as Quantity,d.item_code" if(itemCodeT.equalsIgnoreCase(itemCodeM) && lotNoT.equalsIgnoreCase(lotNoM)){
+" from misc_drcr_rcp h,misc_drcr_rdet d where h.tran_id=d.tran_id and h.remarks" if(lotSlT.equalsIgnoreCase(lotSlM) && lineNoT.equalsIgnoreCase(lineNoM)){
+" like ? and Quantity <> 0 group by d.item_code"; if(quantityM < quantityT )
/*sql1="select sum(nvl(d.quantity__resale,0)),d.item_code from spl_sales_por_hdr h,spl_sales_por_det d " {
+ "where h.tran_id = d.tran_id and h.invoice_id = ? group by d.item_code";*/ System.out.println("record matched........at count "+count);
pstmt1=conn.prepareStatement(sql1); partialInvID.add(invoiceId);
pstmt1.setString(1, "%POD%"+id); partialInvoiceMapG.put(invoiceId+":"+itemCodeT+":"+lotNoT+":"+lotSlT, quantityT - quantityM);
rs1=pstmt1.executeQuery(); noOfRecordMatched++;
while(rs1.next()){ }
//lineNoTraceM=rs1.getInt(1); if(quantityM == quantityT )
qtyM=rs1.getDouble(1); {
itemCodeM=rs1.getString(2); System.out.println("Quantity matched for inv id....."+invoiceId);
partialInvID.add(invoiceId);
}
System.out.println("itemCodeM-->>["+itemCodeM+" itemCodeM-->["+itemCodeM+"]");
System.out.println("qtyMisc-->>["+qtyM+" qtyInvoice-->["+qty+"]");
if(qtyM < qty && itemCode.equalsIgnoreCase(itemCodeM)){
InvIDTemp.add(id);
partialInvoiceMapG.put(id+":"+itemCode.trim(), qty- qtyM);
}else{
it.remove();
inv45dayListL.remove(id);
isDuplicate=true;
break;
} }
} }
if(isDuplicate){
System.out.println("isDuplicate continue......isDuplicate true");
isDuplicate1=true;
break;
}
if(rs1!=null){
rs1.close();
rs1=null;
}
} //end while misc
if(rs1 != null){
rs1.close();
rs1=null;
} }
System.out.println("InvTemp --->>["+InvIDTemp+"]"); if(pstmt1 != null){
if(isDuplicate1){ pstmt1.close();
System.out.println("isDuplicate1 continue......isDuplicate true"); pstmt1=null;
continue;
} }
}
System.out.println("unqInvID addAll--->>["+unqInvID+"]");
System.out.println("InvIDTemp --->>["+InvIDTemp+"]");
if(InvIDTemp.size() > 0){
unqInvID.addAll(InvIDTemp);
InvIDList.clear();
InvIDList.addAll(unqInvID);
System.out.println("InvIDList addAll--->>["+InvIDList+"]");
//partialInvoice.addAll(InvIDList);
} //end while trace
}//end for loop
if(rs != null){
rs.close();
rs=null;
} }
System.out.println("partialInvoiceMapG --->>["+partialInvoiceMapG+"]"); if(pstmt != null){
pstmt.close();
pstmt=null;
}
System.out.println("outside for partialInvoiceMapG-->>["+partialInvoiceMapG+"]");
System.out.println("outside for partialInvID-->>["+partialInvID+"]");
if(inv45dayListL.size() > 0){ if(inv45dayListL.size() > 0){
Iterator <String>it1=InvIDList.iterator(); Iterator<String>itr=inv45dayListL.iterator();
while (it1.hasNext()) { while(itr.hasNext()){
String podPrcId=it1.next(); String id=itr.next();
if(inv45dayListL.contains(podPrcId)) if(partialInvID.contains(id)){
System.out.println("---in misc arrayList------"+podPrcId); System.out.println("Invoice id removed--->["+id+"]");
it1.remove(); itr.remove();
inv45dayListL.remove(podPrcId); inv45dayListL.remove(id);
continue;
}
} }
}
}
} }
catch(Exception e) catch(Exception e){
{ System.out.println("Exception : "+e.getMessage());
e.printStackTrace();
inv45dayListL.clear(); inv45dayListL.clear();
inv45dayListL.add("Error"); inv45dayListL.add("Error");
e.printStackTrace();
} }
System.out.println("inv45dayListL addAll--->>["+inv45dayListL+"]");
return inv45dayListL; return inv45dayListL;
} }
private String newErrorMessage(String errString,String invid) private String newErrorMessage(String errString,String invid)
...@@ -1549,6 +1525,8 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1549,6 +1525,8 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
Map<String,String>partialMap=new HashMap(); Map<String,String>partialMap=new HashMap();
Set<String>partialID=new HashSet(); Set<String>partialID=new HashSet();
ArrayList<String>partialItem=new ArrayList(); ArrayList<String>partialItem=new ArrayList();
ArrayList<String>partialLotNo=new ArrayList();
ArrayList<String>partialLotSl=new ArrayList();
Map<String,String> invoiceDetailsMap=null; Map<String,String> invoiceDetailsMap=null;
HashMap<String,String> podTraceMap=new HashMap(); HashMap<String,String> podTraceMap=new HashMap();
HashMap<String,String> schemeMap=new HashMap(); HashMap<String,String> schemeMap=new HashMap();
...@@ -1562,7 +1540,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1562,7 +1540,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
ProofOfDelivery pod=ProofOfDelivery.getInstance(); ProofOfDelivery pod=ProofOfDelivery.getInstance();
ProofOfDelivery podObject=ProofOfDelivery.getInstance(); ProofOfDelivery podObject=ProofOfDelivery.getInstance();
ProofOfDeliveryConf podC=ProofOfDeliveryConf.getInstance(); ProofOfDeliveryConf podC=ProofOfDeliveryConf.getInstance();
int count=0,cnt1=1,cnt2=0,itemCnt=0; int count=0,cnt1=0,cnt2=0,itemCnt=0;
Connection conn1=null; Connection conn1=null;
ConnDriver connDriver1 = new ConnDriver(); ConnDriver connDriver1 = new ConnDriver();
try{ try{
...@@ -1574,20 +1552,28 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1574,20 +1552,28 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
for (String id :partialInvoiceMapG.keySet()) for (String id :partialInvoiceMapG.keySet())
{ {
String [] invID =id.split(":"); String [] invID =id.split(":");
partialID.add(invID[cnt2]); partialID.add(invID[cnt1]);
partialItem.add(invID[cnt1]); cnt1++;
partialItem.add(invID[cnt1]);
cnt1++;
partialLotNo.add(invID[cnt1]);
cnt1++;
partialLotSl.add(invID[cnt1]);
cnt1=0;
} }
} }
System.out.println("partialID set--->>["+partialID+"]"); System.out.println("partialID set--->>["+partialID+"]");
System.out.println("partialItem--->>["+partialItem+"]"); System.out.println("partialItem--->>["+partialItem+"]");
System.out.println("partialLotNO--->>["+partialLotNo+"]");
System.out.println("partialLotSl--->>["+partialLotSl+"]");
totalInvoice=partialID.size(); totalInvoice=partialID.size();
System.out.println("totalInvoice--->>["+totalInvoice+"]"); System.out.println("totalInvoice partial--->>["+totalInvoice+"]");
for (String invIdPartial : partialID) for (String invIdPartial : partialID)
{ {
//itemCode=partialItem.get(itemCnt)==null ? "" :partialItem.get(itemCnt).trim(); //itemCode=partialItem.get(itemCnt)==null ? "" :partialItem.get(itemCnt).trim();
//invQty=partialInvoiceMapG.get(invIdPartial+":"+itemCode); //invQty=partialInvoiceMapG.get(invIdPartial+":"+itemCode);
detail2xmlString=""; detail2xmlString="";
sql1="select rate,lot_no,lot_sl,discount,item_code from invoice_trace " sql1="select rate,lot_no,lot_sl,discount,item_code,inv_line_no from invoice_trace "
+ "where invoice_id = ?"; + "where invoice_id = ?";
pstmt=conn.prepareStatement(sql1); pstmt=conn.prepareStatement(sql1);
...@@ -1596,10 +1582,11 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1596,10 +1582,11 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
rs=pstmt.executeQuery(); rs=pstmt.executeQuery();
while(rs.next()){ while(rs.next()){
invRate=rs.getDouble(1); invRate=rs.getDouble(1);
lotNo=rs.getString(2);; lotNo=rs.getString(2);
lotSl=rs.getString(3); lotSl=rs.getString(3);
discount=rs.getDouble(4); discount=rs.getDouble(4);
itemCode=rs.getString(5); itemCode=rs.getString(5);
lineNotrace=rs.getInt(6);
itemCode=itemCode==null ? "" :itemCode.trim(); itemCode=itemCode==null ? "" :itemCode.trim();
lotNo=lotNo==null ? "" :lotNo.trim(); lotNo=lotNo==null ? "" :lotNo.trim();
...@@ -1610,8 +1597,8 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1610,8 +1597,8 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
invRate=invRate - (invRate * discount/100); invRate=invRate - (invRate * discount/100);
System.out.println("Discount for invoice id--->>["+invIdPartial+"]"+"inv Rate-->>["+invRate+"]"); System.out.println("Discount for invoice id--->>["+invIdPartial+"]"+"inv Rate-->>["+invRate+"]");
} }
if(partialItem.contains(itemCode)){ if(partialItem.contains(itemCode) && partialLotNo.contains(lotNo) && partialLotSl.contains(lotSl)){
invQty=partialInvoiceMapG.get(invIdPartial+":"+itemCode); invQty=partialInvoiceMapG.get(invIdPartial+":"+itemCode+":"+lotNo+":"+lotSl);
System.out.println("Remain111 inv qty--->>["+invQty+"] inv id--->["+invIdPartial+"]"); System.out.println("Remain111 inv qty--->>["+invQty+"] inv id--->["+invIdPartial+"]");
}else{ }else{
System.out.println("in continue.......partial112........."); System.out.println("in continue.......partial112.........");
......
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