1 /***************************************************************************
2 material -
3 -------------------
4 begin : 2004-05-05
5 copyright : (C) 2004 by Klaas Freitag
6 email : freitag@kde.org
7 ***************************************************************************/
8
9 /***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18 // include files for Qt
19 #include <QString>
20 #include <QDate>
21
22 // include files for KDE
23 #include <QDebug>
24 #include <kcontacts/addressee.h>
25
26 #include "stockmaterial.h"
27 #include "unitmanager.h"
28 #include "materialsaverbase.h"
29 #include "materialsaverdb.h"
30 #include "defaultprovider.h"
31 #include "format.h"
32 #include "kraftsettings.h"
33
StockMaterial()34 StockMaterial::StockMaterial( ):
35 CatalogTemplate(),
36 m_amount( 0 ),
37 m_dbid( -1 )
38 {
39
40 }
41
StockMaterial(int dbid,int matChap,QString mat,int unitID,double perPack,Geld pIn,Geld pOut)42 StockMaterial::StockMaterial( int dbid, int matChap, QString mat, int unitID,
43 double perPack, Geld pIn, Geld pOut ):
44 CatalogTemplate(),
45 m_chapter(matChap),
46 m_amount(perPack),
47 m_dbid(dbid),
48 m_ePrice(pIn),
49 m_vPrice(pOut)
50 {
51 this->setUnitId(unitID);
52 this->setText(mat);
53 }
54
~StockMaterial()55 StockMaterial::~StockMaterial( )
56 {
57
58 }
59
getSaver()60 MaterialSaverBase* StockMaterial::getSaver()
61 {
62 return MaterialSaverDB::self();
63 }
64
save()65 bool StockMaterial::save()
66 {
67 MaterialSaverBase *saver = getSaver();
68 if ( saver ) {
69 saver->saveTemplate( this );
70 return true;
71 }
72 return false;
73 }
74
75 #if 0
76 QString StockMaterial::description() const
77 {
78 return m_descr;
79 }
80
81 void StockMaterial::setDescription( const QString& str )
82 {
83 m_descr = str;
84 }
85 #endif
86
getAmountPerPack()87 double StockMaterial::getAmountPerPack()
88 {
89 return m_amount;
90 }
91
setAmountPerPack(double am)92 void StockMaterial::setAmountPerPack( double am )
93 {
94 m_amount = am;
95 }
96
getID()97 int StockMaterial::getID()
98 {
99 return m_dbid;
100 }
101
setID(int id)102 void StockMaterial::setID( int id )
103 {
104 m_dbid = id;
105 }
106
getSupplier()107 KContacts::Addressee StockMaterial::getSupplier()
108 {
109 KContacts::Addressee a;
110 return a;
111 }
112
setSupplier(KContacts::Addressee * a)113 void StockMaterial::setSupplier( KContacts::Addressee *a )
114 {
115 if( a )
116 m_delivererUID = a->uid();
117 }
118
purchPrice()119 Geld StockMaterial::purchPrice()
120 {
121 return m_ePrice;
122 }
123
salesPrice()124 Geld StockMaterial::salesPrice()
125 {
126 return m_vPrice;
127 }
128
unitPrice()129 Geld StockMaterial::unitPrice()
130 {
131 return salesPrice() / m_amount;
132 }
133
setPurchPrice(Geld g)134 void StockMaterial::setPurchPrice( Geld g )
135 {
136 m_ePrice = g;
137 }
138
setSalesPrice(Geld g)139 void StockMaterial::setSalesPrice( Geld g )
140 {
141 m_vPrice = g;
142 }
143
setLastModified(QDate dt)144 void StockMaterial::setLastModified( QDate dt )
145 {
146 mLastModified = dt;
147 }
148
setEnterDate(QDate dt)149 void StockMaterial::setEnterDate( QDate dt )
150 {
151 mEnteredDate = dt;
152 }
153
lastModified()154 QString StockMaterial::lastModified()
155 {
156 return Format::toDateString( mLastModified, KraftSettings::self()->dateFormat());
157 }
158
entered()159 QString StockMaterial::entered()
160 {
161 return Format::toDateString( mEnteredDate, KraftSettings::self()->dateFormat() );
162 }
163
saveChapterId()164 void StockMaterial::saveChapterId()
165 {
166 MaterialSaverBase *saver = getSaver();
167 if( saver ) {
168 saver->saveTemplateChapter( this );
169 }
170 }
171
172
173 /* END */
174
175