コード例 #1
0
        //secur#6
        protected override void CreateDefaultObjectSpaceProvider(CreateCustomObjectSpaceProviderEventArgs args)
        {
            IObjectSpaceProvider provider;

            if (dxTestSolution.Module.dxTestSolutionModule.UseInMemoryStore)
            {
                provider = new XPObjectSpaceProvider(InMemoryDataStoreProvider.ConnectionString, null, false);
            }
            else
            {
                provider = new XPObjectSpaceProvider(XPObjectSpaceProvider.GetDataStoreProvider(args.ConnectionString, args.Connection, true), false);
            }
            //secur#9
            args.ObjectSpaceProviders.Add(provider);
            args.ObjectSpaceProviders.Add(new NonPersistentObjectSpaceProvider(TypesInfo, null));
        }
コード例 #2
0
        private void Initialize(IEnumerable <ModuleBase> modules, IEnumerable <Type> domainComponents)
        {
            ModuleList moduleList = new ModuleList();

            foreach (ModuleBase module in modules)
            {
                moduleList.Add(module);
            }
            objectSpaceProvider = new XPObjectSpaceProvider(new MemoryDataStoreProvider(), true);
            ExpressApplicationSetupParameters parameters = new ExpressApplicationSetupParameters("test app",
                                                                                                 objectSpaceProvider,
                                                                                                 new ControllersManager(),
                                                                                                 moduleList);

            parameters.DomainComponents = domainComponents != null ? domainComponents : Type.EmptyTypes;
            Setup(parameters);
        }
コード例 #3
0
        public static void WczytajKursy(List <Notowanie> res)
        {
            if (res != null)
            {
                using (XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(AppSettings.ConnectionString, null))
                {
                    using (IObjectSpace directObjectSpace = directProvider.CreateObjectSpace())
                    {
                        XafTypesInfo.Instance.RegisterEntity(typeof(KursWaluty));
                        XafTypesInfo.Instance.RegisterEntity(typeof(Waluta));

                        WczytajKursy(directObjectSpace, res);
                        directObjectSpace.CommitChanges();
                    }
                }
            }
        }
