package panaceaFLweb.FLCtlbean;
import org.apache.myfaces.custom.fileupload.UploadedFile;
//import panaceaFLweb.Blob.*;

import panacea.common.DTObject;
import panacea.common.JNDINames;
import java.io.InputStream;


import panacea.delegate.CommonDelegate;


public class CtlUploadBean {
	private String ecbooption = null ; 
	private String etxtImgInvNumber = null ;
	private String etxtImageDate = null ;
	private String etxtDocCode = null ;
	private String etxtToCust = null ;
	private String etxtToAccount = null ;
	private String etxtAccName = null ;
	private String etxtGenPurpDesc1 = null ;
	private String etxtGenPurpDesc2 = null ;
	private String etxtGenPurpDesc3 = null ;
	private String etxtDocNum = null ;
	private String etxtDocDate = null ;
 	private String etxtDocCurr = null; 
	private String etxtDocValue = null ;
	private String etxtDocExpDate = null ;
	private String etxtIssAuth = null ;
	private String etxtExpDate = null ;
	private String etxtDocInfo1 = null ;
	private String etxtDocInfo2 = null ;
	private String etxtDocInfo3 = null ;
	private String  etxnStatus = null ;
	private String eerrmsg = null ;
	private UploadedFile myFile;
	private DTObject DTOResult;
	InputStream is=null;
	String result;
	
	public UploadedFile getMyFile() {
		return myFile;
	}
	public void setMyFile(UploadedFile myFile) {
		this.myFile = myFile;
	}
	public void setEcbooption (String ecbooption)
	{ 	 
		this.ecbooption =ecbooption;
		System.out.println(this.ecbooption);
	}
	public String getEcbooption()
	{
		return ecbooption;
	}
	
	public void setEtxtImgInvNumber (String etxtImgInvNumber)
	{ 	 
		this.etxtImgInvNumber =etxtImgInvNumber;
		System.out.println(this.etxtImgInvNumber);
	}
	public String getEtxtImgInvNumber()
	{
		return etxtImgInvNumber;
	}
	
	public void setEtxtImageDate (String etxtImageDate)
	{ 	 
		this.etxtImageDate =etxtImageDate;
		System.out.println(this.etxtImageDate);
	}
	public String getEtxtImageDate()
	{
		return etxtImageDate;
	}
	
	public void setEtxtDocCode (String etxtDocCode)
	{ 	 
		this.etxtDocCode =etxtDocCode;
		System.out.println(this.etxtDocCode);
	}
	public String getEtxtDocCode()
	{
		return etxtDocCode;
	}
	
	public void setEtxtToCust (String etxtToCust)
	{ 	 
		this.etxtToCust =etxtToCust;
		System.out.println(this.etxtToCust);
	}
	public String getEtxtToCust()
	{
		return etxtToCust;
	}
	
	public void setEtxtToAccount (String etxtToAccount)
	{ 	 
		this.etxtToAccount =etxtToAccount;
		System.out.println(this.etxtToAccount);
	}
	public String getEtxtToAccount()
	{
		return etxtToAccount;
	}
	
	public void setEtxtAccName (String etxtAccName)
	{ 	 
		this.etxtAccName =etxtAccName;
		System.out.println(this.etxtAccName);
	}
	public String getEtxtAccName()
	{
		return etxtAccName;
	}
		
	public void setEtxtDocCurr (String etxtDocCurr)
	{ 	 
		this.etxtDocCurr =etxtDocCurr;
		System.out.println(this.etxtDocCurr);
	}
	
	public String getEtxtDocCurr()
	{
		return etxtDocCurr;
	}
	
	public void setEtxtGenPurpDesc1 (String etxtGenPurpDesc1)
	{ 	 
		this.etxtGenPurpDesc1 =etxtGenPurpDesc1;
		System.out.println(this.etxtGenPurpDesc1);
	}
	
	public String getEtxtGenPurpDesc1()
	{
		return etxtGenPurpDesc1;
	}
	public void setEtxtGenPurpDesc2 (String etxtGenPurpDesc2)
	{ 	 
		this.etxtGenPurpDesc2 =etxtGenPurpDesc2;
		System.out.println(this.etxtGenPurpDesc2);
	}
	
	public String getEtxtGenPurpDesc2()
	{
		return etxtGenPurpDesc2;
	}
	public void setEtxtGenPurpDesc3 (String etxtGenPurpDesc3)
	{ 	 
		this.etxtGenPurpDesc3 =etxtGenPurpDesc3;
		System.out.println(this.etxtGenPurpDesc3);
	}
	
	public String getEtxtGenPurpDesc3()
	{
		return etxtGenPurpDesc3;
	}
	
	public void setEtxtDocNum (String etxtDocNum)
	{ 	 
		this.etxtDocNum =etxtDocNum;
		System.out.println(this.etxtDocNum);
	}
	
	public String getEtxtDocNum()
	{
		return etxtDocNum;
	}
	
	public void setEtxtDocDate (String etxtDocDate)
	{ 	 
		this.etxtDocDate =etxtDocDate;
		System.out.println(this.etxtDocDate);
	}
	
	public String getEtxtDocDate()
	{
		return etxtDocDate;
	}
	
	public void setEtxtDocValue (String etxtDocValue)
	{ 	 
		this.etxtDocValue =etxtDocValue;
		System.out.println(this.etxtDocValue);
	}
	
	public String getEtxtDocValue()
	{
		return etxtDocValue;
	}
	
