def results(): evaluations_team_leader = list() id_user = session['user']['_id'] # Buscar usuario user: Users = Users.by_id(id_user) # Buscar evaluaciones evaluations: Evaluations = Evaluations.by_id_user(id_user) for evaluation in evaluations: data_evaluation: DataEvaluations = DataEvaluations.by_id( evaluation.id_data_evaluation) result_evaluation: ResultsEvaluation = ResultsEvaluation.by_id( evaluation.id_results_evaluation) # Objeto a guardar data = { '_id': evaluation.id_evaluations, 'data_evaluation': data_evaluation, 'team_leader': user.username, 'result_evaluation': result_evaluation, 'audio': data_evaluation.name_audio } # Agregar objeto a la lista evaluations_team_leader.append(data) return render_template('results.html', datas=evaluations_team_leader)
def set_data(): form = Evaluation() audio = request.files['audio'] if audio == None: flash('Upss! No se selecciono un audio!') return redirect(url_for('team_leader.evaluation')) file_audio = secure_filename(audio.filename) # Subir audio dir_upload = current_app.config['UPLOAD_FOLDER'] audio.save(os.path.join(dir_upload, file_audio)) # Obtener datos del nombre del audio data_audio = str(file_audio).split('-')[2].split('.') date_audio = '{}-{}-{}'.format(data_audio[0][:4], data_audio[0][4:6], data_audio[0][6:8]) name_audio = file_audio phone = str(file_audio).split('-')[0] # Configurar valiarbes a guardar id_manager = form.id_manager.data date_evaluation = str(datetime.now().strftime('%Y-%m-%d')) default = form.default.data contact = form.contact.data # Creo objeto a guardar user: Users = Users.by_id(session['user']['_id']) data = { 'number_internal': id_manager, 'team_leader': user.username, 'phone': phone, 'default': default, 'contact': contact, 'date_evaluation': date_evaluation, 'date_audio': date_audio, 'name_audio': name_audio, 'audio': { 'name': file_audio, 'audio': True } } session['data_evaluation'] = data return redirect(url_for('team_leader.evaluation'))
def save_management(): form = Results() id_user = session['user']['_id'] data_user = session['data_evaluation'] result_user = session['result_evaluation'] corrections = session['corrections'] observation = form.observation.data default = data_user['default'] # Buscar usuario user: Users = Users.by_id(id_user) # Mora if default == 'early': default == 'Temprana' elif default == 'last': default == 'Tardia' # Contacto if data_user['contact'] == 'headline': data_user['contact'] == 'Titular' elif data_user['contact'] == 'third': data_user['contact'] == 'Terceros' elif data_user['contact'] == 'answering_machine': data_user['contact'] == 'Contestador' default == None # Crear modelo de datos de la evaluacion a guardar data_evaluation: DataEvaluations = DataEvaluations( data_user['number_internal'], data_user['phone'], data_user['contact'], data_user['date_evaluation'], data_user['date_audio'], data_user['name_audio'], default) # Guardar datos data_evaluation.save() # Crear modelo de resultados a guardar results_evaluation: ResultsEvaluation = ResultsEvaluation( result_user['salute'], result_user['attitude'], result_user['negotiation_one'], result_user['negotiation_two'], result_user['registration_one'], result_user['registration_two'], result_user['result']) # Guardar resultado if 'message' in result_user: results_evaluation.save(message=result_user['message']) else: results_evaluation.save(closing=result_user['closing']) # Crear modelo de evaluaciones evaluation: Evaluations = Evaluations( observation, corrections, data_evaluation.id_data_evaluation, results_evaluation.id_results_evaluation, user.id_users) # Guardar evaluaciones evaluation.save() # Actualizar gestion de evaluaciones manage_evaluation: ManageEvaluations = ManageEvaluations.by_id( user.id_manage_evaluation) manage_evaluation.update() session.pop('data_evaluation') session.pop('result_evaluation') session.pop('corrections') return redirect(url_for('team_leader.results'))