def terminal_outbound(self,request,extra_context=None): errorMsg = None if request.method == 'POST': try: if 'csvfile' in request.FILES: file = request.FILES['csvfile'] if os.path.splitext(file._name)[1].lower() != '.csv': raise Exception(u'亲!文件扩展名错误,请上传csv文件!') lines = csv_readlines(request.FILES.get('csvfile')) counter = 0 for item in lines and lines or []: if item and len(item) == 2: t = Terminal.objects.filter(terminalid=item[0]) if t.count() > 0: counter += t.update(group_id=item[1], last_admin=request.user.id, last_modify = datetime.datetime.now(), advice=u'批量出库:%s'%item[1]) else: raise Exception('csv文件错误,读取数据不符合规范!') messages.add_message(request, messages.INFO, u'批量出库%s个读卡器'%counter) return HttpResponseRedirect('/admin/mis/terminal/') except Exception,ex: errorMsg = ex.message
def applycode_import(self,request): error = None if request.method == 'POST': if 'csvfile' in request.FILES: try: file = request.FILES['csvfile'] if os.path.splitext(file._name)[1].lower() != '.csv': raise Exception(u'亲!文件扩展名错误,请上传csv文件!') lines = csv_readlines(request.FILES.get('csvfile')) wb = Workbook() ws0 = wb.add_sheet('0') col=0 field_names=['groupid','terminalid','applycode'] for field in field_names: ws0.write(0,col,field) col = col+1 row = 1 for item in lines and lines or []: #print item if item and len(item) >= 2 and \ len(item[0]) == 5 and len(item[1]) == 20: code = gen_applycode(item[1]) #item[3] if ApplyCode.objects.filter(src=item[0],terminalid=item[1]).count() == 0: ApplyCode.objects.create(code=code, city='0000', src=item[0], usertype=item[2], mcc='0000', used=1, terminalid=item[1]) else: code = '' ws0.write(row,0,item[0]);ws0.write(row,1,item[1]);ws0.write(row,2,code) row = row+1 xlsPath = u'/tmp/%s_aplcode_%s.xls' % (request.user.id,str(uuid.uuid1()).replace('-','')) wb.save(xlsPath) response = HttpResponse(open(xlsPath, 'r').read(), mimetype='application/ms-excel') response['Content-Disposition'] = 'attachment; filename=applycode.xls' return response except Exception,ex: error = ex.message else: error=u'请上传读卡器与渠道关系的csv文件'