#14: Erste Arbeiten am vereinheitlichten DataModel.
This commit is contained in:
174
kBorrow.ucls
174
kBorrow.ucls
@@ -10,8 +10,8 @@
|
||||
<operations public="true" package="true" protected="true" private="true" static="true"/>
|
||||
</display>
|
||||
</class>
|
||||
<interface id="2" language="java" name="de.katho.kBorrow.db.DbConnector" project="kBorrow"
|
||||
file="/kBorrow/src/de/katho/kBorrow/db/DbConnector.java" binary="false" corner="BOTTOM_RIGHT">
|
||||
<interface id="2" language="java" name="de.katho.kBorrow.interfaces.DbConnector" project="kBorrow"
|
||||
file="/kBorrow/src/de/katho/kBorrow/interfaces/DbConnector.java" binary="false" corner="BOTTOM_RIGHT">
|
||||
<position height="225" width="217" x="1048" y="1066"/>
|
||||
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
|
||||
sort-features="false" accessors="true" visibility="true">
|
||||
@@ -19,8 +19,8 @@
|
||||
<operations public="true" package="true" protected="true" private="true" static="true"/>
|
||||
</display>
|
||||
</interface>
|
||||
<class id="3" language="java" name="de.katho.kBorrow.data.KUser" project="kBorrow"
|
||||
file="/kBorrow/src/de/katho/kBorrow/data/KUser.java" binary="false" corner="BOTTOM_RIGHT">
|
||||
<class id="3" language="java" name="de.katho.kBorrow.data.objects.KUser" project="kBorrow"
|
||||
file="/kBorrow/src/de/katho/kBorrow/data/objects/KUser.java" binary="false" corner="BOTTOM_RIGHT">
|
||||
<position height="225" width="143" x="724" y="1066"/>
|
||||
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
|
||||
sort-features="false" accessors="true" visibility="true">
|
||||
@@ -163,8 +163,8 @@
|
||||
<operations public="true" package="true" protected="true" private="true" static="true"/>
|
||||
</display>
|
||||
</class>
|
||||
<class id="19" language="java" name="de.katho.kBorrow.data.KArticle" project="kBorrow"
|
||||
file="/kBorrow/src/de/katho/kBorrow/data/KArticle.java" binary="false" corner="BOTTOM_RIGHT">
|
||||
<class id="19" language="java" name="de.katho.kBorrow.data.objects.KArticle" project="kBorrow"
|
||||
file="/kBorrow/src/de/katho/kBorrow/data/objects/KArticle.java" binary="false" corner="BOTTOM_RIGHT">
|
||||
<position height="225" width="154" x="2701" y="1066"/>
|
||||
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
|
||||
sort-features="false" accessors="true" visibility="true">
|
||||
@@ -181,126 +181,114 @@
|
||||
<operations public="true" package="true" protected="true" private="true" static="true"/>
|
||||
</display>
|
||||
</class>
|
||||
<association id="21">
|
||||
<end type="SOURCE" refId="17" navigable="false">
|
||||
<attribute id="22" name="set">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="23" minimum="0" maximum="1">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="1" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<association id="24">
|
||||
<bendpoint x="1017" y="639"/>
|
||||
<end type="SOURCE" refId="4" navigable="false">
|
||||
<attribute id="25" name="dbCon">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="26" minimum="0" maximum="1">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="2" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<association id="27">
|
||||
<bendpoint x="2798" y="639"/>
|
||||
<end type="SOURCE" refId="10" navigable="false">
|
||||
<attribute id="28" name="dbCon">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="29" minimum="0" maximum="1">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="2" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<generalization id="30">
|
||||
<end type="SOURCE" refId="13"/>
|
||||
<end type="TARGET" refId="12"/>
|
||||
</generalization>
|
||||
<realization id="31">
|
||||
<end type="SOURCE" refId="18"/>
|
||||
<end type="TARGET" refId="2"/>
|
||||
</realization>
|
||||
<realization id="32">
|
||||
<realization id="21">
|
||||
<end type="SOURCE" refId="9"/>
|
||||
<end type="TARGET" refId="2"/>
|
||||
</realization>
|
||||
<association id="33">
|
||||
<end type="SOURCE" refId="5" navigable="false">
|
||||
<attribute id="34" name="data">
|
||||
<generalization id="22">
|
||||
<end type="SOURCE" refId="6"/>
|
||||
<end type="TARGET" refId="12"/>
|
||||
</generalization>
|
||||
<association id="23">
|
||||
<bendpoint x="2798" y="639"/>
|
||||
<end type="SOURCE" refId="10" navigable="false">
|
||||
<attribute id="24" name="dbCon">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="35" minimum="0" maximum="2147483647">
|
||||
<multiplicity id="25" minimum="0" maximum="1">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="2" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<realization id="26">
|
||||
<end type="SOURCE" refId="18"/>
|
||||
<end type="TARGET" refId="2"/>
|
||||
</realization>
|
||||
<association id="27">
|
||||
<end type="SOURCE" refId="5" navigable="false">
|
||||
<attribute id="28" name="data">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="29" minimum="0" maximum="2147483647">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="19" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<generalization id="36">
|
||||
<end type="SOURCE" refId="6"/>
|
||||
<end type="TARGET" refId="12"/>
|
||||
</generalization>
|
||||
<association id="37">
|
||||
<end type="SOURCE" refId="14" navigable="false">
|
||||
<attribute id="38" name="dbCon">
|
||||
<association id="30">
|
||||
<bendpoint x="1017" y="639"/>
|
||||
<end type="SOURCE" refId="4" navigable="false">
|
||||
<attribute id="31" name="dbCon">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="39" minimum="0" maximum="1">
|
||||
<multiplicity id="32" minimum="0" maximum="1">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="2" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<association id="40">
|
||||
<end type="SOURCE" refId="14" navigable="false">
|
||||
<attribute id="41" name="data">
|
||||
<generalization id="33">
|
||||
<end type="SOURCE" refId="13"/>
|
||||
<end type="TARGET" refId="12"/>
|
||||
</generalization>
|
||||
<generalization id="34">
|
||||
<end type="SOURCE" refId="8"/>
|
||||
<end type="TARGET" refId="12"/>
|
||||
</generalization>
|
||||
<association id="35">
|
||||
<end type="SOURCE" refId="5" navigable="false">
|
||||
<attribute id="36" name="dbCon">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="42" minimum="0" maximum="2147483647">
|
||||
<multiplicity id="37" minimum="0" maximum="1">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="2" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<generalization id="38">
|
||||
<end type="SOURCE" refId="7"/>
|
||||
<end type="TARGET" refId="12"/>
|
||||
</generalization>
|
||||
<association id="39">
|
||||
<end type="SOURCE" refId="17" navigable="false">
|
||||
<attribute id="40" name="set">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="41" minimum="0" maximum="1">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="1" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<association id="42">
|
||||
<end type="SOURCE" refId="14" navigable="false">
|
||||
<attribute id="43" name="data">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="44" minimum="0" maximum="2147483647">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="3" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<generalization id="43">
|
||||
<end type="SOURCE" refId="7"/>
|
||||
<end type="TARGET" refId="12"/>
|
||||
</generalization>
|
||||
<association id="44">
|
||||
<end type="SOURCE" refId="5" navigable="false">
|
||||
<attribute id="45" name="dbCon">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="46" minimum="0" maximum="1">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
<end type="TARGET" refId="2" navigable="true"/>
|
||||
<display labels="true" multiplicity="true"/>
|
||||
</association>
|
||||
<generalization id="47">
|
||||
<generalization id="45">
|
||||
<end type="SOURCE" refId="16"/>
|
||||
<end type="TARGET" refId="12"/>
|
||||
</generalization>
|
||||
<generalization id="48">
|
||||
<end type="SOURCE" refId="8"/>
|
||||
<end type="TARGET" refId="12"/>
|
||||
</generalization>
|
||||
<association id="49">
|
||||
<association id="46">
|
||||
<end type="SOURCE" refId="17" navigable="false">
|
||||
<attribute id="50" name="dbCon">
|
||||
<attribute id="47" name="dbCon">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</attribute>
|
||||
<multiplicity id="51" minimum="0" maximum="1">
|
||||
<multiplicity id="48" minimum="0" maximum="1">
|
||||
<position height="0" width="0" x="0" y="0"/>
|
||||
</multiplicity>
|
||||
</end>
|
||||
|
||||
@@ -2,7 +2,8 @@ package de.katho.kBorrow.controller;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.models.ArticleTableModel;
|
||||
import de.katho.kBorrow.models.FreeArticleTableModel;
|
||||
|
||||
@@ -11,10 +12,10 @@ public class ArticleController {
|
||||
private ArticleTableModel articleTableModel;
|
||||
private FreeArticleTableModel freeArticleTableModel;
|
||||
|
||||
public ArticleController(DbConnector pDbCon, HashMap<String, Object> pModels){
|
||||
public ArticleController(DbConnector pDbCon, HashMap<String, KDataModel> models){
|
||||
dbCon = pDbCon;
|
||||
articleTableModel = (ArticleTableModel)pModels.get("articletablemodel");
|
||||
freeArticleTableModel = (FreeArticleTableModel)pModels.get("freearticletablemodel");
|
||||
articleTableModel = (ArticleTableModel)models.get("articletablemodel");
|
||||
freeArticleTableModel = (FreeArticleTableModel)models.get("freearticletablemodel");
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,8 +3,9 @@ package de.katho.kBorrow.controller;
|
||||
import java.util.HashMap;
|
||||
|
||||
import de.katho.kBorrow.Util;
|
||||
import de.katho.kBorrow.data.KLending;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.objects.KLending;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.models.ArticleTableModel;
|
||||
import de.katho.kBorrow.models.FreeArticleTableModel;
|
||||
import de.katho.kBorrow.models.LendingTableModel;
|
||||
@@ -16,12 +17,12 @@ public class ManageLendingsController {
|
||||
private ArticleTableModel articleTableModel;
|
||||
private LendingTableModel lendingTableModel;
|
||||
|
||||
public ManageLendingsController(DbConnector pDbCon, HashMap<String, Object> pModels){
|
||||
public ManageLendingsController(DbConnector pDbCon, HashMap<String, KDataModel> models){
|
||||
dbCon = pDbCon;
|
||||
|
||||
freeArticleTableModel = (FreeArticleTableModel)pModels.get("freearticletablemodel");
|
||||
articleTableModel = (ArticleTableModel)pModels.get("articletablemodel");
|
||||
lendingTableModel = (LendingTableModel)pModels.get("lendingtablemodel");
|
||||
freeArticleTableModel = (FreeArticleTableModel)models.get("freearticletablemodel");
|
||||
articleTableModel = (ArticleTableModel)models.get("articletablemodel");
|
||||
lendingTableModel = (LendingTableModel)models.get("lendingtablemodel");
|
||||
}
|
||||
|
||||
public void returnLending(int pRow) {
|
||||
|
||||
@@ -19,11 +19,12 @@ import java.util.HashMap;
|
||||
|
||||
import de.katho.kBorrow.Settings;
|
||||
import de.katho.kBorrow.Util;
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.data.KLending;
|
||||
import de.katho.kBorrow.data.KUser;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
import de.katho.kBorrow.data.objects.KLending;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.models.ArticleTableModel;
|
||||
import de.katho.kBorrow.models.FreeArticleTableModel;
|
||||
import de.katho.kBorrow.models.LenderModel;
|
||||
@@ -39,13 +40,13 @@ public class NewLendingController {
|
||||
private ArticleTableModel articleTableModel;
|
||||
private Settings settings;
|
||||
|
||||
public NewLendingController(DbConnector pDbCon, HashMap<String, Object> pModels, final Settings pSettings){
|
||||
public NewLendingController(DbConnector pDbCon, HashMap<String, KDataModel> models, final Settings pSettings){
|
||||
dbCon = pDbCon;
|
||||
userListModel = (UserListModel)pModels.get("userlistmodel");
|
||||
lenderModel = (LenderModel)pModels.get("lendermodel");
|
||||
freeArticleModel = (FreeArticleTableModel)pModels.get("freearticletablemodel");
|
||||
articleTableModel = (ArticleTableModel)pModels.get("articletablemodel");
|
||||
lendingTableModel = (LendingTableModel)pModels.get("lendingtablemodel");
|
||||
userListModel = (UserListModel)models.get("userlistmodel");
|
||||
lenderModel = (LenderModel)models.get("lendermodel");
|
||||
freeArticleModel = (FreeArticleTableModel)models.get("freearticletablemodel");
|
||||
articleTableModel = (ArticleTableModel)models.get("articletablemodel");
|
||||
lendingTableModel = (LendingTableModel)models.get("lendingtablemodel");
|
||||
settings = pSettings;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package de.katho.kBorrow.controller;
|
||||
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
|
||||
public class RewriteToNewUserController {
|
||||
|
||||
|
||||
@@ -2,33 +2,31 @@ package de.katho.kBorrow.controller;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.logging.Level;
|
||||
|
||||
import de.katho.kBorrow.data.KLending;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.KLogger;
|
||||
import de.katho.kBorrow.data.KLendingModel;
|
||||
import de.katho.kBorrow.data.objects.KLending;
|
||||
import de.katho.kBorrow.gui.RewriteToNewUserDialog;
|
||||
import de.katho.kBorrow.models.LendingTableModel;
|
||||
import de.katho.kBorrow.models.UserTableModel;
|
||||
import de.katho.kBorrow.models.UserListModel;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
|
||||
public class UserController {
|
||||
|
||||
private DbConnector dbCon;
|
||||
private UserTableModel userTableModel;
|
||||
private UserListModel userListModel;
|
||||
private LendingTableModel lendingTableModel;
|
||||
private KDataModel userModel;
|
||||
private KDataModel lendingModel;
|
||||
|
||||
public UserController(DbConnector pDbCon, HashMap<String, Object> pModels) {
|
||||
public UserController(DbConnector pDbCon, HashMap<String, KDataModel> models) {
|
||||
dbCon = pDbCon;
|
||||
userTableModel = (UserTableModel)pModels.get("usertablemodel");
|
||||
userListModel = (UserListModel)pModels.get("userlistmodel");
|
||||
lendingTableModel = (LendingTableModel)pModels.get("lendingtablemodel");
|
||||
userModel = models.get("kusermodel");
|
||||
lendingModel = models.get("klendingmodel");
|
||||
}
|
||||
|
||||
public int createUser(String pName, String pSurname){
|
||||
int status = dbCon.createUser(pName, pSurname);
|
||||
|
||||
userTableModel.updateModel();
|
||||
userListModel.updateModel();
|
||||
userModel.updateModel();
|
||||
|
||||
return status;
|
||||
}
|
||||
@@ -37,42 +35,43 @@ public class UserController {
|
||||
int status = dbCon.editUser(pId, pName, pSurname);
|
||||
|
||||
if(status == 0){
|
||||
userTableModel.updateModel();
|
||||
userListModel.updateModel();
|
||||
userModel.updateModel();
|
||||
}
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
public boolean deleteUser(int pRow) {
|
||||
int id = userTableModel.getUserByRow(pRow).getId();
|
||||
public boolean deleteUser(int pId) {
|
||||
if(!(lendingModel instanceof KLendingModel)) {
|
||||
KLogger.log(Level.SEVERE, "UserController: lendingModel type error!", new Exception("UserController: lendingModel type error!"));
|
||||
return false;
|
||||
}
|
||||
|
||||
boolean isOccupied = false;
|
||||
ArrayList<KLending> lendingList = lendingTableModel.getLendingList();
|
||||
|
||||
ArrayList<KLending> lendingList = ((KLendingModel)lendingModel).getData();
|
||||
for(KLending elem : lendingList){
|
||||
if(elem.getUserId() == id){
|
||||
if(elem.getUserId() == pId){
|
||||
isOccupied = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(isOccupied){
|
||||
RewriteToNewUserDialog dialog = new RewriteToNewUserDialog(id, dbCon);
|
||||
RewriteToNewUserDialog dialog = new RewriteToNewUserDialog(pId, dbCon);
|
||||
if(dialog.getResult() == 0){
|
||||
lendingTableModel.updateModel();
|
||||
userTableModel.updateModel();
|
||||
userListModel.updateModel();
|
||||
lendingModel.updateModel();
|
||||
userModel.updateModel();
|
||||
|
||||
return deleteUser(pRow);
|
||||
return deleteUser(pId);
|
||||
}
|
||||
else return false;
|
||||
|
||||
}
|
||||
else {
|
||||
if(dbCon.deleteUser(id)){
|
||||
userTableModel.updateModel();
|
||||
userListModel.updateModel();
|
||||
lendingTableModel.updateModel();
|
||||
if(dbCon.deleteUser(pId)){
|
||||
userModel.updateModel();
|
||||
lendingModel.updateModel();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ package de.katho.kBorrow.converter;
|
||||
|
||||
import org.jdesktop.swingx.autocomplete.ObjectToStringConverter;
|
||||
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
|
||||
public class LenderNameConverter extends ObjectToStringConverter {
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ package de.katho.kBorrow.converter;
|
||||
|
||||
import org.jdesktop.swingx.autocomplete.ObjectToStringConverter;
|
||||
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
|
||||
public class LenderStudentnumberConverter extends ObjectToStringConverter {
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ package de.katho.kBorrow.converter;
|
||||
|
||||
import org.jdesktop.swingx.autocomplete.ObjectToStringConverter;
|
||||
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
|
||||
public class LenderSurnameConverter extends ObjectToStringConverter {
|
||||
|
||||
|
||||
45
src/de/katho/kBorrow/data/KArticleModel.java
Normal file
45
src/de/katho/kBorrow/data/KArticleModel.java
Normal file
@@ -0,0 +1,45 @@
|
||||
package de.katho.kBorrow.data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class KArticleModel implements KDataModel {
|
||||
|
||||
private ArrayList<KGuiModel> models = new ArrayList<KGuiModel>();
|
||||
private ArrayList<KArticle> data = new ArrayList<KArticle>();
|
||||
private DbConnector dbCon;
|
||||
|
||||
public KArticleModel(DbConnector pDbCon) {
|
||||
dbCon = pDbCon;
|
||||
updateModel();
|
||||
}
|
||||
|
||||
public void register(KGuiModel pModel) {
|
||||
if(!models.contains(pModel)){
|
||||
pModel.fetchData(this);
|
||||
models.add(pModel);
|
||||
}
|
||||
}
|
||||
|
||||
public void updateModel() {
|
||||
data = dbCon.getArticleList();
|
||||
|
||||
for(KGuiModel model : models){
|
||||
model.fetchData(this);
|
||||
}
|
||||
}
|
||||
|
||||
public ArrayList<KArticle> getData() {
|
||||
return data;
|
||||
}
|
||||
|
||||
public Object get(int id) {
|
||||
if(data.size() > id) return data.get(id);
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
46
src/de/katho/kBorrow/data/KLenderModel.java
Normal file
46
src/de/katho/kBorrow/data/KLenderModel.java
Normal file
@@ -0,0 +1,46 @@
|
||||
package de.katho.kBorrow.data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class KLenderModel implements KDataModel {
|
||||
|
||||
private ArrayList<KGuiModel> models = new ArrayList<KGuiModel>();
|
||||
private ArrayList<KLender> data = new ArrayList<KLender>();
|
||||
private DbConnector dbCon;
|
||||
|
||||
public KLenderModel(DbConnector pDbCon) {
|
||||
dbCon = pDbCon;
|
||||
updateModel();
|
||||
}
|
||||
|
||||
public void register(KGuiModel pModel) {
|
||||
if(!models.contains(pModel)){
|
||||
pModel.fetchData(this);
|
||||
models.add(pModel);
|
||||
}
|
||||
}
|
||||
|
||||
public void updateModel() {
|
||||
data = dbCon.getLenderList();
|
||||
|
||||
for(KGuiModel model : models){
|
||||
model.fetchData(this);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public ArrayList<KLender> getData() {
|
||||
return data;
|
||||
}
|
||||
|
||||
public Object get(int id) {
|
||||
if(data.size() > id) return data.get(id);
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
46
src/de/katho/kBorrow/data/KLendingModel.java
Normal file
46
src/de/katho/kBorrow/data/KLendingModel.java
Normal file
@@ -0,0 +1,46 @@
|
||||
package de.katho.kBorrow.data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import de.katho.kBorrow.data.objects.KLending;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class KLendingModel implements KDataModel {
|
||||
|
||||
private ArrayList<KGuiModel> models = new ArrayList<KGuiModel>();
|
||||
private ArrayList<KLending> data = new ArrayList<KLending>();
|
||||
private DbConnector dbCon;
|
||||
|
||||
public KLendingModel(DbConnector pDbCon) {
|
||||
dbCon = pDbCon;
|
||||
updateModel();
|
||||
}
|
||||
|
||||
public void register(KGuiModel pModel) {
|
||||
if(!models.contains(pModel)){
|
||||
pModel.fetchData(this);
|
||||
models.add(pModel);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void updateModel() {
|
||||
data = dbCon.getLendingList();
|
||||
|
||||
for(KGuiModel model : models){
|
||||
model.fetchData(this);
|
||||
}
|
||||
}
|
||||
|
||||
public ArrayList<KLending> getData() {
|
||||
return data;
|
||||
}
|
||||
|
||||
public Object get(int id) {
|
||||
if(data.size() > id) return data.get(id);
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
45
src/de/katho/kBorrow/data/KUserModel.java
Normal file
45
src/de/katho/kBorrow/data/KUserModel.java
Normal file
@@ -0,0 +1,45 @@
|
||||
package de.katho.kBorrow.data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class KUserModel implements KDataModel {
|
||||
|
||||
private ArrayList<KGuiModel> models = new ArrayList<KGuiModel>();
|
||||
private ArrayList<KUser> data = new ArrayList<KUser>();
|
||||
private DbConnector dbCon;
|
||||
|
||||
public KUserModel(DbConnector pDbCon){
|
||||
dbCon = pDbCon;
|
||||
updateModel();
|
||||
}
|
||||
|
||||
public void updateModel(){
|
||||
data = dbCon.getUserList();
|
||||
|
||||
for(KGuiModel model : models){
|
||||
model.fetchData(this);
|
||||
}
|
||||
}
|
||||
|
||||
public void register(KGuiModel pModel) {
|
||||
if(!models.contains(pModel)) {
|
||||
pModel.fetchData(this);
|
||||
models.add(pModel);
|
||||
}
|
||||
}
|
||||
|
||||
public ArrayList<KUser> getData() {
|
||||
return data;
|
||||
}
|
||||
|
||||
public Object get(int id) {
|
||||
if(data.size() > id) return data.get(id);
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package de.katho.kBorrow.data;
|
||||
package de.katho.kBorrow.data.objects;
|
||||
|
||||
public class KArticle {
|
||||
private int id;
|
||||
@@ -1,4 +1,4 @@
|
||||
package de.katho.kBorrow.data;
|
||||
package de.katho.kBorrow.data.objects;
|
||||
|
||||
public class KLender {
|
||||
private String name;
|
||||
@@ -1,4 +1,4 @@
|
||||
package de.katho.kBorrow.data;
|
||||
package de.katho.kBorrow.data.objects;
|
||||
|
||||
public class KLending {
|
||||
private int id;
|
||||
@@ -1,4 +1,4 @@
|
||||
package de.katho.kBorrow.data;
|
||||
package de.katho.kBorrow.data.objects;
|
||||
|
||||
public class KUser {
|
||||
private String name;
|
||||
@@ -2,10 +2,11 @@ package de.katho.kBorrow.db;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.data.KLending;
|
||||
import de.katho.kBorrow.data.KUser;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
import de.katho.kBorrow.data.objects.KLending;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
|
||||
public class SqlConnector implements DbConnector{
|
||||
|
||||
@@ -117,4 +118,10 @@ public class SqlConnector implements DbConnector{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ArrayList<KLending> getLendingList() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -13,10 +13,11 @@ import java.util.Hashtable;
|
||||
import java.util.Map.Entry;
|
||||
|
||||
import de.katho.kBorrow.Util;
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.data.KLending;
|
||||
import de.katho.kBorrow.data.KUser;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
import de.katho.kBorrow.data.objects.KLending;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
|
||||
/**
|
||||
* @class sqliteConnector
|
||||
@@ -287,6 +288,25 @@ public class SqliteConnector implements DbConnector {
|
||||
}
|
||||
}
|
||||
|
||||
public ArrayList<KLending> getLendingList(){
|
||||
ArrayList<KLending> lendingArr = new ArrayList<KLending>();
|
||||
|
||||
try {
|
||||
Statement st = connection.createStatement();
|
||||
String query = "SELECT id, user_id, lender_id, article_id, start_date, expected_end_date, end_date FROM lending";
|
||||
|
||||
ResultSet rs = st.executeQuery(query);
|
||||
|
||||
while (rs.next()){
|
||||
lendingArr.add(new KLending(rs.getInt("id"), rs.getInt("user_id"), rs.getInt("lender_id"), rs.getInt("article_id"), rs.getString("start_date"), rs.getString("expected_end_date"), rs.getString("end_date")));
|
||||
}
|
||||
}
|
||||
catch(SQLException e){
|
||||
Util.showWarning(e);
|
||||
}
|
||||
return lendingArr;
|
||||
}
|
||||
|
||||
public ArrayList<KLending> getActiveLendingList() {
|
||||
ArrayList<KLending> lendingArr = new ArrayList<KLending>();
|
||||
|
||||
|
||||
@@ -11,8 +11,9 @@ import javax.swing.JLabel;
|
||||
import javax.swing.JTable;
|
||||
import javax.swing.JTextArea;
|
||||
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.models.ArticleInspectTableModel;
|
||||
import de.katho.kBorrow.models.ArticleTableModel;
|
||||
|
||||
@@ -31,8 +32,8 @@ public class ArticleInspectFrame extends JFrame {
|
||||
/**
|
||||
* Create the frame.
|
||||
*/
|
||||
public ArticleInspectFrame(int pRow, final DbConnector dbCon, HashMap<String, Object> pModels) {
|
||||
articleModel = (ArticleTableModel)pModels.get("articletablemodel");
|
||||
public ArticleInspectFrame(int pRow, final DbConnector dbCon, HashMap<String, KDataModel> models) {
|
||||
articleModel = (ArticleTableModel)models.get("articletablemodel");
|
||||
article = articleModel.getArticleByRow(pRow);
|
||||
|
||||
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
|
||||
@@ -71,7 +72,7 @@ public class ArticleInspectFrame extends JFrame {
|
||||
panelInfo.add(taArticleDesc);
|
||||
|
||||
// Table
|
||||
artInsModel = new ArticleInspectTableModel(pRow, dbCon, pModels);
|
||||
artInsModel = new ArticleInspectTableModel(pRow, dbCon, models);
|
||||
table = new JTable(artInsModel);
|
||||
table.setFillsViewportHeight(true);
|
||||
table.setRowHeight(30);
|
||||
|
||||
@@ -24,8 +24,9 @@ import javax.swing.UIManager;
|
||||
import javax.swing.border.TitledBorder;
|
||||
|
||||
import de.katho.kBorrow.controller.ArticleController;
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.listener.ArticleDeleteTableButton;
|
||||
import de.katho.kBorrow.listener.ArticleEditTableButton;
|
||||
import de.katho.kBorrow.listener.ArticleInspectTableButton;
|
||||
@@ -48,11 +49,11 @@ public class ArticlePanel extends JPanel implements ActionListener, KeyListener
|
||||
* Create the panel.
|
||||
* @throws IOException
|
||||
*/
|
||||
public ArticlePanel(final DbConnector dbCon, HashMap<String, Object> pModels) throws IOException {
|
||||
public ArticlePanel(final DbConnector dbCon, HashMap<String, KDataModel> models) throws IOException {
|
||||
super();
|
||||
this.setLayout(null);
|
||||
articleTableModel = (ArticleTableModel)pModels.get("articletablemodel");
|
||||
articleController = new ArticleController(dbCon, pModels);
|
||||
articleTableModel = (ArticleTableModel)models.get("articletablemodel");
|
||||
articleController = new ArticleController(dbCon, models);
|
||||
|
||||
/*
|
||||
* Tabelle und drumherum
|
||||
@@ -62,7 +63,7 @@ public class ArticlePanel extends JPanel implements ActionListener, KeyListener
|
||||
articleTable.setRowHeight(30);
|
||||
ArticleDeleteTableButton articleDeleteTableButton = new ArticleDeleteTableButton("L<EFBFBD>schen", articleTable, this, articleController);
|
||||
ArticleEditTableButton articleEditTableButton = new ArticleEditTableButton("Bearbeiten", articleTable, this);
|
||||
ArticleInspectTableButton articleInspectTableButton = new ArticleInspectTableButton("Details", articleTable, dbCon, pModels);
|
||||
ArticleInspectTableButton articleInspectTableButton = new ArticleInspectTableButton("Details", articleTable, dbCon, models);
|
||||
|
||||
for (int i = 3; i <= 5; i++){
|
||||
articleTable.getColumnModel().getColumn(i).setCellEditor(i == 3 ? articleInspectTableButton : i == 4 ? articleEditTableButton : articleDeleteTableButton);
|
||||
|
||||
@@ -12,16 +12,14 @@ import java.util.HashMap;
|
||||
|
||||
import de.katho.kBorrow.Settings;
|
||||
import de.katho.kBorrow.Util;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.KArticleModel;
|
||||
import de.katho.kBorrow.data.KLenderModel;
|
||||
import de.katho.kBorrow.data.KLendingModel;
|
||||
import de.katho.kBorrow.data.KUserModel;
|
||||
import de.katho.kBorrow.db.SqlConnector;
|
||||
import de.katho.kBorrow.db.SqliteConnector;
|
||||
import de.katho.kBorrow.models.ArticleTableModel;
|
||||
import de.katho.kBorrow.models.FreeArticleTableModel;
|
||||
import de.katho.kBorrow.models.LenderModel;
|
||||
import de.katho.kBorrow.models.LendingTableModel;
|
||||
import de.katho.kBorrow.models.UserTableModel;
|
||||
import de.katho.kBorrow.models.UserListModel;
|
||||
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
|
||||
public class MainWindow {
|
||||
|
||||
@@ -33,7 +31,7 @@ public class MainWindow {
|
||||
|
||||
|
||||
private Settings set;
|
||||
private HashMap<String, Object> models;
|
||||
private HashMap<String, KDataModel> models;
|
||||
|
||||
/**
|
||||
* Create the application.
|
||||
@@ -71,13 +69,11 @@ public class MainWindow {
|
||||
dbCon = new SqlConnector();
|
||||
}
|
||||
|
||||
models = new HashMap<String, Object>();
|
||||
models.put("usertablemodel", new UserTableModel(dbCon));
|
||||
models.put("userlistmodel", new UserListModel(dbCon));
|
||||
models.put("articletablemodel", new ArticleTableModel(dbCon));
|
||||
models.put("freearticletablemodel", new FreeArticleTableModel(dbCon));
|
||||
models.put("lendermodel", new LenderModel(dbCon));
|
||||
models.put("lendingtablemodel", new LendingTableModel(dbCon, models));
|
||||
models = new HashMap<String, KDataModel>();
|
||||
models.put("karticlemodel", new KArticleModel(dbCon));
|
||||
models.put("klendermodel", new KLenderModel(dbCon));
|
||||
models.put("klendingmodel", new KLendingModel(dbCon));
|
||||
models.put("kusermodel", new KUserModel(dbCon));
|
||||
|
||||
tabbedPane = new JTabbedPane(JTabbedPane.TOP);
|
||||
frame.getContentPane().add(tabbedPane, BorderLayout.CENTER);
|
||||
|
||||
@@ -4,10 +4,11 @@ import java.util.HashMap;
|
||||
import javax.swing.JPanel;
|
||||
|
||||
import de.katho.kBorrow.controller.ManageLendingsController;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
|
||||
|
||||
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.listener.LendingReturnTableButton;
|
||||
import de.katho.kBorrow.models.LendingTableModel;
|
||||
|
||||
@@ -29,7 +30,7 @@ public class ManageLendingsPanel extends JPanel {
|
||||
private LendingTableModel lendingTableModel;
|
||||
private ManageLendingsController manageLendingsController;
|
||||
|
||||
public ManageLendingsPanel(DbConnector dbCon, HashMap<String, Object> models) throws IOException {
|
||||
public ManageLendingsPanel(DbConnector dbCon, HashMap<String, KDataModel> models) throws IOException {
|
||||
|
||||
lendingTableModel = (LendingTableModel)models.get("lendingtablemodel");
|
||||
manageLendingsController = new ManageLendingsController(dbCon, models);
|
||||
|
||||
@@ -34,9 +34,10 @@ import de.katho.kBorrow.controller.NewLendingController;
|
||||
import de.katho.kBorrow.converter.LenderNameConverter;
|
||||
import de.katho.kBorrow.converter.LenderStudentnumberConverter;
|
||||
import de.katho.kBorrow.converter.LenderSurnameConverter;
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.listener.NewLendingTableButton;
|
||||
import de.katho.kBorrow.models.FreeArticleTableModel;
|
||||
import de.katho.kBorrow.models.LenderModel;
|
||||
@@ -58,7 +59,7 @@ public class NewLendingPanel extends JPanel implements ActionListener, FocusList
|
||||
private JLabel lblStartDate;
|
||||
private JLabel lblArticleName;
|
||||
private int articleId;
|
||||
private LenderModel lenderModel;
|
||||
//private LenderModel lenderModel;
|
||||
private JButton btnCancel;
|
||||
private JButton btnSave;
|
||||
private NewLendingController newLendingController;
|
||||
@@ -71,15 +72,15 @@ public class NewLendingPanel extends JPanel implements ActionListener, FocusList
|
||||
* @param dbCon
|
||||
* @throws IOException
|
||||
*/
|
||||
public NewLendingPanel(final DbConnector dbCon, HashMap<String, Object> pModel, final Settings pSettings) throws IOException {
|
||||
public NewLendingPanel(final DbConnector dbCon, HashMap<String, KDataModel> models, final Settings pSettings) throws IOException {
|
||||
setLayout(null);
|
||||
articleId = -1;
|
||||
|
||||
// FreeArticleTable
|
||||
freeArticleTableModel = (FreeArticleTableModel)pModel.get("freearticletablemodel");
|
||||
userListModel = (UserListModel)pModel.get("userlistmodel");
|
||||
lenderModel = (LenderModel)pModel.get("lendermodel");
|
||||
newLendingController = new NewLendingController(dbCon, pModel, pSettings);
|
||||
freeArticleTableModel = (FreeArticleTableModel)models.get("freearticletablemodel");
|
||||
userListModel = new UserListModel(models.get("kusermodel"));
|
||||
lenderModel = (LenderModel)models.get("lendermodel");
|
||||
newLendingController = new NewLendingController(dbCon, models, pSettings);
|
||||
|
||||
JTable freeArticleTable = new JTable(freeArticleTableModel);
|
||||
freeArticleTable.setRowHeight(30);
|
||||
|
||||
@@ -10,11 +10,12 @@ import javax.swing.border.EmptyBorder;
|
||||
import javax.swing.JComboBox;
|
||||
|
||||
import de.katho.kBorrow.controller.RewriteToNewUserController;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.models.RewriteUserModel;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
|
||||
import javax.swing.JLabel;
|
||||
|
||||
public class RewriteToNewUserDialog extends JDialog implements ActionListener {
|
||||
|
||||
@@ -20,8 +20,9 @@ import javax.swing.UIManager;
|
||||
import javax.swing.border.TitledBorder;
|
||||
|
||||
import de.katho.kBorrow.controller.UserController;
|
||||
import de.katho.kBorrow.data.KUser;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.listener.UserDeleteTableButton;
|
||||
import de.katho.kBorrow.listener.UserEditTableButton;
|
||||
import de.katho.kBorrow.models.UserTableModel;
|
||||
@@ -39,11 +40,11 @@ public class UserPanel extends JPanel implements ActionListener, KeyListener {
|
||||
private UserTableModel userTableModel;
|
||||
private UserController userController;
|
||||
|
||||
public UserPanel(final DbConnector dbCon, HashMap<String, Object> pModels) throws IOException{
|
||||
public UserPanel(final DbConnector dbCon, HashMap<String, KDataModel> models) throws IOException{
|
||||
super();
|
||||
setLayout(null);
|
||||
userTableModel = (UserTableModel)pModels.get("usertablemodel");
|
||||
userController = new UserController(dbCon, pModels);
|
||||
userTableModel = (UserTableModel)models.get("usertablemodel");
|
||||
userController = new UserController(dbCon, models);
|
||||
|
||||
//Tabelle und drumherum
|
||||
JTable userTable = new JTable(userTableModel);
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
package de.katho.kBorrow.db;
|
||||
package de.katho.kBorrow.interfaces;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.data.KLending;
|
||||
import de.katho.kBorrow.data.KUser;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
import de.katho.kBorrow.data.objects.KLending;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
|
||||
public interface DbConnector {
|
||||
|
||||
@@ -23,6 +23,7 @@ public interface DbConnector {
|
||||
public int createNewLender(String pLName, String pLSurname, String pLSN);
|
||||
public ArrayList<KLending> getActiveLendingList();
|
||||
public int returnLending(int lendingId, int artId, String string);
|
||||
public ArrayList<KLending> getLendingList();
|
||||
public ArrayList<KLending> getLendingListForArticle(int pArtId);
|
||||
public ArrayList<KUser> getRewriteUserList(int id);
|
||||
public boolean rewriteToNewUser(int pOldId, int pNewId);
|
||||
10
src/de/katho/kBorrow/interfaces/KDataModel.java
Normal file
10
src/de/katho/kBorrow/interfaces/KDataModel.java
Normal file
@@ -0,0 +1,10 @@
|
||||
package de.katho.kBorrow.interfaces;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
public interface KDataModel {
|
||||
public void register(KGuiModel pModel);
|
||||
public void updateModel();
|
||||
public ArrayList<?> getData();
|
||||
public Object get(int id);
|
||||
}
|
||||
6
src/de/katho/kBorrow/interfaces/KGuiModel.java
Normal file
6
src/de/katho/kBorrow/interfaces/KGuiModel.java
Normal file
@@ -0,0 +1,6 @@
|
||||
package de.katho.kBorrow.interfaces;
|
||||
|
||||
|
||||
public interface KGuiModel {
|
||||
public void fetchData(KDataModel pModel);
|
||||
}
|
||||
@@ -10,8 +10,9 @@ import javax.swing.ImageIcon;
|
||||
import javax.swing.JTable;
|
||||
|
||||
import sun.tools.jar.Main;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.gui.ArticleInspectFrame;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
|
||||
public class ArticleInspectTableButton extends TableButton {
|
||||
|
||||
@@ -20,7 +21,7 @@ public class ArticleInspectTableButton extends TableButton {
|
||||
*/
|
||||
private static final long serialVersionUID = -2591133864537097893L;
|
||||
|
||||
public ArticleInspectTableButton(String pLabel, final JTable pTable, final DbConnector dbCon, final HashMap<String, Object> pModels) throws IOException {
|
||||
public ArticleInspectTableButton(String pLabel, final JTable pTable, final DbConnector dbCon, final HashMap<String, KDataModel> models) throws IOException {
|
||||
super(pLabel);
|
||||
URL url = Main.class.getResource("/icons/system-search.png");
|
||||
ImageIcon icon = new ImageIcon(url);
|
||||
@@ -34,7 +35,7 @@ public class ArticleInspectTableButton extends TableButton {
|
||||
|
||||
int row = pTable.getSelectedRow();
|
||||
|
||||
new ArticleInspectFrame(row, dbCon, pModels);
|
||||
new ArticleInspectFrame(row, dbCon, models);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ import javax.swing.JTable;
|
||||
import sun.tools.jar.Main;
|
||||
import de.katho.kBorrow.controller.UserController;
|
||||
import de.katho.kBorrow.gui.UserPanel;
|
||||
import de.katho.kBorrow.models.UserTableModel;
|
||||
|
||||
public class UserDeleteTableButton extends TableButton {
|
||||
|
||||
@@ -29,8 +30,9 @@ public class UserDeleteTableButton extends TableButton {
|
||||
fireEditingStopped();
|
||||
|
||||
int row = pTable.getSelectedRow();
|
||||
int id = ((UserTableModel)pTable.getModel()).rowToId(row);
|
||||
|
||||
if(pController.deleteUser(row)) pPanel.setStatusLabel("Benutzer erfolgreich gel<65>scht.");
|
||||
if(pController.deleteUser(id)) pPanel.setStatusLabel("Benutzer erfolgreich gel<65>scht.");
|
||||
else pPanel.setStatusLabel("Beuntzer konnte nicht gel<65>scht werden.");
|
||||
|
||||
pPanel.resetModeEditUser();
|
||||
|
||||
@@ -5,13 +5,15 @@ import java.util.HashMap;
|
||||
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.data.KLending;
|
||||
import de.katho.kBorrow.data.KUser;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
import de.katho.kBorrow.data.objects.KLending;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class ArticleInspectTableModel extends AbstractTableModel {
|
||||
public class ArticleInspectTableModel extends AbstractTableModel implements KGuiModel {
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -26,12 +28,12 @@ public class ArticleInspectTableModel extends AbstractTableModel {
|
||||
private LenderModel lenderModel;
|
||||
|
||||
|
||||
public ArticleInspectTableModel(int pRow, DbConnector pDbCon, HashMap<String, Object> pModels){
|
||||
public ArticleInspectTableModel(int pRow, DbConnector pDbCon, HashMap<String, KDataModel> models){
|
||||
header = new String[] {"ID", "Verliehen von:", "Ausgeliehen an:", "Ausleihdatum", "Vor. R<>ckgabe", "R<EFBFBD>ckgabe"};
|
||||
dbCon = pDbCon;
|
||||
articleModel = (ArticleTableModel)pModels.get("articletablemodel");
|
||||
userModel = (UserTableModel)pModels.get("usertablemodel");
|
||||
lenderModel = (LenderModel)pModels.get("lendermodel");
|
||||
articleModel = (ArticleTableModel)models.get("articletablemodel");
|
||||
userModel = (UserTableModel)models.get("usertablemodel");
|
||||
lenderModel = (LenderModel)models.get("lendermodel");
|
||||
|
||||
article = articleModel.getArticleByRow(pRow);
|
||||
|
||||
|
||||
@@ -4,10 +4,11 @@ import java.util.ArrayList;
|
||||
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class ArticleTableModel extends AbstractTableModel {
|
||||
public class ArticleTableModel extends AbstractTableModel implements KGuiModel {
|
||||
|
||||
/**
|
||||
*
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
package de.katho.kBorrow.models;
|
||||
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.DbConnector;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class FreeArticleTableModel extends ArticleTableModel {
|
||||
public class FreeArticleTableModel extends ArticleTableModel implements KGuiModel {
|
||||
|
||||
/**
|
||||
*
|
||||
|
||||
@@ -2,20 +2,16 @@ package de.katho.kBorrow.models;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.KLenderModel;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class LenderModel {
|
||||
public class LenderModel implements KGuiModel {
|
||||
private ArrayList<KLender> data;
|
||||
private DbConnector dbCon;
|
||||
|
||||
public LenderModel(DbConnector pDbCon){
|
||||
dbCon = pDbCon;
|
||||
updateModel();
|
||||
}
|
||||
|
||||
public void updateModel(){
|
||||
data = dbCon.getLenderList();
|
||||
public LenderModel(KDataModel pModel){
|
||||
pModel.register(this);
|
||||
}
|
||||
|
||||
public ArrayList<KLender> getList(){
|
||||
@@ -115,4 +111,10 @@ public class LenderModel {
|
||||
public KLender getLenderByRow(int pRow){
|
||||
return data.get(pRow);
|
||||
}
|
||||
|
||||
public void fetchData(KDataModel pModel) {
|
||||
if(pModel instanceof KLenderModel){
|
||||
data = ((KLenderModel)pModel).getData();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,32 +5,34 @@ import java.util.HashMap;
|
||||
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
|
||||
import de.katho.kBorrow.data.KArticle;
|
||||
import de.katho.kBorrow.data.KLender;
|
||||
import de.katho.kBorrow.data.KLending;
|
||||
import de.katho.kBorrow.data.KUser;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.KLendingModel;
|
||||
import de.katho.kBorrow.data.objects.KArticle;
|
||||
import de.katho.kBorrow.data.objects.KLender;
|
||||
import de.katho.kBorrow.data.objects.KLending;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class LendingTableModel extends AbstractTableModel {
|
||||
public class LendingTableModel extends AbstractTableModel implements KGuiModel {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 1375465648631587292L;
|
||||
private DbConnector dbCon;
|
||||
private String[] header = {"ID", "Artikel", "Verliehen von:", "Ausgeliehen an:", "Ausleihdatum", "Vor. R<>ckgabe", ""};
|
||||
private ArrayList<KLending> data = new ArrayList<KLending>();
|
||||
private ArticleTableModel articleModel;
|
||||
private LenderModel lenderModel;
|
||||
private UserTableModel userTableModel;
|
||||
private KDataModel articleModel;
|
||||
private KDataModel lenderModel;
|
||||
private KDataModel userModel;
|
||||
private KDataModel lendingModel;
|
||||
|
||||
public LendingTableModel(DbConnector pDbCon, HashMap<String, Object> pModels ) {
|
||||
dbCon = pDbCon;
|
||||
articleModel = (ArticleTableModel)pModels.get("articletablemodel");
|
||||
lenderModel = (LenderModel)pModels.get("lendermodel");
|
||||
userTableModel = (UserTableModel)pModels.get("usertablemodel");
|
||||
public LendingTableModel(HashMap<String, KDataModel> pModels ) {
|
||||
articleModel = pModels.get("karticlemodel");
|
||||
lenderModel = pModels.get("klendermodel");
|
||||
userModel = pModels.get("kusermodel");
|
||||
lendingModel = pModels.get("klendingmodel");
|
||||
|
||||
updateModel();
|
||||
lendingModel.register(this);
|
||||
}
|
||||
|
||||
public int getColumnCount() {
|
||||
@@ -52,19 +54,19 @@ public class LendingTableModel extends AbstractTableModel {
|
||||
|
||||
case 1:
|
||||
int artId = data.get(row).getArticleId();
|
||||
KArticle art = articleModel.getArticleById(artId);
|
||||
KArticle art = (KArticle) articleModel.get(artId);
|
||||
|
||||
return art.getName();
|
||||
|
||||
case 2:
|
||||
int uId = data.get(row).getUserId();
|
||||
KUser user = userTableModel.getUserById(uId);
|
||||
KUser user = (KUser) userModel.get(uId);
|
||||
|
||||
return user.getName()+" "+user.getSurname();
|
||||
|
||||
case 3:
|
||||
int lenderId = data.get(row).getLenderId();
|
||||
KLender lender = lenderModel.getLenderById(lenderId);
|
||||
KLender lender = (KLender) lenderModel.get(lenderId);
|
||||
|
||||
return lender.getName()+" "+lender.getSurname()+" ("+lender.getStudentnumber()+")";
|
||||
|
||||
@@ -84,11 +86,6 @@ public class LendingTableModel extends AbstractTableModel {
|
||||
return false;
|
||||
}
|
||||
|
||||
public void updateModel(){
|
||||
data = dbCon.getActiveLendingList();
|
||||
fireTableDataChanged();
|
||||
}
|
||||
|
||||
public KLending getLendingByRow(int row) {
|
||||
return data.get(row);
|
||||
}
|
||||
@@ -100,8 +97,13 @@ public class LendingTableModel extends AbstractTableModel {
|
||||
return null;
|
||||
}
|
||||
|
||||
public ArrayList<KLending> getLendingList(){
|
||||
return data;
|
||||
public void fetchData(KDataModel pModel) {
|
||||
if(pModel instanceof KLendingModel){
|
||||
for(KLending elem : ((KLendingModel)pModel).getData()){
|
||||
if(elem.getEndDate().equals("")) data.add(elem);
|
||||
}
|
||||
fireTableDataChanged();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,6 +1,12 @@
|
||||
package de.katho.kBorrow.models;
|
||||
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import java.util.ArrayList;
|
||||
import java.util.logging.Level;
|
||||
|
||||
import de.katho.kBorrow.KLogger;
|
||||
import de.katho.kBorrow.data.KUserModel;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
|
||||
public class RewriteUserModel extends UserListModel {
|
||||
|
||||
@@ -10,18 +16,26 @@ public class RewriteUserModel extends UserListModel {
|
||||
private static final long serialVersionUID = -78927566018961799L;
|
||||
private int id;
|
||||
|
||||
public RewriteUserModel(DbConnector pDbCon, int pId) {
|
||||
super(pDbCon);
|
||||
public RewriteUserModel(KDataModel pModel, int pId) {
|
||||
super(pModel);
|
||||
id = pId;
|
||||
updateModel();
|
||||
pModel.register(this);
|
||||
}
|
||||
|
||||
public void updateModel(){
|
||||
data = dbCon.getRewriteUserList(id);
|
||||
public void fetchData(KDataModel pModel){
|
||||
if(pModel instanceof KUserModel){
|
||||
data = new ArrayList<KUser>();
|
||||
|
||||
for(KUser elem : ((KUserModel)pModel).getData()){
|
||||
if(elem.getId() != id) data.add(elem);
|
||||
}
|
||||
|
||||
if(data.size() > 0) setSelectedItem(data.get(0).getName()+" "+data.get(0).getSurname());
|
||||
|
||||
fireIntervalAdded(this, 0, data.size()-1);
|
||||
}
|
||||
|
||||
else {
|
||||
KLogger.log(Level.SEVERE, "RewriteUserModel: Typecast error!", new Exception("RewriteUserModel: Typecast error!"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,32 +5,23 @@ import java.util.ArrayList;
|
||||
import javax.swing.AbstractListModel;
|
||||
import javax.swing.ComboBoxModel;
|
||||
|
||||
import de.katho.kBorrow.data.KUser;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.KUserModel;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class UserListModel extends AbstractListModel<String> implements ComboBoxModel<String> {
|
||||
public class UserListModel extends AbstractListModel<String> implements ComboBoxModel<String>, KGuiModel {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = -8653066929273274524L;
|
||||
protected DbConnector dbCon;
|
||||
protected ArrayList<KUser> data;
|
||||
protected String selectedItem = null;
|
||||
|
||||
public UserListModel(DbConnector pDbCon){
|
||||
public UserListModel(KDataModel pUserModel){
|
||||
super();
|
||||
dbCon = pDbCon;
|
||||
updateModel();
|
||||
}
|
||||
|
||||
|
||||
public void updateModel() {
|
||||
data = dbCon.getUserList();
|
||||
|
||||
if(data.size() > 0) setSelectedItem(data.get(0).getName()+" "+data.get(0).getSurname());
|
||||
|
||||
fireIntervalAdded(this, 0, data.size()-1);
|
||||
pUserModel.register(this);
|
||||
}
|
||||
|
||||
public void setSelectedItem(Object object) {
|
||||
@@ -79,6 +70,16 @@ public class UserListModel extends AbstractListModel<String> implements ComboBox
|
||||
return null;
|
||||
}
|
||||
|
||||
public void fetchData(KDataModel pModel) {
|
||||
if(pModel instanceof KUserModel){
|
||||
data = ((KUserModel)pModel).getData();
|
||||
}
|
||||
|
||||
if(data.size() > 0) setSelectedItem(data.get(0).getName()+" "+data.get(0).getSurname());
|
||||
|
||||
fireIntervalAdded(this, 0, data.size()-1);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -4,30 +4,30 @@ import java.util.ArrayList;
|
||||
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
|
||||
import de.katho.kBorrow.data.KUser;
|
||||
import de.katho.kBorrow.db.DbConnector;
|
||||
import de.katho.kBorrow.data.KUserModel;
|
||||
import de.katho.kBorrow.data.objects.KUser;
|
||||
import de.katho.kBorrow.interfaces.KDataModel;
|
||||
import de.katho.kBorrow.interfaces.KGuiModel;
|
||||
|
||||
public class UserTableModel extends AbstractTableModel {
|
||||
public class UserTableModel extends AbstractTableModel implements KGuiModel {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 435829735305533728L;
|
||||
private DbConnector dbCon;
|
||||
private String[] header = {"ID", "Vorname", "Nachname", "", ""};
|
||||
private ArrayList<KUser> data = new ArrayList<KUser>();
|
||||
private ArrayList<KUser> data;
|
||||
|
||||
public UserTableModel(DbConnector pDbCon){
|
||||
dbCon = pDbCon;
|
||||
updateModel();
|
||||
public UserTableModel(KDataModel pModel){
|
||||
pModel.register(this);
|
||||
}
|
||||
|
||||
public int getColumnCount() {
|
||||
return this.header.length;
|
||||
return header.length;
|
||||
}
|
||||
|
||||
public int getRowCount() {
|
||||
return this.data.size();
|
||||
return data.size();
|
||||
}
|
||||
|
||||
public String getValueAt(int row, int col) {
|
||||
@@ -50,11 +50,6 @@ public class UserTableModel extends AbstractTableModel {
|
||||
return header[index];
|
||||
}
|
||||
|
||||
public void updateModel(){
|
||||
data = dbCon.getUserList();
|
||||
fireTableDataChanged();
|
||||
}
|
||||
|
||||
// Die Funktion muss differenzierter werden
|
||||
public boolean isCellEditable(int row, int col){
|
||||
if (col > 2) return true;
|
||||
@@ -83,4 +78,17 @@ public class UserTableModel extends AbstractTableModel {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public int rowToId(int pRow){
|
||||
return getUserByRow(pRow).getId();
|
||||
}
|
||||
|
||||
public void fetchData(KDataModel pModel) {
|
||||
if(pModel instanceof KUserModel){
|
||||
data = ((KUserModel)pModel).getData();
|
||||
|
||||
fireTableDataChanged();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user