Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Open sidebar
Coscine
B
backend
apis
Project
Commits
a400c668
Commit
a400c668
authored
Jul 24, 2019
by
David Schimmel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add display for sub projects
parent
3544f131
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
24 deletions
+16
-24
src/Project/Controllers/SubProjectController.cs
src/Project/Controllers/SubProjectController.cs
+13
-16
src/Project/Models/SubProjectModel.cs
src/Project/Models/SubProjectModel.cs
+3
-8
No files found.
src/Project/Controllers/SubProjectController.cs
View file @
a400c668
using
Coscine.Action
;
using
Coscine.Action.EventArgs
;
using
Coscine.Action.Implementations.Project
;
using
Coscine.Api.Project.Models
;
using
Coscine.Api.Project.Models
;
using
Coscine.Api.Project.ReturnObjects
;
using
Coscine.ApiCommons
;
using
Coscine.ApiCommons.Exceptions
;
using
Coscine.ApiCommons.Factories
;
using
Microsoft.AspNetCore.Mvc
;
using
Microsoft.SharePoint
;
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
namespace
Coscine.Api.Project.Controllers
{
class
SubProjectController
:
Controller
public
class
SubProjectController
:
Controller
{
private
readonly
Authenticator
_authenticator
;
private
readonly
List
<
IProjectAction
>
projectActions
;
[
Route
(
"[controller]/{parentId}"
)]
public
SubProjectController
()
{
_authenticator
=
new
Authenticator
(
this
,
Program
.
Configuration
);
}
[
HttpGet
(
"[controller]/{parentId}"
)]
public
IActionResult
Get
(
string
parentId
)
{
Guid
parentGuid
=
new
Guid
(
parentId
);
return
Ok
(
_authenticator
.
ValidateAndExecute
((
user
)
=>
{
ProjectModel
projectModel
=
new
ProjectModel
();
Database
.
Model
.
Project
ob
=
projectModel
.
GetById
(
parentGuid
);
SubProject
Model
sub
Project
Model
=
new
SubProjectModel
(
);
return
p
rojectModel
.
GetAllWhere
((
p
roject
)
=>
(
from
subProject
in
project
.
S
ubProject
s
ProjectId
Ids
where
subProject
.
P
rojectId
==
parentGuid
select
subProject
).
Any
()
).
Select
((
project
)
=>
new
ProjectObject
(
project
.
Id
,
project
.
Description
,
project
.
DisplayName
,
project
.
Organization
,
project
.
StartDate
,
project
.
EndDate
,
project
.
Keywords
,
parentGuid
))
;
var
subProjects
=
subP
rojectModel
.
GetAllWhere
((
subP
roject
M
)
=>
(
subProjectM
.
ProjectId
==
parentGuid
))
.
Select
((
subProject
)
=>
project
Model
.
GetById
(
s
ubProject
.
Sub
ProjectId
))
.
Select
((
project
)
=>
new
ProjectObject
(
p
roject
.
Id
,
project
.
Description
,
project
.
DisplayName
,
project
.
Organization
,
project
.
StartDate
,
project
.
EndDate
,
project
.
Keywords
,
parentGuid
));
return
subProjects
;
}));
}
}
...
...
src/Project/Models/SubProjectModel.cs
View file @
a400c668
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Linq.Expressions
;
using
Coscine.Api.Project.ReturnObjects
;
using
Coscine.ApiCommons.Models
;
using
Coscine.Database.Model
;
using
LinqToDB
;
namespace
Coscine.Api.Project.Models
{
public
class
SubProjectModel
:
DatabaseModel
<
Coscine
.
Database
.
Model
.
SubProject
>
public
class
SubProjectModel
:
DatabaseModel
<
SubProject
>
{
public
SubProjectModel
()
:
base
(
Program
.
Configuration
)
{
...
...
@@ -28,13 +25,11 @@ namespace Coscine.Api.Project.Models
public
void
LinkSubProject
(
Guid
parentId
,
Guid
childId
)
{
Coscine
.
Database
.
Model
.
SubProject
subProject
=
new
Coscine
.
Database
.
Model
.
SubProject
()
Insert
(
new
SubProject
()
{
ProjectId
=
parentId
,
SubProjectId
=
childId
,
};
Insert
(
subProject
);
return
;
});
}
public
override
void
SetObjectId
(
SubProject
databaseObject
,
Guid
id
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment