Exemple #1
0
        public void SqlInTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Where.And <TestClass>(q => new int[] { 1, 2, 3 }.Contains(q.Id));
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`ID` IN (1, 2, 3)", arg.ToString());
        }
Exemple #2
0
        public void SqlOrderTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(q => q.Id);

            arg.OrderBy.Add <TestClass>(q => new { q.Id, q.Guid });
            Assert.AreEqual("SELECT `ID` FROM TestClass ORDER BY TestClass.`ID`, TestClass.`Guid`", arg.ToString());
        }
Exemple #3
0
        public void ExcludeSelectTest2()
        {
            GXSelectArgs args = GXSelectArgs.Select <TestClass>(q => new { q.Guid, q.Text });

            args.Columns.Exclude <TestClass>(x => new { x.Text, x.Text2, x.Text3, x.Text4, x.BooleanTest, x.IntTest, x.DoubleTest, x.FloatTest, x.Span, x.Object, x.Status });
            Assert.AreEqual("SELECT `Guid` FROM TestClass", args.ToString());
        }
Exemple #4
0
        public void SqlNotIn2Test()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Where.And <TestClass>(q => !GXSql.In(q.Id, new int[] { 1, 2, 3 }));
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`ID` NOT IN (1, 2, 3)", arg.ToString());
        }
Exemple #5
0
 public ActionResult <AttributeTemplateDeleteResponse> Post(AttributeTemplateDelete request)
 {
     if (request.Ids != null)
     {
         foreach (UInt64 id in  request.Ids)
         {
             if (id == 0)
             {
                 return(BadRequest("Attribute template ID is invalid."));
             }
         }
         GXSelectArgs arg = GXSelectArgs.Select <GXAttributeTemplate>(a => a.Id, q => request.Ids.Contains(q.Id));
         List <GXAttributeTemplate> list = host.Connection.Select <GXAttributeTemplate>(arg);
         if (list.Count != 0)
         {
             DateTime now = DateTime.Now;
             foreach (GXAttributeTemplate it in list)
             {
                 it.Removed = now;
                 host.Connection.Update(GXUpdateArgs.Update(it, q => q.Removed));
             }
             host.SetChange(TargetType.AttributeTemplate, DateTime.Now);
         }
     }
     else
     {
         return(BadRequest("Attribute template ID is invalid."));
     }
     return(new AttributeTemplateDeleteResponse());
 }
Exemple #6
0
        public void WhereAndTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => new { x.Guid });

            arg.Where.And <TestClass>(q => q.Id > 1 && q.Id != 2);
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE (TestClass.`ID` > 1) AND (TestClass.`ID` <> 2)", arg.ToString());
        }
Exemple #7
0
        public void WhereSimpleTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Where.And <TestClass>(q => q.Id == 1);
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`ID` = 1", arg.ToString());
        }
 public ActionResult <DeleteScheduleResponse> Post(DeleteSchedule request)
 {
     //Remove mapping.
     if (request.AttributeIds != null && request.ScheduleIds != null)
     {
         for (int pos = 0; pos != request.AttributeIds.Length; ++pos)
         {
             GXDeleteArgs arg = GXDeleteArgs.Delete <GXScheduleToAttribute>(q => request.ScheduleIds[pos] == q.ScheduleId);
             arg.Where.And <GXScheduleToAttribute>(q => request.AttributeIds[pos] == q.AttributeId);
             host.Connection.Delete(arg);
         }
         host.SetChange(TargetType.Schedule, DateTime.Now);
     }
     else if (request.ScheduleIds != null)
     {
         GXSelectArgs      arg  = GXSelectArgs.Select <GXSchedule>(a => a.Id, q => request.ScheduleIds.Contains(q.Id));
         List <GXSchedule> list = host.Connection.Select <GXSchedule>(arg);
         DateTime          now  = DateTime.Now;
         foreach (GXSchedule it in list)
         {
             it.Removed = now;
             host.Connection.Update(GXUpdateArgs.Update(it, q => q.Removed));
         }
         host.SetChange(TargetType.Schedule, now);
     }
     return(new DeleteScheduleResponse());
 }
Exemple #9
0
        public void WhereStringNotIsNullOrEmptyTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Text);

            arg.Where.And <TestClass>(q => !string.IsNullOrEmpty(q.Text));
            Assert.AreEqual("SELECT `Text` FROM TestClass WHERE (TestClass.`Text` IS NOT NULL AND TestClass.`Text` <> '')", arg.ToString());
        }
