分析按时间查询 part2
This commit is contained in:
parent
596293d45a
commit
afeda18ce0
|
@ -2,12 +2,12 @@
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<div style="margin-bottom: 2px">
|
<div style="margin-bottom: 2px">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
|
ref="picker"
|
||||||
v-model="daterange"
|
v-model="daterange"
|
||||||
type="daterange"
|
type="daterange"
|
||||||
range-separator="至"
|
range-separator="至"
|
||||||
start-placeholder="开始日期"
|
start-placeholder="开始日期"
|
||||||
end-placeholder="结束日期"
|
end-placeholder="结束日期"
|
||||||
value-format="yyyy-MM-dd"
|
|
||||||
:picker-options="pickerOptions"
|
:picker-options="pickerOptions"
|
||||||
>
|
>
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
|
@ -56,7 +56,20 @@ export default {
|
||||||
monidata: {},
|
monidata: {},
|
||||||
daterange: [],
|
daterange: [],
|
||||||
query: { datestart: null, dateend: null },
|
query: { datestart: null, dateend: null },
|
||||||
pickerOptions: null,
|
pickerOptions: {
|
||||||
|
shortcuts: [{
|
||||||
|
text: '2020年',
|
||||||
|
onClick(picker) {
|
||||||
|
picker.$emit('pick', ['2020-01-01','2021-01-01']);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: '2021年',
|
||||||
|
onClick(picker) {
|
||||||
|
picker.$emit('pick', ['2021-01-01','2022-01-01']);
|
||||||
|
}
|
||||||
|
}]
|
||||||
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
@ -65,13 +78,11 @@ export default {
|
||||||
methods: {
|
methods: {
|
||||||
initquery() {
|
initquery() {
|
||||||
let date = new Date();
|
let date = new Date();
|
||||||
this.query.datestart = date.getFullYear() + "-01-01";
|
let start = date.getFullYear() + "-01-01";
|
||||||
this.query.dateend = date.getFullYear() + 1 + "-01-01";
|
let end = date.getFullYear() + 1 + "-01-01";
|
||||||
this.daterange = [this.query.datestart, this.query.dateend];
|
this.daterange = [start,end];
|
||||||
this.getadmindata1(this.query);
|
// this.$refs["picker"].$emit('pick', [start, end]);
|
||||||
this.getcompanydis(this.query);
|
this.handleFilter()
|
||||||
this.getconsumerdis(this.query);
|
|
||||||
this.getmonitest(this.query);
|
|
||||||
},
|
},
|
||||||
handleFilter() {
|
handleFilter() {
|
||||||
this.query.datestart = this.daterange[0];
|
this.query.datestart = this.daterange[0];
|
||||||
|
|
|
@ -32,11 +32,13 @@ class Admindata1(APIView):
|
||||||
各管理员录入学员数-柱状图
|
各管理员录入学员数-柱状图
|
||||||
"""
|
"""
|
||||||
def get(self, request, format=None):
|
def get(self, request, format=None):
|
||||||
queryset = UserProfile.objects.filter(is_delete=False)
|
queryset = Consumer.objects.exclude(create_admin__isnull=True)
|
||||||
|
queryset = queryset.filter(create_time__gte = request.query_params.get('datestart')) if request.query_params.get('datestart', None) else queryset
|
||||||
|
queryset = queryset.filter(create_time__lte = request.query_params.get('dateend')) if request.query_params.get('dateend', None) else queryset
|
||||||
ret = {'x':{'name':'管理员', 'data':[]}, 's':[{'name':'学员数', 'data':[]}], 't':'各管理员录入学员数'}
|
ret = {'x':{'name':'管理员', 'data':[]}, 's':[{'name':'学员数', 'data':[]}], 't':'各管理员录入学员数'}
|
||||||
tmp = queryset.annotate(total=Count('consumer_create_admin')).order_by('-total').values('username', 'total')
|
tmp = queryset.values('create_admin__username').annotate(total=Count('create_admin__username')).order_by('-total')
|
||||||
for i in tmp:
|
for i in tmp:
|
||||||
ret['x']['data'].append(i['username'])
|
ret['x']['data'].append(i['create_admin__username'])
|
||||||
ret['s'][0]['data'].append(i['total'])
|
ret['s'][0]['data'].append(i['total'])
|
||||||
return Response(ret)
|
return Response(ret)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue