Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
b7385c7
Test commit for Assessment feature (#148)
karthik-tarento Nov 11, 2022
feca94e
changes
juhiagl8 Nov 14, 2022
0b21f35
changes
juhiagl8 Nov 14, 2022
2bbe01b
4.0.1 user notify (#153)
karthik-tarento Nov 18, 2022
7595ab4
Fixes for user notification preference
karthik-tarento Nov 18, 2022
8be9b17
Updated search index for notificationPreference.
karthik-tarento Nov 18, 2022
5eec6a2
Fixes for ES add and read functionalities
karthik-tarento Nov 18, 2022
714e9ed
Using proper error code for user patch API
karthik-tarento Nov 21, 2022
cdcf60f
final changes
juhiagl8 Nov 22, 2022
15df69a
Merge branch '4.0.1-assessmentRel-v2' of https://github.com/sunbird-c…
juhiagl8 Nov 22, 2022
10dcdd0
final changes retake assessment
juhiagl8 Dec 6, 2022
0527ffd
final changes retake assessment
juhiagl8 Dec 6, 2022
449942d
final changes retake assessment
juhiagl8 Dec 6, 2022
e29e0d2
final changes retake assessment
juhiagl8 Dec 7, 2022
d504fcb
Fixes for assessment retake API
karthik-tarento Dec 14, 2022
aacc776
Temp fix for application crash issue.
karthik-tarento Dec 14, 2022
e5e003d
User Last Name update fix
karthik-tarento Dec 15, 2022
358d7f5
changes for retake assessment
juhiagl8 Dec 19, 2022
dfc170d
changes for retake assessment
juhiagl8 Dec 21, 2022
5edf3d7
Update Dockerfile.build
Haritest Dec 23, 2022
fbcb49e
Update Dockerfile.build
Haritest Dec 23, 2022
391619c
reverted dockerfile changes
Haritest Dec 23, 2022
711364f
changes for retake assessment
juhiagl8 Jan 5, 2023
c90a5aa
Merge branch '4.0.1-assessmentRel-v2' of https://github.com/sunbird-c…
juhiagl8 Jan 5, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
379 changes: 0 additions & 379 deletions sb-cb-ext.iml

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package org.sunbird.cache;
package org.sunbird.assessment;

import java.util.*;
import java.util.concurrent.TimeUnit;
Expand All @@ -16,7 +16,6 @@ public class RedisCacheMgr {

private static final int cache_ttl = 84600;

@Autowired
private RedisTemplate<String, Object> redisTemplate;

@Autowired
Expand All @@ -40,6 +39,7 @@ public void putCache(String key, Object object) {

public boolean deleteKeyByName(String key) {
try {
key = key.toUpperCase();
redisTemplate.delete(Constants.REDIS_COMMON_KEY + key);
logger.info("Cache_key_value " + Constants.REDIS_COMMON_KEY + key + " is deleted from redis");
return true;
Expand All @@ -49,7 +49,7 @@ public boolean deleteKeyByName(String key) {
}
}

public boolean deleteAllCBExtKey() {
public boolean deleteAllKey() {
try {
String keyPattern = Constants.REDIS_COMMON_KEY + "*";
Set<String> keys = redisTemplate.keys(keyPattern);
Expand Down Expand Up @@ -87,11 +87,32 @@ public List<Object> mget(List<String> fields) {
return null;
}

public Set<String> getAllKeyNames() {
public boolean deleteCache() {
try {
String keyPattern = "*";
Set<String> keys = redisTemplate.keys(keyPattern);
if (!keys.isEmpty()) {
for (String key : keys) {

redisTemplate.delete(key);
}
logger.info("All Keys in Redis Cache is Deleted");
return true;
} else {
return false;
}
} catch (Exception e) {
logger.error(e);
return false;
}
}

public Set<String> getAllKeys() {
Set<String> keys = null;
try {
String keyPattern = Constants.REDIS_COMMON_KEY + "*";
String keyPattern = "*";
keys = redisTemplate.keys(keyPattern);

} catch (Exception e) {
logger.error(e);
return Collections.emptySet();
Expand All @@ -102,7 +123,7 @@ public Set<String> getAllKeyNames() {
public List<Map<String, Object>> getAllKeysAndValues() {
List<Map<String, Object>> result = new ArrayList<Map<String, Object>>();
try {
String keyPattern = Constants.REDIS_COMMON_KEY + "*";
String keyPattern = "*";
Map<String, Object> res = new HashMap<>();
Set<String> keys = redisTemplate.keys(keyPattern);
if (!keys.isEmpty()) {
Expand All @@ -119,4 +140,4 @@ public List<Map<String, Object>> getAllKeysAndValues() {
}
return result;
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,14 @@ public ResponseEntity<?> readQuestionList(@Valid @RequestBody Map<String, Object
SBApiResponse response = assessmentServiceV2.readQuestionList(requestBody, authUserToken);
return new ResponseEntity<>(response, response.getResponseCode());
}

@GetMapping("/v1/quml/assessment/retake/{assessmentIdentifier}")
public ResponseEntity<SBApiResponse> retakeAssessment(
@PathVariable("assessmentIdentifier") String assessmentIdentifier,
@RequestHeader(Constants.X_AUTH_TOKEN) String token) throws Exception {
SBApiResponse readResponse = assessmentServiceV2.retakeAssessment(assessmentIdentifier, token);
return new ResponseEntity<>(readResponse, readResponse.getResponseCode());
}
// QUML based Assessment APIs
// =======================
}
196 changes: 196 additions & 0 deletions src/main/java/org/sunbird/assessment/model/Competency.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,196 @@
package org.sunbird.assessment.model;

import javax.annotation.Generated;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"id",
"name",
"description",
"competencyType",
"competencyArea",
"source",
"selectedLevelId",
"selectedLevelLevel",
"selectedLevelName",
"selectedLevelDescription"
})
public class Competency {

@JsonProperty("id")
private String id;
@JsonProperty("name")
private String name;
@JsonProperty("description")
private String description;
@JsonProperty("competencyType")
private String competencyType;
@JsonProperty("competencyArea")
private String competencyArea;
@JsonProperty("source")
private String source;
@JsonProperty("selectedLevelId")
private String selectedLevelId;
@JsonProperty("selectedLevelLevel")
private String selectedLevelLevel;
@JsonProperty("selectedLevelName")
private String selectedLevelName;
@JsonProperty("selectedLevelDescription")
private String selectedLevelDescription;

@JsonProperty("id")
public String getId() {
return id;
}

@JsonProperty("id")
public void setId(String id) {
this.id = id;
}

@JsonProperty("name")
public String getName() {
return name;
}

@JsonProperty("name")
public void setName(String name) {
this.name = name;
}

@JsonProperty("description")
public String getDescription() {
return description;
}

@JsonProperty("description")
public void setDescription(String description) {
this.description = description;
}

@JsonProperty("competencyType")
public String getCompetencyType() {
return competencyType;
}

@JsonProperty("competencyType")
public void setCompetencyType(String competencyType) {
this.competencyType = competencyType;
}

@JsonProperty("competencyArea")
public String getCompetencyArea() {
return competencyArea;
}

@JsonProperty("competencyArea")
public void setCompetencyArea(String competencyArea) {
this.competencyArea = competencyArea;
}

@JsonProperty("source")
public String getSource() {
return source;
}

@JsonProperty("source")
public void setSource(String source) {
this.source = source;
}

@JsonProperty("selectedLevelId")
public String getSelectedLevelId() {
return selectedLevelId;
}

@JsonProperty("selectedLevelId")
public void setSelectedLevelId(String selectedLevelId) {
this.selectedLevelId = selectedLevelId;
}

@JsonProperty("selectedLevelLevel")
public String getSelectedLevelLevel() {
return selectedLevelLevel;
}

@JsonProperty("selectedLevelLevel")
public void setSelectedLevelLevel(String selectedLevelLevel) {
this.selectedLevelLevel = selectedLevelLevel;
}

@JsonProperty("selectedLevelName")
public String getSelectedLevelName() {
return selectedLevelName;
}

@JsonProperty("selectedLevelName")
public void setSelectedLevelName(String selectedLevelName) {
this.selectedLevelName = selectedLevelName;
}

@JsonProperty("selectedLevelDescription")
public String getSelectedLevelDescription() {
return selectedLevelDescription;
}

@JsonProperty("selectedLevelDescription")
public void setSelectedLevelDescription(String selectedLevelDescription) {
this.selectedLevelDescription = selectedLevelDescription;
}

@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(Competency.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
sb.append("id");
sb.append('=');
sb.append(((this.id == null)?"<null>":this.id));
sb.append(',');
sb.append("name");
sb.append('=');
sb.append(((this.name == null)?"<null>":this.name));
sb.append(',');
sb.append("description");
sb.append('=');
sb.append(((this.description == null)?"<null>":this.description));
sb.append(',');
sb.append("competencyType");
sb.append('=');
sb.append(((this.competencyType == null)?"<null>":this.competencyType));
sb.append(',');
sb.append("competencyArea");
sb.append('=');
sb.append(((this.competencyArea == null)?"<null>":this.competencyArea));
sb.append(',');
sb.append("source");
sb.append('=');
sb.append(((this.source == null)?"<null>":this.source));
sb.append(',');
sb.append("selectedLevelId");
sb.append('=');
sb.append(((this.selectedLevelId == null)?"<null>":this.selectedLevelId));
sb.append(',');
sb.append("selectedLevelLevel");
sb.append('=');
sb.append(((this.selectedLevelLevel == null)?"<null>":this.selectedLevelLevel));
sb.append(',');
sb.append("selectedLevelName");
sb.append('=');
sb.append(((this.selectedLevelName == null)?"<null>":this.selectedLevelName));
sb.append(',');
sb.append("selectedLevelDescription");
sb.append('=');
sb.append(((this.selectedLevelDescription == null)?"<null>":this.selectedLevelDescription));
sb.append(',');
if (sb.charAt((sb.length()- 1)) == ',') {
sb.setCharAt((sb.length()- 1), ']');
} else {
sb.append(']');
}
return sb.toString();
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,12 @@ public Map<String, Object> insertQuizOrAssessment(Map<String, Object> persist, B
public List<Map<String, Object>> getAssessmentbyContentUser(String rootOrg, String courseId, String userId)
throws Exception;

boolean addUserAssesmentStartTime(String userId, String assessmentIdentifier, Timestamp startTime);
List<Map<String, Object>> fetchUserAssessmentDataFromDB(String userId, String assessmentIdentifier);

Date fetchUserAssessmentStartTime(String userId, String s);
boolean addUserAssesmentDataToDB(String userId, String assessmentId, Timestamp startTime, Timestamp endTime,
Map<String, Object> questionSet, String status);

Boolean updateUserAssesmentDataToDB(String userId, String assessmentIdentifier,
Map<String, Object> submitAssessmentRequest, Map<String, Object> submitAssessmentResponse, String status,
Date startTime);
}
Loading