Commit c7997fb1 authored by dpawar's avatar dpawar

ADDED scheme related source


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@94529 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 24737a1b
...@@ -32,6 +32,8 @@ import org.w3c.dom.Element; ...@@ -32,6 +32,8 @@ import org.w3c.dom.Element;
import org.w3c.dom.Node; import org.w3c.dom.Node;
import org.w3c.dom.NodeList; import org.w3c.dom.NodeList;
import com.sun.jmx.snmp.Timestamp;
@Stateless @Stateless
public class PODProcess extends ProcessEJB implements PODProcessLocal,PODProcessRemote public class PODProcess extends ProcessEJB implements PODProcessLocal,PODProcessRemote
{ {
...@@ -39,12 +41,11 @@ public class PODProcess extends ProcessEJB implements PODProcessLocal,PODProcess ...@@ -39,12 +41,11 @@ public class PODProcess extends ProcessEJB implements PODProcessLocal,PODProcess
Map<String,Double> partialInvoiceMapG = new HashMap <String,Double>(); Map<String,Double> partialInvoiceMapG = new HashMap <String,Double>();
Map <String,Double>partialInvMap=new HashMap<String,Double>(); Map <String,Double>partialInvMap=new HashMap<String,Double>();
int invdoneCnt=0; int invdoneCnt=0;
boolean isError=false;
//in that map only partial invoice id,line_no_trace added with actual qty less partial qty //in that map only partial invoice id,line_no_trace added with actual qty less partial qty
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException
{ {
System.out.println("POD Process...........................123"); System.out.println("enter in process(212....................");
String retStr = ""; String retStr = "";
Document detailDom = null; Document detailDom = null;
Document headerDom = null; Document headerDom = null;
...@@ -84,7 +85,6 @@ public String process() throws RemoteException,ITMException ...@@ -84,7 +85,6 @@ public String process() throws RemoteException,ITMException
public String process(Document dom, Document dom2, String windowName, String xtraParams) throws RemoteException,ITMException public String process(Document dom, Document dom2, String windowName, String xtraParams) throws RemoteException,ITMException
{ {
isError=false;
System.out.println("enter in process(dom) "); System.out.println("enter in process(dom) ");
ArrayList <String>inv45dayList=new ArrayList<String>(); ArrayList <String>inv45dayList=new ArrayList<String>();
ArrayList<String> podProcessInvIDList=new ArrayList<String>(); ArrayList<String> podProcessInvIDList=new ArrayList<String>();
...@@ -228,7 +228,6 @@ public String process(Document dom, Document dom2, String windowName, String xtr ...@@ -228,7 +228,6 @@ 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); /*podProcessInvIDList=getDoneInvoiceIdHDR( conn, inv45dayList);
...@@ -292,6 +291,10 @@ public String process(Document dom, Document dom2, String windowName, String xtr ...@@ -292,6 +291,10 @@ public String process(Document dom, Document dom2, String windowName, String xtr
if(PodHdrInvList.size() > 0){ if(PodHdrInvList.size() > 0){
miscDrCrInvList=getDoneInvoiceIDFromMiscDrCrRcp(conn, PodHdrInvList); miscDrCrInvList=getDoneInvoiceIDFromMiscDrCrRcp(conn, PodHdrInvList);
System.out.println("miscDrCrInvList---->>["+miscDrCrInvList+"]"); System.out.println("miscDrCrInvList---->>["+miscDrCrInvList+"]");
}else{
errCode="VTDNFIN"; //Data not found
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString;
} }
if(miscDrCrInvList.contains("Error")){ if(miscDrCrInvList.contains("Error")){
errCode="VTPRCNCP"; errCode="VTPRCNCP";
...@@ -300,30 +303,9 @@ public String process(Document dom, Document dom2, String windowName, String xtr ...@@ -300,30 +303,9 @@ public String process(Document dom, Document dom2, String windowName, String xtr
} }
//podProcessInvIDList.clear(); //podProcessInvIDList.clear();
System.out.println("miscDrCrInvList size-->>["+miscDrCrInvList.size()+"]"); System.out.println("miscDrCrInvList size-->>["+miscDrCrInvList.size()+"]");
System.out.println("partialInvoiceMapG size-->>["+partialInvoiceMapG.size()+"]");
if(miscDrCrInvList.size() > 0){ if(miscDrCrInvList.size() > 0){
podProcessInvIDList.addAll(miscDrCrInvList); podProcessInvIDList.addAll(miscDrCrInvList);
}else if(partialInvoiceMapG.size() > 0){
System.out.println("only partial inv id found.........");
errorString=actualQtyPODProcessPartial(conn);
System.out.println("errorString1234--->>["+errorString+"]");
if("PERROR".equalsIgnoreCase(errorString)){
errCode="VTPRCNCP"; //Process failed
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
conn.rollback();
return errorString;
}
else if(errorString.indexOf("CONFSUCCES") > -1){
conn.commit();
errCode="VTPRCCSF";
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString;
}else{ }else{
conn.rollback();
return errorString;
}
}
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;
...@@ -331,7 +313,6 @@ public String process(Document dom, Document dom2, String windowName, String xtr ...@@ -331,7 +313,6 @@ public String process(Document dom, Document dom2, String windowName, String xtr
System.out.println("Final invoice Id ready for debit note12---->>["+podProcessInvIDList+"]"); System.out.println("Final invoice Id ready for debit note12---->>["+podProcessInvIDList+"]");
...@@ -347,6 +328,11 @@ public String process(Document dom, Document dom2, String windowName, String xtr ...@@ -347,6 +328,11 @@ public String process(Document dom, Document dom2, String windowName, String xtr
//if yes then checked in bomdet.if scheme code found then for that particular item scheme is apply. //if yes then checked in bomdet.if scheme code found then for that particular item scheme is apply.
errorString=generateDebitNote(conn, podProcessInvIDList,priceList,xtraParams,siteCode,invType); errorString=generateDebitNote(conn, podProcessInvIDList,priceList,xtraParams,siteCode,invType);
System.out.println("Return string from generateDebitNote----->>["+errorString+"]"); System.out.println("Return string from generateDebitNote----->>["+errorString+"]");
if(errorString.equalsIgnoreCase("Error")){
errCode="VTPRCNCP"; //process failed
errorString = itmdbAccess.getErrorString("", errCode, "", "", conn);
return errorString;
}
} }
else{ else{
errCode="VTDNFIN"; //Data not found errCode="VTDNFIN"; //Data not found
...@@ -395,7 +381,6 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -395,7 +381,6 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
String partialError=""; String partialError="";
String sql="",lotNo="",lotSl="",itemCode="",itemCodeOrd="",itemActive="",detail2xmlString="",errString=""; String sql="",lotNo="",lotSl="",itemCode="",itemCodeOrd="",itemActive="",detail2xmlString="",errString="";
String custCode="",currCode="",partial="N",QtyInvTrace="",scheme="N",errCode="",sreturnTranID="",sql1=""; String custCode="",currCode="",partial="N",QtyInvTrace="",scheme="N",errCode="",sreturnTranID="",sql1="";
double invRate=0,invQty=0,discount=0,priceListRate=0,detail3Amt=0,detail3AmtT=0,debitNoteAmtDetail=0; double invRate=0,invQty=0,discount=0,priceListRate=0,detail3Amt=0,detail3AmtT=0,debitNoteAmtDetail=0;
double debitNoteAmtHdr=0,ExchRate=0,actualRate=0,chargQty=0,freeQty=0,netPTS=0,sreturnQuantity=0,partialQty=0; double debitNoteAmtHdr=0,ExchRate=0,actualRate=0,chargQty=0,freeQty=0,netPTS=0,sreturnQuantity=0,partialQty=0;
int lineNotrace=0,lineNo=0,noOfInvoicePrc=0,totalInvoice=0; int lineNotrace=0,lineNo=0,noOfInvoicePrc=0,totalInvoice=0;
...@@ -475,8 +460,21 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -475,8 +460,21 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
System.out.println("Sales return------>>["+sreturnQuantity+"]"); System.out.println("Sales return------>>["+sreturnQuantity+"]");
invQty=invQty-sreturnQuantity; invQty=invQty-sreturnQuantity;
} }
partial="N";
scheme="N";
/*if(pod.isPartialyInvoiceChk(conn, invoiceId,"PRC")){
System.out.println("@#@#partial condition found for invoice id----->>["+invoiceId+"]");
System.out.println("Actual inv qty in inv trace---->>["+invQty+"]");
System.out.println("inv. qty done in POD screen---->>["+pod.partialQty+"]");
invQty = invQty - pod.partialQty;
partial="Y";
partialMap.put(invoiceId+","+itemCode, scheme);
System.out.println("Actual inv qty---->>["+invQty+"]");
}*/
//partialQty=actualQtyPODProcessPartial(conn,invoiceId,itemCode,lineNotrace);
//System.out.println("partial qty---->>["+partialQty+"]");
//partialMap.put(invoiceId+","+itemCode, partial);
//Check if item code Active or not."N" or null then return error message. //Check if item code Active or not."N" or null then return error message.
itemActive=pod.getColumnDescr(conn,"active","item","item_code",itemCode); itemActive=pod.getColumnDescr(conn,"active","item","item_code",itemCode);
...@@ -521,7 +519,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -521,7 +519,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
} }
else if(schemeQty.get("success") == 1){ else if(schemeQty.get("success") == 1){
scheme="Y"; scheme="Y";
//schemeMap.put(invoiceId+","+itemCode, scheme); schemeMap.put(invoiceId+","+itemCode, scheme);
chargQty=schemeQty.get("charge_qty"); chargQty=schemeQty.get("charge_qty");
freeQty=schemeQty.get("free_qty"); freeQty=schemeQty.get("free_qty");
...@@ -545,7 +543,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -545,7 +543,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
} }
}else{ }else{
System.out.println("-------Scheme not apply -----------"); System.out.println("-------Scheme not apply -----------");
//schemeMap.put(invoiceId+","+itemCode, scheme); schemeMap.put(invoiceId+","+itemCode, scheme);
scheme="N"; scheme="N";
actualRate=priceListRate - invRate; actualRate=priceListRate - invRate;
System.out.println("actualRate-------->>["+actualRate+"]"); System.out.println("actualRate-------->>["+actualRate+"]");
...@@ -587,7 +585,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -587,7 +585,7 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
System.out.println("Error String on DB Confirmation: "+errString); System.out.println("Error String on DB Confirmation: "+errString);
if((errString != null ) && errString.indexOf("CONFSUCCES") > -1) if((errString != null ) && errString.indexOf("CONFSUCCES") > -1)
{ {
int cnt =insertDataInPodTrace(conn,invoiceId, podC.xmlStringAll, scheme, "N","Y"); int cnt=insertDataInPodTrace(conn1, invoiceId, podC.xmlStringAll, scheme, "N","Y");
noOfInvoicePrc++; noOfInvoicePrc++;
if(noOfInvoicePrc==totalInvoice){ if(noOfInvoicePrc==totalInvoice){
invdoneCnt=1; invdoneCnt=1;
...@@ -595,21 +593,25 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -595,21 +593,25 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
errString = itmdbAccess1.getErrorString("", errCode, "", "", conn); errString = itmdbAccess1.getErrorString("", errCode, "", "", conn);
return errString; */ return errString; */
} }
if(cnt < 0){ if(cnt > 0){
errCode="VTPRCNCP"; //Process failed conn1.commit();
errString = itmdbAccess1.getErrorString("", errCode, "", "", conn);
conn.rollback();
return errString;
} }
//conn.commit();------------commited when partial invoice end
}else{ }else{
conn.rollback(); conn.rollback();
/*int cnt=insertDataInPodTrace(conn1, invoiceId, podC.xmlStringAll, schemeMap, partialMap,"N");
if(cnt > 1)
conn1.commit();*/
errString=newErrorMessage(errString, invoiceId); errString=newErrorMessage(errString, invoiceId);
return errString; return errString;
} }
}else{ }else{
conn.rollback(); conn.rollback();
/*int cnt=insertDataInPodTrace(conn1, invoiceId, podC.xmlStringAll, schemeMap, partialMap,"N");
if(cnt > 1)
conn1.commit();*/
errString=newErrorMessage(errString, invoiceId); errString=newErrorMessage(errString, invoiceId);
return errString; return errString;
} }
...@@ -629,33 +631,17 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv ...@@ -629,33 +631,17 @@ private String generateDebitNote(Connection conn,ArrayList<String> podProcessInv
conn.rollback(); conn.rollback();
return errString; return errString;
} }
System.out.println("Before calling actualQtyPODProcessPartial errString--->>["+errString+"]"); if(errString.length() > 0){
System.out.println("partialinvoiceMapG--->>["+partialInvoiceMapG+"]"); errString =actualQtyPODProcessPartial(conn); //partialInvoiceMapV
if(partialInvoiceMapG.size() > 0){
errString =actualQtyPODProcessPartial(conn); //partialInvoiceMapVf
System.out.println("Returing STring from actualQtyPODProcessPartial-->>["+errString+"]"); System.out.println("Returing STring from actualQtyPODProcessPartial-->>["+errString+"]");
if("PERROR".equalsIgnoreCase(errString)){ if((errString != null ) && errString.indexOf("CONFSUCCES") > -1){
errCode="VTPRCNCP"; //Process failed
errString = itmdbAccess1.getErrorString("", errCode, "", "", conn);
conn.rollback();
return errString;
}
else if(errString.indexOf("CONFSUCCES") > -1){
conn.commit(); conn.commit();
errCode="VTPRCCSF"; errCode="VTPRCCSF";
errString = itmdbAccess1.getErrorString("", errCode, "", "", conn); errString = itmdbAccess1.getErrorString("", errCode, "", "", conn);
return errString; return errString;
}else{
conn.rollback();
return errString;
}
} }
System.out.println("partial map null..............................."); else if(errString.equalsIgnoreCase("Error"))
if((errString != null ) && errString.indexOf("CONFSUCCES") > -1) errCode="VTPRCNCP"; //process failed
{
conn.commit();
errCode="VTPRCCSF";
errString = itmdbAccess1.getErrorString("", errCode, "", "", conn); errString = itmdbAccess1.getErrorString("", errCode, "", "", conn);
return errString; return errString;
} }
...@@ -897,8 +883,8 @@ private ArrayList<String> getDoneInvoiceIdHDR(Connection conn,ArrayList<String> ...@@ -897,8 +883,8 @@ private ArrayList<String> getDoneInvoiceIdHDR(Connection conn,ArrayList<String>
} }
private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId) private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId)
{ {
String sql="",sql1="",custCodeBil="",stateCode="",countCode="",schemeCode="",applyCustList="", String sql="",custCodeBil="",stateCode="",countCode="",schemeCode="",applyCustList="",
noApplyCustList="",schemeOrderType="",varValue=""; noApplyCustList="",schemeOrderType="",varValue="",sql1="";
schemeCodeG=""; schemeCodeG="";
multipleScheme="NOTFOUND"; multipleScheme="NOTFOUND";
ResultSet rsL=null,rs1=null; ResultSet rsL=null,rs1=null;
...@@ -972,7 +958,6 @@ private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId) ...@@ -972,7 +958,6 @@ private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId)
System.out.println("schemeCodeList size---->>["+schemeCodeList.size()+"]"); System.out.println("schemeCodeList size---->>["+schemeCodeList.size()+"]");
System.out.println("noApplyCustList---->>["+noApplyCustList+"]"); System.out.println("noApplyCustList---->>["+noApplyCustList+"]");
System.out.println("applyCustList---->>["+applyCustList+"]"); System.out.println("applyCustList---->>["+applyCustList+"]");
if(schemeCodeList.size() == 0){ if(schemeCodeList.size() == 0){
return false; return false;
} }
...@@ -999,13 +984,10 @@ private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId) ...@@ -999,13 +984,10 @@ private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId)
schemeOrderType=schemeOrderType==null ? "" : schemeOrderType.trim(); schemeOrderType=schemeOrderType==null ? "" : schemeOrderType.trim();
System.out.println("schemeOrderType-------->>["+schemeOrderType+"]"); System.out.println("schemeOrderType-------->>["+schemeOrderType+"]");
if(noApplyCustList.length() == 0 && applyCustList.length() == 0 && schemeOrderType.length() == 0){ if(noApplyCustList.length() == 0 && applyCustList.length() ==0 && schemeOrderType.length() ==0){
schemeApply=true; schemeApply=true;
checkBom=true; checkBom=true;
} }
if(schemeOrderType.length() > 0){
schemeApply=true;
}
if(noApplyCustList.length() > 0){ //if no apply customer list not null then checked if(noApplyCustList.length() > 0){ //if no apply customer list not null then checked
String [] custList=noApplyCustList.split(","); String [] custList=noApplyCustList.split(",");
for(int i=0 ;i < custList.length; i++) for(int i=0 ;i < custList.length; i++)
...@@ -1035,7 +1017,6 @@ private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId) ...@@ -1035,7 +1017,6 @@ private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId)
} }
System.out.println("Scheme apply in isSchemeApply------>>["+schemeApply+"]"); System.out.println("Scheme apply in isSchemeApply------>>["+schemeApply+"]");
if(schemeApply){ if(schemeApply){
sql1="SELECT VAR_VALUE FROM DISPARM WHERE PRD_CODE = ? AND VAR_NAME = ?"; sql1="SELECT VAR_VALUE FROM DISPARM WHERE PRD_CODE = ? AND VAR_NAME = ?";
pstmt1=conn.prepareStatement(sql1); pstmt1=conn.prepareStatement(sql1);
pstmt1.setString(1,"999999"); pstmt1.setString(1,"999999");
...@@ -1075,7 +1056,9 @@ private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId) ...@@ -1075,7 +1056,9 @@ private boolean isSchemeApply(Connection conn,String itemCodeL,String invoiceId)
return false; return false;
} }
} //end schemeApply
}
} }
catch(Exception e) catch(Exception e)
...@@ -1141,7 +1124,7 @@ private Map<String,Double> schemeApply(Connection conn,String invoiceID,String i ...@@ -1141,7 +1124,7 @@ private Map<String,Double> schemeApply(Connection conn,String invoiceID,String i
} }
return schemeQtyMap; return schemeQtyMap;
} }
private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll,String scheme,String partialL,String success) private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll,String scheme,String partial,String success)
{ {
PreparedStatement pstmt=null; PreparedStatement pstmt=null;
ResultSet rs=null; ResultSet rs=null;
...@@ -1152,7 +1135,6 @@ private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll ...@@ -1152,7 +1135,6 @@ private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll
try{ try{
//DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); //DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
//DocumentBuilder dBuilder = dbFactory.newDocumentBuilder(); //DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
System.out.println("xmlDataAll---->>[["+xmlDataAll+"]]"); System.out.println("xmlDataAll---->>[["+xmlDataAll+"]]");
Document doc = new ValidatorEJB ().parseString(xmlDataAll); Document doc = new ValidatorEJB ().parseString(xmlDataAll);
doc.getDocumentElement().normalize(); doc.getDocumentElement().normalize();
...@@ -1169,10 +1151,8 @@ private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll ...@@ -1169,10 +1151,8 @@ private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll
rate=eElement.getElementsByTagName("rate").item(0).getTextContent(); rate=eElement.getElementsByTagName("rate").item(0).getTextContent();
amount=eElement.getElementsByTagName("amount").item(0).getTextContent(); amount=eElement.getElementsByTagName("amount").item(0).getTextContent();
lineNoS=eElement.getElementsByTagName("line_no").item(0).getTextContent(); lineNoS=eElement.getElementsByTagName("line_no").item(0).getTextContent();
itemCode=itemCode==null ? "" :itemCode.trim(); //scheme=schemeMapL.get(invID+","+itemCode.trim());
System.out.println("item code podtrace--->>["+itemCode+"]"); //partial=partialMapL.get(invID+","+itemCode.trim());
//scheme=schemeMapL.get(invID+","+itemCode);
//partial=partialMapL.get(invID+","+itemCode);
System.out.println("scheme in insert pod trace---->>["+scheme+"]"); System.out.println("scheme in insert pod trace---->>["+scheme+"]");
...@@ -1202,7 +1182,7 @@ private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll ...@@ -1202,7 +1182,7 @@ private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll
pstmt.setDouble(9, Double.parseDouble(rate)); pstmt.setDouble(9, Double.parseDouble(rate));
pstmt.setDouble(10, Double.parseDouble(amount)); pstmt.setDouble(10, Double.parseDouble(amount));
pstmt.setString(11, partialL); pstmt.setString(11, partial);
pstmt.setString(12, scheme); pstmt.setString(12, scheme);
pstmt.setTimestamp(13, new java.sql.Timestamp(new java.util.Date().getTime()) ); pstmt.setTimestamp(13, new java.sql.Timestamp(new java.util.Date().getTime()) );
pstmt.setString(14, "BASE"); pstmt.setString(14, "BASE");
...@@ -1229,18 +1209,6 @@ private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll ...@@ -1229,18 +1209,6 @@ private int insertDataInPodTrace(Connection conn1,String invID,String xmlDataAll
System.out.println("Exception in insertDataInPodTrace method----"); System.out.println("Exception in insertDataInPodTrace method----");
return -1; return -1;
} }
finally{
try{
if(conn1!=null){
conn1.close();
conn1=null;
}
}
catch(Exception e){
e.printStackTrace();
}
}
return count; return count;
} }
...@@ -1563,7 +1531,7 @@ private String newErrorMessage(String errString,String invid) ...@@ -1563,7 +1531,7 @@ private String newErrorMessage(String errString,String invid)
} }
public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
{ {
System.out.println("-------in actualQtyPODProcessPartial method-----------"); System.out.println("-------for partial invoice id Dr note1233 -----------");
ResultSet rs=null,rs1=null; ResultSet rs=null,rs1=null;
PreparedStatement pstmt=null,pstmt1=null; PreparedStatement pstmt=null,pstmt1=null;
String sql="",tranIdL="",sql1="",itemCodeP=""; String sql="",tranIdL="",sql1="",itemCodeP="";
...@@ -1571,17 +1539,16 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1571,17 +1539,16 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
ITMDBAccessEJB itmdbAccess1=new ITMDBAccessEJB(); ITMDBAccessEJB itmdbAccess1=new ITMDBAccessEJB();
Map<String,Double>partialInvItem=new HashMap(); Map<String,Double>partialInvItem=new HashMap();
Map<String,String>partialMap=new HashMap(); Map<String,String>partialMap=new HashMap();
HashSet<String>partialID=new HashSet(); Set<String>partialID=new HashSet();
ArrayList<String>partialItem=new ArrayList(); ArrayList<String>partialItem=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();
Set<String> splitPartial=new HashSet<String>(); Set<String> splitPartial=new HashSet<String>();
Map<String,Double> schemeQty=null; Map<String,Double> schemeQty=null;
String lotNo="",lotSl="",itemCode="",itemCodeOrd="",itemActive="",detail2xmlString="",errString=""; String lotNo="",lotSl="",itemCode="",itemCodeOrd="",itemActive="",detail2xmlString="",errString="",itemCodeInvTrace="";
String custCode="",currCode="",partial="N",QtyInvTrace="",scheme="N",errCode="",sreturnTranID="",priceList=""; String custCode="",currCode="",partial="N",QtyInvTrace="",scheme="N",errCode="",sreturnTranID="",priceList="";
String itemCodeInvTrace=""; double invRate=0,invQty=0,discount=0,priceListRate=0,detail3Amt=0,detail3AmtT=0,debitNoteAmtDetail=0;
double invRate=0,invQty=0,discount=0,priceListRate=0,detail3Amt=0,detail3AmtT=0,debitNoteAmtDetail=0,invoiceQty=0;
double debitNoteAmtHdr=0,ExchRate=0,actualRate=0,chargQty=0,freeQty=0,netPTS=0,sreturnQuantity=0,partialQty=0; double debitNoteAmtHdr=0,ExchRate=0,actualRate=0,chargQty=0,freeQty=0,netPTS=0,sreturnQuantity=0,partialQty=0;
int lineNotrace=0,lineNo=0,noOfInvoicePrc=0,totalInvoice=0; int lineNotrace=0,lineNo=0,noOfInvoicePrc=0,totalInvoice=0;
ProofOfDelivery pod=ProofOfDelivery.getInstance(); ProofOfDelivery pod=ProofOfDelivery.getInstance();
...@@ -1603,16 +1570,16 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1603,16 +1570,16 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
partialItem.add(invID[cnt1]); partialItem.add(invID[cnt1]);
} }
} }
System.out.println("partialID--->>["+partialID+"]"); System.out.println("partialID set--->>["+partialID+"]");
System.out.println("partialItem--->>["+partialItem+"]"); System.out.println("partialItem--->>["+partialItem+"]");
totalInvoice=partialID.size(); totalInvoice=partialID.size();
System.out.println("totalInvoice--->>["+totalInvoice+"]"); System.out.println("totalInvoice--->>["+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);
sql1="select rate,lot_no,lot_sl,discount,item_code from invoice_trace "
sql1="select rate,lot_no,lot_sl,discount,item_code,quantity from invoice_trace "
+ "where invoice_id = ?"; + "where invoice_id = ?";
pstmt=conn.prepareStatement(sql1); pstmt=conn.prepareStatement(sql1);
...@@ -1620,28 +1587,28 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1620,28 +1587,28 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
//pstmt.setString(2, itemCode); //pstmt.setString(2, itemCode);
rs=pstmt.executeQuery(); rs=pstmt.executeQuery();
while(rs.next()){ while(rs.next()){
System.out.println("in invoice trace partial111...............");
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);
itemCodeInvTrace=rs.getString(5); itemCode=rs.getString(5);
invoiceQty=rs.getDouble(6);
itemCode=itemCode==null ? "" :itemCode.trim();
lotNo=lotNo==null ? "" :lotNo.trim();
lotSl=lotSl==null ? "" :lotSl.trim();
//Discount need discussion //Discount need discussion
if(discount > 0) if(discount > 0)
{ {
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(itemCodeInvTrace.trim())){ if(partialItem.contains(itemCode)){
invQty=partialInvoiceMapG.get(invIdPartial+":"+itemCodeInvTrace.trim()); invQty=partialInvoiceMapG.get(invIdPartial+":"+itemCode);
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.........");
continue; continue;
} }
//check if any sales return //check if any sales return
sreturnTranID=pod.getSalesReturnTranID(conn, "sreturn", "tran_id", "invoice_id", invIdPartial); sreturnTranID=pod.getSalesReturnTranID(conn, "sreturn", "tran_id", "invoice_id", invIdPartial);
sreturnTranID=sreturnTranID==null ? "" : sreturnTranID.trim(); sreturnTranID=sreturnTranID==null ? "" : sreturnTranID.trim();
...@@ -1651,7 +1618,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1651,7 +1618,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
sql1="select item_code,quantity from sreturndet where tran_id = ? and item_code = ? "; sql1="select item_code,quantity from sreturndet where tran_id = ? and item_code = ? ";
pstmt1=conn.prepareStatement(sql1); pstmt1=conn.prepareStatement(sql1);
pstmt1.setString(1, sreturnTranID); pstmt1.setString(1, sreturnTranID);
pstmt1.setString(2, itemCodeInvTrace); pstmt1.setString(2, itemCode);
rs1=pstmt1.executeQuery(); rs1=pstmt1.executeQuery();
if(rs1.next()){ if(rs1.next()){
...@@ -1666,7 +1633,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1666,7 +1633,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
pstmt1=null; pstmt1=null;
} }
} }
itemActive=pod.getColumnDescr(conn,"active","item","item_code",itemCodeInvTrace); itemActive=pod.getColumnDescr(conn,"active","item","item_code",itemCode);
itemActive=itemActive==null ? "" :itemActive.trim(); itemActive=itemActive==null ? "" :itemActive.trim();
if(itemActive.equalsIgnoreCase("N") || itemActive.length()<=0) if(itemActive.equalsIgnoreCase("N") || itemActive.length()<=0)
{ {
...@@ -1677,7 +1644,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1677,7 +1644,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
} }
java.util.Date tranDate=new Date(); java.util.Date tranDate=new Date();
priceList=podObject.getNameOrDescrForCode(conn, "site", "price_list", "site_code", siteCodeG); priceList=podObject.getNameOrDescrForCode(conn, "site", "price_list", "site_code", siteCodeG);
priceListRate=getPriceListRate(priceList, tranDate,itemCodeInvTrace,lotNo,"", conn); priceListRate=getPriceListRate(priceList, tranDate,itemCode,lotNo,"", conn);
System.out.println("priceListRate----->>["+priceListRate+"]"); System.out.println("priceListRate----->>["+priceListRate+"]");
if(priceListRate <= 0) if(priceListRate <= 0)
{ {
...@@ -1687,10 +1654,10 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1687,10 +1654,10 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
return errString; return errString;
} }
if(isSchemeApply(conn,itemCodeInvTrace,invIdPartial)){ if(isSchemeApply(conn,itemCode,invIdPartial)){
//java code if scheme is apply //java code if scheme is apply
System.out.println("-------Scheme is apply -----------"); System.out.println("-------Scheme is apply -----------");
schemeQty=schemeApply(conn,invIdPartial,itemCodeInvTrace); schemeQty=schemeApply(conn,invIdPartial,itemCode);
System.out.println("schemeQty map---->>["+schemeQty+"]"); System.out.println("schemeQty map---->>["+schemeQty+"]");
if(schemeQty.size() > 0){ if(schemeQty.size() > 0){
if(schemeQty.get("success") < 0){ if(schemeQty.get("success") < 0){
...@@ -1701,7 +1668,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1701,7 +1668,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
} }
else if(schemeQty.get("success") == 1){ else if(schemeQty.get("success") == 1){
scheme="Y"; scheme="Y";
//schemeMap.put(invIdPartial+","+itemCodeInvTrace, scheme); schemeMap.put(invIdPartial+","+itemCode, scheme);
chargQty=schemeQty.get("charge_qty"); chargQty=schemeQty.get("charge_qty");
freeQty=schemeQty.get("free_qty"); freeQty=schemeQty.get("free_qty");
...@@ -1712,22 +1679,22 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1712,22 +1679,22 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
detail3Amt= actualRate * invQty; detail3Amt= actualRate * invQty;
detail3AmtT=detail3AmtT + detail3Amt; detail3AmtT=detail3AmtT + detail3Amt;
lineNo++; lineNo++;
detail2xmlString=detail2xmlString + podC.getDetailsXmlString(conn,invIdPartial,lineNotrace,lineNo,actualRate,invQty,lotNo,lotSl,itemCodeInvTrace, detail3Amt); detail2xmlString=detail2xmlString + podC.getDetailsXmlString(conn,invIdPartial,lineNotrace,lineNo,actualRate,invQty,lotNo,lotSl,itemCode, detail3Amt);
} }
} }
}else{ }else{
System.out.println("-------Scheme not apply -----------"); System.out.println("-------Scheme not apply -----------");
schemeMap.put(invIdPartial+","+itemCodeInvTrace, scheme); schemeMap.put(invIdPartial+","+itemCode, scheme);
scheme="N";
actualRate=priceListRate - invRate; actualRate=priceListRate - invRate;
detail3Amt= actualRate * invQty; detail3Amt= actualRate * invQty;
scheme="N";
System.out.println("invQty-------->>["+invQty+"]"); System.out.println("invQty-------->>["+invQty+"]");
System.out.println("invRate-------->>["+invRate+"]"); System.out.println("invRate-------->>["+invRate+"]");
System.out.println("Debit note amount-------->>["+detail3Amt+"]"); System.out.println("Debit note amount-------->>["+detail3Amt+"]");
System.out.println("Actual rate after deducting inv rate-------->>["+detail3Amt+"]"); System.out.println("Actual rate after deducting inv rate-------->>["+detail3Amt+"]");
detail3AmtT=detail3AmtT + detail3Amt; detail3AmtT=detail3AmtT + detail3Amt;
lineNo++; lineNo++;
detail2xmlString=detail2xmlString + podC.getDetailsXmlString(conn,invIdPartial,lineNotrace,lineNo,actualRate,invQty,lotNo,lotSl,itemCodeInvTrace, detail3Amt); detail2xmlString=detail2xmlString + podC.getDetailsXmlString(conn,invIdPartial,lineNotrace,lineNo,actualRate,invQty,lotNo,lotSl,itemCode, detail3Amt);
} //end isSchemeApply } //end isSchemeApply
...@@ -1756,17 +1723,31 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1756,17 +1723,31 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
System.out.println("Tran id for Misc. debit note------->>["+(podC.debitNoteTranID).trim()+"]"); System.out.println("Tran id for Misc. debit note------->>["+(podC.debitNoteTranID).trim()+"]");
MiscDrCrRcpConf confDebitNote=new MiscDrCrRcpConf(); MiscDrCrRcpConf confDebitNote=new MiscDrCrRcpConf();
errString=confDebitNote.confirm((podC.debitNoteTranID).trim(),xtraParamsG,"",conn); errString=confDebitNote.confirm((podC.debitNoteTranID).trim(),xtraParamsG,"",conn);
System.out.println("Error String on DB Confirmation: "+errString); // System.out.println("Error String on DB Confirmation: "+errString);
if((errString != null ) && errString.indexOf("CONFSUCCES") > -1) if((errString != null ) && errString.indexOf("CONFSUCCES") > -1)
{ {
int cnt=insertDataInPodTrace(conn,invIdPartial, podC.xmlStringAll, scheme, "Y","Y"); int cnt=insertDataInPodTrace(conn1, invIdPartial, podC.xmlStringAll, scheme, "Y","Y");
noOfInvoicePrc++; noOfInvoicePrc++;
System.out.println("cnt IN PARTIAL-->>["+cnt+"]"); System.out.println("noOfInvoicePrc in partial-->>["+noOfInvoicePrc+"]");
/*if(noOfInvoicePrc==totalInvoice){
if(invdoneCnt==1){
errCode="VTPRCCSF";
errString = itmdbAccess1.getErrorString("", errCode, "", "", conn);
conn.commit();
return errString;
}
}else if(invdoneCnt==1){
System.out.println("invdoneCnt1----true");
errCode="VTPPRCSF";
errString = itmdbAccess1.getErrorString("", errCode, "", "", conn);
conn.commit();
return errString;
}*/
if(cnt > 0){ if(cnt > 0){
conn1.commit(); conn1.commit();
} }
continue; // for next invoice id iterating
/*errCode="VTPRCCSF"; /*errCode="VTPRCCSF";
...@@ -1777,11 +1758,17 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1777,11 +1758,17 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
//return "Success"; //return "Success";
}else{ }else{
conn.rollback(); conn.rollback();
/*int cnt=insertDataInPodTrace(conn1, invIdPartial, podC.xmlStringAll, schemeMap, partialMap,"N");
if(cnt > 1)
conn1.commit();*/
errString=newErrorMessage(errString, invIdPartial); errString=newErrorMessage(errString, invIdPartial);
return errString; return errString;
} }
}else{ }else{
conn.rollback(); conn.rollback();
/*int cnt=insertDataInPodTrace(conn1, invIdPartial, podC.xmlStringAll, schemeMap, partialMap,"N");
if(cnt > 1)
conn1.commit(); */
errString=newErrorMessage(errString, invIdPartial); errString=newErrorMessage(errString, invIdPartial);
return errString; return errString;
} }
...@@ -1794,7 +1781,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1794,7 +1781,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
return errString; return errString;
} }
//itemCnt++; itemCnt++;
} //end for loop for partial } //end for loop for partial
...@@ -1802,7 +1789,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap ...@@ -1802,7 +1789,7 @@ public String actualQtyPODProcessPartial(Connection conn) //partialInvoiceMap
catch(Exception e) catch(Exception e)
{ {
e.printStackTrace(); e.printStackTrace();
return "PERROR"; return "Error";
} }
System.out.println("Done quantity---->>["+doneQty+"]"); System.out.println("Done quantity---->>["+doneQty+"]");
......
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