views_company.py 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. from django.http import HttpResponseRedirect, HttpResponseForbidden, HttpResponse
  2. from django.shortcuts import render
  3. from .models import User, Company
  4. from .model_handler import UserHandler, CompanyHandler
  5. from django.contrib.auth.hashers import make_password, check_password
  6. def new_user(request):
  7. user = UserHandler.get_by_id(request.session.get('user_id'))
  8. if not user.admin:
  9. return HttpResponse(status=403)
  10. if request.method == 'GET':
  11. return render(request, 'info/company/user_create.html')
  12. if request.method == 'POST':
  13. company = CompanyHandler.get_by_id(request.session.get('company_id'))
  14. user = User()
  15. user.name = request.POST.get('name').strip()
  16. user.email = request.POST.get('email').strip()
  17. user.mobile = request.POST.get('mobile').strip()
  18. user.position = request.POST.get('position').strip()
  19. user.password = make_password('123456')
  20. user.company = company
  21. user.save()
  22. return render(request=request, template_name='info/directPage.html', context={'alertMsg': '用户添加成功,默认密码123456', 'dirLink': '/home/'})
  23. def user_manager(request):
  24. user = UserHandler.get_by_id(request.session.get('user_id'))
  25. if not user.admin:
  26. return HttpResponse(status=403)
  27. if request.method == 'GET':
  28. return render(request, 'info/company/user_manager.html')
  29. def profile(request):
  30. user = UserHandler.get_by_id(request.session.get('user_id'))
  31. company = CompanyHandler.get_by_id(request.session.get('company_id'))
  32. if not user.admin:
  33. return HttpResponse(status=403)
  34. if request.method == 'GET':
  35. return render(request, 'info/company/profile.html', {'company': company})
  36. if request.method == 'POST':
  37. company.name = request.POST.get('company_name').strip()
  38. company.address = request.POST.get('company_address').strip()
  39. company.license_id = request.POST.get('company_license').strip()
  40. company.phone = request.POST.get('phone').strip()
  41. company.primary_contact_name = request.POST.get('primary_contact_name').strip()
  42. company.primary_contact_mobile = request.POST.get('primary_contact_mobile').strip()
  43. company.primary_contact_email = request.POST.get('primary_contact_email').strip()
  44. company.save()
  45. return render(request=request, template_name='info/directPage.html', context={'alertMsg': '更新成功', 'dirLink': '/home/'})