|
@@ -12,6 +12,7 @@ from django.contrib.auth import get_user_model
|
|
|
from vote.models import *
|
|
|
from UserManage.models import *
|
|
|
from vote.genemptyxls import GenEmptyXLSFunc
|
|
|
+from swyzxwb_photovote.common.DataConvert import UniqueID
|
|
|
|
|
|
@login_required
|
|
|
@PermissionVerify()
|
|
@@ -140,4 +141,58 @@ def DeleteContestant(request,ID):
|
|
|
cobj.delete()
|
|
|
return HttpResponseRedirect(reverse('contestantslist'))
|
|
|
|
|
|
-# Create your views here.
|
|
|
+@login_required
|
|
|
+@PermissionVerify()
|
|
|
+def XLSFilePW(request):
|
|
|
+ if request.method=='POST':
|
|
|
+ form = XLSFileForm(request.POST,request.FILES)
|
|
|
+ if form.is_valid():
|
|
|
+ try:
|
|
|
+ userdata=processPWXLS(request.FILES['xls'])
|
|
|
+ except Exception,e:
|
|
|
+ kwvars = {"msg":"导入作品失败","detail":"从xls文件导入参赛作品失败","error":unicode(e)}
|
|
|
+ return render_to_response('error.html',kwvars,RequestContext(request))
|
|
|
+ try:
|
|
|
+ ipid = UniqueID()
|
|
|
+ querysetlist=[]
|
|
|
+ for ud in userdata:
|
|
|
+ try:
|
|
|
+ cobj = Contestants.objects.get(user__username=ud[1])
|
|
|
+ except Contestants.DoesNotExist:
|
|
|
+ auobj = User.objects.get(username=ud[1])
|
|
|
+ cobj = Contestants.objects.creat(user=auobj)
|
|
|
+ cobj.save()
|
|
|
+ if ud[0]!="":
|
|
|
+ try:
|
|
|
+ t_data=PhotoWorks(uuid=ud[0],
|
|
|
+ author=cobj,
|
|
|
+ title=ud[2],
|
|
|
+ desc=ud[3],
|
|
|
+ filename=ud[4],
|
|
|
+ fileext=ud[5],
|
|
|
+ importid=ipid,
|
|
|
+ score=0)
|
|
|
+
|
|
|
+ #t_user.set_password(ud[3])
|
|
|
+ querysetlist.append(t_data)
|
|
|
+ except User.DoesNotExist:
|
|
|
+ kwvars = {"msg":"导入作品失败","detail":"不存在的参赛用户名:%s (在作品ID为%s的行)"%(ud[1],ud[0]),"error":unicode(e)}
|
|
|
+ return render_to_response('error.html',kwvars,RequestContext(request))
|
|
|
+ except Exception,e:
|
|
|
+ kwvars = {"msg":"导入作品失败","detail":"从xls文件导入参赛作品失败","error":unicode(e)}
|
|
|
+ return render_to_response('error.html',kwvars,RequestContext(request))
|
|
|
+ PhotoWorks.objects.bulk_create(querysetlist)
|
|
|
+ except Exception,e:
|
|
|
+ kwvars = {"msg":"导入作品失败","detail":"从xls文件导入参赛作品失败","error":unicode(e)}
|
|
|
+ return render_to_response('error.html',kwvars,RequestContext(request))
|
|
|
+ return HttpResponseRedirect(reverse('pwlist'))
|
|
|
+
|
|
|
+ else:
|
|
|
+ form = XLSFileForm()
|
|
|
+
|
|
|
+ kwvars = {
|
|
|
+ 'form':form,
|
|
|
+ 'request':request,
|
|
|
+ }
|
|
|
+
|
|
|
+ return render_to_response('vote/pw.addxls.html',kwvars,RequestContext(request))
|