{{ scope.row.create_admin_.username }}/
@@ -301,6 +312,9 @@
value-format="yyyy-MM-dd">
+
+
+
取消
@@ -675,7 +689,7 @@ export default {
exportConsumer(this.listQuery).then((response) => {
loading.close();
window.open(response.data.path, "_blank");
- });
+ }).catch(()=>{loading.close()});
},
changeSort(val) {
if (val.order == "ascending") {
diff --git a/test_server/crm/migrations/0024_auto_20200901_1105.py b/test_server/crm/migrations/0024_auto_20200901_1105.py
new file mode 100644
index 0000000..6360321
--- /dev/null
+++ b/test_server/crm/migrations/0024_auto_20200901_1105.py
@@ -0,0 +1,35 @@
+# Generated by Django 3.0.4 on 2020-09-01 03:05
+
+from django.db import migrations, models
+import django.db.models.deletion
+import django.utils.timezone
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('crm', '0023_auto_20200826_1444'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='consumer',
+ name='ID_number1',
+ field=models.CharField(blank=True, max_length=100, null=True, verbose_name='身份证号'),
+ ),
+ migrations.CreateModel(
+ name='Candidate',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('create_time', models.DateTimeField(default=django.utils.timezone.now, help_text='创建时间', verbose_name='创建时间')),
+ ('update_time', models.DateTimeField(auto_now=True, help_text='修改时间', verbose_name='修改时间')),
+ ('is_delete', models.BooleanField(default=False, help_text='删除标记', verbose_name='删除标记')),
+ ('report_number', models.TextField(verbose_name='报告单号')),
+ ('issue_date', models.DateField(verbose_name='发证日期')),
+ ('consumer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='candidate_consumer', to='crm.Consumer')),
+ ],
+ options={
+ 'abstract': False,
+ },
+ ),
+ ]
diff --git a/test_server/crm/models.py b/test_server/crm/models.py
index 44a4b98..d12f8d8 100644
--- a/test_server/crm/models.py
+++ b/test_server/crm/models.py
@@ -72,6 +72,7 @@ class Consumer(CommonModel):
ID_number = models.CharField('身份证号', max_length=100, null=True, blank=True)
realname = models.CharField('真实姓名', max_length=100, null=True, blank=True)
+ ID_number1 = models.CharField('身份证号', max_length=100, null=True, blank=True)
create_admin = models.ForeignKey(UserProfile, on_delete=models.SET_NULL, null=True, blank=True)
exceed_date = models.DateField('账号过期', null=True, blank=True)
@@ -100,4 +101,9 @@ class SendCode(CommonModel):
验证码发送记录
'''
phone = models.CharField(max_length=11, verbose_name='发送号码')
- code = models.CharField(max_length=4, verbose_name= '验证码')
\ No newline at end of file
+ code = models.CharField(max_length=4, verbose_name= '验证码')
+
+class Candidate(CommonModel):
+ consumer = models.ForeignKey(Consumer, on_delete=models.CASCADE, related_name='candidate_consumer')
+ report_number = models.TextField('报告单号')
+ issue_date = models.DateField('发证日期')
\ No newline at end of file
diff --git a/test_server/crm/views.py b/test_server/crm/views.py
index 13b2369..41ef81a 100644
--- a/test_server/crm/views.py
+++ b/test_server/crm/views.py
@@ -337,6 +337,8 @@ class ConsumerViewSet(ModelViewSet):
return Response({"error":"工作类别列错误!"})
if sheet['e2'].value != '角色':
return Response({"error":"角色列错误!"})
+ if sheet['f2'].value != '身份证号':
+ return Response({"error":"身份证号列错误!"})
m = 3
while sheet['B'+str(m)].value:
name = sheet['A'+str(m)].value
@@ -345,6 +347,9 @@ class ConsumerViewSet(ModelViewSet):
username = sheet['B'+str(m)].value
if username:
username = str(username).replace(' ', '').replace("\n", "")
+ ID_number1 = sheet['F'+str(m)].value
+ if ID_number1:
+ ID_number1 = str(ID_number1).replace(' ', '').replace("\n", "")
companyname = sheet['C'+str(m)].value
if companyname:
companyname = companyname.replace(' ', '')
@@ -362,6 +367,7 @@ class ConsumerViewSet(ModelViewSet):
obj.create_admin = request.user
obj.name = name
obj.company = companyobj
+ obj.ID_number1 = ID_number1
obj.save()
if workscope:
workscope = workscope.replace(' ', '')
@@ -389,6 +395,8 @@ class ConsumerViewSet(ModelViewSet):
def export(self, request):
queryset = self.filter_queryset(self.queryset)
queryset = ConsumerSerializer.setup_eager_loading(queryset) # 性能优化
+ if queryset.count()>1000:
+ return Response({'error':'数据量超过1000,请筛选后导出'})
serializer = ConsumerSerializer(instance=queryset, many=True)
path = export_consumer(serializer.data)
return Response({'path': path})
@@ -418,7 +426,6 @@ class ConsumerViewSet(ModelViewSet):
elif i.username and i.openid:
i.role = role2
i.save()
- print(i.id)
return Response(status=status.HTTP_200_OK)
@action(methods=['get'], detail=False,