You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
354 lines
12 KiB
354 lines
12 KiB
using System;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Net;
|
|
using System.Web;
|
|
using System.Xml;
|
|
using Swift.DAL.BL.Remit.OFACManagement;
|
|
using Swift.DAL.BL.System.Utility;
|
|
using Swift.DAL.SwiftDAL;
|
|
using Swift.web.Library;
|
|
using static Swift.web.Library.CustomConfigHelper;
|
|
|
|
namespace Swift.web.Remit.OFACManagement
|
|
{
|
|
public partial class Import : System.Web.UI.Page
|
|
{
|
|
private OFACDao obj = new OFACDao();
|
|
private const string ViewFunctionId = "20211000";
|
|
private string root = GetStatic.GetAppRoot();
|
|
private string directory;
|
|
|
|
RemittanceLibrary rl = new RemittanceLibrary();
|
|
|
|
public Import()
|
|
{
|
|
directory = root + "doc";
|
|
}
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
Authenticate();
|
|
LoadLogGrid();
|
|
LoadSourceWiseData();
|
|
|
|
if (!IsPostBack)
|
|
{
|
|
LoadLogGrid();
|
|
}
|
|
}
|
|
private void Authenticate()
|
|
{
|
|
rl.CheckAuthentication(ViewFunctionId);
|
|
}
|
|
protected void btnImport_Click(object sender, EventArgs e)
|
|
{
|
|
var dbResult = new DbResult();
|
|
try
|
|
{
|
|
/*
|
|
GetSDNContent("http://www.treasury.gov/ofac/downloads/sdn.pip");
|
|
GetALTContent("http://www.treasury.gov/ofac/downloads/alt.pip");
|
|
GetADDContent("http://www.treasury.gov/ofac/downloads/add.pip");
|
|
*/
|
|
|
|
GetSDNContent(GetStatic.GetOFACSDN());
|
|
GetALTContent(GetStatic.GetOFACALT());
|
|
GetADDContent(GetStatic.GetOFACADD());
|
|
|
|
|
|
DivMessage.InnerHtml = "File Download Completed !";
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
GetStatic.AlertMessage(this, $"Technical Error: { GetStatic.LogError(ex).Id}");
|
|
}
|
|
}
|
|
|
|
private void ManageMessage(DbResult dbResult)
|
|
{
|
|
GetStatic.SetMessage(dbResult);
|
|
if (dbResult.ErrorCode == "0")
|
|
{
|
|
GetStatic.PrintMessage(this.Page);
|
|
LoadLogGrid();
|
|
}
|
|
else
|
|
{
|
|
GetStatic.SetMessage(dbResult.Msg, "1");
|
|
return;
|
|
}
|
|
}
|
|
|
|
|
|
private void ReadUNSCRFile(string URL, string fileName)
|
|
{
|
|
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
|
|
System.Net.ServicePointManager.ServerCertificateValidationCallback =
|
|
((sender, certificate, chain, sslPolicyErrors) => true);
|
|
XmlDocument xDoc = new XmlDocument();
|
|
xDoc.Load(URL);
|
|
if (!Directory.Exists(directory + "\\OFAC"))
|
|
Directory.CreateDirectory(directory + "\\OFAC");
|
|
string filPath = GetStatic.GetAppRoot() + "doc\\OFAC\\"+ fileName + ".xml";
|
|
xDoc.Save(filPath);
|
|
}
|
|
|
|
private void GetSDNContent(string URL)
|
|
{
|
|
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
|
|
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(URL);
|
|
myRequest.Method = WebRequestMethods.Http.Get;
|
|
WebResponse myResponse = myRequest.GetResponse();
|
|
StreamReader sr = new StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8);
|
|
string line;
|
|
|
|
string fileToCreate = directory + "\\OFAC\\SDN.pip";
|
|
|
|
if (!Directory.Exists(directory +"\\OFAC"))
|
|
Directory.CreateDirectory(directory + "\\OFAC");
|
|
|
|
using (var file = new StreamWriter(fileToCreate))
|
|
{
|
|
while ((line = sr.ReadLine()) != null)
|
|
{
|
|
file.WriteLine(line);
|
|
}
|
|
}
|
|
|
|
//Eliminate Last Line
|
|
var lines = File.ReadAllLines(fileToCreate);
|
|
File.WriteAllLines(fileToCreate, lines.Take(lines.Length - 1).ToArray());
|
|
|
|
sr.Close();
|
|
myResponse.Close();
|
|
}
|
|
|
|
private void GetALTContent(string URL)
|
|
{
|
|
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
|
|
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(URL);
|
|
myRequest.Method = "GET";
|
|
WebResponse myResponse = myRequest.GetResponse();
|
|
StreamReader sr = new StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8);
|
|
string line;
|
|
|
|
string fileToCreate = directory + "\\OFAC\\ALT.pip";
|
|
|
|
if (!Directory.Exists(directory +"\\OFAC"))
|
|
Directory.CreateDirectory(directory + "\\OFAC");
|
|
|
|
using (var file = new StreamWriter(fileToCreate))
|
|
{
|
|
while ((line = sr.ReadLine()) != null)
|
|
{
|
|
file.WriteLine(line);
|
|
}
|
|
}
|
|
|
|
var lines = File.ReadAllLines(fileToCreate);
|
|
File.WriteAllLines(fileToCreate, lines.Take(lines.Length - 1).ToArray());
|
|
|
|
sr.Close();
|
|
myResponse.Close();
|
|
}
|
|
|
|
private void GetADDContent(string URL)
|
|
{
|
|
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
|
|
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(URL);
|
|
myRequest.Method = "GET";
|
|
WebResponse myResponse = myRequest.GetResponse();
|
|
StreamReader sr = new StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8);
|
|
string line;
|
|
|
|
string fileToCreate = directory +"\\OFAC\\ADD.pip";
|
|
|
|
if (!Directory.Exists(directory + "\\OFAC"))
|
|
Directory.CreateDirectory(directory + "\\OFAC");
|
|
|
|
using (var file = new StreamWriter(fileToCreate))
|
|
{
|
|
while ((line = sr.ReadLine()) != null)
|
|
{
|
|
file.WriteLine(line);
|
|
}
|
|
}
|
|
var lines = File.ReadAllLines(fileToCreate);
|
|
File.WriteAllLines(fileToCreate, lines.Take(lines.Length - 1).ToArray());
|
|
|
|
sr.Close();
|
|
myResponse.Close();
|
|
}
|
|
|
|
private void LoadLogGrid()
|
|
{
|
|
DataTable dt = obj.LoadLog(GetStatic.GetUser());
|
|
rpt_grid.InnerHtml = Misc.DataTableToHtmlTable(ref dt);
|
|
}
|
|
|
|
private void LoadSourceWiseData()
|
|
{
|
|
DataTable dt = obj.LoadSourceWiseData(GetStatic.GetUser());
|
|
SourceWiseData.InnerHtml = Misc.DataTableToHtmlTable(ref dt);
|
|
}
|
|
|
|
private void LoadAQLogGrid()
|
|
{
|
|
DataTable dt = obj.LoadLog(GetStatic.GetUser());
|
|
rpt_grid.InnerHtml = Misc.DataTableToHtmlTable(ref dt);
|
|
}
|
|
|
|
|
|
protected void BtnImpAQList_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
//ReadUNSCRFile("http://www.un.org/sc/committees/1267/AQList.xml");
|
|
//DownloadUNSCRData();
|
|
ReadUNSCRFile(GetStatic.GetOFACUNSCR(), "consolidated");
|
|
DivMessage.InnerHtml = "File Download Completed !";
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
GetStatic.AlertMessage(this, $"Technical Error: { GetStatic.LogError(ex).Id}");
|
|
}
|
|
}
|
|
|
|
private void DownloadUNSCRData()
|
|
{
|
|
var list = PartnerAgentConfig.GetParentConfig(SectionCategory.SDNListSection);
|
|
var activeList = from s in list
|
|
where s.Active.ToLower() == "yes"
|
|
select s;
|
|
|
|
foreach (var item in activeList)
|
|
{
|
|
ReadUNSCRFile(item.URL, item.Key);
|
|
}
|
|
}
|
|
|
|
private string GetUNSCRData(string fileName)
|
|
{
|
|
|
|
//var aqFilePath = GetStatic.GetAppRoot() + "doc\\OFAC\\"+ fileName + ".xml";
|
|
var aqFilePath = GetStatic.GetAppRoot() + fileName;
|
|
FileWebRequest myRequest = (FileWebRequest)WebRequest.Create(aqFilePath);
|
|
myRequest.Method = "GET";
|
|
WebResponse myResponse = myRequest.GetResponse();
|
|
|
|
StreamReader sr = new StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8);
|
|
string xmlContent = sr.ReadToEnd().Trim();
|
|
|
|
xmlContent = xmlContent.Replace("'", "");
|
|
xmlContent = xmlContent.Replace("utf-8", "utf-16");
|
|
xmlContent = xmlContent.Replace("UTF-8", "UTF-16");
|
|
xmlContent = xmlContent.Replace("&", "and");
|
|
|
|
return xmlContent;
|
|
}
|
|
|
|
protected void btnUpload_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
//var list = PartnerAgentConfig.GetParentConfig(SectionCategory.SDNListSection);
|
|
//var activeList = from s in list
|
|
// where s.Active.ToLower() == "yes"
|
|
// select s;
|
|
|
|
|
|
//foreach (var item in activeList)
|
|
//{
|
|
// string xmlContent = GetUNSCRData(item.Key);
|
|
// var dbResult = obj.UpdateAQList(GetStatic.GetUser(), xmlContent, item.Key + ".xml", item.Key);
|
|
// ManageMessage(dbResult);
|
|
// DivMessage.InnerHtml = dbResult.Msg;
|
|
//}
|
|
string xmlContent = GetUNSCRData("consolidated");
|
|
var dbResult = obj.UpdateAQList(GetStatic.GetUser(), xmlContent, "consolidated.xml", "UNSC");
|
|
ManageMessage(dbResult);
|
|
DivMessage.InnerHtml = dbResult.Msg;
|
|
|
|
LoadAQLogGrid();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
GetStatic.AlertMessage(this, $"Technical Error: { GetStatic.LogError(ex).Id}");
|
|
}
|
|
}
|
|
|
|
protected void btnLoadOfac_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
try
|
|
{
|
|
var dbResult = new DbResult();
|
|
var sdnFilePath = GetStatic.GetAppRoot() + "doc\\OFAC\\SDN.pip";
|
|
var altFilePath = GetStatic.GetAppRoot() + "doc\\OFAC\\ALT.pip";
|
|
var addFilePath = GetStatic.GetAppRoot() + "doc\\OFAC\\ADD.pip";
|
|
|
|
dbResult = obj.Update(GetStatic.GetUser(), sdnFilePath, altFilePath, addFilePath);
|
|
|
|
ManageMessage(dbResult);
|
|
DivMessage.InnerHtml = dbResult.Msg;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
GetStatic.AlertMessage(this, $"Technical Error: { GetStatic.LogError(ex).Id}");
|
|
}
|
|
}
|
|
|
|
protected void Button1_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
var dbResult = new DbResult();
|
|
|
|
//import from inficare DB
|
|
dbResult = obj.UpdateOther(GetStatic.GetUser());
|
|
|
|
ManageMessage(dbResult);
|
|
DivMessage.InnerHtml = dbResult.Msg;
|
|
}
|
|
|
|
protected void btnFileUpload_Click(object sender, EventArgs e)
|
|
{
|
|
//string xmlContent = GetUNSCRData("sample");
|
|
//var dbResult = obj.UpdateAQList(GetStatic.GetUser(), xmlContent, "sample.xml", "UNSCR");
|
|
//ManageMessage(dbResult);
|
|
//DivMessage.InnerHtml = dbResult.Msg;
|
|
|
|
//LoadAQLogGrid();
|
|
|
|
try
|
|
{
|
|
|
|
if (fileUpload.FileContent.Length > 0)
|
|
{
|
|
if (fileUpload.FileName.ToLower().Contains(".xml"))
|
|
{
|
|
string fileName = fileUpload.FileName;
|
|
string xmlContent = GetUNSCRData(fileName);
|
|
var dbResult = obj.UpdateAQList(GetStatic.GetUser(), xmlContent, fileName, "UNSCR");
|
|
ManageMessage(dbResult);
|
|
DivMessage.InnerHtml = dbResult.Msg;
|
|
|
|
LoadAQLogGrid();
|
|
}
|
|
else
|
|
{
|
|
|
|
GetStatic.AlertMessage(this, "Invalid file format uploaded");
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
GetStatic.AlertMessage(this, $"Technical Error: { GetStatic.LogError(ex).Id}");
|
|
}
|
|
}
|
|
}
|
|
}
|