/// <summary>
        /// Load your modules or register your services here!
        /// </summary>
        /// <param name="kernel">The kernel.</param>
        private void RegisterServices(IKernel kernel)
        {
            kernel.Bind <IPhonesService>().To <PhonesService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <IFiltersService>().To <FiltersService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <IUserService>().To <UserService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <IOrdersService>().To <OrderService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <IOrderItemService>().To <OrderItemService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <ICitiesService>().To <CitiesService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <IBrandService>().To <BrandService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <IScreenResolutionService>().To <ScreenResolutionService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <IOsService>().To <OsService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <IPhotoService>().To <PhotoService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <IRolesService>().To <RolesService>().InScope(cfg => HttpContext.Current);
            kernel.Bind <ICommentsService>().To <CommentsService>().InScope(cfg => HttpContext.Current);

            var config = AutoMapperConfiguration.Configure();
            var mapper = config.CreateMapper();

            kernel.Bind <IMapper>().ToConstant(mapper);


            BusinessModule businessModule = new BusinessModule("Data Source=localhost;Initial Catalog=Catalog;Integrated Security=True");

            businessModule.Initialize(kernel);
        }
Beispiel #2
0
        void Start()
        {
            Debuger.EnableLog = true;
            this.Log("Start Test");

            ModuleManager.Instance.SetDomain("Test");

            ModuleManager.Instance.CreateModule("ModuleA");
            ModuleManager.Instance.CreateModule <ModuleB>();

            ModuleC.Instance.DoSomething(false);
            ModuleC.Instance.ReleaseSomeModule("ModuleB");
            ModuleC.Instance.DoSomething(true);

            BusinessModule module = ModuleManager.Instance.GetModule("ModuleA");

            if (module != null)
            {
                module.Open("Hello");
                module.Close();
            }

            ModuleManager.Instance.Release();
            ModuleC.Instance.DoSomething(true);
        }
        public object StartPDF(Context cx)
        {
            foreach (DokumentHandlowy dokhan in dh)
            {
                return(new ReportResult
                {
                    Context = cx,
                    TemplateFileSource = AspxSource.Storage,
                    Format = ReportResultFormat.PDF,

                    TemplateFileName = @"C:\Users\jaroslaw.pitala\Source\Repos\enova\SonetaRaporty\Reports\handel\sprzedaz.aspx",

                    OutputHandler = (stream) =>
                    {
                        var attName = "FV_" + Date.Now.ToString("yyyyMMddHHmmss") + ".pdf";
                        var dirName = "C:\\wydruki\\";
                        // wymagany jest katalog w którym pdf zostanie zapisany, ścieżkę należy dostować do środowiska instalacji
                        var outFileName = System.IO.Path.Combine(dirName, attName);

                        using (var file = System.IO.File.Create(outFileName))
                        {
                            Soneta.Tools.CoreTools.StreamCopy(stream, file);
                            file.Flush();
                        }

                        using (Session s = cx.Login.CreateSession(false, false))
                        {
                            var zm = ZadaniaModule.GetInstance(s);
                            var crm = CRMModule.GetInstance(s);
                            var bm = BusinessModule.GetInstance(s);
                            using (ITransaction transakcja = s.Logout(true))
                            {
                                WiadomoscRobocza wr = new WiadomoscRobocza();
                                crm.WiadomosciEmail.AddRow(wr);
                                wr.Tresc.Add("Witam serdecznie,<br><br>W załączniku przesyłam fakturę numer " + dokhan.Numer + " Prosimy o terminową wpłatę");
                                if (zm.Config.Operatorzy.Aktualny.DomyslneKontoPocztowe != null)
                                {
                                    wr.KontoPocztowe = zm.Config.Operatorzy.Aktualny.DomyslneKontoPocztowe;
                                    wr.Tresc.Add(zm.Config.Operatorzy.Aktualny.Podpis);
                                }
                                Soneta.Business.Db.Attachment zal = new Soneta.Business.Db.Attachment(wr, AttachmentType.Attachments);
                                zal.Name = attName;

                                // stworzenie załącznika z wygenerowanego pliku pdf

                                bm.Attachments.AddRow(zal);
                                System.IO.FileStream strumien = new System.IO.FileStream(outFileName, System.IO.FileMode.Open);
                                zal.LoadFromStream(strumien);
                                zal.LoadIconFromFile(outFileName);

                                transakcja.CommitUI();
                                return null;
                                // return wr;
                            }
                        }
                    }
                });
            }
            return(null);
        }
        private object ZapiszPlik(Stream stream)
        {
            var kodKontrahenta = Dokument.Kontrahent.Kod;
            var numerFaktury   = String.Join("", Dokument.NumerPelnyZapisany.Split(Path.GetInvalidFileNameChars()));
            var timeStamp      = DateTime.Now.ToString("ddMMyyyyHHmmss");
            var rozszerzenie   = ".pdf";

            var nazwaPliku = $"{kodKontrahenta}_{numerFaktury}_{timeStamp}{rozszerzenie}";

            using (var session = context.Login.CreateSession(false, false))
            {
                using (var transaction = session.Logout(true))
                {
                    var kontrahent = CRMModule.GetInstance(session).Kontrahenci[Dokument.Kontrahent.Guid];
                    var zalacznik  = new Attachment(kontrahent, AttachmentType.Attachments)
                    {
                        Name = nazwaPliku
                    };

                    var bm = BusinessModule.GetInstance(session);
                    bm.Attachments.AddRow(zalacznik);
                    zalacznik.LoadFromStream(stream);


                    transaction.Commit();
                }
                session.Save();
            }

            return($"Dodano fakturę jako załącznik dla {Dokument.Kontrahent}");
        }
