def produccion_cong(request,produccion_cong_id=None): template_name="salidas/produccion_cong.html" prod=Producto.objects.filter(estado=True) form_produccion_cong={} contexto={} if request.method=='GET': form_produccion_cong=ProduccionCongEncForm() enc = ProduccionCongEnc.objects.filter(pk=produccion_cong_id).first() if enc: det = ProduccionCongDet.objects.filter(produccion=enc) fecha_produccion = datetime.date.isoformat(enc.fecha_produccion) e = { 'fecha_produccion':fecha_produccion, 'planta':enc.planta, 'linea':enc.linea, #'turno':enc.turno, 'shift':enc.shift, 'horas_turno':enc.horas_turno, 'plantilla':enc.plantilla, 'supervisor':enc.supervisor, 'observaciones': enc.observaciones, 'total_produccion':enc.total_produccion, 'total_utilizado':enc.total_utilizado, 'total_merma':enc.total_merma }
def produccion_cong(request, produccion_cong_id=None): template_name = "salidas/produccion_cong.html" prod = Producto.objects.filter(estado=True) form_produccion_cong = {} contexto = {} if request.method == 'GET': form_produccion_cong = ProduccionCongEncForm() enc = ProduccionCongEnc.objects.filter(pk=produccion_cong_id).first() if enc: det = ProduccionCongDet.objects.filter(produccion=enc) fecha_produccion = datetime.date.isoformat(enc.fecha_produccion) e = { 'fecha_produccion': fecha_produccion, 'planta': enc.planta, 'linea': enc.linea, #'turno':enc.turno, 'shift': enc.shift, 'horas_turno': enc.horas_turno, 'plantilla': enc.plantilla, 'supervisor': enc.supervisor, 'observaciones': enc.observaciones, 'total_produccion': enc.total_produccion, 'total_utilizado': enc.total_utilizado, 'total_merma': enc.total_merma } form_produccion_cong = ProduccionCongEncForm(e) else: det = None contexto = { 'productos': prod, 'encabezado': enc, 'detalle': det, 'form_enc': form_produccion_cong } if request.method == 'POST': fecha_produccion = request.POST.get("fecha_produccion") planta = request.POST.get("planta") linea = request.POST.get("linea") #turno = request.POST.get("turno") shift = request.POST.get('shift') horas_turno = request.POST.get('horas_turno') plantilla = request.POST.get('plantilla') supervisor = request.POST.get('supervisor') observaciones = request.POST.get("observaciones") plant = Planta.objects.get(pk=planta) line = Linea.objects.get(pk=linea) spvs = Supervisor.objects.get(pk=supervisor) if not produccion_cong_id: enc = ProduccionCongEnc(fecha_produccion=fecha_produccion, planta=plant, linea=line, shift=shift, horas_turno=horas_turno, plantilla=plantilla, supervisor=spvs, observaciones=observaciones, uc=request.user) if enc: enc.save() produccion_cong_id = enc.id else: enc = ProduccionCongEnc.objects.filter( pk=produccion_cong_id).first() if enc: enc.fecha_produccion = fecha_produccion enc.observaciones = observaciones enc.planta = plant enc.linea = line #enc.turno = turno enc.shift = shift enc.horas_turno = horas_turno enc.plantilla = plantilla enc.supervisor = spvs enc.um = request.user.id enc.save() if not produccion_cong_id: return redirect("salidas:produccion_cong_list") producto = request.POST.get("id_id_producto") tproducto = request.POST.get("id_tproducto") cantidad = request.POST.get("id_cantidad_detalle") resto = request.POST.get("id_resto_detalle") peso = request.POST.get("id_peso_detalle") total = request.POST.get("id_total_detalle") total_util = request.POST.get("id_total_utilizado") resto = request.POST.get("id_resto_detalle") total_merma = request.POST.get("id_merma_detalle") r1 = request.POST.get("id_r1_detalle") r2 = request.POST.get('id_r2_detalle') r3 = request.POST.get('id_r3_detalle') r4 = request.POST.get('id_r4_detalle') r5 = request.POST.get('id_r5_detalle') prod = Producto.objects.get(pk=producto) det = ProduccionCongDet(produccion=enc, producto=prod, tproducto=tproducto, cantidad=cantidad, resto=resto, total_produccion=total, total_utilizado=total_util, total_merma=total_merma, r1=r1, r2=r2, r3=r3, r4=r4, r5=r5, peso=peso, uc=request.user) if det: det.save() total = ProduccionCongDet.objects.filter( produccion=produccion_cong_id).aggregate( Sum('total_produccion')) enc.total_produccion = total["total_produccion__sum"] total_util = ProduccionCongDet.objects.filter( produccion=produccion_cong_id).aggregate( Sum('total_utilizado')) enc.total_utilizado = total_util["total_utilizado__sum"] enc.total_merma = 100 - ( (enc.total_produccion / enc.total_utilizado) * 100) enc.save() return redirect("salidas:produccion_cong_edit", produccion_cong_id=produccion_cong_id) return render(request, template_name, contexto)
e = { 'fecha_produccion':fecha_produccion, 'planta':enc.planta, 'linea':enc.linea, #'turno':enc.turno, 'shift':enc.shift, 'horas_turno':enc.horas_turno, 'plantilla':enc.plantilla, 'supervisor':enc.supervisor, 'observaciones': enc.observaciones, 'total_produccion':enc.total_produccion, 'total_utilizado':enc.total_utilizado, 'total_merma':enc.total_merma } form_produccion_cong = ProduccionCongEncForm(e) else: det=None contexto={'productos':prod,'encabezado':enc,'detalle':det,'form_enc':form_produccion_cong} if request.method=='POST': fecha_produccion = request.POST.get("fecha_produccion") planta = request.POST.get("planta") linea = request.POST.get("linea") #turno = request.POST.get("turno") shift = request.POST.get('shift') horas_turno = request.POST.get('horas_turno') plantilla = request.POST.get('plantilla')