def view_cham_hse(request, numG, idG): num = decodif(numG) id = decodif(idG) obj= chamado_hse.objects.get(id = num) arr = [] dict = {} cont = 0 for x in obj.tipo_servico: if x == '1': arr.insert(cont,'Trabalho em alta tensão e eletricidade') dict = {'CURSO DE ELETRICISTA':'Trabalho em alta tensão e eletricidade','ASO ALTA TENSÃO':'Trabalho em alta tensão e eletricidade','CURSO NR 10 OU RECICLAGEM':'Trabalho em alta tensão e eletricidade',} if x == '2': arr.insert(cont,'Trabalhos em altura') cont = cont + 1 dict.update({'CERTIFICADO TREINAMENTO NR35':'Trabalhos em altura','ASO TRABALHOS EM ALTURA':'Trabalhos em altura','FICHA DE EPI':'Trabalhos em altura',}) if x == '3': arr.insert(cont,'Espaços confinados') cont = cont + 1 dict.update({'CERTIFICADO TREINAMENTO DE VIGIA':'Espaços confinados','ASO ESPAÇO CONFINADO':'Espaços confinados','FICHA DE EPI':'Espaços confinados',}) if x == '4': arr.insert(cont,'Operação de empilhadeira') cont = cont + 1 dict.update({'ASO DA ADMISSÃO':'Operação de empilhadeira','CERTIFICADO OPERADOR EMPILHADEIRA':'Operação de empilhadeira',}) if x == '5': arr.insert(cont,'Trabalhos com plataformas elevatórias') cont = cont + 1 dict.update({'CURSO OPERADOR PLATAFORMA ELEVATÓRIA':'Trabalhos com plataformas elevatórias','ASO DA ADMISSÃO':'Trabalhos com plataformas elevatórias',}) if x == '6': arr.insert(cont,'Operação de guindaste ou munck') cont = cont + 1 dict.update({'CURSO DE GUINDASTE E/OU MUNCK':'Operação de guindaste ou munck','ASO DA ADMISSÃO':'Operação de guindaste ou munck','RINGGING PARA GUINDASTES':'Operação de guindaste ou munck',}) if x == '7': arr.insert(cont,'Trabalhador autônomo - Firma individual') cont = cont + 1 dict.update({'REGISTRO DA PREFEITURA':'Trabalhador autônomo - Firma individual','ASO AUTONOMO':'Trabalhador autônomo - Firma individual','NÚMERO DE MATRÍCULA INSS':'Trabalhador autônomo - Firma individual',}) if x == '8': arr.insert(cont,'Assistência Técnica - mautenção') cont = cont + 1 dict.update({'CRACHÁ OU CARTEIRA PROFISSIONAL':'Assistência Técnica - mautenção','ASO ASSIST. TÉCNICA':'Assistência Técnica - mautenção',}) if x == '9': arr.insert(cont,'Soldador') cont = cont + 1 dict.update({'PPRA DE SOLDA':'Soldador','COMPROVANTE DE CURSO OU EXPERIÊNCIA':'Soldador','FICHA DE EPI SOLDA':'Soldador',}) emp = empresa_terc.objects.all() N_CHM = '%0*d' % (5, obj.id) mycham= chamado_hse.objects.filter(solicitante = request.user) data = datetime.strptime(obj.tempo_estimado, '%m/%d/%Y') dt = datetime.combine(data, time(00, 00)) - timedelta(days=4) minus4 = dt.date() - timedelta(days=4) minus6 = dt.date() - timedelta(days=6) d1 = datetime.strptime(timezone.localtime().strftime('%Y-%m-%d'), "%Y-%m-%d").date() d2 = datetime.strptime(minus6.strftime('%Y-%m-%d'), "%Y-%m-%d").date() rest = abs((d1 - d2).days) colab = aux_table.objects.filter(num_cham = obj.id) func = funcionario.objects.filter(empresa_id=id) msgs = msg.objects.filter(num_cham = obj.id) log = logs.objects.filter(num_cham = obj.id) resp = cad_resp.objects.filter(empresa_resp=id) return render(request, 'view_cham_hse.html', {'resp':resp, 'dw':data.date(), 'func':func, 'log':log,'msgs':msgs,'colab':colab,'obj':obj,'N_CHM':N_CHM,'emp':emp,'mycham':mycham,'minus4':minus4,'minus6':minus6,'rest':rest,'arr':arr,'dict':dict,'id':id})
def documentacao(request, idG, empG): id = decodif(idG) # id do funcionário emp = decodif(empG) # cód da empresa fun = funcionario.objects.get(id=id) resp = cad_resp.objects.get(id=fun.resp_id) print(resp) empr = empresa_terc.objects.get(id=emp) print(empr) print(fun.empresa_id) if request.method == 'POST': form = documentoForm(request.POST, request.FILES) print(form.errors) print(request.FILES.get('arquivo_documento')) if form.is_valid(): post = form.save(commit=False) post.arquivo_documento = request.FILES.get('arquivo_documento') post.funcionario = id post.email_resp = resp.email_resp post.email_emp = empr.email post.enviado = request.POST.get('enviado') post.nome_documento = request.POST.get('nome_documento') post.emp = request.POST.get('emp') post.save() fun.status = "AG" fun.save() aux1 = encoder(id) aux2 = encoder(emp) return redirect('documentacao', aux1, aux2) else: form = documentoForm() a_docs = docs.objects.filter(tipo="B").values_list('nome', flat=True) c_docs = docs.objects.filter(tipo="C") b_docs = docs.objects.all() envs = documento.objects.filter(funcionario=id) msgs = msg.objects.filter(id_col=id, tipo="lib") print(fun.data_int) return render( request, 'documentacao.html', { 'fun_data': fun.data_int, 'msgs': msgs, 'a_docs': a_docs, 'c_docs': c_docs, 'fun': fun, 'envs': envs, 'form': form, 'id': id, 'emp': emp })
def colaborador(request, id): data = decodif(id) func = funcionario.objects.get(id=data) empw = empresa_terc.objects.all() return render(request, 'colaborador.html', {'func': func, 'empw': empw})
def resp(request, idG, numG): id = decodif(idG) num = decodif(numG) respo = cad_resp.objects.get(id=id) emp = empresa_terc.objects.all() aux = aux_table.objects.filter(id_col=num) dist = aux_table.objects.values_list('num_cham', flat=True).distinct() obj = chamado_hse.objects.all() print(aux) return render(request, 'resp.html', { 'obj': obj, 'dist': dist, 'respo': respo, 'emp': emp, 'aux': aux })
def colaborador(request, id): data = decodif(id) aux = aux_table.objects.filter(id_col=data) dist = aux_table.objects.values_list('num_cham', flat=True).distinct() obj = chamado_hse.objects.all() func = funcionario.objects.get(id=data) empw = empresa_terc.objects.all() return render(request, 'colaborador.html', {'data':data, 'aux':aux, 'obj':obj, 'dist':dist,'func':func,'empw':empw})
def documentosHse(request, idG): id = decodif(idG) fun = funcionario.objects.get(id=id) a_docs = docs.objects.filter(tipo="B").values_list('nome', flat=True) c_docs = docs.objects.filter(tipo="C").values_list('nome', flat=True) b_docs = docs.objects.all() aux = documento.objects.filter(funcionario=id) msgs = msg.objects.filter(tipo="lib", id_col=id) arr = [] dict = {} for dc in a_docs: arr.append(dc) i = 0 cont = 0 while i < len(arr): key = arr[i] dict.setdefault(key, []) for fb in aux: if fb.nome_documento == arr[i]: cont = cont + 1 dict[key].append(fb.arquivo_documento) cont = 0 i += 1 arr1 = [] dict1 = {} for dc in c_docs: arr1.append(dc) i = 0 cont = 0 while i < len(arr1): key = arr1[i] dict1.setdefault(key, []) for fb in aux: if fb.nome_documento == arr1[i]: cont = cont + 1 dict1[key].append(fb.arquivo_documento) cont = 0 i += 1 try: el = docs_integracao.objects.get(funcionario=id) except: el = None return render( request, 'documentação1.html', { 'fun_data': fun.data_int, 'el': el, 'msgs': msgs, 'fun': fun, 'arr': arr, 'dict': dict, 'dict1': dict1, 'docs': b_docs, 'aux': aux, 'id': id })
def bloq_fun(request, idG): if request.method == 'POST': form = bloq_hse_FORM(request.POST) print (form.errors) if form.is_valid(): post = form.save(commit=False) post.fun = funcionario.objects.get(id=decodif(idG)) post.motivo = request.POST.get('motivo') post.save() #message = EmailMessage('Val_check_Mail.html', context, settings.EMAIL_HOST_USER, set(array), render=True ) #f = '/SIG_1.png' #fp = open(os.path.join(os.path.dirname(__file__), f), 'rb') #msg_img = MIMEImage(fp.read()) #fp.close() #msg_img.add_header('Content-ID', '<{}>'.format(f)) #message.attach(msg_img) #message.send() obj = funcionario.objects.get(id=decodif(idG)) obj.rg = "BLOQUEADO" obj.status = "RP" obj.funcao = "BLOQUEADO PELO HSE" obj.save() mms = msg.objects.filter(id_col=decodif(idG)) for el in mms: el.delete() mmg = msg(ator="Gestão HSE", msg= request.POST.get('motivo'), tipo="lib", id_col=decodif(idG)) mmg.id = None mmg.save() dc = documento.objects.filter(funcionario=decodif(idG)) for th in dc: th.delete() it = docs_integracao.objects.get(funcionario=decodif(idG)) it.delete() return redirect('documentosHse', idG) else: form = bloq_hse_FORM() data = bloq_hse.objects.all() return render(request, 'bloq_fun.html', {'data':data, 'form':form, 'fun': funcionario.objects.get(id=decodif(idG))})
def show_my_cham(request, num_chamG, idG): if num_chamG == "None": try: obj = chamado_hse.objects.all().latest('data_abertura') except chamado_hse.DoesNotExist: raise Http404("Nenhum Chamado Existente para sua Empresa.") else: num_cham = decodif(num_chamG) obj = chamado_hse.objects.get(id=num_cham) id = decodif(idG) arr = [] dict = {} cont = 0 for x in obj.tipo_servico: if x == '1': arr.insert(cont, 'Trabalho em alta tensão e eletricidade') dict = { 'CURSO DE ELETRICISTA': 'Trabalho em alta tensão e eletricidade', 'ASO ALTA TENSÃO': 'Trabalho em alta tensão e eletricidade', 'CURSO NR 10 OU RECICLAGEM': 'Trabalho em alta tensão e eletricidade', } if x == '2': arr.insert(cont, 'Trabalhos em altura') cont = cont + 1 dict.update({ 'CERTIFICADO TREINAMENTO NR35': 'Trabalhos em altura', 'ASO TRABALHOS EM ALTURA': 'Trabalhos em altura', 'FICHA DE EPI': 'Trabalhos em altura', }) if x == '3': arr.insert(cont, 'Espaços confinados') cont = cont + 1 dict.update({ 'CERTIFICADO TREINAMENTO DE VIGIA': 'Espaços confinados', 'ASO ESPAÇO CONFINADO': 'Espaços confinados', 'FICHA DE EPI': 'Espaços confinados', }) if x == '4': arr.insert(cont, 'Operação de empilhadeira') cont = cont + 1 dict.update({ 'ASO DA ADMISSÃO': 'Operação de empilhadeira', 'CERTIFICADO OPERADOR EMPILHADEIRA': 'Operação de empilhadeira', }) if x == '5': arr.insert(cont, 'Trabalhos com plataformas elevatórias') cont = cont + 1 dict.update({ 'CURSO OPERADOR PLATAFORMA ELEVATÓRIA': 'Trabalhos com plataformas elevatórias', 'ASO DA ADMISSÃO': 'Trabalhos com plataformas elevatórias', }) if x == '6': arr.insert(cont, 'Operação de guindaste ou munck') cont = cont + 1 dict.update({ 'CURSO DE GUINDASTE E/OU MUNCK': 'Operação de guindaste ou munck', 'ASO DA ADMISSÃO': 'Operação de guindaste ou munck', 'RINGGING PARA GUINDASTES': 'Operação de guindaste ou munck', }) if x == '7': arr.insert(cont, 'Trabalhador autônomo - Firma individual') cont = cont + 1 dict.update({ 'REGISTRO DA PREFEITURA': 'Trabalhador autônomo - Firma individual', 'ASO': 'Trabalhador autônomo - Firma individual', 'NÚMERO DE MATRÍCULA INSS': 'Trabalhador autônomo - Firma individual', }) if x == '8': arr.insert(cont, 'Assistência Técnica - mautenção') cont = cont + 1 dict.update({ 'CRACHÁ OU CARTEIRA PROFISSIONAL': 'Assistência Técnica - mautenção', 'ASO': 'Assistência Técnica - mautenção', }) if x == '9': arr.insert(cont, 'Soldador') cont = cont + 1 dict.update({ 'PPRA DE SOLDA': 'Soldador', 'COMPROVANTE DE CURSO OU EXPERIÊNCIA': 'Soldador', 'FICHA DE EPI SOLDA': 'Soldador', }) emp = empresa_terc.objects.all() N_CHM = '%0*d' % (5, obj.id) mycham = chamado_hse.objects.filter(empresa_id=id) data = datetime.strptime(obj.tempo_estimado, '%m/%d/%Y') dt = datetime.combine(data, time(00, 00)) - timedelta(days=4) minus4 = dt.date() - timedelta(days=4) minus6 = dt.date() - timedelta(days=6) d1 = datetime.strptime(timezone.localtime().strftime('%Y-%m-%d'), "%Y-%m-%d").date() d2 = datetime.strptime(minus6.strftime('%Y-%m-%d'), "%Y-%m-%d").date() rest = (d2 - d1).days if rest > 0: rest = "RESTAM " + str(abs((d1 - d2).days)) else: rest = "ATRASADO ! " + str(abs((d1 - d2).days)) print(minus6) obj.data = minus6 obj.save() fun = funcionario.objects.filter(empresa_id=id) dc = chamado_hse.objects.filter(empresa_id=id) colab = aux_table.objects.filter(num_cham=obj.id) log = logs.objects.filter(num_cham=obj.id) msgs = msg.objects.filter(num_cham=obj.id) func = funcionario.objects.filter(empresa_id=id) print(data.date()) #Us = User.objects.get(username=obj.gestor_solicitante)'Em_g':Us.email, respo = cad_resp.objects.filter(empresa_resp=id) return render( request, 'chamados.html', { 'respo': respo, 'dw': data.date(), 'func': func, 'msgs': msgs, 'log': log, 'colab': colab, 'id': id, 'fun': fun, 'obj': obj, 'N_CHM': N_CHM, 'emp': emp, 'mycham': mycham, 'minus4': minus4, 'minus6': minus6, 'rest': rest, 'arr': arr, 'dict': dict })
def exlude_doc(request, idG): id = decodif(idG) docu = docs.objects.get(id=id) docu.delete() return redirect('cad_docs', )
def resp(request, idG): id = decodif(idG) respo = cad_resp.objects.get(id=id) emp = empresa_terc.objects.all() return render(request, 'resp.html', {'respo':respo,'emp':emp})