This commit is contained in:
caoqianming 2020-07-29 22:51:17 +08:00
commit aa9a6852bb
7 changed files with 81 additions and 13 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

@ -57,9 +57,9 @@ App({
globalData: {
userInfo: {},
userinfo: {}, // 服务器传回的消费者信息
host: 'https://apitest.ahctc.cn',
//host: 'https://apitest.ahctc.cn',
mediahost: 'https://apitest.ahctc.cn',
//host: 'http://127.0.0.1:8000',
host: 'http://127.0.0.1:8011',
//mediahost: 'http://127.0.0.1:8000',
token : '',
}

View File

@ -5,6 +5,7 @@
<view class="weui-article">
<view class="weui-article__h2">{{tm_index+1}}.
<span class="txlabel">{{tm_current.question.type}}</span>
<span style="color:gray">({{tm_current.question.questioncat_name}})</span>
</view>
<view class="weui-article__title">{{tm_current.question.name}}</view>
<view wx:if="{{tm_current.img}}" style="text-align:center"><image src="{{tm_current.img}}" mode="aspectFit"></image></view>

View File

@ -23,9 +23,9 @@
"disablePlugins": [],
"outputPath": ""
},
"useIsolateContext": true,
"useCompilerModule": false,
"userConfirmedUseCompilerModuleSwitch": false
"useCompilerModule": true,
"userConfirmedUseCompilerModuleSwitch": false,
"useIsolateContext": true
},
"compileType": "miniprogram",
"libVersion": "2.10.3",

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(' ', '')

View File

@ -85,13 +85,13 @@ class ExamTestListSerializer(serializers.ModelSerializer):
""" Perform necessary eager loading of data. """
queryset = queryset.select_related('consumer','paper', 'workscope')
return queryset
from question.serializers import QuestionSerializer
class AnswerDetailSerializer(serializers.ModelSerializer):
question = QuestionSerializer()
class Meta:
model = AnswerDetail
exclude = ('examtest',)
# fields = '__all__'
depth = 1
@staticmethod
def setup_eager_loading(queryset):
@ -130,11 +130,12 @@ class PaperQuestionsDetailSerializer(serializers.ModelSerializer):
options = serializers.ReadOnlyField(source='question.options')
right = serializers.ReadOnlyField(source='question.right')
type = serializers.ReadOnlyField(source='question.type')
img = serializers.ReadOnlyField(source='question.img')
questioncat_name = serializers.ReadOnlyField(source='question.questioncat.name')
level = serializers.ReadOnlyField(source='question.level')
class Meta:
model = PaperQuestions
fields = ('id','name','options','right','type','level','total_score','questioncat_name')
fields = ('id','name','options','right','type','level','total_score','questioncat_name', 'img')
@staticmethod
def setup_eager_loading(queryset):