Inhalt
Aktueller Ordner:
duesseldorfer-schuelerinventar-android-studioProfile.java
package com.example.personalitytest.models;
import java.util.Date;
public class Profile {
private int id;
private int userId;
private String name;
private Date createdAt;
private Date modifiedAt;
private int[] answers;
private int[] competenceScores;
public Profile() {
this.answers = new int[36];
this.competenceScores = new int[6];
}
// Getter und Setter
public int getId() { return id; }
public int getUserId() { return userId; }
public String getName() { return name; }
public Date getCreatedAt() { return createdAt; }
public Date getModifiedAt() { return modifiedAt; }
public int[] getAnswers() { return answers; }
public int[] getCompetenceScores() { return competenceScores; }
public void setId(int id) { this.id = id; }
public void setUserId(int userId) { this.userId = userId; }
public void setName(String name) { this.name = name; }
public void setCreatedAt(Date createdAt) { this.createdAt = createdAt; }
public void setModifiedAt(Date modifiedAt) { this.modifiedAt = modifiedAt; }
// Methoden zur Berechnung der Kompetenzwerte
public void calculateScores(double[][] normTable) {
// Arbeitsverhalten (Items 1-10)
competenceScores[0] = calculateCompetence(0, new int[]{0,1,2,3,4,5,6,7,8,9}, normTable[0]);
// Lernverhalten (Items 11-20)
competenceScores[1] = calculateCompetence(1, new int[]{10,11,12,13,14,15,16,17,18,19}, normTable[1]);
// Sozialverhalten (Items 21-28 + 8,9)
competenceScores[2] = calculateCompetence(2, new int[]{20,21,22,23,24,25,26,27,8,9}, normTable[2]);
// Fachkompetenz (Items 29-36)
competenceScores[3] = calculateCompetence(3, new int[]{28,29,30,31,32,33,34,35}, normTable[3]);
// Personale Kompetenz
competenceScores[4] = calculateCompetence(4, new int[]{0,1,5,6,7,8,9,10,11,13,14}, normTable[4]);
// Methodenkompetenz
competenceScores[5] = calculateCompetence(5, new int[]{2,3,4,8,9,10,16,17}, normTable[5]);
}
private int calculateCompetence(int index, int[] itemIndices, double[] normValues) {
int sum = 0;
for (int i : itemIndices) {
sum += answers[i];
}
for (int i = 0; i < normValues.length; i++) {
if (sum < normValues[i]) {
return i + 1;
}
}
return normValues.length;
}
}