fixed bug ##259
This commit is contained in:
parent
44155b9678
commit
068abb43a2
|
@ -101,6 +101,26 @@ class Base:
|
||||||
self.db.connection.rollback()
|
self.db.connection.rollback()
|
||||||
raise DatabaseExecption("Something went worng with Databes: {}".format(err))
|
raise DatabaseExecption("Something went worng with Databes: {}".format(err))
|
||||||
|
|
||||||
|
def getJobKindDate(self, date, job_kind):
|
||||||
|
try:
|
||||||
|
cursor = self.db.connection.cursor()
|
||||||
|
cursor.execute("select * from job_kind_dates where daydate='{}' and job_kind={}".format(date, job_kind['id']))
|
||||||
|
item = cursor.fetchone()
|
||||||
|
if item:
|
||||||
|
item['job_kind'] = self.getJobKind(item['job_kind']) if item['job_kind'] != None else None
|
||||||
|
item['daydate'] = {'year': item['daydate'].year, 'month': item['daydate'].month, 'day': item['daydate'].day}
|
||||||
|
else:
|
||||||
|
item = {
|
||||||
|
'job_kind': self.getJobKind(1),
|
||||||
|
'daydate': {'year': date.year, 'month': date.month, 'day': date.day},
|
||||||
|
'maxpersons': 2
|
||||||
|
}
|
||||||
|
return item
|
||||||
|
except Exception as err:
|
||||||
|
traceback.print_exc()
|
||||||
|
self.db.connection.rollback()
|
||||||
|
raise DatabaseExecption("Something went worng with Databes: {}".format(err))
|
||||||
|
|
||||||
def deleteJobKindDates(self, jobkinddates):
|
def deleteJobKindDates(self, jobkinddates):
|
||||||
try:
|
try:
|
||||||
cursor = self.db.connection.cursor()
|
cursor = self.db.connection.cursor()
|
||||||
|
|
|
@ -22,14 +22,18 @@ class Base:
|
||||||
cursor.execute("select * from bardienste where startdatetime='{}'".format(date))
|
cursor.execute("select * from bardienste where startdatetime='{}'".format(date))
|
||||||
data = cursor.fetchall()
|
data = cursor.fetchall()
|
||||||
retVal = []
|
retVal = []
|
||||||
# for work in data:
|
return [{"user": self.getUserById(work['user_id']).toJSON(), "startdatetime": work['startdatetime'], "enddatetime": work['enddatetime'], "start": { "year": work['startdatetime'].year, "month": work['startdatetime'].month, "day": work['startdatetime'].day}, "job_kind": self.getJobKind(work['job_kind']) if work['job_kind'] != None else None} for work in data]
|
||||||
# user = self.getUserById(work['user_id']).toJSON()
|
except Exception as err:
|
||||||
# startdatetime = work['startdatetime']
|
traceback.print_exc()
|
||||||
# enddatetime = work['enddatetime']
|
self.db.connection.rollback()
|
||||||
# start = { "year": work['startdatetime'].year, "month": work['startdatetime'].month, "day": work['startdatetime'].day}
|
raise DatabaseExecption("Something went worng with Datatabase: {}".format(err))
|
||||||
# job_kind = self.getJobKind(work['job_kind']) if work['job_kind'] != None else None
|
|
||||||
# retVal.append({'user': user, 'startdatetime': startdatetime, 'enddatetime': enddatetime, 'start': start, 'job_kind': job_kind})
|
def getWorkersWithJobKind(self, date, job_kind):
|
||||||
# return retVal
|
try:
|
||||||
|
cursor = self.db.connection.cursor()
|
||||||
|
cursor.execute("select * from bardienste where startdatetime='{}' and job_kind={} {}".format(date, job_kind['id'], "or job_kind='null'" if job_kind['id'] is 1 else ''))
|
||||||
|
data = cursor.fetchall()
|
||||||
|
retVal = []
|
||||||
return [{"user": self.getUserById(work['user_id']).toJSON(), "startdatetime": work['startdatetime'], "enddatetime": work['enddatetime'], "start": { "year": work['startdatetime'].year, "month": work['startdatetime'].month, "day": work['startdatetime'].day}, "job_kind": self.getJobKind(work['job_kind']) if work['job_kind'] != None else None} for work in data]
|
return [{"user": self.getUserById(work['user_id']).toJSON(), "startdatetime": work['startdatetime'], "enddatetime": work['enddatetime'], "start": { "year": work['startdatetime'].year, "month": work['startdatetime'].month, "day": work['startdatetime'].day}, "job_kind": self.getJobKind(work['job_kind']) if work['job_kind'] != None else None} for work in data]
|
||||||
except Exception as err:
|
except Exception as err:
|
||||||
traceback.print_exc()
|
traceback.print_exc()
|
||||||
|
|
|
@ -32,7 +32,7 @@ class Base:
|
||||||
user = self.getUser(username)
|
user = self.getUser(username)
|
||||||
debug.debug("user is {{ {} }}".format(user))
|
debug.debug("user is {{ {} }}".format(user))
|
||||||
debug.debug("check if user has job on date")
|
debug.debug("check if user has job on date")
|
||||||
if (not db.getWorker(user, date)):
|
if (not db.getWorker(user, date) and len(db.getWorkersWithJobKind(date, job_kind)) < db.getJobKindDate(date.date(), job_kind)['maxpersons']):
|
||||||
debug.debug("set job to user")
|
debug.debug("set job to user")
|
||||||
db.setWorker(user, date, job_kind=job_kind)
|
db.setWorker(user, date, job_kind=job_kind)
|
||||||
retVal = self.getWorker(date, username=username)
|
retVal = self.getWorker(date, username=username)
|
||||||
|
|
Loading…
Reference in New Issue