Skip to content

Commit

Permalink
avniproject/avni-webapp#1189 - SubjectTypeType.User support
Browse files Browse the repository at this point in the history
  • Loading branch information
petmongrels committed Apr 12, 2024
1 parent af196a5 commit 68a5783
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ public MessageTemplateService(GlificMessageTemplateRepository messageTemplateRep
}

public List<GlificMessageTemplate> findAll() {
return organisationConfigService.isMessagingEnabled()?
messageTemplateRepository.findAllForOrganisationId(UserContextHolder.getUserContext().getOrganisationId()):
return organisationConfigService.isMessagingEnabled() ?
messageTemplateRepository.findAllForOrganisationId(UserContextHolder.getUserContext().getOrganisationId()) :
Collections.emptyList();
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
package org.avni.server.application;

public enum Subject {
Group, Household, Individual, Person
Group, Household, Individual, Person, User
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@

public class SubjectTypes implements MetaData {
private List<SubjectType> subjectTypes;
private Map<SubjectType, List<Program>> programs = new HashMap<>();
private Map<SubjectType, Map<Program, List<EncounterType>>> programEncounterTypes = new HashMap<>();
private Map<SubjectType, List<EncounterType>> generalEncounterTypes = new HashMap<>();
private final Map<SubjectType, List<Program>> programs = new HashMap<>();
private final Map<SubjectType, Map<Program, List<EncounterType>>> programEncounterTypes = new HashMap<>();
private final Map<SubjectType, List<EncounterType>> generalEncounterTypes = new HashMap<>();

public SubjectTypes(List<SubjectType> subjectTypes) {
this.subjectTypes = subjectTypes;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,8 @@ public ResponseEntity getOne(@PathVariable("id") Long id) {
return ResponseEntity.notFound().build();
FormMapping formMapping = formMappingService.find(operationalSubjectType.getSubjectType());
SubjectTypeContractWeb subjectTypeContractWeb = SubjectTypeContractWeb.fromOperationalSubjectType(operationalSubjectType, formMapping);
List<SubjectTypeSetting> customRegistrationLocations = objectMapper.convertValue(organisationConfigService.getSettingsByKey(KeyType.customRegistrationLocations.toString()), new TypeReference<List<SubjectTypeSetting>>() {});
List<SubjectTypeSetting> customRegistrationLocations = objectMapper.convertValue(organisationConfigService.getSettingsByKey(KeyType.customRegistrationLocations.toString()), new TypeReference<List<SubjectTypeSetting>>() {
});
Optional<List<String>> locationUUIDs = customRegistrationLocations
.stream()
.filter(s -> s.getSubjectTypeUUID().equals(operationalSubjectType.getSubjectTypeUUID()))
Expand All @@ -111,7 +112,7 @@ public ResponseEntity getOne(@PathVariable("id") Long id) {

@PostMapping(value = "/web/subjectType")
@Transactional
ResponseEntity saveSubjectTypeForWeb(@RequestBody SubjectTypeContractWeb request) {
public ResponseEntity saveSubjectTypeForWeb(@RequestBody SubjectTypeContractWeb request) {
accessControlService.checkPrivilege(PrivilegeType.EditSubjectType);
SubjectType existingSubjectType =
subjectTypeRepository.findByNameIgnoreCase(request.getName());
Expand All @@ -121,7 +122,7 @@ ResponseEntity saveSubjectTypeForWeb(@RequestBody SubjectTypeContractWeb request
return ResponseEntity.badRequest().body(
ReactAdminUtil.generateJsonError(String.format("SubjectType %s already exists", request.getName()))
);
if(request.getType() == null){
if (request.getType() == null) {
return ResponseEntity.badRequest().body(
ReactAdminUtil.generateJsonError("Can't save subjectType with empty type")
);
Expand Down Expand Up @@ -197,10 +198,10 @@ public ResponseEntity updateSubjectTypeForWeb(@RequestBody SubjectTypeContractWe
SubjectType subjectType = operationalSubjectType.getSubjectType();
boolean isSyncConcept1Changed = !Objects.equals(request.getSyncRegistrationConcept1(), subjectType.getSyncRegistrationConcept1());
boolean isSyncConcept2Changed = !Objects.equals(request.getSyncRegistrationConcept2(), subjectType.getSyncRegistrationConcept2());
if (isSyncConcept1Changed)
subjectType.setSyncRegistrationConcept1Usable(false);
if (isSyncConcept2Changed)
subjectType.setSyncRegistrationConcept2Usable(false);
if (isSyncConcept1Changed)
subjectType.setSyncRegistrationConcept1Usable(false);
if (isSyncConcept2Changed)
subjectType.setSyncRegistrationConcept2Usable(false);
resetSyncService.recordSyncAttributeChange(operationalSubjectType.getSubjectType(), request);
updateSubjectType(request, operationalSubjectType);
subjectTypeService.updateSyncAttributesIfRequired(subjectType);
Expand Down Expand Up @@ -254,7 +255,7 @@ public ResponseEntity voidSubjectType(@PathVariable("id") Long id) {

@GetMapping(value = "/subjectType/syncAttributesData")
public UserSyncAttributeAssignmentRequest getAllConceptSyncAttributes() {
return subjectTypeService.getSyncAttributeData();
return subjectTypeService.getSyncAttributeData();
}

private void voidAllGroupRoles(SubjectType subjectType) {
Expand Down

0 comments on commit 68a5783

Please sign in to comment.