From 5bd426191c3f0ec5ec2f0297307a33b7f5a54d5a Mon Sep 17 00:00:00 2001 From: caoqianming Date: Sun, 15 Nov 2020 15:43:29 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A2=98=E7=9B=AE=E5=88=A0=E9=99=A4=E6=93=8D?= =?UTF-8?q?=E4=BD=9C-=E6=9C=AC=E5=85=AC=E5=8F=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- groups/models.py | 4 ++-- safesite/safespider.py | 10 ++++++++-- safesite/views.py | 33 ++++++++++++++++++++------------- 3 files changed, 30 insertions(+), 17 deletions(-) diff --git a/groups/models.py b/groups/models.py index d562390f..c7e28afc 100644 --- a/groups/models.py +++ b/groups/models.py @@ -26,8 +26,8 @@ class Groupmember(models.Model): member = models.ForeignKey(s_models.Partment,on_delete=models.CASCADE, related_name='groupmember_member') class Meta: - verbose_name="集团-管理员" - verbose_name_plural="集团-管理员" + verbose_name="集团-公司" + verbose_name_plural="集团-公司" class GroupUser(models.Model): username = models.CharField(max_length=128, unique=True) diff --git a/safesite/safespider.py b/safesite/safespider.py index cb585261..e9f58e90 100644 --- a/safesite/safespider.py +++ b/safesite/safespider.py @@ -15,10 +15,16 @@ headers = { def getTzzs(certnum,stu_name):#特种证书(身份证号,姓名,均是字符) certtype_code='720' + proxies = { + "http": "http://112.91.78.240:5412" +} stu_name=parse.quote(parse.quote(stu_name)) - sessionId = eval(requests.post('http://cx.mem.gov.cn//cms/html/certQuery/certQuery.do?method=getServerTime',headers=headers).text)['time'] + text1 = requests.post('http://cx.mem.gov.cn//cms/html/certQuery/certQuery.do?method=getServerTime',headers=headers, proxies=proxies).text + print(text1) + sessionId = eval(text1)['time'] + url = "http://cx.mem.gov.cn/cms/html/certQuery/certQuery.do?method=getCertQueryResult&ref=ch&certtype_code="+certtype_code+"&certnum="+certnum+"&stu_name="+stu_name+'&passcode=1234'+'&sessionId='+sessionId - data = requests.get(url,headers=headers).text + data = requests.get(url,headers=headers, proxies=proxies).text tree = etree.HTML(data) e1 = tree.xpath("//th[text()='姓名']/following-sibling::td[1]/text()") e2 = tree.xpath("//th[text()='性别']/following-sibling::td[1]/text()") diff --git a/safesite/views.py b/safesite/views.py index 835361ee..941cbd40 100644 --- a/safesite/views.py +++ b/safesite/views.py @@ -4885,9 +4885,8 @@ def apitool(req): i.save() return JsonResponse({"code": 1}) elif a == 'correct_question': - for i in Question.objects.exclude(questioncat__usecomp__partid=1): - i.usecomps = ','+str(i.questioncat.usecomp.partid)+',' - i.save() + objs = Question.objects.filter(usecomps=F('nousecomps')) + objs.update(deletemark=0) return JsonResponse({"code": 1}) elif a == 'correct_menulist': for i in Group.objects.all(): @@ -5873,11 +5872,15 @@ def apiquestion(req): user = User.objects.get(userid=userid) a = Question.objects.get(id=id) if user.issuper == 1 or a.createuser == user: - nl = a.nousecomps.split(',') - nl.append(companyid) - nl = ','+','.join(list(set(list(filter(None, nl)))))+',' - a.nousecomps = nl - a.save() + if a.usecomps == ',' + companyid + ',': + a.deletemark = 0 + a.save() + else: + nl = a.nousecomps.split(',') + nl.append(companyid) + nl = ','+','.join(list(set(list(filter(None, nl)))))+',' + a.nousecomps = nl + a.save() return JsonResponse({"code": 1}) else: return JsonResponse({"code": 0}) @@ -5888,11 +5891,15 @@ def apiquestion(req): objs = Question.objects.filter(id__in=ids) if user.issuper == 1: for i in objs: - nl = i.nousecomps.split(',') - nl.append(companyid) - nl = ','+','.join(list(set(list(filter(None, nl)))))+',' - i.nousecomps = nl - i.save() + if i.usecomps == ',' + companyid + ',': + i.deletemark = 0 + i.save() + else: + nl = i.nousecomps.split(',') + nl.append(companyid) + nl = ','+','.join(list(set(list(filter(None, nl)))))+',' + i.nousecomps = nl + i.save() return JsonResponse({"code": 1}) else: return JsonResponse({"code": 0})