add: some note & analyse table on index.html

This commit is contained in:
raiots 2021-03-26 08:05:13 +08:00
parent 004ba6a0a6
commit 42ce5e6fc8
4 changed files with 60 additions and 50 deletions

View File

@ -29,6 +29,7 @@ class TaskAdmin(admin.ModelAdmin):
def get_changeform_initial_data(self, request):
return {'department': request.user.department}
# 年度任务编辑界面仅显示本部门的任务属性
def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == 'task_property':
kwargs["queryset"] = TaskProperty.objects.filter(own_department=request.user.department)
@ -55,6 +56,8 @@ class TaskAdmin(admin.ModelAdmin):
class TodoAdmin(admin.ModelAdmin):
# 工作包页面仅显示所属本部门的年度任务
def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == 'related_task':
kwargs["queryset"] = models.Task.objects.filter(department=request.user.department)
@ -63,8 +66,8 @@ class TodoAdmin(admin.ModelAdmin):
fieldsets = [
(None, {
'fields': [
'related_task', 'todo_topic', 'todo_note', 'deadline', 'duty_group', 'main_executor', 'sub_executor', 'predict_work',
'evaluate_factor',
'related_task', 'todo_topic', 'todo_note', 'deadline', 'duty_group', 'main_executor', 'sub_executor',
'predict_work', 'evaluate_factor',
]
}),
@ -75,9 +78,10 @@ class TodoAdmin(admin.ModelAdmin):
list_display = (
'todo_topic',
'deadline',
'todo_note',
'task_id',
'task_origin',
'lined_task',
# 'task_origin',
# 'duty_department',
'duty_group',
'main_executor',
@ -91,7 +95,7 @@ class TodoAdmin(admin.ModelAdmin):
list_filter = ('deadline',)
list_display_links = ('todo_topic', 'deadline', )
date_hierarchy = 'deadline'
list_per_page = 20
list_per_page = 70 # 目的是取消自动分页好像有bug
raw_id_fields = ("main_executor", "sub_executor")
search_fields = ('todo_topic',)
ordering = ('related_task', )
@ -116,7 +120,9 @@ class TodoAdmin(admin.ModelAdmin):
return obj.related_task
lined_task.short_description = '任务名称'
# TODO 增加承办人与协办人只显示本部门人员
# TODO 任务编辑界面按部门显示
# TODO 修复工作事项显示不下自动分页,取消自动分页

View File

@ -11,4 +11,6 @@ class TodoForm(forms.ModelForm):
model = Todo
fields = ['maturity', 'real_work', 'complete_note']
labels ={'text': ''}
widgets = {'rows': '3'}
widgets = {'rows': '3'}
# TODO 数据不可为空

View File

@ -211,17 +211,17 @@
<div class="lists">
<ul class="nes-list is-circle">
<li>
<a href="https://github.com/nostalgic-css/NES.css" target="_blank" rel="noopener">
<a href="#" target="_blank" rel="noopener">
NES.css
</a>
&nbsp;-&nbsp;NES-style CSS Framework
</li>
<li>
<a href="https://github.com/stisla/stisla" target="_blank" rel="noopener">Simple-UI</a>
<a href="#" target="_blank" rel="noopener">Simple-UI</a>
&nbsp;-&nbsp;Django后台模板
</li>
<li>
<a href="https://github.com/stisla/stisla" target="_blank" rel="noopener">AdminLTE</a>
<a href="#" target="_blank" rel="noopener">AdminLTE</a>
&nbsp;-&nbsp;Free Bootstrap Admin Template
</li>
</ul>

View File

@ -85,48 +85,50 @@
{# </div>#}
<!-- /.col -->
</div>
{# <div class="row">#}
{# <div class="col-md-12">#}
{# <!-- BAR CHART -->#}
{# <div class="card card-gray">#}
{# <div class="card-header">#}
{# <h3 class="card-title">Bar Chart</h3>#}
{##}
{# <div class="card-tools">#}
{# <button type="button" class="btn btn-tool" data-card-widget="collapse"><i#}
{# class="fas fa-minus"></i>#}
{# </button>#}
{# <button type="button" class="btn btn-tool" data-card-widget="remove"><i#}
{# class="fas fa-times"></i></button>#}
{# </div>#}
{# </div>#}
{# <div class="card-body">#}
{# <div class="chart">#}
{# <div class="chartjs-size-monitor">#}
{# <div class="chartjs-size-monitor-expand">#}
{# <div class=""></div>#}
{# </div>#}
{# <div class="chartjs-size-monitor-shrink">#}
{# <div class=""></div>#}
{# </div>#}
{# </div>#}
{# <canvas id="barChart"#}
{# style="height: 230px; min-height: 230px; display: block; width: 764px;"#}
{# width="764" height="230" class="chartjs-render-monitor"></canvas>#}
{# </div>#}
{# </div>#}
{# <!-- /.card-body -->#}
{# </div>#}
{# <!-- /.card -->#}
{# </div>#}
{# <!-- /.col (MAIN) -->#}
{# </div>#}
<div class="row">
<div class="col-md-12">
<!-- BAR CHART -->
<div class="card card-gray">
<div class="card-header">
<h3 class="card-title">部门工作统计表</h3>
<div class="card-tools">
<button type="button" class="btn btn-tool" data-card-widget="collapse"><i
class="fas fa-minus"></i>
</button>
<button type="button" class="btn btn-tool" data-card-widget="remove"><i
class="fas fa-times"></i></button>
</div>
</div>
<!-- 工作统计表格 -->
<div class="card-body">
<div class="chart">
<div class="chartjs-size-monitor">
<div class="chartjs-size-monitor-expand">
<div class=""></div>
</div>
<div class="chartjs-size-monitor-shrink">
<div class=""></div>
</div>
</div>
<canvas id="barChart"
style="height: 230px; min-height: 230px; display: block; width: 764px;"
width="764" height="230" class="chartjs-render-monitor"></canvas>
</div>
</div>
<!-- /.card-body -->
</div>
<!-- /.card -->
</div>
<!-- /.col (MAIN) -->
</div>
<!-- /.row -->
</div><!-- /.container-fluid -->
</section>
<!-- /.content -->
</div>
{#TODO 图表#}
{# <div class="content-wrapper">#}
{# {% for point in points %}#}
{# {{ point }}#}
@ -161,7 +163,7 @@
labels : [{% for user in users %}'{{ user }}', {% endfor %}],
datasets: [
{
label : 'Digital Goods',
label : '承办任务',
backgroundColor : 'rgba(60,141,188,0.9)',
borderColor : 'rgba(60,141,188,0.8)',
pointRadius : false,
@ -169,10 +171,10 @@
pointStrokeColor : 'rgba(60,141,188,1)',
pointHighlightFill : '#fff',
pointHighlightStroke: 'rgba(60,141,188,1)',
data : [28, 48, 40, 19, 86, 27, 90]
data : [{% for user in users %}'{{ user.main_executor.count }}', {% endfor %}]
},
{
label : 'Electronics',
label : '协办任务',
backgroundColor : 'rgba(210, 214, 222, 1)',
borderColor : 'rgba(210, 214, 222, 1)',
pointRadius : false,
@ -180,7 +182,7 @@
pointStrokeColor : '#c1c7d1',
pointHighlightFill : '#fff',
pointHighlightStroke: 'rgba(220,220,220,1)',
data : [65, 59, 80, 81, 56, 55, 40]
data : [{% for user in users %}'{{ user.sub_executor.count }}', {% endfor %}]
},
]
}