Beispiel #5
0
        private static ScheduleDefinition UtworzScheduleDefinition(Context context, Zadanie szablon)
        {
            var scheduleDefinition = new ScheduleDefinition();

            using (var session = context.Session.Login.CreateSession(false, true, "ScheduleDefinition"))
            {
                var coreModule     = CoreModule.GetInstance(session);
                var businessModule = BusinessModule.GetInstance(session);

                var taskDefinition = businessModule.TaskDefs.ByName["CfgNodes", "WysylkaMailiZWydrukiem"];

                using (var transaction = session.Logout(true))
                {
                    scheduleDefinition.Name           = $"Scheduler_{szablon.NumerPelny}";
                    scheduleDefinition.TaskDefinition = taskDefinition;

                    coreModule.ScheduleDefs.AddRow(scheduleDefinition);

                    transaction.CommitUI();
                }

                session.Save();
            }

            return(scheduleDefinition);
        }
        public void Inherit_BusinessModuleBase()
        {
            // Arrange
            var dbContextOptionsBuilder = new DbContextOptionsBuilder <DbContext>();

            // Act
            var businessModule = new BusinessModule(dbContextOptionsBuilder.Options, "dbo");

            // Assert
            Assert.IsAssignableFrom <BusinessModuleBase>(businessModule);
        }
Beispiel #7
0
        private static void KopiujZalaczniki(WiadomoscRobocza wiadomosc, FileStream stream)
        {
            var businessModule = BusinessModule.GetInstance(wiadomosc.Session);
            var zalacznik      = new Attachment(wiadomosc, AttachmentType.Attachments)
            {
                Name = "Raport.pdf"
            };

            businessModule.Attachments.AddRow(zalacznik);

            zalacznik.LoadFromStream(stream);
            zalacznik.LoadIconFromFile(stream.Name);
        }
