Skip to content

Commit

Permalink
Cropcert activity (#122)
Browse files Browse the repository at this point in the history
* update: 📝 added activity for cropcert

* update: 📝 updated path for cropcert activity

* update: :refactor: updated activity for cropcert

* upodate: :refactor: updated cropcert activity save

* update: 📝 updated cropcert valid activity types

* refactor: ♻️ removed unused imports

* update: :refactor: updated swagger cropcert message
  • Loading branch information
arunasd463 authored Nov 8, 2024
1 parent 031fa69 commit 92a77a1
Show file tree
Hide file tree
Showing 4 changed files with 65 additions and 15 deletions.
2 changes: 1 addition & 1 deletion src/main/java/com/strandls/activity/ApiConstants.java
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ private ApiConstants() {
public static final String REQUESTMAIL = "/requestmail";
public static final String DOWNLOADMAIL = "/downloadmail";
public static final String ODK = "/odk";

public static final String CROPCERT = "/cropcert";
public static final String PAGE = "/page";

}
Original file line number Diff line number Diff line change
Expand Up @@ -431,4 +431,20 @@ public Response odkUserMail(@Context HttpServletRequest request,
return Response.status(Status.UNAUTHORIZED).build();
}

@POST
@Path(ApiConstants.LOG + ApiConstants.CROPCERT)
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@ValidateUser
@ApiOperation(value = "Save the cropcert activity", response = Activity.class)
public Response save(@Context HttpServletRequest request, @ApiParam(name = "loggingData") Activity loggingData) {
Activity activity;
try {
activity = service.logCropcertActivities(request, loggingData);
return Response.status(Status.CREATED).entity(activity).build();
} catch (Exception e) {
return Response.status(Status.BAD_REQUEST).entity(e.getMessage()).build();
}
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -60,4 +60,5 @@ public Activity removeComment(HttpServletRequest request, Long userId, String co

public Boolean odkUserMail(ODKMailData odkMail);

public Activity logCropcertActivities(HttpServletRequest request, Activity loggingData);
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,10 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;

import javax.inject.Inject;
Expand Down Expand Up @@ -112,7 +114,7 @@ public class ActivityServiceImpl implements ActivityService {
List<String> recoActivities = new ArrayList<String>(Arrays.asList("obv unlocked", "Suggested species name",
"obv locked", "Agreed on species name", "Suggestion removed"));

// OBSERVATION ACTIVITY LIST
// OBSERVATION ACTIVITY LIST
List<String> obvNullActivityList = new ArrayList<String>(
Arrays.asList("Observation created", "Observation updated", "Rated media resource", "Observation Deleted"));

Expand All @@ -131,7 +133,7 @@ public class ActivityServiceImpl implements ActivityService {
List<String> observationActivityList = new ArrayList<String>(Arrays.asList("Featured", "Suggestion removed",
"Observation tag updated", "Custom field edited", "UnFeatured", "Observation species group updated"));

// USERGROUP ACTIVITY LIST
// USERGROUP ACTIVITY LIST

List<String> ugNullActivityList = new ArrayList<String>(Arrays.asList("Group updated", "Group created"));

Expand All @@ -146,7 +148,7 @@ public class ActivityServiceImpl implements ActivityService {
List<String> ugFilterRuleActivityList = new ArrayList<String>(
Arrays.asList("Added Filter Rule", "Removed Filter Rule", "Disabled Filter Rule", "Enabled Filter Rule"));

// DOCUMENT ACTIVITY LIST
// DOCUMENT ACTIVITY LIST

List<String> docNullActivityList = new ArrayList<String>(
Arrays.asList("Document created", "Document updated", "Document Deleted"));
Expand All @@ -161,7 +163,7 @@ public class ActivityServiceImpl implements ActivityService {

List<String> docCommentActivityList = new ArrayList<>(Arrays.asList(newComment));

// SPECIES ACTIVITY LIST
// SPECIES ACTIVITY LIST

List<String> speciesNullActivityList = new ArrayList<String>(Arrays.asList("Created species", "Deleted species"));

Expand All @@ -187,7 +189,7 @@ public class ActivityServiceImpl implements ActivityService {
List<String> speciesUserGroupActivityList = new ArrayList<String>(
Arrays.asList("Featured", "UnFeatured", "Posted resource", "Removed resoruce"));

// TAXONOMY ACTIVTY LIST
// TAXONOMY ACTIVTY LIST

List<String> taxonomyNullActivityList = new ArrayList<String>(
Arrays.asList("Deleted synonym", "Deleted common name"));
Expand All @@ -202,7 +204,7 @@ public class ActivityServiceImpl implements ActivityService {

List<String> taxonomyCommentActivityList = new ArrayList<>(Arrays.asList(newComment));

// DATATABLE ACTIVITY LIST
// DATATABLE ACTIVITY LIST

List<String> dataTableNullActivityList = new ArrayList<String>(
Arrays.asList("Datatable created", "Datatable updated", "Datatable deleted"));
Expand All @@ -217,7 +219,7 @@ public class ActivityServiceImpl implements ActivityService {

List<String> pageCommentActivityList = new ArrayList<>(Arrays.asList(newComment));

// CCA ACTIVITY LIST
// CCA ACTIVITY LIST
List<String> ccaTemplateActivityList = new ArrayList<>(Arrays.asList("Template created", "Template updated",
"Field created", "Field updated", "Field deleted", "CCA Template Deleted"));
List<String> ccaDataActivityList = new ArrayList<>(Arrays.asList("Data created", "Data updated", "Data deleted",
Expand Down Expand Up @@ -313,7 +315,7 @@ else if (objectType.equalsIgnoreCase("ccaTemplate"))
return activityResult;
}

// OBSERVATION ACTIVITY LOGGING
// OBSERVATION ACTIVITY LOGGING

@Override
public Activity logActivities(HttpServletRequest request, Long userId, ActivityLoggingData loggingData) {
Expand Down Expand Up @@ -708,7 +710,7 @@ public Activity removeComment(HttpServletRequest request, Long userId, String co
return activityResult;
}

// USERGROUP ACTIVITY LOGGING
// USERGROUP ACTIVITY LOGGING

@Override
public Activity logUGActivities(Long userId, UserGroupActivityLogging loggingData) {
Expand Down Expand Up @@ -750,7 +752,7 @@ public Activity logUGActivities(Long userId, UserGroupActivityLogging loggingDat
return activity;
}

// DOCUMENT ACTIVITY LOGGING
// DOCUMENT ACTIVITY LOGGING

@Override
public Activity logDocActivities(HttpServletRequest request, Long userId, DocumentActivityLogging loggingData) {
Expand Down Expand Up @@ -836,7 +838,7 @@ public Activity logDocActivities(HttpServletRequest request, Long userId, Docume
return null;
}

// SPECIES ACTIVITY LOGGING
// SPECIES ACTIVITY LOGGING
@Override
public Activity logSpeciesActivities(HttpServletRequest request, Long userId, SpeciesActivityLogging loggingData) {
try {
Expand Down Expand Up @@ -928,7 +930,8 @@ public Activity logSpeciesActivities(HttpServletRequest request, Long userId, Sp
return null;
}

// check if its a usergroup featuring or mother portal featuring and also if its usergroup activity
// check if its a usergroup featuring or mother portal featuring and also if its
// usergroup activity
private Boolean checkUserGroupFeatured(String acitivityType, String description) {
Boolean result = false;
try {
Expand All @@ -945,7 +948,7 @@ private Boolean checkUserGroupFeatured(String acitivityType, String description)

}

// TAXONOMY ACTIVITY LOGGING
// TAXONOMY ACTIVITY LOGGING

@Override
public Activity logTaxonomyActivities(HttpServletRequest request, Long userId,
Expand Down Expand Up @@ -987,7 +990,7 @@ public Activity logTaxonomyActivities(HttpServletRequest request, Long userId,
if (activity != null)
activity = activityDao.save(activity);

// TODO mailData integration
// TODO mailData integration

return activity;
} catch (Exception e) {
Expand Down Expand Up @@ -1257,4 +1260,34 @@ public Boolean odkUserMail(ODKMailData odkMail) {
return null;
}

public Activity logCropcertActivities(HttpServletRequest request, Activity loggingData) {
Activity activity = null;
try {
if (isValidCropcertActivityType(loggingData.getActivityType())) {

Date dateCreated = loggingData.getDateCreated() != null ? loggingData.getDateCreated() : new Date();
Date lastUpdated = loggingData.getLastUpdated() != null ? loggingData.getLastUpdated() : new Date();

activity = new Activity(null, loggingData.getActivityDescription(), loggingData.getActivityHolderId(),
loggingData.getActivityHolderType(), loggingData.getActivityType(), loggingData.getAuthorId(),
dateCreated, lastUpdated, loggingData.getRootHolderId(), loggingData.getRootHolderType(),
loggingData.getSubRootHolderId(), loggingData.getSubRootHolderType(), true);
}
if (activity != null) {
activity = activityDao.save(activity);
return activity;
}
} catch (Exception e) {
logger.error(e.getMessage());
}
return null;
}

private boolean isValidCropcertActivityType(String activityType) {
Set<String> allowedActivityTypes = new HashSet<>(
Arrays.asList("BATCH_CREATION", "BATCH_UPDATE", "FARMER_CREATION", "FARMER_UPDATE", "FARMER_DELETION",
"LOT_CREATION", "LOT_UPDATE", "FARMER_PRODUCE_CREATED", "FARMER_PRODUCE"));
return allowedActivityTypes.contains(activityType);
}

}

0 comments on commit 92a77a1

Please sign in to comment.