Exemple #10
0
        public void WhereDateTimeTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Time);

            arg.Where.And <TestClass>(q => q.Time > DateTime.MinValue && q.Time < DateTime.MaxValue);
            Assert.AreEqual("SELECT `Time` FROM TestClass WHERE (TestClass.`Time` > '0001-01-01 00:00:00') AND (TestClass.`Time` < '9999-12-31 23:59:59')", arg.ToString());
        }
Exemple #11
0
        public void WhereByReferenceTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <DeviceGroup3>(q => q.Id);

            arg.Where.And <DeviceGroup3>(q => q.Id == 1);
            Assert.AreEqual("SELECT `Id` AS `DG.Id` FROM DeviceGroup3 DG WHERE DG.`Id` = 1", arg.ToString());
        }
Exemple #12
0
        public void SelectDistinctTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Distinct = true;
            Assert.AreEqual("SELECT DISTINCT `Guid` FROM TestClass", arg.ToString());
        }
Exemple #13
0
        public void WhereOrTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Where.And <TestClass>(q => q.Id == 1 || q.Id == 2 || q.Id == 3);
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE ((TestClass.`ID` = 1) OR (TestClass.`ID` = 2)) OR (TestClass.`ID` = 3)", arg.ToString());
        }
Exemple #14
0
        public void RemoveUserRolesTest()
        {
            GXUser user = new GXUser();

            user.Id       = "642c8f77-aeeb-4e86-86db-1a8b1b2fc982";
            user.UserName = "******";
            List <string> roles = new List <string>();

            roles.Add("Admin");
            roles.Add("User");
            roles.Add("DeviceManager");
            roles.Add("SystemErrorManager");
            GXSelectArgs sel = GXSelectArgs.Select <GXRole>(q => GXSql.One);

            sel.Where.And <GXUserRole>(q => q.UserId == user.Id);
            sel.Where.And <GXRole>(q => !roles.Contains(q.Name));
            GXDeleteArgs d = GXDeleteArgs.Delete <GXUserRole>(q => q.UserId == user.Id);

            d.Where.And <GXRole>(q => GXSql.Exists <GXUserRole, GXRole>(q => q.RoleId, q => q.Id, sel));

            /*
             * GXSelectArgs sel = GXSelectArgs.Select<GXUserRole>(q => q.UserId, q => q.UserId == "642c8f77-aeeb-4e86-86db-1a8b1b2fc982");
             * sel.Joins.AddInnerJoin<GXUserRole, GXRole>(a => a.RoleId, b => b.Id);
             * sel.Where.And<GXRole>(q => !roles.Contains(q.Name));
             * GXDeleteArgs d = GXDeleteArgs.Delete<GXUserRole>(q => GXSql.Exists(sel));
             */
            Assert.AreEqual("", d.ToString());
        }
Exemple #15
0
        public void AddUserRolesTest()
        {
            GXUser user = new GXUser();

            user.Id       = "642c8f77-aeeb-4e86-86db-1a8b1b2fc982";
            user.UserName = "******";
            List <string> roles = new List <string>();

            roles.Add("Admin");
            roles.Add("User");
            roles.Add("DeviceManager");
            roles.Add("SystemErrorManager");
            GXSelectArgs sel  = GXSelectArgs.Select <GXRole>(q => q.Id);
            GXSelectArgs sel2 = GXSelectArgs.Select <GXUserRole>(q => q.UserId, q => q.UserId == "642c8f77-aeeb-4e86-86db-1a8b1b2fc982");

            sel.Where.And <GXRole>(q => !GXSql.Exists <GXRole, GXUserRole>(q => q.Id, q => q.RoleId, sel2));
            sel.Where.And <GXRole>(q => roles.Contains(q.Name));
            GXUserRole ur = new GXUserRole();

            ur.UserId = user.Id;
            GXInsertArgs i = GXInsertArgs.Insert(ur);

            i.Add <GXUserRole>(sel, q => q.RoleId);
            Assert.AreEqual("", i.ToString());
        }
Exemple #16
0
        public void WhereEnumAsIntTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Settings.UseEnumStringValue = false;
            arg.Where.And <TestClass>(q => q.Status == State.OK);
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`Status` = 100", arg.ToString());
        }
Exemple #17
0
        public void FindEmptyDateTime()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(q => q.Guid, x => x.Time == null);

            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`Time` IS NULL", arg.ToString());
            arg = GXSelectArgs.Select <TestClass>(q => q.Guid, x => x.Time.Equals(null));
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`Time` IS NULL", arg.ToString());
        }