コード例 #4
0
        public HttpResponseMessage Activity_Sup()

        {
            try
            {
                string ObjectTypeOid = "a29d77a9-4bcb-4774-9744-ff97a373353e";

                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(Activity));
                XPObjectSpaceProvider        directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace                 ObjectSpace    = directProvider.CreateObjectSpace();
                List <activitySub_Model>     list           = new List <activitySub_Model>();
                List <activityDetails_Model> detail         = new List <activityDetails_Model>();
                IList <Activity>             collection     = ObjectSpace.GetObjects <Activity>(CriteriaOperator.Parse("GCRecord is null and IsActive = 1 and MasterActivity = '" + ObjectTypeOid + "' ", null));
                {
                    if (collection.Count > 0)

                    {
                        foreach (Activity row in collection)
                        {
                            activitySub_Model Item = new activitySub_Model();
                            Item.SubActivityLevelOid  = row.Oid.ToString();
                            Item.SubActivityLevelName = row.ActivityName;

                            list.Add(Item);
                        }
                    }
                    else
                    {          //invalid
                        UserError err = new UserError();
                        err.status  = "false";
                        err.code    = "0";
                        err.message = "กรุณาใส่ข้อมูลให้เรียบร้อย";
                        return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
                    }
                    return(Request.CreateResponse(HttpStatusCode.OK, list));
                }
            }
            catch (Exception ex)
            {
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
コード例 #5
0
        public byte[] PrintReports(string ReportName, string CompanyId)
        {
            using (XPObjectSpaceProvider objectSpaceProvider = CreateObjectSpaceProvider(CompanyId))
            {
                IObjectSpace objectSpace = objectSpaceProvider.CreateObjectSpace();


                //ReportData reportData = objectSpace.FindObject<ReportData>(new BinaryOperator("Name", "Invoice"));
                //ReportData reportData = objectSpace.FindObject<ReportData>(new BinaryOperator("DisplayName", ReportName));

                ReportDataV2 reportData = objectSpace.FindObject <ReportDataV2>(new BinaryOperator("DisplayName", ReportName));
                //ReportDataV2 reportData = objectSpace.GetObjectByKey<ReportDataV2>(Guid.Parse("9D1BD93A-5E61-4193-A8FF-190916AFF298"));


                return(ExportReport(reportData, objectSpaceProvider, string.Empty, objectSpace));
            }
        }
コード例 #6
0
        public IHttpActionResult insertsdemo_Webapi()
        {
            string UserName = "";

            XPObjectSpaceProvider osProvider  = new XPObjectSpaceProvider(scc, null);
            IObjectSpace          objectSpace = osProvider.CreateObjectSpace();
            UserInfo ObjInUser;

            XafTypesInfo.Instance.RegisterEntity(typeof(UserInfo));


            ObjInUser          = objectSpace.CreateObject <UserInfo>();
            ObjInUser.UserName = UserName;

            objectSpace.CommitChanges();
            return(Ok(ObjInUser));
        }
コード例 #7
0
        void application_CreateCustomObjectSpaceProvider(object sender, CreateCustomObjectSpaceProviderEventArgs e)
        {
            XafApplication application = (XafApplication)sender;

            if (objectSpaceProvider2 == null)
            {
                XpoTypeInfoSource typeInfoSource2 = new XpoTypeInfoSource((TypesInfo)application.TypesInfo,
                                                                          typeof(PersistentClass2), typeof(ModuleInfo2)
                                                                          );
                objectSpaceProvider2 = new XPObjectSpaceProvider(
                    new ConnectionStringDataStoreProvider(ConfigurationManager.ConnectionStrings["ConnectionStringDatabase2"].ConnectionString),
                    application.TypesInfo,
                    typeInfoSource2, true
                    );
            }
            e.ObjectSpaceProviders.Add(objectSpaceProvider2);
        }
コード例 #8
0
 public IHttpActionResult SupplierProduct()
 {
     try
     {
         XpoTypesInfoHelper.GetXpoTypeInfoSource();
         XafTypesInfo.Instance.RegisterEntity(typeof(SupplierProduct));
         XPObjectSpaceProvider        directProvider = new XPObjectSpaceProvider(scc, null);
         IObjectSpace                 ObjectSpace    = directProvider.CreateObjectSpace();
         List <SupplierProduct_Model> list           = new List <SupplierProduct_Model>();
         IList <SupplierProduct>      collection     = ObjectSpace.GetObjects <SupplierProduct>(CriteriaOperator.Parse("GCRecord is null "));
         if (collection.Count > 0)
         {
             foreach (SupplierProduct row in collection)
             {
                 SupplierProduct_Model supplier = new SupplierProduct_Model();
                 supplier.LotNumber          = row.LotNumber;
                 supplier.FinanceYearOid     = row.FinanceYearOid.YearName;
                 supplier.BudgetSourceOid    = row.BudgetSourceOid.BudgetName;
                 supplier.AnimalSeedOid      = row.AnimalSeedOid.SeedName;
                 supplier.AnimalSeedLevelOid = row.AnimalSeedLevelOid.SeedLevelName;
                 supplier.PlotHeaderOid      = row.PlotInfoOidOid.PlotName;
                 supplier.Weight             = Convert.ToDouble(row.Weight);
                 supplier.UnitOid            = row.UnitOid.UnitName;
                 supplier.LastCleansingDate  = row.LastCleansingDate;
                 supplier.Status             = row.Status.ToString();
                 supplier.Used           = row.Used;
                 supplier.ReferanceUsed  = row.ReferanceUsed;
                 supplier.PlotInfoOidOid = row.PlotInfoOidOid.PlotName;
                 supplier.FormType       = row.FormType.ToString();
                 supplier.SeedTypeOid    = row.SeedTypeOid.SeedTypeName;
                 list.Add(supplier);
             }
             return(Ok(list));
         }
         else
         {
             return(BadRequest("NoData"));
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
コード例 #9
0
        public HttpResponseMessage AnimalSupplieType_list()
        {
            try
            {
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(AnimalSupplieType));
                XPObjectSpaceProvider     directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace              ObjectSpace    = directProvider.CreateObjectSpace();
                IList <AnimalSupplieType> collection     = ObjectSpace.GetObjects <AnimalSupplieType>(CriteriaOperator.Parse(" GCRecord is null and IsActive = 1", null));

                if (collection.Count > 0)
                {
                    List <AnimalSupplieType_Model> list = new List <AnimalSupplieType_Model>();
                    foreach (AnimalSupplieType row in collection)
                    {
                        AnimalSupplieType_Model item = new AnimalSupplieType_Model();
                        item.AnimalSupplieTypeOid = row.Oid.ToString();
                        item.SupplietypeName      = row.SupplietypeName;
                        item.AnimalSupplieName    = row.AnimalSupplie.AnimalSupplieName;
                        item.SalePrice            = row.SalePrice;
                        list.Add(item);
                    }
                    return(Request.CreateResponse(HttpStatusCode.OK, list));
                }
                else
                {
                    UserError err = new UserError();
                    err.code = "-1"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ

                    err.message = "ไม่พบข้อมูล";
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
                }
            }
            catch (Exception ex)
            {                   //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ

                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
コード例 #10
0
        public void SetUp()
        {
            XPObjectSpaceProvider objectSpaceProvider =
                new XPObjectSpaceProvider(new MemoryDataStoreProvider());
            TestApplication application = new TestApplication();
            ModuleBase      testModule  = new ModuleBase();

            testModule.AdditionalExportedTypes.Add(typeof(MyPerson));
            application.Modules.Add(testModule);
            application.Modules.Add(new ConditionalAppearanceModule());
            application.Setup("TestApplication", objectSpaceProvider);
            IObjectSpace objectSpace = objectSpaceProvider.CreateObjectSpace();

            person     = objectSpace.CreateObject <MyPerson>();
            target     = new FakeAppearanceTarget();
            controller = new AppearanceController();
            detailView = application.CreateDetailView(objectSpace, person);
            controller.SetView(detailView);
        }
コード例 #11
0
        public void OneTimeSetUp()
        {
            XpoDefault.Session = null;

            connectionString = InMemoryDataStoreProvider.ConnectionString;
            directProvider   = new XPObjectSpaceProvider(connectionString, null);
            objectSpace      = directProvider.CreateObjectSpace();

            XafTypesInfo.Instance.RegisterEntity(typeof(Produkt));
            XafTypesInfo.Instance.RegisterEntity(typeof(PozycjaFaktury));
            XafTypesInfo.Instance.RegisterEntity(typeof(StawkaVAT));


            var gacie = objectSpace.CreateObject <Produkt>();

            gacie.Cena  = 100;
            gacie.Nazwa = "Gacie";
            var stawka23 = objectSpace.CreateObject <StawkaVAT>();

            stawka23.Symbol = "23%";
            stawka23.Stawka = 23;
            gacie.StawkaVAT = stawka23;

            var skarpetki = objectSpace.CreateObject <Produkt>();

            skarpetki.Cena  = 33.33m;
            skarpetki.Nazwa = "Skarpetki";

            var stawka7 = objectSpace.CreateObject <StawkaVAT>();

            stawka7.Symbol = "7%";
            stawka7.Stawka = 7;

            skarpetki.StawkaVAT = stawka7;

            var skarpety = objectSpace.CreateObject <Produkt>();

            skarpety.Cena      = 27.77m;
            skarpety.Nazwa     = "Skarpety";
            skarpety.StawkaVAT = stawka7;

            objectSpace.CommitChanges();
        }
コード例 #12
0
        public HttpResponseMessage Count_NumberAccepet()
        {
            try
            {
                string        OrganizationOid = HttpContext.Current.Request.Form["OrganizationOid"].ToString();
                SqlConnection objConn         = new SqlConnection(scc);
                if (objConn.State != ConnectionState.Open)
                {
                    objConn.Open();
                }
                DataSet ds = SqlHelper.ExecuteDataset(scc, CommandType.StoredProcedure, "SP_CountNumber_Approve", new SqlParameter("@OrganizationOid", OrganizationOid));
                if (ds.Tables[0].Rows.Count > 0)
                {
                    XpoTypesInfoHelper.GetXpoTypeInfoSource();
                    XafTypesInfo.Instance.RegisterEntity(typeof(Organization));
                    XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(scc, null);
                    IObjectSpace          ObjectSpace    = directProvider.CreateObjectSpace();
                    Organization          Organization   = ObjectSpace.FindObject <Organization>(CriteriaOperator.Parse("GCRecord is null and Oid =?", OrganizationOid));
                    Count_Number          number         = new Count_Number();
                    number.OrganizationName = Organization.OrganizeNameTH;
                    number.CountNumber      = (int)ds.Tables[0].Rows[0]["Count_Total"];


                    directProvider.Dispose();
                    ObjectSpace.Dispose();
                    return(Request.CreateResponse(HttpStatusCode.OK, number));
                }
                else
                {
                    UserError err = new UserError();
                    err.code    = "-1"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                    err.message = "ไม่พบข้อมูลรายการ";
                    return(Request.CreateResponse(HttpStatusCode.NotFound, err));
                }
            }
            catch (Exception ex)
            {
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
コード例 #13
0
        private IXpoDataStoreProvider GetDataStoreProvider(string connectionString, System.Data.IDbConnection connection)
        {
            System.Web.HttpApplicationState application       = (System.Web.HttpContext.Current != null) ? System.Web.HttpContext.Current.Application : null;
            IXpoDataStoreProvider           dataStoreProvider = null;

            if (application != null && application["DataStoreProvider"] != null)
            {
                dataStoreProvider = application["DataStoreProvider"] as IXpoDataStoreProvider;
            }
            else
            {
                dataStoreProvider = XPObjectSpaceProvider.GetDataStoreProvider(connectionString, connection, true);
                if (application != null)
                {
                    application["DataStoreProvider"] = dataStoreProvider;
                }
            }
            return(dataStoreProvider);
        }
コード例 #14
0
        public HttpResponseMessage GetBudget_Info()
        {
            try
            {
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(BudgetSource));
                XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace          ObjectSpace    = directProvider.CreateObjectSpace();
                IList <BudgetSource>  collection     = ObjectSpace.GetObjects <BudgetSource>(CriteriaOperator.Parse(" GCRecord is null and IsActive = 1", null));

                if (collection.Count > 0)
                {
                    List <BudgetSourceModel> list = new List <BudgetSourceModel>();
                    foreach (BudgetSource row in collection)
                    {
                        BudgetSourceModel budget_type = new BudgetSourceModel();
                        budget_type.BudgetSourceOid = row.Oid;
                        budget_type.BudgetName      = row.BudgetName;
                        list.Add(budget_type);
                    }
                    return(Request.CreateResponse(HttpStatusCode.OK, list));
                }
                else
                {
                    UserError err = new UserError();
                    err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                    err.message = "No data";
                    //  Return resual
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
                }
            }
            catch (Exception ex)
            {                      //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
            finally
            {
            }
        }
コード例 #15
0
        private IXpoDataStoreProvider GetDataStoreProvider(string connectionString, IDbConnection connection)
        {
            var application = HttpContext.Current != null ? HttpContext.Current.Application : null;
            IXpoDataStoreProvider dataStoreProvider;

            if (application?["DataStoreProvider"] != null)
            {
                dataStoreProvider = application["DataStoreProvider"] as IXpoDataStoreProvider;
            }
            else
            {
                dataStoreProvider = XPObjectSpaceProvider.GetDataStoreProvider(connectionString, connection, true);
                if (application != null)
                {
                    application["DataStoreProvider"] = dataStoreProvider;
                }
            }

            return(dataStoreProvider);
        }
コード例 #16
0
        public static XafReport LoadXafReport(ReportData report, object obj)
        {
            var connectionString = GeneratorHelper.GetConnectionString();
            //using (var connection = new SqlConnection(connectionString))
            //{
            var objectSpaceProvider = new XPObjectSpaceProvider(connectionString, XpoDefault.DataLayer.Connection);
            var objectSpace         = objectSpaceProvider.CreateObjectSpace() as XPObjectSpace;

            var type      = GeneratorHelper.GetMyObjectType(report.DataTypeName);
            var classInfo = objectSpace?.Session.GetClassInfo(type);
            var key       = classInfo?.KeyProperty;

            XafTypesInfo.Instance.RegisterEntity(type);
            var xafReport = report.LoadReport(objectSpace) as XafReport;

            xafReport.Filtering.Filter = string.Format("{0}={1}", key.Name, key.GetValue(obj));
            xafReport.ApplyFiltering();
            return(xafReport);
            //}
        }
コード例 #17
0
        public HttpResponseMessage GetBudget_Year()
        {
            try

            {
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(FinanceYear));
                XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace          ObjectSpace    = directProvider.CreateObjectSpace();
                IList <FinanceYear>   collection     = ObjectSpace.GetObjects <FinanceYear>(CriteriaOperator.Parse("GCRecord is null and IsActive = 1", null));
                var Qurey = (from Q in collection orderby Q.YearName descending select Q);
                if (collection.Count > 0)
                {
                    List <FinanceYearModel> list = new List <FinanceYearModel>();
                    foreach (FinanceYear row in Qurey)
                    {
                        FinanceYearModel Finance = new FinanceYearModel();
                        Finance.FinanceYearOid = row.Oid.ToString();
                        Finance.FinanceYear    = row.YearName;
                        list.Add(Finance);
                    }
                    return(Request.CreateResponse(HttpStatusCode.OK, list));
                }
                else
                {
                    UserError err = new UserError();
                    err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                    err.message = "No data";
                    //  Return resual
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
                }
            }
            catch (Exception ex)
            {                      //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
コード例 #18
0
        public IHttpActionResult xafclass()
        {
            //  Farmerinfo.Profile_Farmer farmerinfo = new Farmerinfo.Profile_Farmer();
            try
            {
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(Farmer));
                XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace          ObjectSpace    = directProvider.CreateObjectSpace();

                List <Farmerinfo.Profile_Farmer> ilist = new List <Farmerinfo.Profile_Farmer>();
                IList <Farmer> collection = ObjectSpace.GetObjects <Farmer>(CriteriaOperator.Parse(" GCRecord is null and IsActive = true", null));
                if (collection != null)
                {
                    foreach (Farmer row in collection)
                    {
                        Farmerinfo.Profile_Farmer _farmerinfo = new Farmerinfo.Profile_Farmer();
                        _farmerinfo.Oid         = row.Oid;
                        _farmerinfo.CitizenID   = row.CitizenID;
                        _farmerinfo.Title       = row.TitleOid.TitleName;
                        _farmerinfo.FirstNameTH = row.FirstNameTH;
                        _farmerinfo.LastNameTH  = row.LastNameTH;
                        ilist.Add(_farmerinfo);
                    }
                }
                else
                {
                    return(BadRequest("Any object"));
                }
                return(Ok(ilist));
            }
            catch (Exception ex)
            {                      //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                //  Return resual
                //   return BadRequest(ex.Message);
                return(null);
            }
        }
コード例 #19
0
        public HttpResponseMessage FarmerProduction_XAF()
        {
            try
            {
                XpoTypesInfoHelper.GetTypesInfo();
                XafTypesInfo.Instance.RegisterEntity(typeof(FarmerProduction));

                XPObjectSpaceProvider    directProvider = new XPObjectSpaceProvider(scc, null);
                IObjectSpace             ObjectSpace    = directProvider.CreateObjectSpace();
                IList <FarmerProduction> collection     = ObjectSpace.GetObjects <FarmerProduction>(CriteriaOperator.Parse(" GCRecord is null and IsActive = 1", null));
                if (collection != null)
                {
                    List <user.FarmerProductionModel> list = new List <user.FarmerProductionModel>();
                    foreach (FarmerProduction row in collection)
                    {
                        user.FarmerProductionModel productionModel = new user.FarmerProductionModel();
                        productionModel.Oid        = row.Oid;
                        productionModel.Production = row.AnimalSeedOid.SeedName;
                        list.Add(productionModel);
                    }
                    return(Request.CreateResponse(HttpStatusCode.OK, list));
                }
                else
                {
                    UserError err = new UserError();
                    err.code    = ""; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                    err.message = "No data";
                    //  Return resual
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
                }
            }
            catch (Exception ex)
            {                      //Error case เกิดข้อผิดพลาด
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                //  Return resual
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
コード例 #20
0
        public static IXpoDataStoreProvider GetDataStoreProvider(string connectionString, IDbConnection connection, bool enablePoolingInConnectionString = true)
        {
            IXpoDataStoreProvider xpoDataStoreProvider = null;

            if (UseSQLAlternativeInfoSingleton.Instance.UseAlternative || (connectionString == InMemoryDataStoreProvider.ConnectionString))
            {
                xpoDataStoreProvider = DemoXPODatabaseHelper.GetInMemoryDataStoreProvider(enablePoolingInConnectionString);
            }
            else
            {
                if ((connection != null) || DemoDbEngineDetectorHelper.IsSqlServerAccessible(connectionString))
                {
                    xpoDataStoreProvider = XPObjectSpaceProvider.GetDataStoreProvider(connectionString, connection, enablePoolingInConnectionString);
                }
                else
                {
                    UseSQLAlternativeInfoSingleton.Instance.FillFields(DemoDbEngineDetectorHelper.DBServerIsNotAccessibleMessage, DemoXPODatabaseHelper.AlternativeName, DemoXPODatabaseHelper.InMemoryDatabaseUsageMessage);
                    xpoDataStoreProvider = DemoXPODatabaseHelper.GetInMemoryDataStoreProvider(enablePoolingInConnectionString);
                }
            }
            return(xpoDataStoreProvider);
        }
コード例 #21
0
        static void Main()
        {
            try {
                Console.WriteLine("Starting...");
                ValueManager.ValueManagerType = typeof(MultiThreadValueManager <>).GetGenericTypeDefinition();
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(Employee));
                XafTypesInfo.Instance.RegisterEntity(typeof(PermissionPolicyUser));
                XafTypesInfo.Instance.RegisterEntity(typeof(PermissionPolicyRole));
                string connectionString = @"Integrated Security=SSPI;Pooling=false;Data Source=(localdb)\mssqllocaldb;Initial Catalog=ClientServer";
                Console.WriteLine("Creating default objects...");
                XPObjectSpaceProvider objectSpaceProvider = new XPObjectSpaceProvider(connectionString);
                objectSpaceProvider.CheckCompatibilityType = CheckCompatibilityType.DatabaseSchema;
                objectSpaceProvider.SchemaUpdateMode       = SchemaUpdateMode.DatabaseAndSchema;
                IObjectSpace objectSpace = objectSpaceProvider.CreateUpdatingObjectSpace(true);
                CreateUsers(objectSpace);
                CreateObjects(objectSpace);
                objectSpace.CommitChanges();

                Console.WriteLine("Starting server...");
                Func <IDataServerSecurity> securityProviderHandler = () => new SecurityStrategyComplex(typeof(PermissionPolicyUser), typeof(PermissionPolicyRole), new AuthenticationStandard());

                ServiceHost serviceHost = new WcfXafServiceHost(connectionString, securityProviderHandler);
                serviceHost.AddServiceEndpoint(typeof(IWcfXafDataServer), WcfDataServerHelper.CreateNetTcpBinding(), "net.tcp://localhost:1424/DataServer");
                serviceHost.Open();

                Console.WriteLine("Server is started. Press Enter to stop.");
                Console.ReadLine();
                Console.WriteLine("Stopping...");
                serviceHost.Close();
                Console.WriteLine("Server is stopped.");
            }
            catch (Exception e) {
                Console.WriteLine("Exception occurs: " + e.Message);
                Console.WriteLine("Press Enter to close.");
                Console.ReadLine();
            }
        }
        void application_CreateCustomObjectSpaceProvider(object sender, CreateCustomObjectSpaceProviderEventArgs e)
        {
            XafApplication application = (XafApplication)sender;

            if (typeInfoSource1 == null)
            {
                lock (lockObj) {
                    if (typeInfoSource1 == null)
                    {
                        typeInfoSource1 = new XpoTypeInfoSource((TypesInfo)application.TypesInfo,
                                                                typeof(PersistentClass1), typeof(ModuleInfo1)
                                                                );
                    }
                }
            }
            XPObjectSpaceProvider objectSpaceProvider1 = new XPObjectSpaceProvider(
                new ConnectionStringDataStoreProvider(ConfigurationManager.ConnectionStrings["ConnectionStringDatabase1"].ConnectionString),
                application.TypesInfo,
                typeInfoSource1, true
                );

            e.ObjectSpaceProviders.Add(objectSpaceProvider1);
        }
        public virtual void SetUp()
        {
            XPObjectSpaceProvider objectSpaceProvider =
                new XPObjectSpaceProvider(new MemoryDataStoreProvider());
            TestApplication application = new TestApplication();

            var testModule = new FirstXafProjectModule();



            application.Modules.Add(testModule);
            //application.Modules.Add(new ConditionalAppearanceModule());



            application.Setup("TestApplication", objectSpaceProvider);
            IObjectSpace objectSpace = objectSpaceProvider.CreateObjectSpace();
            var          Customer    = objectSpace.CreateObject <XafCustomer>();

            controller = new InvoiceController();
            detailView = application.CreateDetailView(objectSpace, Customer);
            controller.SetView(detailView);
        }
コード例 #24
0
        public IHttpActionResult OrderseedDetail(string SendOrderSeed)
        {
            OrderSeedDetail OrderSeedDetail = new OrderSeedDetail();

            try
            {
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(SendOrderSeedDetail));
                XPObjectSpaceProvider directProvider = new XPObjectSpaceProvider(scc);
                IObjectSpace          ObjectSpace    = directProvider.CreateObjectSpace();
                SendOrderSeedDetail   OrderSeed;

                OrderSeed = ObjectSpace.FindObject <SendOrderSeedDetail>(new BinaryOperator("SendOrderSeed", SendOrderSeed));
                if (SendOrderSeed != null)
                {
                    OrderSeedDetail.LotNumber       = OrderSeed.LotNumber.LotNumber;
                    OrderSeedDetail.WeightUnit      = OrderSeed.WeightUnitOid.UnitName;
                    OrderSeedDetail.AnimalSeedCode  = OrderSeed.AnimalSeedCode;
                    OrderSeedDetail.AnimalSeeName   = OrderSeed.AnimalSeeName;
                    OrderSeedDetail.AnimalSeedLevel = OrderSeed.AnimalSeedLevel;
                    OrderSeedDetail.BudgetSource    = OrderSeed.BudgetSourceOid.BudgetName;
                    OrderSeedDetail.Weight          = OrderSeed.Weight;
                    OrderSeedDetail.Used            = OrderSeed.Used;
                    OrderSeedDetail.SendOrderSeed   = OrderSeed.SendOrderSeed.SendNo;
                    return(Ok(OrderSeedDetail));
                }
                {
                    return(BadRequest("NoData"));
                }
            }

            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #25
0
 public IHttpActionResult SupplierSend()
 {
     try
     {
         XpoTypesInfoHelper.GetXpoTypeInfoSource();
         XafTypesInfo.Instance.RegisterEntity(typeof(SupplierSend));
         XPObjectSpaceProvider     directProvider = new XPObjectSpaceProvider(scc, null);
         IObjectSpace              ObjectSpace    = directProvider.CreateObjectSpace();
         List <SupplierSend_Model> list           = new List <SupplierSend_Model>();
         IList <SupplierSend>      collection     = ObjectSpace.GetObjects <SupplierSend>(CriteriaOperator.Parse("GCRecord is null "));
         if (collection.Count > 0)
         {
             foreach (SupplierSend row in collection)
             {
                 SupplierSend_Model Model = new SupplierSend_Model();
                 Model.SendNo                 = row.SendNo;
                 Model.CreateDate             = row.CreateDate;
                 Model.FinanceYearOid         = row.FinanceYearOid.YearName;
                 Model.OrganizationSendOid    = row.OrganizationSendOid.OrganizeNameTH;
                 Model.OrganizationReceiveOid = row.OrganizationReceiveOid.OrganizeNameTH;
                 Model.Remark                 = row.Remark;
                 Model.SendStatusOid          = row.SendStatusOid;
                 list.Add(Model);
             }
         }
         else
         {
             return(BadRequest("NoData"));
         }
         return(Ok(list));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
コード例 #26
0
        public HttpResponseMessage UpdateRodBreedUseEject()
        {
            //  object objStockAnimalInfo = null;
            HistoryWork           ObjHistory       = null;
            IList <StockSeedInfo> objStockSeedInfo = null;
            string Username = "******";

            try
            {
                //string RefNo = HttpContext.Current.Request.Form["RefNo"].ToString(); //ข้อมูลเลขที่อ้างอิง
                //string Status = HttpContext.Current.Request.Form["Status"].ToString(); //สถานะ
                //string CancelMsg = HttpContext.Current.Request.Form["Remark"].ToString(); //หมายเหตุ
                //Username = HttpContext.Current.Request.Form["Username"].ToString();

                string RefNo = HttpContext.Current.Request.Form["RefNo"].ToString();      //ข้อมูลเลขที่อ้างอิง
                                                                                          // string Status = HttpContext.Current.Request.Form["Status"].ToString(); //สถานะ
                string CancelMsg = HttpContext.Current.Request.Form["Remark"].ToString(); //หมายเหตุ
                Username = HttpContext.Current.Request.Form["Username"].ToString();

                if (RefNo != "")
                {
                    XpoTypesInfoHelper.GetXpoTypeInfoSource();
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.SupplierRodBreedUseProduct));
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.StockRodBreedInfo));
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.StockRodBreedInfo_Report));
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.HistoryWork));
                    XafTypesInfo.Instance.RegisterEntity(typeof(UserInfo));
                    XafTypesInfo.Instance.RegisterEntity(typeof(ReceiveLotNumber));

                    List <SupplierRodBreedUseProduct> list           = new List <SupplierRodBreedUseProduct>();
                    XPObjectSpaceProvider             directProvider = new XPObjectSpaceProvider(scc, null);
                    IObjectSpace ObjectSpace = directProvider.CreateObjectSpace();

                    UserInfo objUserInfo = ObjectSpace.FindObject <UserInfo>(CriteriaOperator.Parse("[UserName]=?", Username));

                    SupplierRodBreedUseProduct ObjMaster = ObjectSpace.FindObject <SupplierRodBreedUseProduct>(CriteriaOperator.Parse("UseNo=?", RefNo));

                    foreach (SupplierRodBreedUseProductDetail row in ObjMaster.SupplierRodBreedUseProductDetails)
                    {
                        if (ObjMaster.Status == EnumRodBreedProductSeedStatus.Approve || ObjMaster.Status == EnumRodBreedProductSeedStatus.Accepet)
                        {
                            var objCheckStockRodBreedInfo = ObjectSpace.GetObjects <StockRodBreedInfo>(CriteriaOperator.Parse("RodBreedProductNumber=? and FinanceYearOid=? and AnimalSeedOid=? and OrganizationOid=? and [SeedTypeOid]=?", row.SupplierRodBreedUseProductOid.UseNo, row.SupplierRodBreedUseProductOid.FinanceYearOid, row.AnimalSeedOid, row.SupplierRodBreedUseProductOid.OrganizationOid, row.SeedTypeOid));

                            var objStockRodBreedInfo_Detail = ObjectSpace.GetObjects <StockRodBreedInfo_Report>(CriteriaOperator.Parse("[FinanceYearOid]=? and [OrganizationOid]=? and [AnimalSeedOid]=? and [SeedTypeOid]=?", ObjMaster.FinanceYearOid, ObjMaster.OrganizationOid, row.AnimalSeedOid, row.SeedTypeOid));


                            if (objCheckStockRodBreedInfo.Count > 0)
                            {
                                //   'Update สถานะ IsApprove ให้เป็น True
                                var objStockRodBreedInfoEdit = ObjectSpace.FindObject <StockRodBreedInfo>(CriteriaOperator.Parse("[RodBreedProductNumber]=? and [FinanceYearOid]=? and [OrganizationOid]=? and [AnimalSeedOid]=? and [SeedTypeOid]=?", row.SupplierRodBreedUseProductOid.UseNo, row.SupplierRodBreedUseProductOid.FinanceYearOid, row.SupplierRodBreedUseProductOid.OrganizationOid, row.AnimalSeedOid, row.SeedTypeOid));
                                if (objStockRodBreedInfoEdit != null)
                                {
                                    objStockRodBreedInfoEdit.IsApprove = true;
                                }
                                //SqlParameter[] prm = new SqlParameter[10];
                                //prm[0] = new SqlParameter("@RodBreedProductNumber", row.SupplierRodBreedUseProductOid.UseNo.ToString());
                                //prm[1] = new SqlParameter("@FinanceYearOid", row.SupplierRodBreedUseProductOid.FinanceYearOid.Oid);
                                //prm[2] = new SqlParameter("@BudgetSourceOid", null);
                                //prm[3] = new SqlParameter("@AnimalSeedOid", row.AnimalSeedOid.Oid);
                                //prm[4] = new SqlParameter("@OrganizationOid", row.SupplierRodBreedUseProductOid.OrganizationOid.Oid);
                                //prm[5] = new SqlParameter("@Weight", row.Weight);
                                //prm[6] = new SqlParameter("@Remark", "คืนสต๊อกเนื่องจากไม่อนุมัติการใช้ท่อนพันธุ์  (Mobile Application)");
                                //prm[7] = new SqlParameter("@SeedTypeOid", row.SeedTypeOid.Oid);
                                //prm[8] = new SqlParameter("@IsApprove", true);
                                //prm[9] = new SqlParameter("@Description", null);
                                //SqlHelper.ExecuteNonQuery(scc, CommandType.StoredProcedure, "SP_StockRodBreedInfo", prm);

                                var objStockRodBreedInfo = ObjectSpace.CreateObject <StockRodBreedInfo>();
                                {
                                    objStockRodBreedInfo.TransactionDate       = DateTime.Now;
                                    objStockRodBreedInfo.RodBreedProductNumber = row.SupplierRodBreedUseProductOid.UseNo;
                                    objStockRodBreedInfo.FinanceYearOid        = row.SupplierRodBreedUseProductOid.FinanceYearOid;
                                    // '.BudgetSourceOid = objCheckStockRodBreedInfo(0).BudgetSourceOid
                                    objStockRodBreedInfo.AnimalSeedOid   = row.AnimalSeedOid;
                                    objStockRodBreedInfo.OrganizationOid = row.SupplierRodBreedUseProductOid.OrganizationOid;
                                    objStockRodBreedInfo.Weight          = row.Weight;
                                    objStockRodBreedInfo.Remark          = "คืนสต๊อกเนื่องจากไม่อนุมัติการใช้ท่อนพันธุ์ (Mobile Application)";
                                    objStockRodBreedInfo.SeedTypeOid     = row.SeedTypeOid;
                                    objStockRodBreedInfo.IsApprove       = true;
                                }
                            }
                            //                ''Stock สำหรับ กปศ4ว

                            //if (ObjMaster.Status == EnumRodBreedProductSeedStatus.Approve || ObjMaster.Status == EnumRodBreedProductSeedStatus.Accepet)
                            //{
                            objStockRodBreedInfo_Detail = ObjectSpace.GetObjects <StockRodBreedInfo_Report>(CriteriaOperator.Parse("[FinanceYearOid]=? and [OrganizationOid]=? and [AnimalSeedOid]=? and [SeedTypeOid]=?", ObjMaster.FinanceYearOid, ObjMaster.OrganizationOid, row.AnimalSeedOid, row.SeedTypeOid));
                            if (objStockRodBreedInfo_Detail.Count > 0)
                            {
                                var objStockRodBreedInfo_DetailNew = ObjectSpace.CreateObject <StockRodBreedInfo_Report>();
                                //'Update สถานะ IsApprove ให้เป็น True
                                var objStockRodBreedInfoEdit = ObjectSpace.FindObject <StockRodBreedInfo_Report>(CriteriaOperator.Parse("[RodBreedProductNumber]=? and [FinanceYearOid]=? and [OrganizationOid]=? and [AnimalSeedOid]=? and [SeedTypeOid]=?", row.SupplierRodBreedUseProductOid.UseNo, row.SupplierRodBreedUseProductOid.FinanceYearOid, row.SupplierRodBreedUseProductOid.OrganizationOid, row.AnimalSeedOid, row.SeedTypeOid));
                                if (objStockRodBreedInfoEdit != null)
                                {
                                    objStockRodBreedInfoEdit.IsApprove = true;
                                }
                                var ObjStockRodBreedInfo_DetailSource = (from Item in objStockRodBreedInfo_Detail
                                                                         orderby Item.TransactionDate descending
                                                                         select Item).First();
                                objStockRodBreedInfo_DetailNew.TransactionDate       = DateTime.Now;
                                objStockRodBreedInfo_DetailNew.RodBreedProductNumber = ObjMaster.UseNo;
                                objStockRodBreedInfo_DetailNew.FinanceYearOid        = ObjMaster.FinanceYearOid;
                                // .BudgetSourceOid = objStockRodBreedInfo_Detail(0).BudgetSourceOid
                                objStockRodBreedInfo_DetailNew.OrganizationOid = ObjMaster.OrganizationOid;
                                objStockRodBreedInfo_DetailNew.AnimalSeedOid   = row.AnimalSeedOid;
                                objStockRodBreedInfo_DetailNew.TotalForward    = ObjStockRodBreedInfo_DetailSource.TotalWeight;
                                objStockRodBreedInfo_DetailNew.TotalChange     = row.Weight;
                                objStockRodBreedInfo_DetailNew.SeedTypeOid     = row.SeedTypeOid;
                                objStockRodBreedInfo_DetailNew.Description     = "คืนสต๊อกเนื่องจากไม่อนุมัติการใช้ท่อนพันธุ์ : " + ObjMaster.OrganizationOid.SubOrganizeName + "(Mobile Application)";
                                objStockRodBreedInfo_DetailNew.IsApprove       = true;
                            }
                        }
                        //}
                    }
                    //     SupplierSproutUseProduct TmpObjMaster ;
                    ObjMaster.CancelMsg  = CancelMsg;
                    ObjMaster.Status     = EnumRodBreedProductSeedStatus.Eject;
                    ObjMaster.CancelBy   = objUserInfo.DisplayName;
                    ObjMaster.ActionType = EnumAction.Eject;
                    ObjMaster.CancelDate = DateTime.Now;

                    ObjHistory = ObjectSpace.CreateObject <HistoryWork>();
                    // ประวัติ
                    ObjHistory.RefOid     = ObjMaster.Oid.ToString();
                    ObjHistory.FormName   = "ท่อนพันธุ์";
                    ObjHistory.Message    = "ไม่อนุมัติ (ขอใช้ท่อนพันธุ์ (Mobile Application)) ลำดับที่ : " + ObjMaster.UseNo;
                    ObjHistory.CreateBy   = objUserInfo.UserName;
                    ObjHistory.CreateDate = DateTime.Now;
                    ObjectSpace.CommitChanges();

                    UpdateResult ret = new UpdateResult();
                    ret.status  = "true";
                    ret.message = "บันทึกข้อมูลไม่อนุมัติเรียบร้อยแล้ว";
                    return(Request.CreateResponse(HttpStatusCode.OK, ret));
                }
                else
                {
                    UpdateResult ret = new UpdateResult();
                    ret.status  = "False";
                    ret.message = "กรุณากรอก RefNo";
                    return(Request.CreateResponse(HttpStatusCode.NotFound, ret));
                }
            }
            catch (Exception ex)
            {
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
            finally
            {
                SqlConnection.ClearAllPools();
            }
        }
コード例 #27
0
        public HttpResponseMessage RodBreedList()
        {
            try
            {
                string Org = HttpContext.Current.Request.Form["organizationOid"].ToString();
                //  string type = HttpContext.Current.Request.Form["type"].ToString();
                XpoTypesInfoHelper.GetXpoTypeInfoSource();
                XafTypesInfo.Instance.RegisterEntity(typeof(SupplierRodBreedUseProduct));
                XPObjectSpaceProvider directProvider          = new XPObjectSpaceProvider(scc, null);
                IObjectSpace          ObjectSpace             = directProvider.CreateObjectSpace();
                List <Rodbreed_model> Detail                  = new List <Rodbreed_model>();
                IList <SupplierRodBreedUseProduct> collection = ObjectSpace.GetObjects <SupplierRodBreedUseProduct>(CriteriaOperator.Parse(" GCRecord is null and Status = 1 and OrganizationOid = ? ", Org));
                var query = from Q in collection orderby Q.UseNo select Q;
                if (collection.Count > 0)
                {
                    foreach (SupplierRodBreedUseProduct row in query)
                    {
                        Rodbreed_model item = new Rodbreed_model();
                        item.SupplierRodBreedUseProductOid = row.Oid.ToString();
                        item.FinanceYearOid  = row.FinanceYearOid.Oid.ToString();
                        item.FinanceYear     = row.FinanceYearOid.YearName;
                        item.ActivityNameOid = row.ActivityOid.Oid.ToString();
                        item.ActivityName    = row.ActivityOid.ActivityName;
                        if (row.SubActivityLevelOid != null)
                        {
                            item.SubActivityLevelOid  = row.SubActivityLevelOid.Oid.ToString();
                            item.SubActivityLevelName = row.SubActivityLevelOid.ActivityName;
                        }

                        item.FinanceYearOid   = row.FinanceYearOid.Oid.ToString();
                        item.FinanceYear      = row.FinanceYearOid.YearName;
                        item.UseNo            = row.UseNo;
                        item.UseDate          = row.UseDate.ToString("dd/MM/yy");
                        item.OrganizationOid  = row.OrganizationOid.Oid.ToString();
                        item.OrganizationName = row.OrganizationOid.SubOrganizeName;
                        if (row.EmployeeOid != null)
                        {
                            item.EmployeeOid  = row.EmployeeOid.Oid.ToString();
                            item.EmployeeName = row.EmployeeOid.FullName;
                        }
                        if (row.RegisCusServiceOid != null)
                        {
                            item.RegisCusServiceOid = row.RegisCusServiceOid.Oid.ToString();
                            item.FullName           = row.RegisCusServiceOid.DisPlayName;
                            item.FullAddress        = row.RegisCusServiceOid.FullAddress;
                        }
                        if (row.OrgeServiceOid != null)
                        {
                            item.OrgeServiceOid = row.OrgeServiceOid.Oid.ToString();
                            item.FullName       = row.OrgeServiceOid.OrgeServiceName;
                            item.FullAddress    = row.OrgeServiceOid.FullAddress;
                        }

                        item.ServiceCount = row.ServiceCount;
                        item.TotalWeight  = row.SupplierRodBreedUseProductDetails.Sum((c => c.Weight)).ToString() + " กิโลกรัม";
                        Detail.Add(item);
                    }
                    directProvider.Dispose();
                    ObjectSpace.Dispose();
                    //lists.Receive = ReceiveItems;
                    return(Request.CreateResponse(HttpStatusCode.OK, Detail));
                }
                else
                {
                    UserError err2 = new UserError();
                    err2.status  = "false";
                    err2.code    = "-9";
                    err2.message = "ไม่มีข้อมูลรายการ การใช้ท่อนพันธุ์";
                    return(Request.CreateResponse(HttpStatusCode.BadRequest, err2));
                }
            }
            catch (Exception ex)
            {
                UserError err = new UserError();
                err.status  = "false";
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.ToString();
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
コード例 #28
0
        public HttpResponseMessage RodBreedUseApprove()
        {
            //  object objStockAnimalInfo = null;
            HistoryWork           ObjHistory       = null;
            IList <StockSeedInfo> objStockSeedInfo = null;
            string Username         = "******";
            object objDetailService = null;

            try
            {
                string RefNo = HttpContext.Current.Request.Form["RefNo"].ToString();      //ข้อมูลเลขที่อ้างอิง
                                                                                          // string Status = HttpContext.Current.Request.Form["Status"].ToString(); //สถานะ
                string CancelMsg = HttpContext.Current.Request.Form["Remark"].ToString(); //หมายเหตุ
                Username = HttpContext.Current.Request.Form["Username"].ToString();
                if (RefNo != "")
                {
                    XpoTypesInfoHelper.GetXpoTypeInfoSource();
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.SupplierRodBreedUseProduct));
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.StockRodBreedInfo));
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.StockRodBreedInfo_Report));
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.HistoryWork));
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.SupplierProductModifyDetail));
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.SupplierProductModify));
                    XafTypesInfo.Instance.RegisterEntity(typeof(UserInfo));
                    XafTypesInfo.Instance.RegisterEntity(typeof(ReceiveLotNumber));
                    XafTypesInfo.Instance.RegisterEntity(typeof(RegisterCusServiceDetail));
                    XafTypesInfo.Instance.RegisterEntity(typeof(OrgeServiceDetail));
                    XafTypesInfo.Instance.RegisterEntity(typeof(ServiceType));

                    List <SupplierRodBreedUseProduct> list           = new List <SupplierRodBreedUseProduct>();
                    XPObjectSpaceProvider             directProvider = new XPObjectSpaceProvider(scc, null);
                    IObjectSpace ObjectSpace = directProvider.CreateObjectSpace();

                    UserInfo objUserInfo = ObjectSpace.FindObject <UserInfo>(CriteriaOperator.Parse("[UserName]=?", Username));

                    SupplierRodBreedUseProduct ObjMaster = ObjectSpace.FindObject <SupplierRodBreedUseProduct>(CriteriaOperator.Parse("UseNo=?", RefNo));

                    if (ObjMaster.SupplierRodBreedUseProductDetails != null)
                    {
                        foreach (SupplierRodBreedUseProductDetail row in ObjMaster.SupplierRodBreedUseProductDetails)
                        {
                            if (ObjMaster.Status == EnumRodBreedProductSeedStatus.Accepet)
                            {
                                //'Update สถานะ IsApprove ให้เป็น True
                                var objStockRodBreedInfoEdit = ObjectSpace.FindObject <StockRodBreedInfo>(CriteriaOperator.Parse("[RodBreedProductNumber]=? and [FinanceYearOid]=? and [OrganizationOid]=? and [AnimalSeedOid]=? and [SeedTypeOid]=?", row.SupplierRodBreedUseProductOid.UseNo, row.SupplierRodBreedUseProductOid.FinanceYearOid, row.SupplierRodBreedUseProductOid.OrganizationOid, row.AnimalSeedOid, row.SeedTypeOid));
                                if (objStockRodBreedInfoEdit != null)
                                {
                                    objStockRodBreedInfoEdit.IsApprove = true;
                                }


                                //          ''Stock สำหรับ กปศ4ว
                                //         '=======================================================================

                                //    'Update สถานะ IsApprove ให้เป็น True
                                var objStockRodBreedInfoReportEdit = ObjectSpace.FindObject <StockRodBreedInfo_Report>(CriteriaOperator.Parse("[RodBreedProductNumber]=? and [FinanceYearOid]=? and [OrganizationOid]=? and [AnimalSeedOid]=? and [SeedTypeOid]=?", row.SupplierRodBreedUseProductOid.UseNo, row.SupplierRodBreedUseProductOid.FinanceYearOid, row.SupplierRodBreedUseProductOid.OrganizationOid, row.AnimalSeedOid, row.SeedTypeOid));
                                if (objStockRodBreedInfoReportEdit != null)
                                {
                                    objStockRodBreedInfoReportEdit.IsApprove = true;
                                }
                            }
                        }

                        if (ObjMaster.ActivityOid.ActivityName.Contains("จำหน่าย") == true)
                        {
                            if (ObjMaster.ChkOneService == true)
                            {
                                objDetailService = ObjectSpace.FindObject <RegisterCusServiceDetail>(CriteriaOperator.Parse("[RegisterCusServiceOid]=? and [ServiceTypeOid.ServiceTypeName] like '%จำหน่าย%' and [SubServiceTypeOid.ServiceTypeName]='ท่อนพันธุ์' and [ReceiveDate]=?", ObjMaster.RegisCusServiceOid, ObjMaster.UseDate));
                                if (objDetailService == null)
                                {
                                    RegisterCusServiceDetail objDetailService_new = ObjectSpace.CreateObject <RegisterCusServiceDetail>();
                                    objDetailService_new.RegisterCusServiceOid = ObjMaster.RegisCusServiceOid;

                                    ServiceType objServiceType = ObjectSpace.FindObject <ServiceType>(CriteriaOperator.Parse("[ServiceTypeName] like '%จำหน่าย%'"));
                                    objDetailService_new.ServiceTypeOid = objServiceType;

                                    ServiceType objSubServiceType = ObjectSpace.FindObject <ServiceType>(CriteriaOperator.Parse("[MasterServiceType]=? and [ServiceTypeName]='ท่อนพันธุ์'", objServiceType.Oid));
                                    objDetailService_new.SubServiceTypeOid = objSubServiceType;

                                    objDetailService_new.ReceiveDate = ObjMaster.UseDate;
                                    objDetailService_new.RefOid      = ObjMaster.Oid.ToString();
                                }
                            }
                            else if (ObjMaster.ChkGroupService == true)
                            {
                                objDetailService = ObjectSpace.FindObject <OrgeServiceDetail>(CriteriaOperator.Parse("[OrgeServiceOid]=? and [ServiceTypeOid.ServiceTypeName] like '%จำหน่าย%' and [SubServiceTypeOid.ServiceTypeName]='ท่อนพันธุ์' and [ReceiveDate]=?", ObjMaster.OrgeServiceOid, ObjMaster.UseDate));
                                if (objDetailService == null) //'ถ้ายังไม่มีข้อมูลการขอรับบบริการให้ Insert ลงในส่วนของรายละเอียดการขอรับบริการด้วย
                                {
                                    OrgeServiceDetail objDetailService_new = ObjectSpace.CreateObject <OrgeServiceDetail>();
                                    objDetailService_new.OrgeServiceOid = ObjMaster.OrgeServiceOid;
                                    ServiceType objServiceType = ObjectSpace.FindObject <ServiceType>(CriteriaOperator.Parse("[ServiceTypeName] like '%จำหน่าย%'"));
                                    objDetailService_new.ServiceTypeOid = objServiceType;
                                    ServiceType objSubServiceType = ObjectSpace.FindObject <ServiceType>(CriteriaOperator.Parse("[MasterServiceType]=? and [ServiceTypeName]='ท่อนพันธุ์'", objServiceType.Oid));
                                    objDetailService_new.SubServiceTypeOid = objSubServiceType;

                                    objDetailService_new.ReceiveDate = ObjMaster.UseDate;
                                    objDetailService_new.RefOid      = ObjMaster.Oid.ToString();
                                }
                            }
                        }
                        else if (ObjMaster.ActivityOid.ActivityName.Contains("แจกจ่าย") == true)
                        {
                            if (ObjMaster.ChkOneService == true) //'รายเดี่ยว
                            {
                                objDetailService = ObjectSpace.FindObject <RegisterCusServiceDetail>(CriteriaOperator.Parse("[RegisterCusServiceOid]=? and [ServiceTypeOid.ServiceTypeName] like '%แจกจ่าย%' and [SubServiceTypeOid.ServiceTypeName]='ท่อนพันธุ์' and [ReceiveDate]=?", ObjMaster.RegisCusServiceOid, ObjMaster.UseDate));
                                if (objDetailService == null)// 'ถ้ายังไม่มีข้อมูลการขอรับบบริการให้ Insert ลงในส่วนของรายละเอียดการขอรับบริการด้วย
                                {
                                    RegisterCusServiceDetail objDetailService_new = ObjectSpace.CreateObject <RegisterCusServiceDetail>();
                                    objDetailService_new.RegisterCusServiceOid = ObjMaster.RegisCusServiceOid;


                                    ServiceType objServiceType = ObjectSpace.FindObject <ServiceType>(CriteriaOperator.Parse("[ServiceTypeName] like '%แจกจ่าย%'"));
                                    objDetailService_new.ServiceTypeOid = objServiceType;
                                    ServiceType objSubServiceType = ObjectSpace.FindObject <ServiceType>(CriteriaOperator.Parse("[MasterServiceType]=? and [ServiceTypeName]='ท่อนพันธุ์'", objServiceType.Oid));
                                    objDetailService_new.SubServiceTypeOid = objSubServiceType;

                                    objDetailService_new.ReceiveDate = ObjMaster.UseDate;
                                    objDetailService_new.RefOid      = ObjMaster.Oid.ToString();
                                }
                            }
                            else if (ObjMaster.ChkGroupService == true)
                            {
                                objDetailService = ObjectSpace.FindObject <OrgeServiceDetail>(CriteriaOperator.Parse("[OrgeServiceOid]=? and [ServiceTypeOid.ServiceTypeName] like '%แจกจ่าย%' and [SubServiceTypeOid.ServiceTypeName]='ท่อนพันธุ์' and [ReceiveDate]=?", ObjMaster.OrgeServiceOid, ObjMaster.UseDate));
                                if (objDetailService == null) //'ถ้ายังไม่มีข้อมูลการขอรับบบริการให้ Insert ลงในส่วนของรายละเอียดการขอรับบริการด้วย
                                {
                                    OrgeServiceDetail objDetailService_new = ObjectSpace.CreateObject <OrgeServiceDetail>();
                                    objDetailService_new.OrgeServiceOid = ObjMaster.OrgeServiceOid;
                                    ServiceType objServiceType = ObjectSpace.FindObject <ServiceType>(CriteriaOperator.Parse("[ServiceTypeName] like '%แจกจ่าย%'"));
                                    objDetailService_new.ServiceTypeOid = objServiceType;
                                    ServiceType objSubServiceType = ObjectSpace.FindObject <ServiceType>(CriteriaOperator.Parse("[MasterServiceType]=? and [ServiceTypeName]='ท่อนพันธุ์'", objServiceType.Oid));
                                    objDetailService_new.SubServiceTypeOid = objSubServiceType;

                                    objDetailService_new.ReceiveDate = ObjMaster.UseDate;
                                    objDetailService_new.RefOid      = ObjMaster.Oid.ToString();
                                }
                            }
                        }


                        ObjMaster.Status      = EnumRodBreedProductSeedStatus.Approve;
                        ObjMaster.ApproveDate = DateTime.Now;
                        //     ObjectSpace.CommitChanges();

                        ObjHistory = ObjectSpace.CreateObject <HistoryWork>();
                        // ประวัติ
                        ObjHistory.RefOid     = ObjMaster.Oid.ToString();
                        ObjHistory.FormName   = "ท่อนพันธุ์";
                        ObjHistory.Message    = "อนุมัติ (ขอใช้ท่อนพันธุ์ (Mobile Application) ) ลำดับที่ : " + ObjMaster.UseNo;
                        ObjHistory.CreateBy   = objUserInfo.UserName;
                        ObjHistory.CreateDate = DateTime.Now;
                        ObjectSpace.CommitChanges();

                        UpdateResult ret = new UpdateResult();
                        ret.status  = "true";
                        ret.message = "บันทึกข้อมูลอนุมัติเรียบร้อยแล้ว";
                        return(Request.CreateResponse(HttpStatusCode.OK, ret));
                    }
                    else
                    {
                        UpdateResult ret = new UpdateResult();
                        ret.status  = "False";
                        ret.message = "กรุณากรอก RefNo";
                        return(Request.CreateResponse(HttpStatusCode.NotFound, ret));
                    }
                }
                else
                {
                    UpdateResult ret = new UpdateResult();
                    ret.status  = "False";
                    ret.message = "ไม่มีข้อมูลรายการข้อมูลท่อนพันธุ์";
                    return(Request.CreateResponse(HttpStatusCode.NoContent, ret));
                }
            }
            catch (Exception ex)
            {
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
        }
コード例 #29
0
        public HttpResponseMessage RodBreedListdetail()
        {
            try
            {
                string UseNo = HttpContext.Current.Request.Form["useNo"].ToString();

                if (UseNo != "")
                {
                    XpoTypesInfoHelper.GetXpoTypeInfoSource();
                    XafTypesInfo.Instance.RegisterEntity(typeof(nutrition.Module.SupplierRodBreedUseProduct));
                    Rodbreed_model_Detail item                    = null;
                    XPObjectSpaceProvider directProvider          = new XPObjectSpaceProvider(scc, null);
                    IObjectSpace          ObjectSpace             = directProvider.CreateObjectSpace();
                    IList <SupplierRodBreedUseProduct> collection = ObjectSpace.GetObjects <SupplierRodBreedUseProduct>(CriteriaOperator.Parse("GCRecord is null and UseNo='" + UseNo + "'", null));

                    foreach (SupplierRodBreedUseProduct row in collection)
                    {
                        item = new Rodbreed_model_Detail();
                        item.SupplierRodBreedUseProductOid = row.Oid.ToString();
                        item.FinanceYearOid   = row.FinanceYearOid.Oid.ToString();
                        item.FinanceYear      = row.FinanceYearOid.YearName;
                        item.UseNo            = row.UseNo;
                        item.UseDate          = row.UseDate.ToString("dd/MM/yyyy");
                        item.OrganizationOid  = row.OrganizationOid.Oid.ToString();
                        item.OrganizationName = row.OrganizationOid.SubOrganizeName;
                        item.ActivityOid      = row.ActivityOid.Oid.ToString();
                        item.Remark           = row.Remark;
                        item.ActivityName     = row.ActivityOid.ActivityName;
                        item.FinanceYearOid   = row.FinanceYearOid.Oid.ToString();
                        item.FinanceYear      = row.FinanceYearOid.YearName;

                        if (row.OrgeServiceOid != null)
                        {
                            item.OrgeServiceOid = row.OrgeServiceOid.Oid.ToString();
                            item.FullName       = row.OrgeServiceOid.OrgeServiceName;
                            item.FullAddress    = row.OrgeServiceOid.FullAddress;
                        }
                        if (row.RegisCusServiceOid != null)
                        {
                            item.RegisCusServiceOid = row.RegisCusServiceOid.Oid.ToString();
                            item.FullName           = row.RegisCusServiceOid.DisPlayName;
                            item.FullAddress        = row.RegisCusServiceOid.FullAddress;
                        }
                        if (row.SubActivityOid != null)
                        {
                            item.SubActivityOid  = row.SubActivityOid.Oid.ToString();
                            item.SubActivityName = row.SubActivityOid.ActivityName;
                        }
                        if (row.SubActivityLevelOid != null)
                        {
                            item.SubActivityLevelOid  = row.SubActivityLevelOid.Oid.ToString();
                            item.SubActivityLevelName = row.SubActivityLevelOid.ActivityName;
                        }

                        item.Status       = row.Status.ToString();
                        item.ServiceCount = row.ServiceCount;
                        item.TotalWeight  = row.SupplierRodBreedUseProductDetails.Sum((c => c.Weight)).ToString() + "" + "กิโลกรัม";
                        item.TotalPrice   = row.SupplierRodBreedUseProductDetails.Sum((c => c.Price)).ToString() + "" + "บาท";
                        item.CancelMsg    = row.CancelMsg;
                        if (row.ActivityOid.ActivityName == "เพื่อการจำหน่าย")
                        {
                            item.ReceiptNo = row.ReceiptNo;
                        }
                        List <SupplierRodBreedUseProductDetail_Model> details = new List <SupplierRodBreedUseProductDetail_Model>();
                        SupplierRodBreedUseProductDetail_Model        _dt     = null;

                        foreach (SupplierRodBreedUseProductDetail rw in row.SupplierRodBreedUseProductDetails)
                        {
                            _dt = new SupplierRodBreedUseProductDetail_Model();
                            _dt.AnimalSeedOid = rw.AnimalSeedOid.Oid.ToString();
                            _dt.SupplierRodBreedUseProductDetailOid = rw.Oid.ToString();
                            _dt.StockLimit     = rw.StockLimit;
                            _dt.Weight         = rw.Weight;
                            _dt.WeightUnitOid  = rw.WeightUnitOid.Oid.ToString();
                            _dt.WeightUnitName = rw.WeightUnitOid.UnitName;
                            _dt.SeedTypeOid    = rw.SeedTypeOid.Oid.ToString();
                            _dt.SeedTypeName   = rw.SeedTypeOid.SeedTypeName;
                            _dt.AnimalSeedName = rw.AnimalSeedOid.SeedName;
                            _dt.Price          = rw.Price;
                            _dt.PerPrice       = rw.PerPrice;
                            _dt.SupplierRodBreedUseProductOid = rw.SupplierRodBreedUseProductOid.Oid.ToString();
                            details.Add(_dt);
                        }

                        item.Details = details;
                    }
                    return(Request.CreateResponse(HttpStatusCode.OK, item));
                }
                else
                {
                    UserError err = new UserError();
                    err.status  = "false";
                    err.code    = "0";
                    err.message = "กรุณาใส่ข้อมูล RefNo ให้เรียบร้อยก่อน";
                    return(Request.CreateResponse(HttpStatusCode.NotFound, err));
                }
            }
            catch (Exception ex)
            {
                UserError err = new UserError();
                err.code    = "6"; // error จากสาเหตุอื่นๆ จะมีรายละเอียดจาก system แจ้งกลับ
                err.message = ex.Message;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, err));
            }
            finally
            {
                SqlConnection.ClearAllPools();
            }
        }
コード例 #30
0
 protected override void CreateDefaultObjectSpaceProvider(CreateCustomObjectSpaceProviderEventArgs args)
 {
     args.ObjectSpaceProviders.Add(new SecuredObjectSpaceProvider((SecurityStrategyComplex)Security, XPObjectSpaceProvider.GetDataStoreProvider(args.ConnectionString, args.Connection, true), false));
     args.ObjectSpaceProviders.Add(new NonPersistentObjectSpaceProvider(TypesInfo, null));
 }
コード例 #31
0
        public SchemaProvider ReadApplication(string ApplicationName, string ApplicationFolder, string exeName, string XPOConnectionString, string DBConnectionString)
        {
            IList<string> moduleList = new List<string>(){
               "Para.Core.Modules.SystemModule.Win.dll",
               "Para.Model.Definition.dll",
               "Para.Modules.WorkflowLight.dll",
               "Para.Core.Modules.SpellCheckerModule.dll",
               "Para.Modules.App.dll",
               "Para.Modules.App.Win.dll",
               "Para.Modules.ABF.dll",
               "Para.Modules.BH.dll",
               "Para.Modules.RA.dll",
               "Para.Modules.FV.dll",
               "Para.Modules.Workflow.dll",
               "Para.Modules.Document.Activities.dll",
               "Para.Modules.Intern.Win.dll",
               "Para.Modules.MV.dll"
            };

            IList<Assembly> assemblies = new List<Assembly>();
            foreach (var file in moduleList)
                assemblies.Add(Assembly.LoadFile(ApplicationFolder + file));

            ControllersManager controllerManager = new ControllersManager();

            ApplicationModulesManager man = new ApplicationModulesManager(controllerManager, ApplicationFolder);
            man.AddModuleFromAssemblies(assemblies.Select(ass => ass.FullName).ToArray());

            var sec = new SecurityDummy();

            SAConnection conn = new SAConnection(DBConnectionString);
            conn.Open();

            XpoDefault.DataLayer = XpoDefault.GetDataLayer("XpoProvider=Asa;DataSourceName='paradat'", new ReflectionDictionary(), AutoCreateOption.None);

            XPObjectSpaceProvider provider = new XPObjectSpaceProvider(new ConnectionStringDataStoreProvider(XPOConnectionString));

            DesignerModelFactory dmf = new DesignerModelFactory();

            string ApplicationFileName = ApplicationFolder + exeName;
            string ApplicationConfigFileName = String.Format("{0}{1}.config", ApplicationFolder, exeName);

            var app = dmf.CreateApplicationByConfigFile(ApplicationConfigFileName, ApplicationFileName, ref ApplicationFolder);
            app.DatabaseVersionMismatch += app_DatabaseVersionMismatch;
            app.Setup("paraOffice", provider, man, sec);

            var dict = (app.CreateObjectSpace() as XPObjectSpace).Session.Dictionary;

            SchemaProvider schemaProvider = new SchemaProvider();
            foreach (var classinfo in dict.Classes.Cast<XPClassInfo>().Where(c => c.IsPersistent))
            {
                if (classinfo.Table.IsView)
                {
                    schemaProvider.Views.Add(new FastSchemaProvider.View() { Name = classinfo.Table.Name });
                    continue;
                }

                var table = new Table();
                table.ActualName = classinfo.Table.Name;

                foreach (var column in classinfo.Table.Columns)
                    table.Columns.Add(new Column() { ActualName = column.Name, DataType = column.ColumnType.ToSchemaDbType(), MaxLength = column.Size, IsPrimaryKeyColumn = column.IsKey, IsIdentity = column.IsIdentity });

                table.BuildPrimaryKey();

                foreach (var index in classinfo.Table.Indexes)
                {
                    var schemaIndex = new Index() { IndexName = index.Name, IndexType = index.IsUnique ? IndexTypes.Unqiue : IndexTypes.NonUnqiue };
                    int i = 1;
                    foreach (var col in index.Columns)
                    {
                        var indexCol = new IndexColumn();
                        indexCol.ColumnName = col;
                        indexCol.Sequence = i;
                        indexCol.Order = Ordering.Ascending;
                        i++;

                        schemaIndex.Columns.Add(indexCol);
                    }
                    table.Indizes.Add(schemaIndex);
                }

                foreach (var fk in classinfo.Table.ForeignKeys)
                {
                    var foreignKey = new ForeignKey();
                    foreignKey.Name = fk.Name;
                    foreignKey.Columns.AddRange(fk.Columns.Cast<string>());
                    foreignKey.DetailTable = classinfo.TableName;
                    foreignKey.MasterTable = fk.PrimaryKeyTable;
                    foreignKey.UniqueColumns.AddRange(fk.PrimaryKeyTableKeyColumns.Cast<string>());

                    table.ForeignKeys.Add(foreignKey);
                }

                schemaProvider.Tables.Add(table);
            }

            return schemaProvider;
        }