Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RSN-38] - Create services (address, comment, objecttype, participant, role, user*) #19

Merged
merged 37 commits into from
Jun 9, 2024

Conversation

mkoper02
Copy link
Collaborator

Description

Created CRUD operations and Unit Tests for given services:

  • AddressService
  • CommentService
  • ObjectTypeService
  • ParticipantService
  • RoleService
  • UserService*

* UserServices are not finished - still waiting for scaffold.

@mkoper02 mkoper02 added scope: backend Indicates that PR relates to backend changes. type: feature PR's categorised as feature. status: ready for review Determines that PR is ready for review. labels Apr 29, 2024
@mkoper02 mkoper02 self-assigned this Apr 29, 2024
@mkoper02 mkoper02 requested review from wzarek and bilimig April 29, 2024 18:30
Server/ReasnAPI/ReasnAPI/Services/AddressService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/AddressService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/AddressService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/AddressService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/AddressService.cs Outdated Show resolved Hide resolved
@wzarek wzarek added status: require changes Determines that PR requires changes to be approved. and removed status: ready for review Determines that PR is ready for review. labels May 4, 2024
@mkoper02 mkoper02 requested a review from raczu May 6, 2024 10:36
@mkoper02 mkoper02 added status: ready for review Determines that PR is ready for review. and removed status: require changes Determines that PR requires changes to be approved. labels May 6, 2024
@wzarek
Copy link
Owner

wzarek commented May 6, 2024

@mkoper02 please first merge main into RSN-14 in order to not have this long list of commits from main, I assume you didn't modified 117 files :)

@wzarek wzarek added status: require changes Determines that PR requires changes to be approved. and removed status: ready for review Determines that PR is ready for review. labels May 6, 2024
@wzarek wzarek changed the title RSN-38 - Create services (address, comment, objecttype, participant, role, user*) [RSN-38] - Create services (address, comment, objecttype, participant, role, user*) May 6, 2024
@wzarek wzarek added the status: ready for review Determines that PR is ready for review. label Jun 3, 2024
@mkoper02 mkoper02 requested a review from wzarek June 3, 2024 16:37
@wzarek wzarek added status: require changes Determines that PR requires changes to be approved. and removed status: ready for review Determines that PR is ready for review. labels Jun 3, 2024
@wzarek wzarek added status: ready for review Determines that PR is ready for review. and removed status: require changes Determines that PR requires changes to be approved. labels Jun 3, 2024
Copy link
Owner

@wzarek wzarek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Check comments, also:

  • throw errors if something is not right (to be caught by our middleware)
  • change mapper to separate folder and use fromDto, toDto, toDtoList etc.

Server/ReasnAPI/ReasnAPI/Services/CommentService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/AddressService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/ParticipantService.cs Outdated Show resolved Hide resolved

context.Users.Update(user);

if (userDto.Interests is null || userDto.Interests.Count == 0)
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if (userDto.Interests is null || userDto.Interests.Count == 0)
if (userDto.Interests is null || !userDto.Interests.Any())

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Visual Studio suggest to leave it as it is for clarity. I also think .Count == 0 is easier to read.

Server/ReasnAPI/ReasnAPI/Services/UserService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/UserService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/UserService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/UserService.cs Outdated Show resolved Hide resolved
@mkoper02 mkoper02 requested a review from wzarek June 7, 2024 18:51
mkoper02 added 2 commits June 8, 2024 13:55
Services now throw errors if something is not right (dto null, data not found in db), updated unit tests and created custom exception classes
Server/ReasnAPI/ReasnAPI/Services/AddressService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/AddressService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/CommentService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/CommentService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/CommentService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/UserService.cs Outdated Show resolved Hide resolved
Server/ReasnAPI/ReasnAPI/Services/ParticipantService.cs Outdated Show resolved Hide resolved
@wzarek wzarek added status: require changes Determines that PR requires changes to be approved. and removed status: ready for review Determines that PR is ready for review. labels Jun 8, 2024
@mkoper02 mkoper02 added status: ready for review Determines that PR is ready for review. and removed status: require changes Determines that PR requires changes to be approved. labels Jun 8, 2024
@mkoper02 mkoper02 requested a review from raczu June 8, 2024 22:44
Copy link
Owner

@wzarek wzarek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One thing - if Dawid created folder in root dir of ReasnAPI of 'Exceptions' then I think we can stick to that and have ReasnAPI/Exceptions not ReasnAPI/**/Exceptions, we may then split those exceptions into different subfolders, right - but think having them in one place could be benefitial

Copy link
Owner

