from django.forms import model_to_dict # from django.forms.models import model_to_dict from django.http import JsonResponse from django.views.decorators.csrf import csrf_exempt from .model_handler import PartHandler, VendorHandler from .models import VendorAttachment from Info.model_handler import CompanyHandler, UserHandler from Info.func import file_upload, get_file def code_check(request): company = CompanyHandler.get_by_id(request.session.get('company_id')) result = {'code': 1, 'content': None} if request.method == 'GET': vendor = VendorHandler.get_by_code(request.GET.get('vendor_code'), company) if vendor: result = {'code': 1, 'content': "这个供应商编号已经使用了。"} else: result = {'code': 0, 'content': None } return JsonResponse(result) @csrf_exempt def file(request): result = {'code': 1, 'content': None} company = CompanyHandler.get_by_id(request.session.get('company_id')) user = UserHandler.get_by_id(request.session.get('user_id')) if request.method == 'GET': return get_file(request) if request.method == 'POST': upload_result = file_upload(request, ['BOM', 'vendor']) if upload_result['code'] == 0: v_attachment = VendorAttachment() v_attachment.company = company v_attachment.creator = user v_attachment.display_name = upload_result['target_file_name'] v_attachment.url = upload_result['target_file_path'] + upload_result['target_file_name'] v_attachment.save() content = {'id':v_attachment.id , 'url': v_attachment.url, 'display_name': v_attachment.display_name} result['code'] = 0 result['content'] = content else: result['content'] = '上传失败' return JsonResponse(result) def search_vendor(request): if request.method == 'GET': result = {'code': 1, 'content': None, 'msg':None} company = CompanyHandler.get_by_id(request.session.get('company_id')) vendor_name_keyword = request.GET.get('vendor_name') vendors = VendorHandler.search_like_name(vendor_name_keyword, company) vendor_list = [] for v in vendors: vendor_list.append(model_to_dict(v)) result['code'] = 0 result['content'] = vendor_list return JsonResponse(result)