示例#1
0
        public MemBogfoeringsKlader konter_paypal_betalinger_fra_rsmembership(puls3060_dkEntities p_dbPuls3060_dk)
        {
            DateTime Regnskabsaar_Startdato = new DateTime(DateTime.Now.Year, 1, 1);
            DateTime Regnskabsaar_Slutdato  = new DateTime(DateTime.Now.Year, 12, 31);

            return(konter_paypal_betalinger_fra_rsmembership(p_dbPuls3060_dk, Regnskabsaar_Startdato, Regnskabsaar_Slutdato));
        }
示例#2
0
        public int OpdateringAfSlettet_rsmembership_transaction(int p_trans_id, dbData3060DataContext p_dbData3060)
        {
            int out_trans_id = p_trans_id;
            puls3060_dkEntities dbPuls3060_dk = new puls3060_dkEntities();

            var qry1 = from s1 in dbPuls3060_dk.ecpwt_rsmembership_transactions where s1.id == p_trans_id select s1;
            int c1   = qry1.Count();

            if (c1 == 0)
            {
                var qry2 = from s2 in p_dbData3060.tblrsmembership_transactions where s2.trans_id == p_trans_id select s2;
                try
                {
                    tblrsmembership_transaction t2 = qry2.First();
                    int?subscriber_id = t2.subscriber_id;
                    var qry3          = from s3 in dbPuls3060_dk.ecpwt_rsmembership_membership_subscribers where s3.id == subscriber_id select s3;
                    int c3            = qry3.Count();
                    if (c3 == 1)
                    {
                        ecpwt_rsmembership_transactions t1 = new ecpwt_rsmembership_transactions
                        {
                            user_id      = t2.user_id,
                            user_email   = t2.user_email,
                            user_data    = t2.user_data,
                            type         = t2.type,
                            @params      = t2.@params,
                            date         = t2.date,
                            ip           = t2.ip,
                            price        = t2.price,
                            coupon       = t2.coupon,
                            currency     = t2.currency,
                            hash         = t2.hash,
                            custom       = t2.custom,
                            gateway      = t2.gateway,
                            status       = t2.status,
                            response_log = t2.response_log
                        };
                        dbPuls3060_dk.ecpwt_rsmembership_transactions.Add(t1);
                        dbPuls3060_dk.SaveChanges();

                        ecpwt_rsmembership_transactions rec_trans = (from t in dbPuls3060_dk.ecpwt_rsmembership_transactions where t.custom == t2.custom select t).First();
                        out_trans_id = rec_trans.id;
                    }
                    else
                    {
                        out_trans_id = 0;
                    }
                }
                catch
                {
                    out_trans_id = 0;
                }
            }
            return(out_trans_id);
        }