	public void setEtxtDocExpDate(String etxtDocExpDate)
    {
    	this.etxtDocExpDate =etxtDocExpDate;
    	System.out.println(this.etxtDocExpDate);
    }
    public String getEtxtDocExpDate()
    {
    	return etxtDocExpDate;
    }
    public void setEtxtIssAuth(String etxtIssAuth)
    {
    	this.etxtIssAuth =etxtIssAuth;
    	System.out.println(this.etxtIssAuth);
    }
    public String getEtxtIssAuth()
    {
    	return etxtIssAuth;
    }
    public void setEtxtExpDate(String etxtExpDate)
    {
    	this.etxtExpDate = etxtExpDate;
    }
    public String getEtxtExpDate()
    {
    	
    	return etxtExpDate;
    }
    
    public void setetxtDocInfo1(String etxtDocInfo1)
    {
    	this.etxtDocInfo1 = etxtDocInfo1;
    }
    public String getEtxtDocInfo1()
    {
    	
    	return etxtDocInfo1;
    }
    
    public void setetxtDocInfo2(String etxtDocInfo2)
    {
    	this.etxtDocInfo2 = etxtDocInfo2;
    }
    public String getEtxtDocInfo2()
    {
    	
    	return etxtDocInfo2;
    }
    public void setetxtDocInfo3(String etxtDocInfo3)
    {
    	this.etxtDocInfo3 = etxtDocInfo3;
    }
    public String getEtxtDocInfo3()
    {
    	
    	return etxtDocInfo3;
    }
  
    
    public void setEerrmsg(String eerrmsg)
    {
    	this.eerrmsg = eerrmsg;
    }
    public String getEerrmsg()
    {
    	
    	return eerrmsg;
    }
    public void setEtxnStatus(String etxnstatus)
    {
    	this.etxnStatus =etxnstatus;
    	System.out.println(this.etxnStatus);
    }
    public String getEtxnStatus()
    {
    	return etxnStatus;
    }
    
    
    
    public String PersistData() 
    {
    	if (RevalidateCurrency()==true){
	 
    		CommonDelegate CDelagate = null;
	
	    	DTObject currDTO= new DTObject();
	    	
	    	currDTO.clearMap();
	    	currDTO.setValue( "User_Option",ecbooption);
	    	currDTO.setValue("IMG_INV_NUM", etxtImgInvNumber  );
	    	currDTO.setValue( "IMG_DATE",etxtImageDate);
	    	currDTO.setValue( "DOC_CODE",etxtDocCode);
	    	currDTO.setValue( "DOC_TO_CUST", etxtToCust);
	    	currDTO.setValue( "DOC_TO_ACC",etxtToAccount);
	    	currDTO.setValue( "ACC_NAME",etxtAccName);
	    	currDTO.setValue( "GEN_PURP_DESC1",etxtGenPurpDesc1);
	    	currDTO.setValue( "GEN_PURP_DESC2",etxtGenPurpDesc2);
	    	currDTO.setValue( "GEN_PURP_DESC3",etxtGenPurpDesc3);
	    	currDTO.setValue( "User_Option",ecbooption);
	    	currDTO.setValue("IMG_INV_NUM", etxtImgInvNumber  );
	    	currDTO.setValue( "DOC_NUM",etxtDocNum);
	    	currDTO.setValue( "DOC_DATE",etxtDocDate);
	    	currDTO.setValue( "DOC_VALUE",etxtDocValue);
	    	currDTO.setValue( "DOC_EXP_DATE",etxtDocExpDate);
	    	currDTO.setValue( "ISS_AUTH",etxtIssAuth);
	    	currDTO.setValue( "IMG_EXP_DATE",etxtExpDate);
	    	currDTO.setValue( "DOC_INFO_REMARKS1",etxtDocInfo1);
	    	currDTO.setValue( "DOC_INFO_REMARKS2",etxtDocInfo2);
	    	currDTO.setValue( "DOC_INFO_REMARKS3",etxtDocInfo3);
	    	currDTO.setValue( "SPDOCIMG_PURPOSE_FLG","C");
	    	currDTO.setValue(" SPDIMG_IMAGE" , String.valueOf(myFile));
	    //   	currDTO.setValue( "Class",JNDINames.UPLOAD_EJBHOME);
	    	// TO BE SET FROM SESSION ATTRIBUTE LATER
	    	currDTO.setValue( "USERID","lsil");
//	    	 TO BE SET FROM SESSION ATTRIBUTE LATER
	    	currDTO.setValue( "USRBRNCODE","100");
	    	
	    	
	    	try{
	    		    System.out.println("The file is" + myFile.getBytes());
	    		    System.out.println("The file is" + myFile.getName());
	    		 is=myFile.getInputStream();
	    	//	 BlobUpdate blob=new BlobUpdate();
	    		// result=blob.UpdateBlob(is, currDTO );
	    		 System.out.println("After Updating Blob" + result);
	    	}catch(Exception e){
	    		System.out.println(e.getMessage());
	    		
	    	}
	    		
	    	
	    	
	    	//currDTO.setValue( "UserOption","A");
	    	try {
				CDelagate = new CommonDelegate();
	    		DTOResult = CDelagate.setInfo(currDTO);
	    		System.out.println(DTOResult.getValue( "Result"));
	     	}catch (Exception e) {
	    		System.out.println(	e.getMessage());
	    	 }finally {
	    		if ("SUCCESS".equals( DTOResult.getValue( "Result"))){
	    		// 0 is used indicate success 
	    		etxnStatus ="0";
	    		}else {
	    		 // 1 is used to indicate failure	
	    		etxnStatus ="1" ;
	    		}
	    	 }
	    	  	 return "success";
	}else{
		  return "failure";
	}
    	
  }//end of persist data
    
    private boolean RevalidateCurrency()
    {
    	return true;
    }
	

}

