commit 951ec8c3ee0faf79c1d496c31f1425da1fdbf33c
parent 4a219878abd4d3edeb7d6f240a1164f6e4ff2029
Author: Youth Employment Program Production <youthemployment22@gmail.com>
Date: Sat, 20 Apr 2024 21:56:16 -0600
refactor new_time, new_user_time, cleanup clockin_new_user
Diffstat:
M | app/routes.py | | | 88 | ++++++++++++++++++++++++++++++++++++++++++++++--------------------------------- |
1 file changed, 51 insertions(+), 37 deletions(-)
diff --git a/app/routes.py b/app/routes.py
@@ -541,22 +541,22 @@ def clockin_new_user():
@app.route("/newtime/<usernm>",methods=['GET','POST'])
@login_required
def new_time(usernm):
- clocked_in_users = mongo.db.time_collection.find({'clock_out': {'$exists':False}})
+# clocked_in_users = mongo.db.time_collection.find({'clock_out': {'$exists':False}})
availableProjects = []
for project in mongo.db.projects_collection.find():
availableProjects.append((project['_id'],project['project_name']))
# GET_CLOCKED out users
- clocked_out_active_users=[]
- clocked_in_active_users=[]
- for active in mongo.db.user_collection.find({'is_active':True},{'username':1,'fname':1,'mname':1,'lname':1}):
- funame = active['fname']+' '+active['lname']
- alreadyin = []
- for user in clocked_in_users:
- alreadyin.append(user['modified_by'][0])
- if any(element in active['username'] for element in alreadyin):
- clocked_in_active_users.append((active['_id'],funame))
- else:
- clocked_out_active_users.append((active['username'],funame))
+# clocked_out_active_users=[]
+# clocked_in_active_users=[]
+# for active in mongo.db.user_collection.find({'is_active':True},{'username':1,'fname':1,'mname':1,'lname':1}):
+# funame = active['fname']+' '+active['lname']
+# alreadyin = []
+# for user in clocked_in_users:
+# alreadyin.append(user['modified_by'][0])
+# if any(element in active['username'] for element in alreadyin):
+# clocked_in_active_users.append((active['_id'],funame))
+# else:
+# clocked_out_active_users.append((active['username'],funame))
form=NewHoursForm()
form.projectSel.choices = availableProjects
@@ -565,26 +565,23 @@ def new_time(usernm):
dateentry = datetime.datetime.combine(form.dateSel.data,datetime.time())
starttime = datetime.datetime.combine(form.dateSel.data,form.startTime.data)
endtime = datetime.datetime.combine(form.dateSel.data,form.endTime.data)
- if usernm is current_user.username:
- mongo.db.time_collection.insert_one({
- 'modified_by' : [usernm],
+ entryevent = {
'date' : dateentry,
'clock_in' : [starttime],
'clock_out' : [endtime],
'project' : ObjectId(form.projectSel.data),
'lunch': form.lunchSel.data,
- 'per_diem':form.perDiemSel.data})
+ 'per_diem':form.perDiemSel.data
+ }
+ if usernm is current_user.username:
+ entryevent['modified_by'] = [usernm]
else:
- mongo.db.time_collection.insert_one({
- 'modified_by' : [usernm, current_user.username],
- 'date' : dateentry,
- 'clock_in' : [starttime],
- 'clock_out' : [endtime],
- 'project' : ObjectId(form.projectSel.data),
- 'lunch': form.lunchSel.data,
- 'per_diem':form.perDiemSel.data})
+ entryevent['modified_by'] = [usernm,current_user.username]
+ if form.note.data != '':
+ entryevent['note'] = form.note.data
+ mongo.db.time_collection.insert_one(entryevent)
- return redirect(url_for('dashboard'))
+ return redirect(url_for('hours',username=usrnm))
return render_template('dashboard/punchclock/otheruser.html',form=form,ORGNAME=OrganizationName)
@@ -619,24 +616,41 @@ def new_user_time():
dateentry = datetime.datetime.combine(form.dateSel.data,datetime.time())
starttime = datetime.datetime.combine(form.dateSel.data,form.startTime.data)
endtime = datetime.datetime.combine(form.dateSel.data,form.endTime.data)
- if form.userSel.data is current_user.username:
- mongo.db.time_collection.insert_one({
- 'modified_by' : [form.userSel.data],
+# if form.userSel.data is current_user.username:
+# mongo.db.time_collection.insert_one({
+# 'modified_by' : [form.userSel.data],
+# 'date' : dateentry,
+# 'clock_in' : [starttime],
+# 'clock_out' : [endtime],
+# 'project' : ObjectId(form.projectSel.data),
+# 'lunch': form.lunchSel.data,
+# 'per_diem':form.perDiemSel.data})
+# else:
+# mongo.db.time_collection.insert_one({
+# 'modified_by' : [form.userSel.data, current_user.username],
+# 'date' : dateentry,
+# 'clock_in' : [starttime],
+# 'clock_out' : [endtime],
+# 'project' : ObjectId(form.projectSel.data),
+# 'lunch': form.lunchSel.data,
+# 'per_diem':form.perDiemSel.data})
+
+ #New
+ entryevent = {
'date' : dateentry,
'clock_in' : [starttime],
'clock_out' : [endtime],
'project' : ObjectId(form.projectSel.data),
'lunch': form.lunchSel.data,
- 'per_diem':form.perDiemSel.data})
+ 'per_diem':form.perDiemSel.data
+ }
+ if form.userSel.data is current_user.username:
+ entryevent['modified_by'] = [form.userSel.data]
else:
- mongo.db.time_collection.insert_one({
- 'modified_by' : [form.userSel.data, current_user.username],
- 'date' : dateentry,
- 'clock_in' : [starttime],
- 'clock_out' : [endtime],
- 'project' : ObjectId(form.projectSel.data),
- 'lunch': form.lunchSel.data,
- 'per_diem':form.perDiemSel.data})
+ entryevent['modified_by'] = [form.userSel.data,current_user.username]
+ if form.note.data != '':
+ entryevent['note'] = form.note.data
+ mongo.db.time_collection.insert_one(entryevent)
return redirect(url_for('new_user_time'))