Ajout du système de quitance pour les éléments de Op, task, vhc
This commit is contained in:
@@ -113,6 +113,7 @@ class cls_caldav():
|
||||
print(item.dtstamp)
|
||||
item.dtend = event["DTEND"].dt.strftime("%d.%m.%Y %H:%M")
|
||||
|
||||
|
||||
item.format_str_date()
|
||||
self.items.append(item)
|
||||
|
||||
@@ -153,9 +154,25 @@ class cls_caldav_client():
|
||||
for cal in self.data.calendars():
|
||||
print(f"name: {cal.name}({cal.url})")
|
||||
|
||||
self.a_task = self.data.calendar(name="Tâche")
|
||||
self.a_team = self.data.calendar(name="Équipage hébdomadaire")
|
||||
self.a_task = self.data.calendar(cal_id=caldav_id["task"])
|
||||
self.a_team = self.data.calendar(cal_id=caldav_id["team"])
|
||||
self.a_vhc = self.data.calendar(cal_id=caldav_id["vhc"])
|
||||
self.a_op = self.data.calendar(cal_id=caldav_id["op"])
|
||||
|
||||
#self.get_events_by_date(self.a_team)
|
||||
def get_event_by_uuid(self,calandar,uuid):
|
||||
event = calandar.object_by_uid(uid=uuid)
|
||||
return event
|
||||
#self.get_events_by_date(calandar)
|
||||
#for event in self.events:
|
||||
|
||||
# print(event.vobject_instance.vevent.eventId)
|
||||
def mark_as_done_task(self,calandar,uuid):
|
||||
event = self.get_event_by_uuid(calandar=calandar,uuid=uuid)
|
||||
event.vobject_instance.vevent.description.value = event.vobject_instance.vevent.description.value + " #Fait"
|
||||
event.save()
|
||||
|
||||
|
||||
|
||||
def init_task_management(self):
|
||||
print("pass copy task process")
|
||||
@@ -220,7 +237,6 @@ class cls_caldav_client():
|
||||
return None
|
||||
else:
|
||||
print("Already with MC")
|
||||
print(f"débug: {len(equipage)}")
|
||||
if len(equipage) < 2:
|
||||
print(f"Error équipage sans [&] {key[1]}")
|
||||
elif "MC" not in equipage[1]: # check équipage 2
|
||||
|
@@ -1,11 +1,15 @@
|
||||
caldav_cfg = {} #définition du dictionnaire de donnée avec URL des agendas
|
||||
caldav_cfg["task"] = "https://sync.infomaniak.com/calendars/AA01593/a4835de4-b3cd-46ca-8f48-3dacd3a2b46e?export"
|
||||
caldav_cfg["task_config"] = "https://sync.infomaniak.com/calendars/AA01593/29d5c8d0-9b86-4d45-bc2b-13585a2e78f8?export"
|
||||
caldav_cfg["vhc"] = "https://sync.infomaniak.com/calendars/AA01593/4f7b4591-a4c4-4443-9f78-01df068f58b8?export"
|
||||
caldav_cfg["rh"] = "https://sync.infomaniak.com/calendars/AA01593/c9916d31-c25b-4b0b-8673-81e2164b6f10?export"
|
||||
caldav_cfg["road"] = "https://sync.infomaniak.com/calendars/AA01593/d608fcce-2f30-42f0-816c-b5524a0672fe?export"
|
||||
caldav_cfg["op"] = "https://sync.infomaniak.com/calendars/AA01593/73f3c787-abe1-4cd0-bf2a-c44dbc7015b9?export"
|
||||
caldav_cfg["team"] = "https://sync.infomaniak.com/calendars/AA01593/8062f664-b726-4972-8031-642dbb2df84e?export"
|
||||
caldav_cfg["manif"] = "https://sync.infomaniak.com/calendars/AA01593/f3ab342d-921b-42ed-8fde-c8f393673819?export"
|
||||
caldav_id = {} #définition du dictionnaire de donnée avec URL des agendas
|
||||
caldav_id["task"] = "a4835de4-b3cd-46ca-8f48-3dacd3a2b46e"
|
||||
caldav_id["task_config"] = "29d5c8d0-9b86-4d45-bc2b-13585a2e78f8"
|
||||
caldav_id["vhc"] = "4f7b4591-a4c4-4443-9f78-01df068f58b8"
|
||||
caldav_id["rh"] = "c9916d31-c25b-4b0b-8673-81e2164b6f10"
|
||||
caldav_id["road"] = "d608fcce-2f30-42f0-816c-b5524a0672fe"
|
||||
caldav_id["op"] = "73f3c787-abe1-4cd0-bf2a-c44dbc7015b9"
|
||||
caldav_id["team"] = "8062f664-b726-4972-8031-642dbb2df84e"
|
||||
caldav_id["manif"] = "f3ab342d-921b-42ed-8fde-c8f393673819"
|
||||
|
||||
caldav_cfg = {}
|
||||
for key,value in caldav_id.items():
|
||||
caldav_cfg[key] = f"https://sync.infomaniak.com/calendars/AA01593/{value}?export"
|
||||
|
||||
|
||||
|
@@ -35,7 +35,10 @@ table{
|
||||
color: var(--main-text-color);
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
a{
|
||||
color: var(--main-text-color) !important;
|
||||
text-decoration: none !important;
|
||||
}
|
||||
.team_svg_icon{
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
|
@@ -8,7 +8,13 @@
|
||||
|
||||
<tr>
|
||||
<td style="vertical-align: top;" class="td_key" >
|
||||
<span style="font-weight: bold;">{{task.key}}</span><br>
|
||||
<span style="font-weight: bold;">
|
||||
{% if task.done %}
|
||||
{{task.key}}
|
||||
{% else %}
|
||||
<a href="op/edit/{{task.uiid}}">{{task.key}}</a>
|
||||
{% endif %}
|
||||
</span><br>
|
||||
{{task.str_start_date}} - {{task.str_end_date}}<br>
|
||||
{{task.str_start_time}} - {{task.str_end_time}}
|
||||
</td>
|
||||
|
@@ -6,14 +6,26 @@
|
||||
<table>
|
||||
<td style="font-weight: bold;padding-bottom: 5px; text-align: center;" colspan="2">Jour</td>
|
||||
{% for task in latest_task_list %}
|
||||
<tr><td style="font-weight: bold;vertical-align: top;" class="td_key" >{{task.key}}</td> <td style="{% if task.done %}text-decoration:line-through;{% endif %}vertical-align: top;">{{ task.name }}<br>{{task.desc}}</td></tr>
|
||||
<tr><td style="font-weight: bold;vertical-align: top;" class="td_key" id="{{task.uiid}}" >
|
||||
{% if task.done %}
|
||||
{{task.key}}
|
||||
{% else %}
|
||||
<a href="task/edit/{{task.uiid}}" target="">{{task.key}}</a>
|
||||
{% endif %}
|
||||
</td> <td style="{% if task.done %}text-decoration:line-through;{% endif %}vertical-align: top;">{{ task.name }}<br>{{task.desc}}</td></tr>
|
||||
{% endfor %}
|
||||
<tr><td> </td></tr>
|
||||
<tr>
|
||||
<td style="border-top: 1px dashed white;font-weight: bold;padding: 5px; text-align: center;" colspan="2">Nuit</td>
|
||||
</tr>
|
||||
{% for task in night_task_list %}
|
||||
<tr><td style="font-weight: bold;vertical-align: top;" class="td_key" >{{task.key}}</td> <td style="{% if task.done %}text-decoration:line-through;{% endif %}vertical-align: top;">{{ task.name }}<br>{{task.desc}}</td></tr>
|
||||
<tr><td style="font-weight: bold;vertical-align: top;" class="td_key" >
|
||||
{% if task.done %}
|
||||
{{task.key}}
|
||||
{% else %}
|
||||
<a href="task/edit/{{task.uiid}}" target="">{{task.key}}</a>
|
||||
{% endif %}
|
||||
</td> <td style="{% if task.done %}text-decoration:line-through;{% endif %}vertical-align: top;">{{ task.name }}<br>{{task.desc}}</td></tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
|
||||
|
@@ -8,7 +8,13 @@
|
||||
|
||||
<tr>
|
||||
<td style="vertical-align: top;padding-bottom: 18px" class="td_key" >
|
||||
<span style="font-weight: bold;">{{task.key}}</span><br>
|
||||
<span style="font-weight: bold;">
|
||||
{% if task.done %}
|
||||
{{task.key}}
|
||||
{% else %}
|
||||
<a href="vhc/edit/{{task.uiid}}">{{task.key}}</a>
|
||||
{% endif %}
|
||||
</span><br>
|
||||
{{task.str_start_date}} - {{task.str_end_date}}<br>
|
||||
{{task.str_start_time}} - {{task.str_end_time}}
|
||||
</td>
|
||||
|
@@ -7,10 +7,13 @@ from . import views
|
||||
app_name = "mycaldav"
|
||||
urlpatterns = [
|
||||
path('task', views.view_task_caldav, name='view_task_caldav'),
|
||||
path('task/edit/<str:uuid>', views.view_task_edit_caldav, name='view_task_edit_caldav'),
|
||||
path('vhc', views.view_vhc_caldav, name='view_vhc_caldav'),
|
||||
path('vhc/edit/<str:uuid>', views.view_vhc_edit_caldav, name='view_vhc_edit_caldav'),
|
||||
path('rh', views.view_rh_caldav, name='view_rh_caldav'),
|
||||
path('road', views.view_road_caldav, name='view_road_caldav'),
|
||||
path('op', views.view_op_caldav, name='view_op_caldav'),
|
||||
path('op/edit/<str:uuid>', views.view_op_edit_caldav, name='view_op_edit_caldav'),
|
||||
path('team', views.view_team_caldav, name='view_team_caldav'),
|
||||
path('manif', views.view_manif_caldav, name='view_manif_caldav'),
|
||||
path('team_pdf', views.view_team_pdf_caldav, name='view_team_pdf_caldav'),
|
||||
|
@@ -27,6 +27,25 @@ def view_task_caldav(request):
|
||||
myClient.init_task_management()
|
||||
return HttpResponse(template.render(context,request))
|
||||
|
||||
@xframe_options_exempt
|
||||
def view_task_edit_caldav(request, uuid):
|
||||
print(uuid)
|
||||
myClient = cls_caldav_client()
|
||||
myClient.mark_as_done_task(calandar=myClient.a_task,uuid=uuid)
|
||||
return view_task_caldav(request)
|
||||
|
||||
def view_op_edit_caldav(request, uuid):
|
||||
print(uuid)
|
||||
myClient = cls_caldav_client()
|
||||
myClient.mark_as_done_task(calandar=myClient.a_op,uuid=uuid)
|
||||
return view_op_caldav(request)
|
||||
|
||||
def view_vhc_edit_caldav(request, uuid):
|
||||
print(uuid)
|
||||
myClient = cls_caldav_client()
|
||||
myClient.mark_as_done_task(calandar=myClient.a_vhc,uuid=uuid)
|
||||
return view_vhc_caldav(request)
|
||||
|
||||
@xframe_options_exempt
|
||||
def view_vhc_caldav(request):
|
||||
o_caldav = cls_caldav(url=caldav_cfg["vhc"])
|
||||
|
Reference in New Issue
Block a user