Exemple #18
0
        public void LimitTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Index = 1;
            arg.Count = 2;
            Assert.AreEqual("SELECT `Guid` FROM TestClass LIMIT 1,2", arg.ToString());
        }
Exemple #19
0
        public void WhereDateTimeTest()
        {
            string       format = "yyyy-MM-dd HH:mm:ss";
            GXSelectArgs arg    = GXSelectArgs.Select <TestClass>(x => x.Time);

            arg.Where.And <TestClass>(q => q.Time > DateTime.MinValue && q.Time < DateTime.MaxValue);
            Assert.AreEqual("SELECT `Time` FROM TestClass WHERE (TestClass.`Time` > '" + DateTime.MinValue.ToString(format) + "') AND (TestClass.`Time` < '" + DateTime.MaxValue.ToString(format) + "')", arg.ToString());
        }
Exemple #20
0
        public void WhereStringEmptyTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Text);

            arg.Where.And <TestClass>(q => q.Text != string.Empty);
            arg.Where.And <TestClass>(q => q.Text != null);
            Assert.AreEqual("SELECT `Text` FROM TestClass WHERE ((TestClass.`Text` <> '') AND (TestClass.`Text` IS NOT NULL))", arg.ToString());
        }
Exemple #21
0
        public void FilterByTest2()
        {
            TestClass    filter = new TestClass();
            GXSelectArgs arg    = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Where.FilterBy(filter);
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`Status` = 0", arg.ToString());
        }
Exemple #22
0
        public void SqlOrderDescTest()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(q => q.Id);

            arg.OrderBy.Add <TestClass>(q => q.Id);
            arg.Descending = true;
            Assert.AreEqual("SELECT `ID` FROM TestClass ORDER BY TestClass.`ID` DESC", arg.ToString());
        }
Exemple #23
0
        public void WhereOr3Test()
        {
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Where.And <TestClass>(q => q.Id == 1);
            arg.Where.Or <TestClass>(x => x.Text.StartsWith("Gurux"));
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE ((TestClass.`ID` = 1) OR (TestClass.`Text` LIKE('Gurux%')))", arg.ToString());
        }
Exemple #24
0
        public void GuidInTest()
        {
            List <Guid> list = new List <Guid>();

            list.Add(Guid.Empty);
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(q => q.Guid, q => list.Contains(q.Guid));

            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`Guid` IN ('00000000000000000000000000000000')", arg.ToString());
        }
Exemple #25
0
        public void DateTimeInTest()
        {
            List <DateTime> list = new List <DateTime>();

            list.Add(DateTime.MinValue);
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(q => q.Guid, q => list.Contains(q.Time));

            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`Time` IN ('1.1.0001 0.00.00')", arg.ToString());
        }
Exemple #26
0
        public void StringInTest()
        {
            List <string> list = new List <string>();

            list.Add("Gurux");
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(q => q.Guid, q => list.Contains(q.Text));

            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`Text` IN ('Gurux')", arg.ToString());
        }
Exemple #27
0
        public void WhereClassArrayTest()
        {
            TestClass[] list = new TestClass[] { new TestClass(), new TestClass() };
            list[0].Id = 1;
            list[1].Id = 2;
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => new { x.Guid });

            arg.Where.And <TestClass>(q => list);
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE `ID` IN(1, 2)", arg.ToString());
        }
Exemple #28
0
        public void WhereSimple2Test()
        {
            TestClass t = new TestClass();

            t.Id = 1;
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => new { x.Guid });

            arg.Where.And <TestClass>(q => q.Id == t.Id);
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`ID` = 1", arg.ToString());
        }
Exemple #29
0
        public void WhereEqualsTest()
        {
            TestClass t = new TestClass();

            t.Id = 1;
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => new { x.Guid });

            arg.Where.And <TestClass>(q => q.Text.Equals("Gurux", StringComparison.OrdinalIgnoreCase));
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE UPPER(TestClass.`Text`) LIKE('GURUX')", arg.ToString());
        }
Exemple #30
0
        public void WhereContainsTest()
        {
            TestClass t = new TestClass();

            t.Id = 1;
            GXSelectArgs arg = GXSelectArgs.Select <TestClass>(x => x.Guid);

            arg.Where.And <TestClass>(q => q.Text.Contains("Gurux"));
            Assert.AreEqual("SELECT `Guid` FROM TestClass WHERE TestClass.`Text` LIKE('%Gurux%')", arg.ToString());
        }