示例#3
0
        public void opdaterKanSlettes()
        {
            puls3060_dkEntities jdb = new puls3060_dkEntities();

            jdb.Database.ExecuteSqlCommand(@"
INSERT INTO ecpwt_user_usergroup_map  (user_id, group_id) 
SELECT u.id, 17   
FROM ecpwt_users u 
JOIN ecpwt_rsmembership_membership_subscribers m ON u.id = m.user_id 
JOIN ecpwt_rsmembership_transactions t ON m.last_transaction_id = t.id 
JOIN ecpwt_rsmembership_subscribers a ON m.user_id = a.user_id 
WHERE 17 NOT IN (SELECT ugm.group_id FROM ecpwt_user_usergroup_map ugm WHERE ugm.user_id = u.id) 
  AND (m.membership_id = 6 
  AND (m.status = 2 AND m.membership_end < DATE_ADD(  NOW(), INTERVAL -30 DAY ))
  OR  (m.status = 3 AND m.membership_end < NOW() ) );
            ");
        }
示例#4
0
        public void PbsAutoKontingent(dbData3060DataContext m_dbData3060)
        {
            //DateTime Nu = new DateTime(2016, 7, 10);
            DateTime Nu  = DateTime.Now;
            int      Dag = Nu.Day;

            if (Dag > 12)
            {
                return;
            }

            DateTime Nu_plus_1 = Nu.AddMonths(1);
            DateTime p_DatoKontingentForfald   = new DateTime(Nu_plus_1.Year, Nu_plus_1.Month, 1);
            DateTime p_DatoBetaltKontingentTil = Nu.AddMonths(2);

            puls3060_dkEntities jdbd       = new puls3060_dkEntities();
            clsPbs601           objPbs601d = new clsPbs601();
            List <string[]>     items      = objPbs601d.RSMembership_KontingentForslag(p_DatoBetaltKontingentTil, m_dbData3060);
            int AntalForslag = items.Count();

            if (AntalForslag > 0)
            {
                Program.Log(string.Format("Medlem3060Service {0} begin", "Send Kontingent File til PBS"));
                Memkontingentforslag memKontingentforslag = new Memkontingentforslag();
                foreach (string[] item in items)
                {
                    string   user_id     = item[0];
                    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;

                    recKontingentforslag rec_Kontingentforslag = new recKontingentforslag
                    {
                        betalingsdato = clsOverfoersel.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,
                    };
                    memKontingentforslag.Add(rec_Kontingentforslag);
                }

                Tuple <int, int> tresulte = objPbs601d.rsmembeshhip_kontingent_fakturer_bs1(m_dbData3060, jdbd, memKontingentforslag);
                int AntalFakturaer        = tresulte.Item1;
                int lobnr = tresulte.Item2;
                if ((AntalFakturaer > 0))
                {
                    objPbs601d.faktura_og_rykker_601_action(m_dbData3060, lobnr, fakType.fdrsmembership);
                    clsSFTP objSFTPd = new clsSFTP(m_dbData3060);
                    objSFTPd.WriteTilSFtp(m_dbData3060, lobnr);
                    objSFTPd.DisconnectSFtp();
                    objSFTPd = null;
                }
                Program.Log(string.Format("Medlem3060Service {0} end", "Send Kontingent File til PBS"));
            }
        }
示例#5
0
        public MemBogfoeringsKlader konter_paypal_betalinger_fra_rsmembership(puls3060_dkEntities p_dbPuls3060_dk, DateTime Regnskabsaar_Startdato, DateTime Regnskabsaar_Slutdato)
        {
            clsPayPal            objPayPal = new clsPayPal();
            MemBogfoeringsKlader klader    = new MemBogfoeringsKlader();
            int BS1_SidsteNr     = 0;
            var qry_rsmembership = from s in p_dbPuls3060_dk.ecpwt_rsmembership_membership_subscribers
                                   where s.membership_id == 6
                                   join tl in p_dbPuls3060_dk.ecpwt_rsmembership_transactions on s.last_transaction_id equals tl.id
                                   where tl.gateway == "PayPal"
                                   join p in p_dbPuls3060_dk.tblpaypalpayments on tl.hash equals p.paypal_transactions_id into p1
                                   from p in p1.DefaultIfEmpty()
                                   where p.bogfoert == null || p.bogfoert == false
                                   join u in p_dbPuls3060_dk.ecpwt_users on s.user_id equals u.id
                                   select new
            {
                paypal_transaction_id = tl.hash,
                Navn = u.name,
                s.membership_id,
                s.membership_start,
                s.membership_end,
            };
            var arr_rsmembership = qry_rsmembership.ToArray();

            if (arr_rsmembership.Count() > 0)
            {
                foreach (var rsmembership in arr_rsmembership)
                {
                    if (rsmembership.paypal_transaction_id.Length == 0)
                    {
                        continue;
                    }

                    PaymentTransactionSearchResultType paypal_trans = objPayPal.getPayPalTransaction(rsmembership.paypal_transaction_id);

                    if (paypal_trans != null)
                    {
                        decimal   Belob    = decimal.Parse(paypal_trans.GrossAmount.Value.Replace(".", ","));
                        decimal[] arrBeløb = clsPbs602.fordeling(Belob, rsmembership.membership_start, rsmembership.membership_end, Regnskabsaar_Startdato, Regnskabsaar_Slutdato);
                        string    stdate   = string.Format(" {0}-{1}", rsmembership.membership_start.ToString("d.M.yyyy"), rsmembership.membership_end.ToString("d.M.yyyy"));

                        int wBilag = ++BS1_SidsteNr;
                        recBogfoeringsKlader recklade = new recBogfoeringsKlader
                        {
                            Dato             = paypal_trans.Timestamp,
                            Bilag            = wBilag,
                            Tekst            = ("Paypal: " + rsmembership.paypal_transaction_id).PadRight(40, ' ').Substring(0, 40),
                            Afstemningskonto = "PayPal",
                            Belob            = Belob,
                            Kontonr          = null,
                            Faknr            = null,
                            Sagnr            = null
                        };
                        klader.Add(recklade);

                        if (arrBeløb[0] > 0)
                        {
                            recklade = new recBogfoeringsKlader
                            {
                                Dato             = paypal_trans.Timestamp,
                                Bilag            = wBilag,
                                Tekst            = (rsmembership.Navn + stdate).PadRight(40, ' ').Substring(0, 40),
                                Afstemningskonto = "",
                                Belob            = arrBeløb[0],
                                Kontonr          = 1800,
                                Faknr            = null,
                                Sagnr            = null
                            };
                            klader.Add(recklade);
                        }

                        if (arrBeløb[1] > 0)
                        {
                            recklade = new recBogfoeringsKlader
                            {
                                Dato             = paypal_trans.Timestamp,
                                Bilag            = wBilag,
                                Tekst            = (rsmembership.Navn + stdate).PadRight(40, ' ').Substring(0, 40),
                                Afstemningskonto = "",
                                Belob            = arrBeløb[1],
                                Kontonr          = 64200,
                                Faknr            = null,
                                Sagnr            = null
                            };
                            klader.Add(recklade);
                        }

                        recklade = new recBogfoeringsKlader
                        {
                            Dato             = paypal_trans.Timestamp,
                            Bilag            = wBilag,
                            Tekst            = ("PayPal Gebyr").PadRight(40, ' ').Substring(0, 40),
                            Afstemningskonto = "PayPal",
                            Belob            = decimal.Parse(paypal_trans.FeeAmount.Value.Replace(".", ",")),
                            Kontonr          = 9950,
                            Faknr            = null,
                            Sagnr            = null
                        };
                        klader.Add(recklade);

                        tblpaypalpayment rec_paypalpayments = (from p in p_dbPuls3060_dk.tblpaypalpayments where p.paypal_transactions_id == rsmembership.paypal_transaction_id select p).FirstOrDefault();
                        if (rec_paypalpayments == null)
                        {
                            rec_paypalpayments = new tblpaypalpayment
                            {
                                paypal_transactions_id = rsmembership.paypal_transaction_id,
                                bogfoert = true
                            };
                            p_dbPuls3060_dk.tblpaypalpayments.Add(rec_paypalpayments);
                        }
                        else
                        {
                            rec_paypalpayments.bogfoert = true;
                        }
                        p_dbPuls3060_dk.SaveChanges();
                    }
                }
            }



            return(klader);
        }
示例#6
0
        public int betalinger_til_rsmembership(dbData3060DataContext p_dbData3060, puls3060_dkEntities p_dbPuls3060_dk)
        {
            int saveBetid = 0;
            var rsmbrshp  = from bl in p_dbData3060.tblbetlins
                            where (bl.pbstranskode == "0236" || bl.pbstranskode == "0297")
                            join b in p_dbData3060.tblbets on bl.betid equals b.id
                            where b.rsmembership == null || b.rsmembership == false
                            join p in p_dbData3060.tblfrapbs on b.frapbsid equals p.id
                            orderby p.id, b.id, bl.id
                select new
            {
                Frapbsid = p.id,
                p.leverancespecifikation,
                Betid    = b.id,
                Betlinid = bl.id,
                bl.betalingsdato,
                bl.indbetalingsdato,
                bl.indbetalingsbelob,
                bl.faknr,
                bl.debitorkonto
            };

            int AntalBetalinger = rsmbrshp.Count();

            Program.Log(string.Format("betalinger_til_rsmembership - AntalBetalinger {0}", AntalBetalinger));
            if (rsmbrshp.Count() > 0)
            {
                clsPbsHelper objPbsHelperd = new clsPbsHelper();
                foreach (var b in rsmbrshp)
                {
                    if (saveBetid != b.Betid) // ny gruppe
                    {
                        saveBetid = b.Betid;
                        var rec_bet = (from ub in p_dbData3060.tblbets where ub.id == b.Betid select ub).First();
                        rec_bet.rsmembership = true;
                    }

                    // Do somthing here
                    var qry = from f in p_dbData3060.tblfaks
                              where f.faknr == b.faknr
                              join m in p_dbData3060.tblrsmembership_transactions on f.id equals m.id
                              select new tblmembershippayment
                    {
                        rsmembership_transactions_id = m.trans_id,
                    };
                    if (qry.Count() == 1)
                    {
                        tblmembershippayment rec_membershippayment = qry.First();
                        //*********************************************************
                        int new_rsmembership_transactions_id = objPbsHelperd.OpdateringAfSlettet_rsmembership_transaction(rec_membershippayment.rsmembership_transactions_id, p_dbData3060);
                        Program.Log(string.Format("betalinger_til_rsmembership - transactions_id {0} --> {1}", rec_membershippayment.rsmembership_transactions_id, p_dbData3060, new_rsmembership_transactions_id));
                        rec_membershippayment.rsmembership_transactions_id = new_rsmembership_transactions_id;
                        //*********************************************************
                        p_dbPuls3060_dk.tblmembershippayments.Add(rec_membershippayment);
                        p_dbPuls3060_dk.SaveChanges();
                        Program.Log(string.Format("betalinger_til_rsmembership - faknr {0} betalt", b.faknr));
                    }
                }
                p_dbData3060.SubmitChanges();
            }
            return(AntalBetalinger);
        }