This commit is contained in:
caoqianming 2020-07-27 11:32:04 +08:00
parent 323c4189e9
commit 117aa8d3bc
3 changed files with 71 additions and 5 deletions

View File

@ -35,6 +35,17 @@
:value="item.value"
/>
</el-select>
<el-date-picker
v-model="datevalue"
type="daterange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
value-format="yyyy-MM-dd"
:picker-options="pickerOptions">
</el-date-picker>
<!-- <el-select
v-model="listQuery.is_paid"
placeholder="是否缴费"
@ -335,10 +346,49 @@ export default {
subjectData: [],
workscopeData: [],
roleData:[],
selects: []
selects: [],
pickerOptions: {
shortcuts: [{
text: '最近一天',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近一周',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近一个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近三个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit('pick', [start, end]);
}
}]
},
datevalue: '',
};
},
computed: {},
watch:{
datevalue:'setTimeRange',
},
created() {
this.getList()
this.getCompanyList()
@ -571,7 +621,12 @@ export default {
selects.push(val[i].id);
}
this.selects = selects;
}
},
setTimeRange(){
this.listQuery.min_create = this.datevalue[0],
this.listQuery.max_create = this.datevalue[1],
this.getList()
},
}
};
</script>

View File

@ -0,0 +1,11 @@
from django_filters import rest_framework as filters
from .models import Consumer
class ConsumerFilter(filters.FilterSet):
min_create = filters.DateFilter(field_name="create_time", lookup_expr='gte')
max_create = filters.DateFilter(field_name="create_time", lookup_expr='lte')
class Meta:
model = Consumer
fields = ['company', 'role', 'min_create', 'max_create']

View File

@ -26,7 +26,7 @@ from question.models import Questioncat
from question.serializers import QuestionSerializer
from server import settings
from utils.custom import CommonPagination
from .filters import ConsumerFilter
from .exports import export_consumer
from .models import Company, Consumer, PaySubject, SendCode, ConsumerPerm, ConsumerRole
from .serializers import CompanySerializer, ConsumerSerializer, ConsumerPermSerializer, ConsumerRoleSerializer, ConsumerDetailSerializer
@ -116,7 +116,7 @@ class ConsumerViewSet(ModelViewSet):
ordering_fields = ('id','company','create_time', 'username', 'workscope')
ordering = ['-create_time']
filter_backends = [DjangoFilterBackend, SearchFilter, OrderingFilter]
filterset_fields = ['company','role']
filterset_class = ConsumerFilter
search_fields = ['name','username','company__name']
def get_queryset(self):
@ -243,7 +243,7 @@ class ConsumerViewSet(ModelViewSet):
name = name.replace(' ', '')
username = sheet['B'+str(m)].value
if username:
username = str(username).replace(' ', '')
username = str(username).replace(' ', '').replace("\n", "")
companyname = sheet['C'+str(m)].value
if companyname:
companyname = companyname.replace(' ', '')