87
68
def GetUsersNames(self):
88
69
return self._models['Users'].GetUsersNames()
90
def GetClientsWithType(self,client_type):
91
return self._models['Klienci'].GetClientsWithType(client_type)
93
def GetClientIdByIdentifier(self,identifier):
94
return self._models['Klienci'].GetClientIdByIdentifier(identifier)
96
def GetClients(self,cid=None):
97
return self._models['Klienci'].GetClients(cid)
99
def GetClientByIdentifier(self,identifier):
100
return self._models['Klienci'].GetClientByIdentifier(identifier)
104
def GetCases(self,client=None,cid=None):
105
""" Returns Clients data in dictionary
108
query=("select name, identifier, signature, leader, client,cid from cases",
109
"select name, identifier, signature, leader, client,cid from cases where client=%s",
110
"select name, identifier, signature, leader, client, cid from cases where cid=%s")
112
if client==None and cid==None:
113
self._cursor.execute(query[0])
114
elif client!=None and cid==None:
115
self._cursor.execute(query[1],(client,))
116
elif client==None and cid!=None:
117
self._cursor.execute(query[2],(cid,))
119
result=self._cursor.fetchall()
122
if self._dbType=='postgres':
126
'name':row[0].decode('utf-8'),
127
'identifier':row[1].decode('utf-8'),
134
to_return.append(r_dict)
141
def GetCaseClientId(self,cid):
142
""" Returns Clients data in dictionary
145
query="SELECT client FROM cases WHERE cid=%s"
146
self._cursor.execute(query,(cid,))
147
return self._cursor.fetchone()[0]
149
def GetCaseClient(self,cid):
150
""" Returns Clients data in dictionary
153
query="SELECT client FROM cases WHERE cid=%s"
154
self._cursor.execute(query,(cid,))
155
clientID=self._cursor.fetchone()[0]
157
query="SELECT full_name FROM clients WHERE cid=%s"
158
self._cursor.execute(query,(clientID,))
160
return self._cursor.fetchone()[0].decode('utf-8')
163
def GetCaseLeader(self,cid):
164
""" Returns Clients data in dictionary
167
query="SELECT leader FROM cases WHERE cid=%s"
168
self._cursor.execute(query,(cid,))
169
leaderId=self._cursor.fetchone()[0]
171
query="SELECT name, surname FROM users WHERE uid=%s"
172
self._cursor.execute(query,(leaderId,))
174
return self._cursor.fetchone()[0].decode('utf-8')
177
def GetCaseIdentifier(self,cid):
178
""" Returns Clients data in dictionary
181
query="SELECT identifier FROM cases WHERE cid=%s"
182
self._cursor.execute(query,(cid,))
183
return self._cursor.fetchone()[0]
185
def GetCaseIdByIdentifier(self,identifier):
186
""" Returns Clients data in dictionary
189
query="SELECT cid FROM cases WHERE identifier=%s"
190
self._cursor.execute(query,(identifier,))
191
return self._cursor.fetchone()[0]
196
def GetCaseType(self,cid):
197
""" Returns Clients data in dictionary
200
query="SELECT type FROM cases WHERE cid=%s"
201
self._cursor.execute(query,(cid,))
202
return self._cursor.fetchone()[0]
71
def GetContacts(self,parent = -1, search = '', group = None, children = False, basic=True, address=True, contact=True, invoice=True):
72
return self._models['Klienci'].GetContacts(parent, search , group , children , basic, address, contact, invoice)
205
75
# - Insert Methods --------------------------------------------------------------
207
def InsertCase(self,data):
208
""" Inserts Client data into table.
212
data - dictionary where keys are table columns
219
self._cursor.execute(self.ParseInsertQuery(data,'cases'),data.values())
221
pubsub.Publisher().sendMessage("Cases.Model.Events", data=('NewCase',[]))
222
except Exception, error:
224
raise Model.DatabaseError(error.message)
228
79
def InsertAction(self,data):
422
253
def GetActionItem(self,index,cid=None,leader=None, client=None,start=None,stop=None):
423
254
query=( """SELECT data, duration,type, description, (SELECT identifier FROM users WHERE users.uid=actions.user_id),\
424
255
(SELECT identifier FROM cases WHERE cases.cid=case_id),\
425
(SELECT identifier FROM clients WHERE clients.cid=client_id),aid \
256
(SELECT identifier FROM contacts WHERE contacts.cid=client_id),aid \
426
257
FROM actions WHERE data>=%s AND data<=%s ORDER BY data LIMIT 1 OFFSET %s""",
428
259
"""SELECT data, duration, type,description, (SELECT identifier FROM users WHERE users.uid=actions.user_id),\
429
260
(SELECT identifier FROM cases WHERE cases.cid=case_id),\
430
(SELECT identifier FROM clients WHERE clients.cid=client_id),aid\
261
(SELECT identifier FROM contacts WHERE contacts.cid=client_id),aid\
431
262
FROM actions WHERE case_id=%s AND data>=%s AND data<=%s ORDER BY data LIMIT 1 OFFSET %s""",
433
264
"""SELECT data, duration, type,description, (SELECT identifier FROM users WHERE users.uid=actions.user_id),\
434
265
(SELECT identifier FROM cases WHERE cases.cid=case_id),\
435
(SELECT identifier FROM clients WHERE clients.cid=client_id),aid\
266
(SELECT identifier FROM contacts WHERE contacts.cid=client_id),aid\
436
267
FROM actions WHERE user_id=%s AND data>=%s AND data<=%s ORDER BY data LIMIT 1 OFFSET %s""",
438
269
"""SELECT data, duration, type,description, (SELECT identifier FROM users WHERE users.uid=actions.user_id),\
439
270
(SELECT identifier FROM cases WHERE cases.cid=case_id),\
440
(SELECT identifier FROM clients WHERE clients.cid=client_id),aid\
271
(SELECT identifier FROM contacts WHERE contacts.cid=client_id),aid\
441
272
FROM actions WHERE client_id =%s AND data>=%s AND data<=%s\
442
273
ORDER BY data LIMIT 1 OFFSET %s"""
601
432
def GetTermsItem(self,index,cid=None,leader=None, client=None,start=None,stop=None):
602
433
query=( """SELECT data, time, description, (SELECT identifier FROM users WHERE users.uid=terms.user_id),\
603
434
(SELECT identifier FROM cases WHERE cases.cid=terms.case_id),\
604
(SELECT identifier FROM clients WHERE clients.cid=client_id),tid \
435
(SELECT identifier FROM contacts WHERE contacts.cid=client_id),tid \
605
436
FROM terms WHERE data>=%s AND data<=%s ORDER BY data LIMIT 1 OFFSET %s""",
607
438
"""SELECT data, time, description, (SELECT identifier FROM users WHERE users.uid=terms.user_id),\
608
439
(SELECT identifier FROM cases WHERE cases.cid=terms.case_id),\
609
(SELECT identifier FROM clients WHERE clients.cid=client_id),tid\
440
(SELECT identifier FROM contacts WHERE contacts.cid=client_id),tid\
610
441
FROM terms WHERE case_id=%s AND data>=%s AND data<=%s ORDER BY data LIMIT 1 OFFSET %s""",
612
443
"""SELECT data, time, description, (SELECT identifier FROM users WHERE users.uid=terms.user_id),\
613
444
(SELECT identifier FROM cases WHERE cases.cid=terms.case_id),\
614
(SELECT identifier FROM clients WHERE clients.cid=client_id),tid\
445
(SELECT identifier FROM contacts WHERE contacts.cid=client_id),tid\
615
446
FROM terms WHERE user_id=%s AND data>=%s AND data<=%s ORDER BY data LIMIT 1 OFFSET %s""",
617
448
"""SELECT data, time, description, (SELECT identifier FROM users WHERE users.uid=terms.user_id),\
618
449
(SELECT identifier FROM cases WHERE cases.cid=terms.case_id),\
619
(SELECT identifier FROM clients WHERE clients.cid=client_id),tid\
450
(SELECT identifier FROM contacts WHERE contacts.cid=client_id),tid\
620
451
FROM terms WHERE terms.client_id =%s AND data>=%s AND data<=%s \
621
452
ORDER BY data LIMIT 1 OFFSET %s"""