Beispiel #8
0
        private void DodajZalacznik(Context cx, string nazwaPliku, Stream stream)
        {
            stream.Seek(0L, SeekOrigin.Begin);

            using (var session = cx.Login.CreateSession(false, false))
            {
                using (var transaction = session.Logout(true))
                {
                    var kontrahent = CRMModule.GetInstance(session).Kontrahenci[Dokument.Kontrahent.Guid];
                    var zalacznik  = new Attachment(kontrahent, AttachmentType.Attachments)
                    {
                        Name = nazwaPliku
                    };

                    var bm = BusinessModule.GetInstance(session);
                    bm.Attachments.AddRow(zalacznik);
                    zalacznik.LoadFromStream(stream);


                    transaction.Commit();
                }
                session.Save();
            }
        }
Beispiel #9
0
 public BusinessExportAttribute(Type ExportType, BusinessModule Module)
     : base(typeof(ILogic))
 {
     this.ExportType = ExportType;
     this.Module     = Module;
 }
 public NinjectControllerFactory(BusinessModule businessModule)
 {
     this.businessModule = businessModule;
 }
 public BusinessExportAttribute(Type ExportType, BusinessModule Module)
     : base(typeof (ILogic))
 {
     this.ExportType = ExportType;
     this.Module = Module;
 }
Beispiel #12
0
        public Login Login(string user, string password)
        {
            lock (this)
            {
                try
                {
                    Login login = new Login(this, user, password);
                    using (Session session = login.CreateSessionInternal(false, false, true, "Login.Operator"))
                    {
                        BusinessModule instance = BusinessModule.GetInstance(session);

                        /*
                         * if (instance.SystemInfos[SysInfoIdentifier.ConversionInProgress] == "True")
                         * {
                         *  throw new LoginException("Baza danych podczas konwersji lub uszkodzona nieudaną konwersją.");
                         * }
                         */
                        Operator row = instance.Operators.ByName[user];
                        if ((row == null) || (bool)row.Locked)
                        {
                            throw new OperatorNotFoundException(user, this);
                        }
                        if (row.Trusting(password) && !row.IsValidPassword(password))
                        {
                            /*
                             * try
                             * {
                             *  if (row.Module.Config.AccountPolicies.AccountLockoutThreshold > 0)
                             *  {
                             *      this.modifyOperator(row, delegate(Operator op2)
                             *      {
                             *          op2.Extension.InvalidLogin();
                             *      });
                             *  }
                             * }
                             * catch (InvalidDatabaseStructureException)
                             * {
                             * }
                             * catch (ConfigKeyNotFoundException)
                             * {
                             * }
                             */
                            throw new IncorrectPasswordException(user, row.PromptPassword, row.Guid == Operators.Administrator, this);
                        }
                        //this.checkDB(instance, row.ID);
                        //login.IsEntitleAvailable = instance.Config.Authorization.UseEntitle && (EnovaLicence.KolorLicencji(this, instance.SystemInfos[SysInfoIdentifier.NumerSeryjny]) == Kolor.Platynowy);
                        login.Operator = row;
                        login.checkRole(session);
                        bool singleOperatorLogin = false;
                        bool flag2 = BusApplication.Instance.SetLogin(login, session, singleOperatorLogin);

                        /*
                         * if (singleOperatorLogin && flag2)
                         * {
                         *  throw new RowException(row, "Operator {0} jest już zalogowany do programu. Nie można logować się jednocześnie na dw\x00f3ch stanowiskach.", new object[] { row });
                         * }
                         * if (row.IsAccountLocked || (row.Extension.InvalidLoginCounter > 0))
                         * {
                         *  this.modifyOperator(row, delegate(Operator op2)
                         *  {
                         *      op2.IsAccountLocked = false;
                         *  });
                         * }
                         * instance.Config.ChangeInfos.LoadInfos();
                         * string machineName = Environment.MachineName;
                         * if (BusApplication.Instance.ApplicationName != null)
                         * {
                         *  machineName = BusApplication.Instance.ApplicationName + " - " + machineName;
                         * }
                         * session.ChangeInfos.Add(null, ChangeInfoType.Login, machineName);
                         */
                        session.Save();
                        login.isLoginEntry = true;
                    }
                    return(login);
                }
                catch
                {
                    return(null);
                }
            }
        }