private void InsertSaveParam(IdebCorpSearchVar item, string Idebid, DbConnection conn) { NameValueCollection Keys = new NameValueCollection(); NameValueCollection Field = new NameValueCollection(); staticFramework.saveNVC(Keys, "Idebid", Idebid); staticFramework.saveNVC(Field, "NamaBadanUsaha", item.NamaBadanUsaha); staticFramework.saveNVC(Field, "Npwp", item.Npwp); staticFramework.saveNVC(Field, "TempatPendirian", item.TempatPendirian); staticFramework.saveNVC(Field, "TanggalAktaPendirian", DatetimeToString(item.TanggalAktaPendirian)); staticFramework.saveNVC(Field, "NomorAktaPendirian", item.NomorAktaPendirian); staticFramework.save(Field, Keys, "IdebCorpSearchVar", conn); }
public Dictionary <string, object> ImportIdebText(string filePath) { string connString = ConfigurationManager.ConnectionStrings["DBSCBSConnectionString"].ConnectionString; Dictionary <string, object> result = new Dictionary <string, object>(); int _row = 0; result["Message"] = "Success"; result["LogSummary"] = null; result["LogDetail"] = null; string _nFile_ = ""; string _aFailed = ""; string _aSuccess = ""; try { _timer_.Start(); FileInfo SLIKFilePath = new FileInfo(filePath); string detailLogFileName = Path.GetFileNameWithoutExtension(filePath) + "_detail.log"; string summLogFileName = Path.GetFileNameWithoutExtension(filePath) + "_summary.log"; result["LogDetail"] = new FileInfo(Path.GetFullPath(filePath) + detailLogFileName); result["LogSummary"] = new FileInfo(Path.GetFullPath(filePath) + summLogFileName); _nFile_ = Path.GetFileNameWithoutExtension(filePath); //MAPPING AND DESERIALIZE TABLE JObject jObj = JObject.Parse(File.ReadAllText(filePath)); JToken header = jObj["header"]; JToken perusahaan = jObj["perusahaan"]; JToken individual = jObj["individual"]; JToken type = null; if (perusahaan != null) { type = perusahaan; } else if (individual != null) { type = individual; } IdebHeader iHeader = JsonConvert.DeserializeObject <IdebHeader>(jObj["header"].ToString()); JToken fasilitas = type["fasilitas"]; if (type != null) { using (DbConnection conn = new DbConnection(connString)) { try { if (type.Equals(perusahaan)) { IdebCorpSearchVar icorpSearch = JsonConvert.DeserializeObject <IdebCorpSearchVar>(type["parameterPencarian"].ToString()); List <IdebCorpData> icorpDt = JsonConvert.DeserializeObject <List <IdebCorpData> >(type["dataPokokDebitur"].ToString()); List <IdebCorpGroup> icorpGrp = JsonConvert.DeserializeObject <List <IdebCorpGroup> >(type["kelompokPengurusPemilik"].ToString()); List <IdebSuratBerharga> iSrtBerharga = JsonConvert.DeserializeObject <List <IdebSuratBerharga> >(fasilitas["suratBerharga"].ToString()); InsertHeader(iHeader, conn); InsertSaveParam(icorpSearch, iHeader.KodeReferensiPengguna, conn); InsertCorpData(icorpDt, iHeader.KodeReferensiPengguna, conn); InsertCorpGroup(icorpGrp, iHeader.KodeReferensiPengguna, conn); //ini hanya sementara menunggu konfirmasi IfacID dapet dari mana InsertFac(iHeader.KodeReferensiPengguna, "1", conn); _row += 2 + icorpDt.Count + icorpGrp.Count; } else if (type.Equals(individual)) { IdebIndivSearchVar iDebInvdSearch = JsonConvert.DeserializeObject <IdebIndivSearchVar>(type["parameterPencarian"].ToString()); List <IdebIndivData> iDataInd = JsonConvert.DeserializeObject <List <IdebIndivData> >(type["dataPokokDebitur"].ToString()); InsertHeader(iHeader, conn); InsertSrcParamIdv(iDebInvdSearch, iHeader.KodeReferensiPengguna, conn); InsertDataIdv(iDataInd, iHeader.KodeReferensiPengguna, conn); //ini hanya sementara menunggu konfirmasi IfacID dapet dari mana InsertFac(iHeader.KodeReferensiPengguna, "1", conn); _row += 2 + iDataInd.Count; } //same pola IdebFacSummary ifacSumm = JsonConvert.DeserializeObject <IdebFacSummary>(type["ringkasanFasilitas"].ToString()); List <IdebKredit> iKredit = JsonConvert.DeserializeObject <List <IdebKredit> >(fasilitas["kredit"].ToString()); List <IdebLc> ilc = JsonConvert.DeserializeObject <List <IdebLc> >(fasilitas["lc"].ToString()); List <IdebBankGaransi> iBankGar = JsonConvert.DeserializeObject <List <IdebBankGaransi> >(fasilitas["bankGaransi"].ToString()); List <IdebFasilitasLainnya> iFasLain = JsonConvert.DeserializeObject <List <IdebFasilitasLainnya> >(fasilitas["fasilitasLainnya"].ToString()); InsertFacSummary(ifacSumm, iHeader.KodeReferensiPengguna, conn); InsertFacKredit(iKredit, 1, conn); InsertFacLc(ilc, 1, conn); InsertBankGar(iBankGar, 1, conn); InsertFacOthers(iFasLain, 1, conn); _row += 1 + iKredit.Count + ilc.Count + iBankGar.Count + iFasLain.Count; _aSuccess = "Success"; } catch (Exception ex) { result["Message"] = ex.Message; _aFailed = "Failed"; NameValueCollection Keys = new NameValueCollection(); NameValueCollection Fields = new NameValueCollection(); staticFramework.saveNVC(Keys, "BatchFileName", _nFile_); staticFramework.saveNVC(Fields, "LogType", "SLIKTYPE"); staticFramework.saveNVC(Fields, "LogMessage", ex); staticFramework.save(Fields, Keys, "DataImportLogDetail", conn); } } _timer_.Stop(); string _time_start_ = String.Format("{0:ddMMyyyyHHmm}", _timer_.StartAt.Value); string _time_end_ = String.Format("{0:ddMMyyyyHHmm}", _timer_.EndAt.Value); DateTime dta = DateTime.Now; string _time_ = String.Format("{0:ddMMyyyyHHmm}", dta); string sPath = AppDomain.CurrentDomain.BaseDirectory + "SLIK_FILE_" + _time_ + ".resp"; //string sPath = "~/App_Data/" + "SLIK_FILE_" + _time_ + ".txt"; StreamWriter SaveFile = new StreamWriter(sPath); SaveFile.WriteLine(_row + "|" + _aSuccess + "|" + _aFailed + "|" + _time_start_ + "|" + _time_end_); SaveFile.Close(); } } catch (Exception ex) { result["Message"] = ex.Message; using (DbConnection conn = new DbConnection(connString)) { NameValueCollection Keys = new NameValueCollection(); NameValueCollection Fields = new NameValueCollection(); staticFramework.saveNVC(Keys, "BatchFileName", _nFile_); staticFramework.saveNVC(Keys, "RowNumber", 5); staticFramework.saveNVC(Fields, "LogType", "SLIKTYPE"); staticFramework.saveNVC(Fields, "LogMessage", result["Message"].ToString()); staticFramework.save(Fields, Keys, "DataImportLogDetail", conn); } } return(result); }