Skip to content

Commit fdeca30

Browse files
committed
Added specification maximum rows implementation.
1 parent 7f0122c commit fdeca30

3 files changed

Lines changed: 38 additions & 38 deletions

File tree

Shuttle.Access.Sql/Permission/PermissionQueryFactory.cs

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -24,22 +24,22 @@ public IQuery Registered(Guid id, Registered domainEvent)
2424
Guard.AgainstNull(domainEvent);
2525

2626
return new Query(@"
27-
if not exists
27+
IF NOT EXISTS
2828
(
29-
select
30-
null
31-
from
29+
SELECT
30+
NULL
31+
FROM
3232
[dbo].[Permission]
33-
where
33+
WHERE
3434
[Name] = @Name
3535
)
36-
insert into [dbo].[Permission]
36+
INSERT INTO [dbo].[Permission]
3737
(
3838
[Id],
3939
[Name],
4040
[Status]
4141
)
42-
values
42+
VALUES
4343
(
4444
@Id,
4545
@Name,
@@ -77,29 +77,29 @@ public IQuery Contains(DataAccess.Query.Permission.Specification specification)
7777
Guard.AgainstNull(specification);
7878

7979
return new Query($@"
80-
if exists
80+
IF EXISTS
8181
(
82-
select
83-
null
84-
from
85-
Permission p
82+
SELECT
83+
NULL
84+
FROM
85+
Permission p
8686
{Where(specification)}
8787
)
88-
select 1
89-
else
90-
select 0
88+
SELECT 1
89+
ELSE
90+
SELECT 0
9191
")
9292
.AddParameter(Columns.NameMatch, specification.NameMatch);
9393
}
9494

9595
public IQuery NameSet(Guid id, NameSet domainEvent)
9696
{
9797
return new Query(@"
98-
update
99-
Permission
100-
set
98+
UPDATE
99+
PERMISSION
100+
SET
101101
[Name] = @Name
102-
where
102+
WHERE
103103
Id = @Id
104104
")
105105
.AddParameter(Columns.Id, id)
@@ -109,11 +109,11 @@ public IQuery NameSet(Guid id, NameSet domainEvent)
109109
private static IQuery SetStatus(Guid id, int status)
110110
{
111111
return new Query(@"
112-
update
112+
UPDATE
113113
Permission
114-
set
114+
SET
115115
Status = @Status
116-
where
116+
WHERE
117117
Id = @Id
118118
")
119119
.AddParameter(Columns.Id, id)
@@ -133,13 +133,13 @@ public IQuery Specification(DataAccess.Query.Permission.Specification specificat
133133
: "count(*)";
134134

135135
return new Query($@"
136-
select distinct
136+
SELECT DISTINCT {(columns && specification.MaximumRows > 0 ? $"TOP {specification.MaximumRows}" : string.Empty)}
137137
{what}
138-
from
138+
FROM
139139
Permission p
140140
{(!specification.RoleIds.Any() ? string.Empty : @"
141-
inner join
142-
RolePermission rp on (rp.PermissionId = p.Id)
141+
INNER JOIN
142+
RolePermission rp ON (rp.PermissionId = p.Id)
143143
")}
144144
{Where(specification)}
145145
")
@@ -149,23 +149,23 @@ RolePermission rp on (rp.PermissionId = p.Id)
149149
private string Where(DataAccess.Query.Permission.Specification specification)
150150
{
151151
return $@"
152-
where
152+
WHERE
153153
(
154154
isnull(@NameMatch, '') = ''
155-
or
156-
p.[Name] like '%' + @NameMatch + '%'
155+
OR
156+
p.[Name] LIKE '%' + @NameMatch + '%'
157157
)
158158
{(!specification.Names.Any() ? string.Empty : $@"
159-
and
160-
p.[Name] in ({string.Join(",", specification.Names.Select(item => $"'{item}'"))})
159+
AND
160+
p.[Name] IN ({string.Join(",", specification.Names.Select(item => $"'{item}'"))})
161161
")}
162162
{(!specification.Ids.Any() ? string.Empty : $@"
163-
and
164-
p.Id in ({string.Join(",", specification.Ids.Select(item => $"'{item}'"))})
163+
AND
164+
p.Id IN ({string.Join(",", specification.Ids.Select(item => $"'{item}'"))})
165165
")}
166166
{(!specification.RoleIds.Any() ? string.Empty : $@"
167-
and
168-
rp.RoleId in ({string.Join(",", specification.RoleIds.Select(item => $"'{item}'"))})
167+
AND
168+
rp.RoleId IN ({string.Join(",", specification.RoleIds.Select(item => $"'{item}'"))})
169169
")}
170170
";
171171
}

Shuttle.Access.Sql/Role/RoleQueryFactory.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ public IQuery Permissions(DataAccess.Query.Role.Specification specification)
120120
Guard.AgainstNull(specification);
121121

122122
return new Query($@"
123-
SELECT
123+
SELECT {(specification.MaximumRows > 0 ? $"TOP {specification.MaximumRows}" : string.Empty)}
124124
rp.RoleId,
125125
p.Id,
126126
p.Name,
@@ -185,7 +185,7 @@ private static IQuery Specification(DataAccess.Query.Role.Specification specific
185185
: "COUNT(*)";
186186

187187
return new Query($@"
188-
SELECT
188+
SELECT {(columns && specification.MaximumRows > 0 ? $"TOP {specification.MaximumRows}" : string.Empty)}
189189
{what}
190190
FROM
191191
Role

Shuttle.Access.Sql/Session/SessionQueryFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ public IQuery Search(DataAccess.Query.Session.Specification specification)
131131
Guard.AgainstNull(specification);
132132

133133
return new Query($@"
134-
SELECT DISTINCT
134+
SELECT DISTINCT {(specification.MaximumRows > 0 ? $"TOP {specification.MaximumRows}" : string.Empty)}
135135
{SelectedColumns}
136136
FROM
137137
[dbo].[Session]

0 commit comments

Comments
 (0)