public void PbsAutoKontingent(dbData3060DataContext m_dbData3060, CrudAPI api) { //DateTime Nu = new DateTime(2018, 8, 13); //<-------- DEBUG DateTime Nu = DateTime.Now; int Dag = Nu.Day; if (Dag > 13) { return; } DateTime Nu_plus_1 = Nu.AddMonths(1); DateTime p_DatoKontingentForfald = new DateTime(Nu_plus_1.Year, Nu_plus_1.Month, 1); DateTime Nu_plus_2 = Nu.AddMonths(2); DateTime p_DatoBetaltKontingentTil = new DateTime(Nu_plus_2.Year, Nu_plus_2.Month, 12); clsPbs601 objPbs601d = new clsPbs601(); List <string[]> items = objPbs601d.UniConta_KontingentForslag(p_DatoBetaltKontingentTil, m_dbData3060, api); int AntalForslag = items.Count(); if (AntalForslag > 0) { Console.WriteLine(string.Format("Medlem3060Service {0} begin", "Send Kontingent File til PBS")); Memkontingentforslag memKontingentforslag = new Memkontingentforslag(); foreach (string[] item in items) { string user_id = item[0]; string name = item[1]; DateTime fradato = DateTime.Parse(item[4]); double advisbelob = double.Parse(item[5]); DateTime tildato = DateTime.Parse(item[6]); bool indmeldelse = (item[7] == "J") ? true : false; bool tilmeldtpbs = (item[8] == "J") ? true : false; int memberid = (!string.IsNullOrEmpty(item[10])) ? int.Parse(item[10]) : m_dbData3060.nextval_v2("memberid"); recKontingentforslag rec_Kontingentforslag = new recKontingentforslag { betalingsdato = clsHelper.bankdageplus(p_DatoKontingentForfald, 0), bsh = false, user_id = int.Parse(user_id), membership_id = 6, advisbelob = (decimal)advisbelob, fradato = fradato, tildato = tildato, indmeldelse = indmeldelse, tilmeldtpbs = tilmeldtpbs, memberid = memberid, name = name }; memKontingentforslag.Add(rec_Kontingentforslag); } Tuple <int, int> tresulte = objPbs601d.UniConta_kontingent_fakturer_bs1(m_dbData3060, memKontingentforslag, pbsType.betalingsservice); int AntalFakturaer = tresulte.Item1; int lobnr = tresulte.Item2; if ((AntalFakturaer > 0)) { //pbsType.betalingsservice objPbs601d.faktura_og_rykker_601_action_lobnr(m_dbData3060, lobnr, api); clsSFTP objSFTPd = new clsSFTP(m_dbData3060); objSFTPd.WriteTilSFtp(m_dbData3060, lobnr); objSFTPd.DisconnectSFtp(); objSFTPd = null; } tresulte = objPbs601d.UniConta_kontingent_fakturer_bs1(m_dbData3060, memKontingentforslag, pbsType.indbetalingskort); AntalFakturaer = tresulte.Item1; lobnr = tresulte.Item2; if ((AntalFakturaer > 0)) { //pbsType.indbetalingskort objPbs601d.faktura_og_rykker_601_action_lobnr(m_dbData3060, lobnr, api); clsSFTP objSFTPd = new clsSFTP(m_dbData3060); objSFTPd.WriteTilSFtp(m_dbData3060, lobnr); objSFTPd.DisconnectSFtp(); objSFTPd = null; } Console.WriteLine(string.Format("Medlem3060Service {0} end", "Send Kontingent File til PBS")); } }
//************************************************************************************************************* //************************************************************************************************************* private void JobWorker(string jobname) { try { if (Enum.IsDefined(typeof(enumTask), jobname)) { Console.WriteLine(string.Format("Medlem3060Service {0} begin", jobname)); dbData3060DataContext m_dbData3060 = new dbData3060DataContext(); enumTask job = StringToEnum <enumTask>(jobname); switch (job) { case enumTask.ReceiveFilesFromPBS: CrudAPI api = UCInitializer.GetBaseAPI; clsSFTP objSFTP = new clsSFTP(m_dbData3060); int AntalImportFiler = objSFTP.ReadFraSFtp(m_dbData3060); //Læs direkte SFTP objSFTP.DisconnectSFtp(); objSFTP = null; clsPbs602 objPbs602 = new clsPbs602(); int Antal602Filer = objPbs602.betalinger_fra_pbs(m_dbData3060); //if (Antal602Filer > 0) // <<---------------------------- { Console.WriteLine(string.Format("Medlem3060Service {0} begin", "Betalinger til RSMembership")); objPbs602.betalinger_opdate_uniconta(m_dbData3060, api); Console.WriteLine(string.Format("Medlem3060Service {0} end", "Betalinger til RSMembership")); clsUniconta objSumma = new clsUniconta(m_dbData3060, api); int AntalBetalinger = objSumma.BogforIndBetalinger(); } objPbs602 = null; clsPbs603 objPbs603 = new clsPbs603(); int Antal603Filer = objPbs603.aftaleoplysninger_fra_pbs(m_dbData3060); objPbs603 = null; clsPbs686 objPbs686 = new clsPbs686(); int Antal686Filer = objPbs686.aftaleoplysninger_fra_pbs(m_dbData3060); objPbs686 = null; break; case enumTask.SendEmailAdvis: clsPbs601 objPbs601a = new clsPbs601(); CrudAPI aapi = UCInitializer.GetBaseAPI; Tuple <int, int> tresult = objPbs601a.advis_auto(m_dbData3060); int AntalAdvis = tresult.Item1; int lobnra = tresult.Item2; if ((AntalAdvis > 0)) { objPbs601a.advis_email_lobnr(m_dbData3060, lobnra, aapi); } objPbs601a = null; break; case enumTask.ProcessType602Files: break; case enumTask.ProcessType603Files: break; case enumTask.SendKontingentFileToPBS: CrudAPI dapi = UCInitializer.GetBaseAPI; clsPbsHelper objPbsHelperd = new clsPbsHelper(); objPbsHelperd.PbsAutoKontingent(m_dbData3060, dapi); objPbsHelperd = null; break; case enumTask.LoadSchedule: //Schedule(); break; case enumTask.KontingentNyeMedlemmer: CrudAPI capi = UCInitializer.GetBaseAPI; clsPbs601 objPbs601c = new clsPbs601(); Tuple <int, int> tresultc = objPbs601c.pending_rsform_indmeldelser(m_dbData3060, capi); int AntalKontingent = tresultc.Item1; int lobnrc = tresultc.Item2; if ((AntalKontingent > 0)) { //pbsType.indbetalingskort objPbs601c.faktura_og_rykker_601_action_lobnr(m_dbData3060, lobnrc, capi); clsSFTP objSFTPc = new clsSFTP(m_dbData3060); objSFTPc.WriteTilSFtp(m_dbData3060, lobnrc); objSFTPc.DisconnectSFtp(); objSFTPc = null; Tuple <int, int> tresultd = objPbs601c.advis_auto_lobnr(m_dbData3060, lobnrc); int AntalAdvisd = tresultd.Item1; int lobnrd = tresultd.Item2; if ((AntalAdvisd > 0)) { objPbs601c.advis_email_lobnr(m_dbData3060, lobnrd, capi); } objPbs601c = null; } break; case enumTask.SendEmailRykker: clsPbs601 objPbs601b = new clsPbs601(); CrudAPI bapi = UCInitializer.GetBaseAPI; Tuple <int, int> tresultb = objPbs601b.rykker_auto(m_dbData3060, bapi); int AntalRykker = tresultb.Item1; int lobnrb = tresultb.Item2; if ((AntalRykker > 0)) { objPbs601b.rykker_email_lobnr(m_dbData3060, lobnrb, bapi); } objPbs601b = null; break; case enumTask.UpdateMedlemStatus: break; case enumTask.SendEmailKviteringer: clsPbs601 objPbs601d = new clsPbs601(); CrudAPI apif = UCInitializer.GetBaseAPI; Tuple <int, int> tresultf = objPbs601d.kvitering_auto(m_dbData3060); int AntalKvit = tresultf.Item1; int lobnrf = tresultf.Item2; if ((AntalKvit > 0)) { objPbs601d.kvitering_email_lobnr(m_dbData3060, lobnrf, apif); } objPbs601d = null; break; case enumTask.ImportEmailBilag: CrudAPI apig = UCInitializer.GetBaseAPI; clsUnicontaHelp objUnicontaHelp = new clsUnicontaHelp(apig); objUnicontaHelp.ImportEmailBilag(); objUnicontaHelp = null; break; default: break; } } Console.WriteLine(string.Format("Medlem3060Service {0} end", jobname)); } catch (Exception e) { Console.WriteLine(string.Format("Medlem3060Service JobWorker() for {0} failed with message: {1}", jobname, e.Message)); } }