@wzarek wzarek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@wzarek wzarek merged commit 2afbdf3 into RSN-14 Jun 9, 2024
7 checks passed
@wzarek wzarek deleted the RSN-38 branch June 9, 2024 22:47
mkoper02 added a commit that referenced this pull request Jun 18, 2024
…, role, user*) (#19)

* Created services classes and added TODO methods for each class

* Created basic CRUD methods

* Changed methods returing types, checks for null

* Checks if user already exists in db etc., created tests for services

* Fixed unit test

* Changed type taken by the services, new, improved tests for services

* Final fixes and changed unit tests for methods with foreign keys

* Changed delete method to return bool, fixed typos and other problems based on PR review

* Added brackets one line ifs and added delete method for ObjectTypeService

* Revert "Added brackets to one line ifs, updated delete method in ObjectTypeService"

This reverts commit 1c69f11, reversing
changes made to 1a58a27.

* Created services classes and added TODO methods for each class

* Created basic CRUD methods

* Changed methods returing types, checks for null

* Checks if user already exists in db etc., created tests for services

* Fixed unit test

* Changed type taken by the services, new, improved tests for services

* Final fixes and changed unit tests for methods with foreign keys

* Changed delete method to return bool, fixed typos and other problems based on PR review

* Added brackets one line ifs and added delete method for ObjectTypeService

* Updated services after scaffold

Updated services and tests, User service not finished, enums not working

* Workflow fixes

* Unit test fix

* Working user service

* Deleted test controller

* Transaction for user update service

* Updated services and created mappers

* Services throw errors

Services now throw errors if something is not right (dto null, data not found in db), updated unit tests and created custom exception classes

* Mappers function name change

* Update based on review

* Added GetUserByUsername function

* Changed exceptions directory location
mkoper02 added a commit that referenced this pull request Jun 19, 2024
* Created services classes and added TODO methods for each class

* [RSN-38] - Create services (address, comment, objecttype, participant, role, user*) (#19)

* Created services classes and added TODO methods for each class

* Created basic CRUD methods

* Changed methods returing types, checks for null

* Checks if user already exists in db etc., created tests for services

* Fixed unit test

* Changed type taken by the services, new, improved tests for services

* Final fixes and changed unit tests for methods with foreign keys

* Changed delete method to return bool, fixed typos and other problems based on PR review

* Added brackets one line ifs and added delete method for ObjectTypeService

* Revert "Added brackets to one line ifs, updated delete method in ObjectTypeService"

This reverts commit 1c69f11, reversing
changes made to 1a58a27.

* Created services classes and added TODO methods for each class

* Created basic CRUD methods

* Changed methods returing types, checks for null

* Checks if user already exists in db etc., created tests for services

* Fixed unit test

* Changed type taken by the services, new, improved tests for services

* Final fixes and changed unit tests for methods with foreign keys

* Changed delete method to return bool, fixed typos and other problems based on PR review

* Added brackets one line ifs and added delete method for ObjectTypeService

* Updated services after scaffold

Updated services and tests, User service not finished, enums not working

* Workflow fixes

* Unit test fix

* Working user service

* Deleted test controller

* Transaction for user update service

* Updated services and created mappers

* Services throw errors

Services now throw errors if something is not right (dto null, data not found in db), updated unit tests and created custom exception classes

* Mappers function name change

* Update based on review

* Added GetUserByUsername function

* Changed exceptions directory location

* [RSN-37] - Created services for Event Tag Parameter Interest Image (#42)

* Created CRUD services for Parameter, Status, Tag and C&U for Event

* created CRUD Image, Interest, Event and Parameter Services

Also added geting all elements and by filter(not done properly yet)

* changed delete services to void isnted of bool

* Fixed GetByFilter service in Event, Image, Intrest, Parameter, Status and Tag Services

* little changes

* fixing build issue and changing list to ienumerable

* Fixing EventServices and standardizing syntax issues

* created test for interest status parameter and tag

* Created ImageServicesTests

* Updated Parameter, Tag, Status services

Checked if any of Parameters, Tags or Statuses are used before delating/updating.

* fixed bug in imageservicetest

* one more fix

* Updated services and tests

Changed delete methods to bool, updated mocks on tests.

* Updated services

* Updates after scafoled nr 1

* Updated services

Changed using bridge tables to using colections in EF.

* Updated EventService

added a logic for parameters in event

* working event services

* created mappers and small fixes

* finished mappers

* Added exceptions in services

* fixed mappers according to our convension

* Changed exceptions directory location

* fixed build error

* Exceptions changes

* Unit tests fix

* updated services

* Slug creating method updated

* Update ImageService.cs

* Update ImageService.cs

* updated image services and tests also updated slug method for event services

* event service delete method updated

* refactor and fixes

* refactor

* Update EventService.cs

* last refactor

* removing spaces

* added geteventbyslug method to eventservice

* Update ImageService.cs

* refactor

* changed list to Enumerable

* changed list to enumerable

* folder refactor

* updated services

* Update EventService.cs

* changes

* Update EventServicesTest.cs

* updates

* Update EventService.cs

* Update EventService.cs

* Update ImageService.cs

* Updates

* Update EventMapper.cs

* changes

* Update ImageServiceTests.cs

* changes

* Formating

* Update EventService.cs

* Update EventService.cs

* changes

* Created AddEventComment method

* Update EventService.cs

* fixed updating and creating event

* Update EventService.cs

* changed create slug and text for event

---------

Co-authored-by: Maciej Koperdowski <[email protected]>

* Update Entity Framework version

* Changed exceptions location

* ReasnContext update

---------

Co-authored-by: Owczarek Kamil <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scope: backend Indicates that PR relates to backend changes. status: ready for review Determines that PR is ready for review. type: feature PR's categorised as feature.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants