def report_download_page(request): """ 跳转至下载窗口 :param request: :return: """ file_uuid = request.GET.get('file_uuid', None) file_message_one = request.GET.get('file_message_one', None) title_msg = "学生信息下载" if file_uuid: if file_message_one: message = "文件获取成功,请点击下载查看" return render_result( request, "page_main_controller/report_download_page.html", { 'title_msg': title_msg, 'not_exist': False, 'message': message, 'file_uuid': file_uuid, 'chemical': True, 'file_message_one': file_message_one }) else: message = '无数据,或者获取文件出现异常,请稍后重新下载或者联系管理员' return render_result(request, "page_main_controller/report_download_page.html", { 'title_msg': title_msg, 'not_exist': True, 'message': message })
def to_user_info_update(request): """ 修改或添加用户基本信息 :param request: :return: """ uid = request.GET.get('uid', None) title_msg = sys_msg + '-学生信息' if uid: user_infos = UserInfo.objects.filter(id=uid) teacher_infos = TeacherInfo.objects.all() if teacher_infos.count() == 0: title_msg = sys_msg + '-错误信息展示页面' message = '负责人信息为空,请管理员添加负责人信息!' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message }) elif user_infos.count() == 1: user_info = user_infos[0] image_url = '' idcard_heads_image_url = '' idcard_tails_image_url = '' if user_info.two_inch_photo: image_url = MEDIA_URL + str( user_info.two_inch_photo.picture_path) if user_info.id_card_heads_photo: idcard_heads_image_url = MEDIA_URL + str( user_info.id_card_heads_photo.picture_path) if user_info.id_card_tails_photo: idcard_tails_image_url = MEDIA_URL + str( user_info.id_card_tails_photo.picture_path) return render_result( request, "page_main_controller/user/user_info_update.html", { 'title_msg': title_msg, 'image_url': image_url, 'idcard_heads_image_url': idcard_heads_image_url, 'idcard_tails_image_url': idcard_tails_image_url, 'user_info': user_info, 'teacher_infos': teacher_infos }) else: title_msg = sys_msg + '-错误信息展示页面' message = '查看失败:系统没有此信息记录,请重试或联系管理员!' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message }) else: title_msg = sys_msg + '-错误信息展示页面' message = '系统错误:请求参数获取异常!' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message })
def start_download_picture(request): """ 开始下载 :param request: :return: """ try: file_uuid = request.GET.get('file_uuid', None) if file_uuid: file_obj = IDCardPicture.objects.get(picture_uuid=file_uuid) file_root = MEDIA_ROOT + '/' + str(file_obj.picture_path) file_root = file_root.replace("\\", "/") operation_object = file_obj.id file_names = str(file_obj.picture_path).split("/") file_name = file_names[len(file_names) - 1] print("file_name::" + file_name) ready_file = open(file_root, 'rb') response = FileResponse(ready_file) response['Content-Type'] = 'application/octet-stream' response[ 'Content-Disposition'] = 'attachment;filename=' + file_name result['status'] = True result['message'] = '下载成功!' result['data'] = json.dumps({}, ensure_ascii=False) result["level"] = log_level_download save_operation_log(request, inspect.stack()[0][3], str(operation_object), result) return response else: title_msg = '下载文件异常' message = '未正确获取到您的填报信息,或者系统异常,请稍后重新下载或者联系管理员' return render_result( request, "page_main_controller/student/report_download_page.html", { 'title_msg': title_msg, 'not_exist': True, 'message': message }) except Exception as e: result['status'] = False result['message'] = '下载异常!错误提示:' + str(e) result['data'] = json.dumps({}, ensure_ascii=False) result["level"] = log_level_download save_operation_log(request, inspect.stack()[0][3], "", result) title_msg = '下载文件异常' message = '未正确获取到您的填报信息,或者系统异常,请稍后重新下载或者联系管理员。错误提示:' + str(e) return render_result( request, "page_main_controller/student/report_download_page.html", { 'title_msg': title_msg, 'not_exist': True, 'message': message })
def index(request): """ 欢迎页:展示功能但无法操作 :param request: :return: """ # return HttpResponse(u"欢迎光临 aic!") title_msg = sys_msg + '-首页' role_name = request.session.get('role_name', None) # 尝试获取用户名 school_terms = SchoolTerm.objects.filter().order_by('-id') if role_name: if role_name == 'administrator': return HttpResponseRedirect("/report/report_info_confirm/") elif role_name == 'teacher': return HttpResponseRedirect("/report/report_info_review/") else: if school_terms.count() <= 0: return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'no_term': False, 'index_page': True }) else: school_term = SchoolTerm.objects.last() return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'school_term': school_term, 'no_term': True, 'index_page': True }) else: if school_terms.count() <= 0: return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': True, 'no_term': False, 'index_page': True }) else: school_term = SchoolTerm.objects.last() return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': True, 'school_term': school_term, 'no_term': True, 'index_page': True })
def final_reset_password_page(request): """ 返回修改密码的状态 :param request: :return: """ status = request.GET.get("status", None) message = request.GET.get("message", None) username = request.GET.get("username", None) title_msg = "修改密码结果" if status == 'True': role_name = request.session.get('role_name', None) # 角色名称 if role_name != "administrator": return render_result( request, "page_main_controller/user/user_password.html", { 'title_msg': title_msg, "message": message, 'status': "true" }) else: title_msg = sys_msg + '-修改密码后重新登陆首页' school_terms = SchoolTerm.objects.filter() if len(school_terms) <= 0: return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'no_term': False, 'reset_pwd_info': 'true' }) else: school_term = SchoolTerm.objects.last() return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'school_term': school_term, 'no_term': True, 'reset_pwd_info': 'true' }) else: return render_result( request, "page_main_controller/user/user_password.html", { 'title_msg': title_msg, "message": message, 'status': "false", "username": username })
def reset_password_page(request): username = request.GET.get('chtjskykl', None) title_msg = "修改密码" if username: return render_result(request, "page_main_controller/user/user_password.html", { 'title_msg': title_msg, "username": username, 'role': "administrator" }) else: return render_result(request, "page_main_controller/user/user_password.html", { 'title_msg': title_msg, 'role': "student" })
def to_index_teacher(request): """ 返回学生首页 :param request: :return: """ return render_result(request, 'teacher.html', {'title_msg': sys_msg})
def to_index_administrator(request): """ 返回学生首页 :param request: :return: """ return render_result(request, 'administrator.html', {'title_msg': sys_msg})
def sign_out(request): """ 清空session :param request: :return: """ # return HttpResponse(u"欢迎光临 aic!") title_msg = '重新登陆?' try: nickname = request.session.get('nickname', None) # 用户昵称 username = request.session.get('username', None) # 用户名 role_id = request.session.get('role_id', None) # 角色ID role_name = request.session.get('role_name', None) # 角色名称 result['message'] = "正常退出" result['level'] = log_level_logout save_operation_log(request, inspect.stack()[0][3], "", result) if username: del request.session['username'] if nickname: del request.session['nickname'] if role_id: del request.session['role_id'] if role_name: del request.session['role_name'] except Exception as e: result['status'] = False result['message'] = "退出系统时异常:" + str(e) result['data'] = '' result['level'] = log_level_logout save_operation_log(request, inspect.stack()[0][3], "", result) return render_result(request, "login.html", {'title_msg': title_msg})
def user_setting(request): """ 用户基本信息查看 :param request: :return: """ username = request.session.get('username', None) title_msg = sys_msg + '-基本信息' if username: user_infos = UserInfo.objects.filter( register_user_info__username=username) print(user_infos.values()) if user_infos.count() == 1: user_info = user_infos[0] image_url = '' idcard_heads_image_url = '' idcard_tails_image_url = '' if user_info.two_inch_photo: image_url = MEDIA_URL + str( user_info.two_inch_photo.picture_path) if user_info.id_card_heads_photo: idcard_heads_image_url = MEDIA_URL + str( user_info.id_card_heads_photo.picture_path) if user_info.id_card_tails_photo: idcard_tails_image_url = MEDIA_URL + str( user_info.id_card_tails_photo.picture_path) return render_result( request, "page_main_controller/user/user_info_detail.html", { 'title_msg': title_msg, 'image_url': image_url, 'id_card_heads_photo_url': idcard_heads_image_url, 'id_card_tails_photo_url': idcard_tails_image_url, 'user_info': user_info }) else: return render_result( request, "page_main_controller/user/user_info_update.html", {'title_msg': title_msg}) else: title_msg = sys_msg + '-错误信息展示页面' message = '查看失败:系统没有此信息记录,请重试或联系管理员!' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message })
def report_student_info_list(request): """��ѯѧ��������Ϣ�б�. :param request: :return: """ # 关联登陆用户基础信息 title_msg = '学生填报信息列表' username = request.session.get('username', None) # 用户名 register_user_info = RegisterUserInfo.objects.get(username=username) students = StudentInfo.objects.filter( user_info__register_user_info=register_user_info).order_by('-id') page_search = PageSearchForm(request.GET) per_page = 10 page = 1 if page_search.is_valid(): if page_search.cleaned_data.get('per_page', None): per_page = page_search.cleaned_data.get('per_page', None) if page_search.cleaned_data.get('page', None): page = page_search.cleaned_data.get('page', None) paginator = Paginator(students, per_page) contacts = paginator.get_page(page) # paginator = Paginator(students, 10) # page = request.GET.get('page') # contacts = paginator.get_page(page) if SchoolTerm.objects.count() > 0: school_term = SchoolTerm.objects.last() return render_result( request, "page_main_controller/student/report_student_info_list.html", { 'title_msg': title_msg, "contacts": contacts, 'school_term': school_term, 'need_list': False }) else: return render_result( request, "page_main_controller/student/report_student_info_list.html", { 'title_msg': title_msg, 'need_list': False })
def worker_history(request): """ 跳转到工作经验证明的页面 :param request: :return: """ title_msg = sys_msg + '-工作履历' username = request.session.get('username', None) # 用户名 register_user_info = RegisterUserInfo.objects.get(username=username) user_infos = UserInfo.objects.filter( register_user_info=register_user_info.id) if len(user_infos) > 0: user_info = user_infos[len(user_infos) - 1] # user_Info_working_history = user_info.user_Info_working_history.all().values() # 获得纯值,而非对象集合 # print("user_Info_working_history::" + str(user_Info_working_history)) working_history_list = user_info.user_Info_working_history.all() print("user_Info_working_history::" + str(working_history_list)) student_infos = StudentInfo.objects.filter(user_info=user_info) if len(student_infos) > 0: student_info = student_infos[0] return render_result( request, "page_main_controller/report_worker_history.html", { 'title_msg': title_msg, 'student_info': student_info, 'working_history_list': working_history_list, 'not_report': False }) else: return render_result( request, "page_main_controller/report_worker_history.html", { 'title_msg': title_msg, 'not_report': True }) else: return render_result( request, "page_main_controller/report_worker_history.html", { 'title_msg': title_msg, 'not_report': True })
def to_login(request): """ 点击登录:跳转到登录页面 :param request: :return: """ # return HttpResponse(u"欢迎光临 aic!") title_msg = sys_msg + '-登陆' school_term = SchoolTerm.objects.last() return render_result(request, "login.html", { 'title_msg': title_msg, 'school_term': school_term })
def search_return(request, title_msg, param_result): if isinstance(param_result, dict): print('aaaaaaa') if 'school_term' in param_result: print('ssssss') if param_result['school_term'] is None: print('school_term---------------') message = '尚未添加->报考学期->信息,请->管理员->添加相关信息' return render_result(request, "page_main_controller/message.html", {'title_msg': title_msg, 'message': message}) if 'user_search_error_class' in param_result: if param_result['user_search_error_class'] is not None: print(param_result['user_search_error_class'], param_result['user_search_errors']) message = '系统提示:参数传输错误:' + param_result['user_search_errors'] return render_result(request, "page_main_controller/message.html", {'title_msg': title_msg, 'message': message}) if 'student_search_error_class' in param_result: if param_result['student_search_error_class'] is not None: print(param_result['student_search_error_class'], param_result['student_search_errors']) message = '系统提示:获取当前用户信息失败:' + param_result['student_search_errors'] return render_result(request, "page_main_controller/message.html", {'title_msg': title_msg, 'message': message}) return True
def worker_years_6_download(request): """ 工作满6年(含)以上人员名单 :param request: :return: """ title_msg = '工作满6年(含)以上人员名单' try: student_infos, kwargs = search_parameter(request, '') file_uuid, file_uuid2 = worker_year_6(student_infos, kwargs) if file_uuid and file_uuid2: message = "文件获取成功,请点击下载查看" file_message_one = '工作满6年(含)以上人员名单' file_message_two = '证 明(工作满6年)' return render_result( request, "page_main_controller/student/report_download_page.html", { 'title_msg': title_msg, 'not_exist': False, 'message': message, 'file_uuid': file_uuid, 'file_uuid2': file_uuid2, 'chemical': False, 'file_message_one': file_message_one, 'file_message_two': file_message_two }) else: message = '未正确获取到您的填报信息,或者系统异常,请稍后重新下载或者联系管理员' return render_result( request, "page_main_controller/student/report_download_page.html", { 'title_msg': title_msg, 'not_exist': True, 'message': message }) except Exception as e: raise e
def teacher(request): worker_type = request.GET['type'] worker_switch = { '0': "page_main_controller/teacher/all_student_base_info.html", '1': "page_main_controller/teacher/reporter_chemical.html", '3': "page_main_controller/teacher/reporter_chemical_not.html", # 化工 } title_switch = { '0': "学员缴费情况", '1': "学员报名资料(化工)", '3': "技术评定花名册", } # 默认是最新一期 student_infos = StudentInfo.objects.filter( school_term=SchoolTerm.objects.last()).order_by('-id') title_msg = sys_msg + '-' + title_switch[worker_type] paginator = Paginator(student_infos, 10) page = request.GET.get('page') contacts = paginator.get_page(page) return render_result(request, worker_switch[worker_type], { 'title_msg': title_msg, "contacts": contacts })
def user_info_list(request): """ 返回所有用户列表 :param request: :return: """ # cursor = connection.cursor() # sql = '''select name,age from student''' # cursor.execute(sql) # fetchall = cursor.fetchall() # students = [] # for object in fetchall: # students.append({'name': object[0], 'age': object[1]}) user_infos = UserInfo.objects.filter().order_by('-id') paginator = Paginator(user_infos, 20) page = request.GET.get('page') contacts = paginator.get_page(page) title_msg = '用户信息列表' return render_result(request, "page_main_controller/user/user_info_list.html", { 'title_msg': title_msg, "contacts": contacts })
def teacher_search_wait_review(request): title_msg = '当前负责人名下学员' param_result = search_parameter(request, 'teacher_search_wait_review') report_skill_main_list = param_result['report_skill_main_list'] report_skill_list = param_result['report_skill_list'] tmp_list = param_result['tmp_list'] last_school_term = param_result['last_school_term'] student_info = param_result['student_info'] contacts = param_result['contacts'] teacher_infos = param_result['teacher_infos'] school_terms = param_result['school_terms'] school_term = param_result['school_term'] teacher_info = param_result['teacher_info'] identification_level = param_result['identification_level'] report_skill_main = param_result['report_skill_main'] report_skill = param_result['report_skill'] student_infos_all_term_count = param_result['student_infos_all_term_count'] current_term_student_len = param_result['current_term_student_len'] print("ssss") print(f"{ param_result['contacts'].object_list }") page_result = {'title_msg': title_msg, 'need_login': False, 'report_skill_main_list':report_skill_main_list, 'report_skill_list':report_skill_list, 'tmp_list': json.dumps(tmp_list, ensure_ascii=False), 'last_school_term': last_school_term, 'student_info': student_info, 'contacts': contacts, 'teacher_infos': teacher_infos, 'school_terms': school_terms, 'school_term': school_term, 'teacher_info': teacher_info, 'identification_level': identification_level, 'report_skill_main':report_skill_main,'report_skill':report_skill, 'student_infos_all_term_count':student_infos_all_term_count, 'current_term_student_len': current_term_student_len,'no_term': True} return render_result(request, "page_main_controller/teacher/report_student_info_list_teacher.html", page_result)
def register(request): """ 注册:分为管理员和普通用户 :param request: :return: """ try: if request.method == 'POST': object_form = RegisterForm(request.POST) if object_form.is_valid(): form_object = form_to_obj(object_form.cleaned_data, RegisterUserInfo()) # 密码加密处理 form_object.password = Password.encryption( form_object.password) role_infos = RoleInfo.objects.filter(role_name='student') if len(role_infos) > 0: form_object.role = role_infos[0] form_object.save() result['message'] = "注册成功" result['level'] = log_level_register save_operation_log(request, inspect.stack()[0][3], form_object.__str__(True), result) title_msg = sys_msg + '-登陆' sign_in_msg = '注册成功,请您登陆' return render_result( request, "login.html", { 'title_msg': title_msg, 'sign_in_msg': sign_in_msg, 'username': form_object.username }) else: print(type(object_form.errors), object_form.errors) # errors类型是ErrorDict,里面是ul,li标签 sign_in_msg = '-注册失败,请勿登陆,初始角色信息获取失败,请稍后重试,或者联系管理员查看和管理角色信息!' title_msg = sys_msg + '-注册失败!' return render_result(request, "login.html", { 'title_msg': title_msg, 'sign_in_msg': sign_in_msg }) # user_role = UserRole() # role = RoleInfo.objects.get(role_name='student') # user = RegisterUserInfo.objects.get(username=form_object.username) # user_role.user = user # user_role.role_name = role # user_role.explain = "默认注册都是学生" # user_role.save() else: print(type(object_form.errors), object_form.errors) # errors类型是ErrorDict,里面是ul,li标签 title_msg = sys_msg + '-注册失败' sign_in_msg = '注册失败,请勿登陆,请重试或联系管理员!报错内容:' + object_form.errors return render_result(request, "login.html", { 'title_msg': title_msg, 'sign_in_msg': sign_in_msg }) except Exception as e: print(str(e)) sign_in_msg = '-注册失败,请勿登陆,请重试或联系管理员!报错内容:' + str(e) title_msg = sys_msg + '-注册失败' return render_result(request, "login.html", { 'title_msg': title_msg, 'sign_in_msg': sign_in_msg })
def search_parameter(request, search_type=None): teacher_tmp = None role_name = request.session.get('role_name', None) # 用户名 if role_name is not None: if role_name in 'teacher': username = request.session.get('username', None) # 用户名 if username: register_user_info = RegisterUserInfo.objects.get( username=username) user_info_tmp = UserInfo.objects.get( register_user_info=register_user_info) teacher_tmp = TeacherInfo.objects.get(user_info=user_info_tmp) else: pass print('role') print(role_name) print(teacher_tmp) title_msg = "所有学员的条件查询" student_search = StudentSearchForm(request.GET) user_search = UserInfoSearchForm(request.GET) page_search = PageSearchForm(request.GET) teacher_infos = TeacherInfo.objects.all() school_terms = SchoolTerm.objects.filter().order_by('-id') school_terms_values = school_terms.values() tmp_list = [] print(school_terms_values) if len(school_terms_values) > 0: for i in school_terms_values: tmp_json = {} tmp_json['id_str'] = i['id'] tmp_json['school_term_name'] = i['school_term_name'] tmp_json['school_term_start'] = date_encoder( i['school_term_start']) tmp_json['school_term_end'] = date_encoder(i['school_term_end']) tmp_list.append(tmp_json) print(tmp_list) per_page = 10 page = 1 if page_search.is_valid(): if page_search.cleaned_data.get('per_page', None): per_page = page_search.cleaned_data.get('per_page', None) if page_search.cleaned_data.get('page', None): page = page_search.cleaned_data.get('page', None) if student_search.is_valid(): if user_search.is_valid(): # 用户信息 kwargs = {} # kwargs['confirm_status'] = 1, # kwargs['chemical_worker'] = 1, user_info = UserInfo() real_name = user_search.cleaned_data.get('real_name', None) if real_name: user_info.real_name = real_name kwargs['user_info__real_name__icontains'] = real_name work_unit = user_search.cleaned_data.get('work_unit', None) if work_unit: user_info.work_unit = work_unit kwargs['user_info__work_unit__icontains'] = work_unit education_degree = user_search.cleaned_data.get( 'education_degree', None) if education_degree: user_info.education_degree = education_degree if type(education_degree) == str: if int(education_degree) > 0: kwargs['user_info__education_degree__id'] = int( education_degree) else: kwargs[ 'user_info__education_degree__id'] = education_degree # 学生信息 student_info = StudentInfo() identification_level = student_search.cleaned_data.get( 'identification_level', None) declaration_of_occupation = student_search.cleaned_data.get( 'declaration_of_occupation', None) teacher_info = student_search.cleaned_data.get( 'teacher_info', None) school_term = student_search.cleaned_data.get('school_term', None) if identification_level: student_info.identification_level = identification_level if type(identification_level) == str: if int(identification_level) > 0: kwargs['identification_level'] = int( identification_level) else: kwargs['identification_level'] = identification_level else: identification_level = 0 if declaration_of_occupation: student_info.declaration_of_occupation = declaration_of_occupation kwargs[ 'declaration_of_occupation__icontains'] = declaration_of_occupation student_infos_all_term_count = 0 if teacher_info: if teacher_info != 0: if type(teacher_info) == str: if int(teacher_info) > 0: kwargs['teacher_info'] = int(teacher_info) student_info.teacher_info = TeacherInfo.objects.get( id=int(teacher_info)) else: kwargs['teacher_info'] = teacher_info student_info.teacher_info = TeacherInfo.objects.get( id=teacher_info) student_infos_all_term_count = StudentInfo.objects.filter( teacher_info=teacher_info).count() else: if teacher_tmp: teacher_info = teacher_tmp else: teacher_info = 0 last_school_term = SchoolTerm.objects.last() if school_term: if type(school_term) == str: if int(school_term) > 0: kwargs['school_term'] = int(school_term) student_info.school_term = SchoolTerm.objects.get( id=int(school_term)) else: kwargs['school_term'] = school_term student_info.school_term = SchoolTerm.objects.get( id=school_term) else: if last_school_term: last_school_term = SchoolTerm.objects.last() school_term = last_school_term.id kwargs['school_term'] = school_term student_info.school_term = SchoolTerm.objects.get( id=school_term) report_skill_main_tmp = student_search.cleaned_data.get( 'skill_main_class', None) if report_skill_main_tmp: if type(report_skill_main_tmp) == str: if int(report_skill_main_tmp) > 0: kwargs['skill_main_class'] = int(report_skill_main_tmp) student_info.skill_main_class = report_skill_main_tmp else: kwargs['skill_main_class'] = report_skill_main_tmp student_info.report_skill_main = report_skill_main_tmp else: skill_main_class = 0 report_skill_tmp = student_search.cleaned_data.get( 'skill_main_class', None) if report_skill_tmp: if type(report_skill_tmp) == str: if int(report_skill_tmp) > 0: kwargs['report_skill'] = int(report_skill_tmp) student_info.report_skill = report_skill_tmp else: kwargs['report_skill'] = report_skill_tmp student_info.teacher_info = report_skill_tmp else: report_skill = 0 if report_skill_main_tmp: report_skill_main = report_skill_main_tmp else: report_skill_main = 0 if report_skill_tmp: report_skill = report_skill_tmp else: report_skill = 0 student_info.user_info = user_info print('rrrrrrrrrrrrrrrrrrr') print(kwargs) print(school_term) print(teacher_info) if search_type == 'teacher_search_wait_review': student_infos = StudentInfo.objects.filter( teacher_info=teacher_info, **kwargs).order_by('-id') else: student_infos = StudentInfo.objects.filter( **kwargs).order_by('-id') student_infos_all_term_count = StudentInfo.objects.filter( teacher_info=teacher_info).count() paginator = Paginator(student_infos, per_page) contacts = paginator.get_page(page) if teacher_tmp: teacher_info = teacher_tmp if len(school_terms) <= 0: return render_result(request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'no_term': False }) else: param_result = { 'tmp_list': tmp_list, 'report_skill_main_list': report_skill_main_list, 'report_skill_list': report_skill_list, 'last_school_term': last_school_term, 'student_info': student_info, 'contacts': contacts, 'teacher_infos': teacher_infos, 'school_terms': school_terms, 'school_term': school_term, 'teacher_info': teacher_info, 'identification_level': identification_level, 'report_skill_main': report_skill_main, 'report_skill': report_skill, 'student_infos_all_term_count': student_infos_all_term_count, 'current_term_student_len': len(student_infos) } return param_result else: print(user_search.error_class, user_search.errors) message = '系统提示:获取当前用户失败,请重新登陆后尝试,或联系管理员.' else: print(student_search.error_class, student_search.errors) message = '系统提示:参数传输错误.' + str(student_search.errors) return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message })
def download_apply(request): """ 下载对应的汇总表 :param request: :return: """ title_msg = '下载山东省职业技能考核表格' student_id = request.GET.get('studentId', None) try: if student_id: student = StudentInfo.objects.get(id=student_id) if student: print(student.declaration_of_occupation) print(student.condition_selected.skill_main_class. skill_main_class_name) skill_main_class_name = student.condition_selected.skill_main_class.skill_main_class_name if '化工' in skill_main_class_name: file_uuid = apply_chemical(student) print(str(file_uuid)) if file_uuid: file_message_one = '&file_message_one=《化工行业特有工种职业技能鉴定申请表》' return HttpResponseRedirect( '/report/report_download_page?file_uuid=' + file_uuid + file_message_one) else: return HttpResponseRedirect( '/report/report_download_page/') elif '电子' in skill_main_class_name: file_uuid = apply_electronic_communiction(student) print(str(file_uuid)) if file_uuid: file_message_one = '&file_message_one=《电子行业职业技能鉴定申报表》' return HttpResponseRedirect( '/report/report_download_page?file_uuid=' + file_uuid + file_message_one) else: return HttpResponseRedirect( '/report/report_download_page/') else: # 除了化工、电子 file_uuid, file_uuid2 = apply_not(student) print(str(file_uuid)) if file_uuid: message = "文件获取成功,请点击下载查看" file_message_one = '《山东省职业技能鉴定考评表》' file_message_two = '《工作年限承诺书》' return render_result( request, "page_main_controller/student/report_download_page.html", { 'title_msg': title_msg, 'not_exist': False, 'message': message, 'file_uuid': file_uuid, 'file_uuid2': file_uuid2, 'chemical': False, 'file_message_one': file_message_one, 'file_message_two': file_message_two }) else: message = '获取申请表出现系统异常,请稍后重新下载或者联系管理员' return render_result( request, "page_main_controller/student/report_download_page.html", { 'title_msg': title_msg, 'not_exist': True, 'message': message }) else: message = '未正确获取到您的填报信息,或者系统异常,请稍后重新下载或者联系管理员' return render_result( request, "page_main_controller/student/report_download_page.html", { 'title_msg': title_msg, 'not_exist': True, 'message': message }) else: message = '未正确获取到您的填报信息,或者系统异常,请稍后重新下载或者联系管理员' return render_result( request, "page_main_controller/student/report_download_page.html", { 'title_msg': title_msg, 'not_exist': True, 'message': message }) except Exception as e: raise e
def report_info_review(request): """ 管理员确认学员信息列表 :param request: :return: """ title_msg = '学生填报信息待审核列表' username = request.session.get('username', None) # 用户名 register_user_infos = RegisterUserInfo.objects.filter(username=username) school_terms = SchoolTerm.objects.filter().order_by('-id') school_terms_values = school_terms.values() tmp_list = [] print(school_terms_values) if len(school_terms_values) > 0: for i in school_terms_values: tmp_json = {} tmp_json['id_str'] = i['id'] tmp_json['school_term_name'] = i['school_term_name'] tmp_json['school_term_start'] = date_encoder( i['school_term_start']) tmp_json['school_term_end'] = date_encoder(i['school_term_end']) tmp_list.append(tmp_json) print(tmp_list) if len(register_user_infos) > 0: register_user_info = register_user_infos[0] # 消息 user_info = UserInfo.objects.get(register_user_info=register_user_info) system_messages_receiver = SystemMessage.objects.filter( receiver=user_info, hidden_status_receiver=2).order_by('-id') not_confirm = system_messages_receiver.filter( feedback_status=2).count() # 消息 if register_user_info: user_infos = UserInfo.objects.filter( register_user_info=register_user_info) if len(user_infos) > 0: teacher_infos = TeacherInfo.objects.filter( user_info=user_infos[0]) if len(teacher_infos) > 0: student_infos = StudentInfo.objects.filter( record_status='1', teacher_info=teacher_infos[0]).order_by('-id') paginator = Paginator(student_infos, 10) # page = request.GET.get('page') page = 1 contacts = paginator.get_page(page) if len(school_terms) <= 0: return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'no_term': False }) else: last_school_term = SchoolTerm.objects.last() # return render(request, # "page_main_controller/teacher/report_student_info_list_teacher.html", # {'title_msg': title_msg, 'need_login': False,'school_terms': school_terms, # 'last_school_term': last_school_term, 'no_term': True, # 'contacts': contacts, 'not_confirm': not_confirm}) return render_result( request, "page_main_controller/teacher/report_student_info_list_teacher.html", { 'title_msg': title_msg, 'need_login': False, 'last_school_term': last_school_term, 'no_term': True, 'contacts': contacts, 'school_terms': school_terms, 'tmp_list': json.dumps(tmp_list, ensure_ascii=False), 'not_confirm': not_confirm, 'school_term': 0, 'identification_level': 0 }) # # return render(request, "page_main_controller/teacher/report_student_info_list_teacher.html", # {'title_msg': title_msg, "contacts": contacts}) else: message = '系统提示:获取当前用户基本信息失败,请重新登陆后尝试,或联系管理员' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message }) else: message = '系统提示:获取当前用户失败,请重新登陆后尝试,或联系管理员.' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message }) else: message = '系统提示:获取当前用户失败,请重新登陆后尝试,或联系管理员' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message })
def update_user_info(request): """ 修改用户基础信息 :param request: :return: """ try: if request.method == 'POST': object_form = UserInfoUpdateForm(request.POST) student_id = request.POST.get('student_id', None) if object_form.is_valid(): username = request.session.get('username', None) # 用户名 register_user_info = RegisterUserInfo.objects.get( username=username) user_info_id = object_form.cleaned_data.get( 'user_info_id', None) user_infos = UserInfo.objects.filter(id=user_info_id) if len(user_infos) > 0: user_info = user_infos[len(user_infos) - 1] form_object_user_info = form_to_obj( object_form.cleaned_data, user_info) else: # 用户基础信息 form_object_user_info = form_to_obj( object_form.cleaned_data, UserInfo()) # 关联注册员信息 form_object_user_info.register_user_info = register_user_info # 关联注册员信息 # 关联操作员信息 form_object_user_info.user_operator = register_user_info # 关联注册员信息 # 关联教育程度 education_degree = object_form.cleaned_data.get( 'education_degree_form', None) if education_degree: education_degree_obj = EducationDegree.objects.get( id=education_degree) form_object_user_info.education_degree = education_degree_obj # 关联教育程度 # 关联民族信息 nation_info = object_form.cleaned_data.get( 'nation_info_form', None) if nation_info: nation_info_obj = NationInfo.objects.get(id=nation_info) form_object_user_info.nation_info = nation_info_obj # 关联民族信息 # 关联单位性质 unit_nature = object_form.cleaned_data.get( 'unit_nature_form', None) if unit_nature: unit_nature_obj = UnitNature.objects.get(id=unit_nature) form_object_user_info.unit_nature = unit_nature_obj # 关联单位性质 # 关联省 hukou_province = object_form.cleaned_data.get( 'hukou_province_form', None) if hukou_province: hukou_province_obj = ProvinceCityCountry.objects.get( id=hukou_province) form_object_user_info.hukou_province = hukou_province_obj # 关联省 # 关联市 hukou_city = object_form.cleaned_data.get( 'hukou_city_form', None) if hukou_city: hukou_city_obj = ProvinceCityCountry.objects.get( id=hukou_city) form_object_user_info.hukou_city = hukou_city_obj # 关联市 # 关联县 hukou_county = object_form.cleaned_data.get( 'hukou_county_form', None) if hukou_county: hukou_county_obj = ProvinceCityCountry.objects.get( id=hukou_county) form_object_user_info.hukou_county = hukou_county_obj # 关联县 # 关联二寸照片 two_inch_photo = object_form.cleaned_data.get( 'two_inch_photo_form', None) if two_inch_photo: two_inch_photo_obj = Picture.objects.get(id=two_inch_photo) form_object_user_info.two_inch_photo = two_inch_photo_obj # 关联二寸照片 id_card_heads_photo = object_form.cleaned_data.get( 'id_card_heads_photo', None) id_card_tails_photo = object_form.cleaned_data.get( 'id_card_tails_photo', None) print('id_card_heads_photo') print('id_card_tails_photo') print(id_card_heads_photo) print(id_card_tails_photo) # 关联身份证正面照片 if id_card_heads_photo: id_card_heads_photo_obj = IDCardPicture.objects.get( id=id_card_heads_photo) form_object_user_info.id_card_heads_photo = id_card_heads_photo_obj # 关联身份证反面照片 if id_card_tails_photo: id_card_tails_photo_obj = IDCardPicture.objects.get( id=id_card_tails_photo) form_object_user_info.id_card_tails_photo = id_card_tails_photo_obj id_number = form_object_user_info.id_number if len(id_number) > 17: birthday_string = str(id_number)[6:14] year = birthday_string[0:4] month = birthday_string[4:6] day = birthday_string[6:8] birthday = year + "-" + month + "-" + day form_object_user_info.birthday = birthday age = timezone.now().year - int(year) form_object_user_info.age = age start_working_date = form_object_user_info.start_working_date if start_working_date: year = start_working_date.year working_year = timezone.now().year - year form_object_user_info.working_year = working_year form_object_user_info.save() result['message'] = '个人信息添加成功' result["level"] = log_level_edit save_operation_log(request, inspect.stack()[0][3], form_object_user_info.__str__(True), result) # 用户基础信息 # 关联现有的填报信息 student_id = object_form.cleaned_data.get("student_id", None) teacher_info_form = object_form.cleaned_data.get( "teacher_info_form", None) if student_id: student_infos = StudentInfo.objects.filter(id=student_id) if len(student_infos) > 0: student_info = student_infos[0] if teacher_info_form: teacher_infos = TeacherInfo.objects.filter( id=teacher_info_form) if len(teacher_infos) > 0: student_info.teacher_info = teacher_infos[0] declaration_of_occupation = student_info.declaration_of_occupation identification_level = student_info.identification_level if '工业废水' in declaration_of_occupation: declaration_of_occupation_first = '工废' elif '工业固体' in declaration_of_occupation: declaration_of_occupation_first = '工固' elif '中式烹调师' in declaration_of_occupation: declaration_of_occupation_first = '烹' elif '中式面点师' in declaration_of_occupation: declaration_of_occupation_first = '面' else: declaration_of_occupation_first = str( declaration_of_occupation)[0:1] identification_level_dict = { '5': '(初)', '4': '(中)', '3': '(高)' } identification_level_str = identification_level_dict[ str(identification_level)] explain = declaration_of_occupation_first + identification_level_str student_info.explain = explain student_info.save() student_username = form_object_user_info.register_user_info.username term_worker_picture( student_info.school_term.school_term_name, student_info.declaration_of_occupation, student_username, "二寸证件照", form_object_user_info.two_inch_photo. picture_path) term_worker_picture( student_info.school_term.school_term_name, student_info.declaration_of_occupation, student_username, "SFZ证件ZFM照", form_object_user_info.id_card_heads_photo. picture_path) term_worker_picture( student_info.school_term.school_term_name, student_info.declaration_of_occupation, student_username, "SFZ证件ZFM照", form_object_user_info.id_card_tails_photo. picture_path) return HttpResponseRedirect( "/report/student_info_detail?studentId=" + str(student_id)) title_msg = sys_msg + '-填报详情' image_url = MEDIA_URL + str( student_info.user_info.two_inch_photo.picture_path) # 全部汇总在大填报表格里面 certificate_photos_url = '' if student_info.certificate_photos: certificate_photos_url = MEDIA_URL + str( student_info.certificate_photos.picture_path) diploma_certificate_photos_url = '' if student_info.diploma_certificate_photos: diploma_certificate_photos_url = MEDIA_URL + str( student_info.diploma_certificate_photos. picture_path) return render_result( request, "page_main_controller/student/report_student_user_info_detail.html", { 'title_msg': title_msg, 'student_info': student_info, 'image_url': image_url, 'certificate_photos_url': certificate_photos_url, 'diploma_certificate_photos_url': diploma_certificate_photos_url, 'not_exist': False }) else: title_msg = sys_msg + '-填报详情' return render_result( request, "page_main_controller/student/report_student_user_info_detail.html", { 'title_msg': title_msg, 'not_exist': True }) else: # 未携带学生信息,只修改基础信息 return HttpResponseRedirect('/report/user_setting/') # title_msg = sys_msg + '-填报详情' # return render_result(request, "page_main_controller/student/report_student_user_info_detail.html", # {'title_msg': title_msg, 'not_exist': True}) else: print(type(object_form.errors), object_form.errors) # errors类型是ErrorDict,里面是ul,li标签 title_msg = sys_msg + '-继续填写信息' if student_id: return render_result( request, "page_main_controller/user/report_user_info.html", { 'title_msg': title_msg, 'student_id': student_id }) # return render_result(request, "account/form1.html", {"error": f.errors}) except Exception as e: print(str(e)) title_msg = sys_msg + '-系统错误' message = '系统提示:系统异常请稍后重试' + str(e) return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message })
def add_user_info(request): """ 添加学生信息(化工类) :param request: :return: """ try: if request.method == 'POST': object_form = UserInfoForm(request.POST) if object_form.is_valid(): username = request.session.get('username', None) # 用户名 register_user_info = RegisterUserInfo.objects.get( username=username) user_infos = UserInfo.objects.filter( register_user_info=register_user_info) if len(user_infos) > 0: user_info = user_infos[len(user_infos) - 1] form_object_user_info = form_to_obj( object_form.cleaned_data, user_info) else: # 用户基础信息 form_object_user_info = form_to_obj( object_form.cleaned_data, UserInfo()) # 关联注册员信息 form_object_user_info.register_user_info = register_user_info # 关联注册员信息 # 关联操作员信息 form_object_user_info.user_operator = register_user_info # 关联注册员信息 # 关联教育程度 education_degree = object_form.cleaned_data.get( 'education_degree_form', None) if education_degree: education_degree_obj = EducationDegree.objects.get( id=education_degree) form_object_user_info.education_degree = education_degree_obj # 关联教育程度 # 关联民族信息 nation_info = object_form.cleaned_data.get( 'nation_info_form', None) if nation_info: nation_info_obj = NationInfo.objects.get(id=nation_info) form_object_user_info.nation_info = nation_info_obj # 关联民族信息 # 关联单位性质 unit_nature = object_form.cleaned_data.get( 'unit_nature_form', None) if unit_nature: unit_nature_obj = UnitNature.objects.get(id=unit_nature) form_object_user_info.unit_nature = unit_nature_obj # 关联单位性质 # 关联省 hukou_province = object_form.cleaned_data.get( 'hukou_province_form', None) if hukou_province: hukou_province_obj = ProvinceCityCountry.objects.get( id=hukou_province) form_object_user_info.hukou_province = hukou_province_obj # 关联省 # 关联市 hukou_city = object_form.cleaned_data.get( 'hukou_city_form', None) if hukou_city: hukou_city_obj = ProvinceCityCountry.objects.get( id=hukou_city) form_object_user_info.hukou_city = hukou_city_obj # 关联市 # 关联县 hukou_county = object_form.cleaned_data.get( 'hukou_county_form', None) if hukou_county: hukou_county_obj = ProvinceCityCountry.objects.get( id=hukou_county) form_object_user_info.hukou_county = hukou_county_obj # 关联县 # 关联二寸照片 two_inch_photo = object_form.cleaned_data.get( 'two_inch_photo_form', None) if two_inch_photo: two_inch_photo_obj = Picture.objects.get(id=two_inch_photo) form_object_user_info.two_inch_photo = two_inch_photo_obj # 关联二寸照片 # # 关联毕业证书照片 # certificate_photos = object_form.cleaned_data.get('certificate_photos_form', None) # if certificate_photos: # certificate_photos_obj = Picture.objects.get(id=certificate_photos) # form_object_user_info.certificate_photos = certificate_photos_obj # # 关联毕业证书照片 # # # 关联院校毕业证书照片 # diploma_certificate_photos = object_form.cleaned_data.get('diploma_certificate_photos_form', None) # if diploma_certificate_photos: # diploma_certificate_photos_obj = Picture.objects.get(id=diploma_certificate_photos) # form_object_user_info.diploma_certificate_photos = diploma_certificate_photos_obj # # 关联院校毕业证书照片 id_number = form_object_user_info.id_number if len(id_number) > 17: birthday_string = str(id_number)[6:14] year = birthday_string[0:4] month = birthday_string[4:6] day = birthday_string[6:8] birthday = year + "-" + month + "-" + day form_object_user_info.birthday = birthday age = timezone.now().year - int(year) print() form_object_user_info.age = age start_working_date = form_object_user_info.start_working_date if start_working_date: year = start_working_date.year # year = start_working_date[0:4] working_year = timezone.now().year - year form_object_user_info.working_year = working_year form_object_user_info.save() # 用户基础信息 # 关联现有的填报信息 student_id = object_form.cleaned_data.get("student_id", None) if student_id: student_infos = StudentInfo.objects.filter(id=student_id) if len(student_infos) > 0: student_info = student_infos[0] person_in_charge = object_form.cleaned_data.get( "person_in_charge", None) if person_in_charge: student_info.person_in_charge = person_in_charge student_info.save() student_info.user_info = form_object_user_info title_msg = sys_msg + '-填报详情' image_url = MEDIA_URL + str( student_info.user_info.two_inch_photo.picture_path) # 全部汇总在大填报表格里面 certificate_photos_url = '' if student_info.certificate_photos: certificate_photos_url = MEDIA_URL + str( student_info.certificate_photos.picture_path) return render_result( request, "page_main_controller/student/report_student_user_info_detail.html", { 'title_msg': title_msg, 'student_info': student_info, 'image_url': image_url, 'certificate_photos_url': certificate_photos_url, 'not_exist': False }) else: title_msg = sys_msg + '-填报详情' return render_result( request, "page_main_controller/student/report_student_user_info_detail.html", { 'title_msg': title_msg, 'not_exist': True }) else: title_msg = sys_msg + '-填报详情' return render_result( request, "page_main_controller/student/report_student_user_info_detail.html", { 'title_msg': title_msg, 'not_exist': True }) else: print(type(object_form.errors), object_form.errors) # errors类型是ErrorDict,里面是ul,li标签 title_msg = sys_msg + '-继续填写信息' message = '添加失败:输入项不全,请返回重新确认并填写,或联系管理员' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message }) # return render(request, "account/form1.html", {"error": f.errors}) except Exception as e: print(str(e)) title_msg = sys_msg + '-系统错误' message = '系统提示:系统异常请稍后重试,或联系管理员' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message })
def to_index(request): """ 返回首页 :param request: :return: """ is_report = False username = request.session.get('username', None) # 用户名 school_terms = SchoolTerm.objects.filter() title_msg = '返回首页' if username: register_user_info = RegisterUserInfo.objects.get(username=username) user_infos = UserInfo.objects.filter( register_user_info=register_user_info) if len(user_infos) == 1: user_info = user_infos[0] # 消息 system_messages_receiver = SystemMessage.objects.filter( receiver=user_info, hidden_status_receiver=2).order_by('-id') not_confirm = system_messages_receiver.filter( feedback_status=2).count() # 消息 student_infos = StudentInfo.objects.filter(user_info=user_info) if len(student_infos) > 0: # 如果已经存在这个注册用户的学生信息,则匹配学生信息 status = user_info.status if status == '1': if len(school_terms) <= 0: return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'no_term': False, 'is_report': False, 'not_confirm': not_confirm, 'index_page': True }) else: school_term = SchoolTerm.objects.last() return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'school_term': school_term, 'no_term': True, 'is_report': True, 'not_confirm': not_confirm, 'index_page': True }) elif status == '2': # 用户信息注销,无法正常登陆 sign_in_msg = '您当前处于被注销状态,请联系报名负责人或系统管理员核实再行登陆。' return render_result(request, "login.html", {'sign_in_msg': sign_in_msg}) else: sign_in_msg = '您当前系统状态不明,请联系管理员核实再行登陆。' return render_result(request, "login.html", {'sign_in_msg': sign_in_msg}) else: if len(school_terms) <= 0: return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'no_term': False, 'is_report': False, 'not_confirm': not_confirm, 'index_page': True }) else: school_term = SchoolTerm.objects.last() return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'school_term': school_term, 'no_term': True, 'is_report': False, 'not_confirm': not_confirm, 'index_page': True }) else: if len(school_terms) <= 0: return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'no_term': False, 'is_report': False, 'not_confirm': 0, 'index_page': True }) else: school_term = SchoolTerm.objects.last() return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'school_term': school_term, 'no_term': True, 'is_report': False, 'not_confirm': 0, 'index_page': True }) else: title_msg = "首页" if len(school_terms) <= 0: return render_result(request, "index.html", { 'title_msg': title_msg, 'need_login': True, 'no_term': True }) else: school_term = SchoolTerm.objects.last() return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': True, 'school_term': school_term, 'no_term': False, 'index_page': True })
def update_user_base_info(request): """ 修改用户的基本信息 :param request: :return: """ try: if request.method == 'POST': object_form = UserInfoUpdateForm(request.POST) if object_form.is_valid(): username = request.session.get('username', None) # 用户名 register_user_info = RegisterUserInfo.objects.get( username=username) user_info_id = object_form.cleaned_data.get('uid', None) print("user_info_id:::" + str(user_info_id)) user_infos = UserInfo.objects.filter(id=user_info_id) if len(user_infos) > 0: user_info = user_infos[len(user_infos) - 1] form_object_user_info = form_to_obj( object_form.cleaned_data, user_info) else: # 用户基础信息 form_object_user_info = form_to_obj( object_form.cleaned_data, UserInfo()) # 关联注册员信息 form_object_user_info.register_user_info = register_user_info # 关联注册员信息 # 关联操作员信息 form_object_user_info.user_operator = register_user_info # 关联注册员信息 # 关联教育程度 education_degree = object_form.cleaned_data.get( 'education_degree_form', None) if education_degree: education_degree_obj = EducationDegree.objects.get( id=education_degree) form_object_user_info.education_degree = education_degree_obj # 关联教育程度 # 关联民族信息 nation_info = object_form.cleaned_data.get( 'nation_info_form', None) if nation_info: nation_info_obj = NationInfo.objects.get(id=nation_info) form_object_user_info.nation_info = nation_info_obj # 关联民族信息 # 关联单位性质 unit_nature = object_form.cleaned_data.get( 'unit_nature_form', None) if unit_nature: unit_nature_obj = UnitNature.objects.get(id=unit_nature) form_object_user_info.unit_nature = unit_nature_obj # 关联单位性质 # 关联省 hukou_province = object_form.cleaned_data.get( 'hukou_province_form', None) if hukou_province: hukou_province_obj = ProvinceCityCountry.objects.get( id=hukou_province) form_object_user_info.hukou_province = hukou_province_obj # 关联省 # 关联市 hukou_city = object_form.cleaned_data.get( 'hukou_city_form', None) if hukou_city: hukou_city_obj = ProvinceCityCountry.objects.get( id=hukou_city) form_object_user_info.hukou_city = hukou_city_obj # 关联市 # 关联县 hukou_county = object_form.cleaned_data.get( 'hukou_county_form', None) if hukou_county: hukou_county_obj = ProvinceCityCountry.objects.get( id=hukou_county) form_object_user_info.hukou_county = hukou_county_obj # 关联县 # 关联二寸照片 two_inch_photo = object_form.cleaned_data.get( 'two_inch_photo_form', None) if two_inch_photo: two_inch_photo_obj = Picture.objects.get(id=two_inch_photo) form_object_user_info.two_inch_photo = two_inch_photo_obj # 关联二寸照片 id_number = form_object_user_info.id_number if len(id_number) > 17: birthday_string = str(id_number)[6:14] year = birthday_string[0:4] month = birthday_string[4:6] day = birthday_string[6:8] birthday = year + "-" + month + "-" + day form_object_user_info.birthday = birthday age = timezone.now().year - int(year) form_object_user_info.age = age start_working_date = form_object_user_info.start_working_date if start_working_date: year = start_working_date.year working_year = timezone.now().year - year form_object_user_info.working_year = working_year form_object_user_info.save() result['message'] = '个人信息修改成功' result["level"] = log_level_edit save_operation_log(request, inspect.stack()[0][3], form_object_user_info.__str__(True), result) # 用户基础信息 return HttpResponseRedirect('/report/user_setting/') else: title_msg = sys_msg + '-系统错误' message = '系统提示:参数获取异常' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message }) else: title_msg = sys_msg + '-系统错误' message = '系统提示:请求方式异常' return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message }) except Exception as e: print(str(e)) title_msg = sys_msg + '-系统错误' message = '系统提示:系统异常请稍后重试,或联系管理员,错误提示:' + str(e) return render_result(request, "page_main_controller/message.html", { 'title_msg': title_msg, 'message': message })
def system_guide(request): return render_result(request, "system_guide.html", {'title_msg': "系统操作指南"})
def sign_in(request): """ 登录:检测是登录用户的类别,返回不同的角色 :param request: :return: """ title_msg = '报名系统' try: if request.method == 'POST': username = request.POST.get('username', None) if username: if '' == username: sign_in_msg = '用户名不能为空' return render_result(request, "login.html", {'sign_in_msg': sign_in_msg}) password = request.POST['password'] if '' == password: sign_in_msg = '密码不能为空' return render_result(request, "login.html", {'sign_in_msg': sign_in_msg}) if username and password: register_user_info = RegisterUserInfo.objects.get( username=username) # 验证密码 if Password.decrypt_check(password, register_user_info.password): if register_user_info.status == '2': sign_in_msg = '您当前状态未注销状态,无法登陆请联系负责人或系统管理员。' return render_result(request, "login.html", {'sign_in_msg': sign_in_msg}) else: school_terms = SchoolTerm.objects.filter() user_role = register_user_info.role if user_role.role_name is None: sign_in_msg = '尚未分配角色,或角色信息被改动,请稍后重试或联系管理员。' return render_result( request, "login.html", {'sign_in_msg': sign_in_msg}) else: if user_role.role_name in 'administrator': request.session[ 'nickname'] = register_user_info.nickname # 用户昵称 request.session[ 'username'] = register_user_info.username # 用户名 request.session['role_id'] = str( user_role.id) # 角色ID request.session['role_name'] = str( user_role.role_name) # 角色名称 request.session.set_expiry(7200) result['message'] = "系统管理员(学校管理员)登陆成功" result['level'] = log_level_login save_operation_log(request, inspect.stack()[0][3], "", result) return HttpResponseRedirect( '/report/report_info_confirm/') elif user_role.role_name in 'teacher': teacher_infos = TeacherInfo.objects.filter( user_info=UserInfo.objects.filter( register_user_info= register_user_info)[0]) if len(teacher_infos) == 1: status = teacher_infos[0].status if status == '1': request.session[ 'nickname'] = register_user_info.nickname # 用户昵称 request.session[ 'username'] = register_user_info.username # 用户名 request.session['role_id'] = str( user_role.id) # 角色ID request.session['role_name'] = str( user_role.role_name) # 角色名称 request.session.set_expiry(7200) result['message'] = "负责人登陆成功" result['level'] = log_level_login save_operation_log( request, inspect.stack()[0][3], "", result) return HttpResponseRedirect( '/report/report_info_review/') elif status == '2': sign_in_msg = '您当前处于被注销状态,请联系管理员核实再行登陆。' return render_result( request, "login.html", {'sign_in_msg': sign_in_msg}) else: sign_in_msg = '您当前系统状态不明,请联系管理员核实再行登陆。' return render_result( request, "login.html", {'sign_in_msg': sign_in_msg}) else: school_term = SchoolTerm.objects.last() return render_result( request, "index.html", { 'title_msg': title_msg, 'need_login': False, 'school_term': school_term, 'no_term': True }) elif user_role.role_name in 'student': request.session[ 'nickname'] = register_user_info.nickname # 用户昵称 request.session[ 'username'] = register_user_info.username # 用户名 request.session['role_id'] = str( user_role.id) # 角色ID request.session['role_name'] = str( user_role.role_name) # 角色名称 request.session.set_expiry(7200) result['message'] = '学员登陆成功!' result['level'] = log_level_login save_operation_log(request, inspect.stack()[0][3], "", result) return HttpResponseRedirect( '/report/to_index/') else: sign_in_msg = '您当前系统角色不明,请联系管理员核实或重新注册新用户再行登陆。' return render_result( request, "login.html", {'sign_in_msg': sign_in_msg}) else: sign_in_msg = '密码错误' return render_result(request, "login.html", {'sign_in_msg': sign_in_msg}) else: sign_in_msg = '用户不存在' return render_result(request, "login.html", {'sign_in_msg': sign_in_msg}) else: sign_in_msg = '登陆异常,用户名不能为空' return render_result(request, "login.html", {'sign_in_msg': sign_in_msg}) else: sign_in_msg = '登陆异常,请检查输入内容或联系系统管理员' return render_result(request, "login.html", {'sign_in_msg': sign_in_msg}) except BaseException as e: sign_in_msg = '登陆异常,请检查输入内容或联系系统管理员' print("登录异常:", str(e)) result['level'] = log_level_login save_operation_log(request, inspect.stack()[0][3], "登录异常:" + str(e) + "==student", result) return render_result(request, "login.html", {'sign_in_msg': sign_in_msg})
def introduction(request): query_set = ReportCondition.objects.all() return render_result(request, "introduction.html", { 'query_set': query_set, 'title_msg': "报考说明" })
def teacher_search_wait_review(request): student_search = StudentSearchForm(request.POST) user_search = UserInfoSearchForm(request.POST) school_terms = SchoolTerm.objects.filter().order_by('-id') school_terms_values = school_terms.values() tmp_list = [] if len(school_terms_values) > 0: for i in school_terms_values: tmp_json = {} tmp_json['id_str'] = i['id'] tmp_json['school_term_name'] = i['school_term_name'] tmp_json['school_term_start'] = date_encoder(i['school_term_start']) tmp_json['school_term_end'] = date_encoder(i['school_term_end']) tmp_list.append(tmp_json) teacher_info = TeacherInfo.objects.get( user_info__register_user_info__username=request.session.get('username', None)) last_school_term = SchoolTerm.objects.last() if student_search.is_valid(): if user_search.is_valid(): # 用户信息 kwargs = {} # kwargs['confirm_status'] = 1, # kwargs['chemical_worker'] = 1, user_info = UserInfo() real_name = user_search.cleaned_data.get('real_name', None) if real_name: user_info.real_name = real_name kwargs['user_info__real_name__icontains'] = real_name education_degree = user_search.cleaned_data.get('education_degree', None) if education_degree: user_info.education_degree = education_degree if type(education_degree) == str: if int(education_degree) > 0: kwargs['user_info__education_degree__id'] = int(education_degree) else: kwargs['user_info__education_degree__id'] = education_degree # 学生信息 student_info = StudentInfo() identification_level = student_search.cleaned_data.get('identification_level', None) declaration_of_occupation = student_search.cleaned_data.get('declaration_of_occupation', None) school_term = student_search.cleaned_data.get('school_term', None) if identification_level: student_info.identification_level = identification_level if type(identification_level) == str: if int(identification_level) > 0: kwargs['identification_level'] = int(identification_level) else: kwargs['identification_level'] = identification_level if declaration_of_occupation: student_info.declaration_of_occupation = declaration_of_occupation kwargs['declaration_of_occupation__icontains'] = declaration_of_occupation if school_term: if type(school_term) == str: if int(school_term) > 0: kwargs['school_term'] = int(school_term) student_info.school_term = SchoolTerm.objects.get(id=int(school_term)) else: kwargs['school_term'] = school_term student_info.school_term = SchoolTerm.objects.get(id=school_term) else: pass student_info.user_info = user_info print(kwargs) student_infos = StudentInfo.objects.filter(teacher_info=teacher_info, **kwargs).order_by('-id') paginator = Paginator(student_infos, 10) page = request.GET.get('page') contacts = paginator.get_page(page) title_msg = "学员报名资料(非化工)" if len(school_terms) <= 0: return render_result(request, "index.html", {'title_msg': title_msg, 'need_login': False, 'no_term': False}) else: # return render(request, "page_main_controller/teacher/report_student_info_list_teacher.html", # {'title_msg': title_msg, "contacts": contacts, 'student_info': student_info, # 'school_terms': school_terms,'no_term': True, # 'last_school_term': last_school_term, 'identification_level': identification_level}) return render_result(request, "page_main_controller/teacher/report_student_info_list_teacher.html", {'title_msg': title_msg, 'need_login': False, 'tmp_list': json.dumps(tmp_list, ensure_ascii=False), 'last_school_term': last_school_term, 'student_info': student_info, 'no_term': True, 'contacts': contacts, 'school_terms': school_terms, 'school_term': school_term, 'identification_level': identification_level}) else: print(user_search.error_class, user_search.errors) else: print(student_search.error_class, student_search.errors)