Ayuda con código
Publicado por Adrian (5 intervenciones) el 30/05/2018 00:02:21
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
function parseReporteCuenta($query, $moneda, $con) {
$monedaReporte = $moneda == "$" ? 0 : 1;
$data = array(
'empresa' => '',
'campania' => '',
'cuenta' => [],
);
$facturas = array();
foreach ($query as $value) {
$tasa = "";
if ($data['empresa'] == "")
$data['empresa'] = $value->empresa;
if ($data['campania'] == "")
$data['campania'] = $value->campana;
//verificamos el tipo de cambio y calculamos el subtotal en la moneda elegida
$subtotal = $value->sub_total;
$fecha = new \DateTime($value->fecha);
$td = $con->getTasaDolarEn($fecha->format('Y-m-d'));
if ($td)
$tasa = $td["cotdolar"];
$subtotal = cambiarMoneda($subtotal, $value->en_dolar, $value->valor_dolar, $tasa, $monedaReporte);
$precio = cambiarMoneda($value->precio, $value->en_dolar, $value->valor_dolar, $tasa, $monedaReporte);
// var_dump('despues' . $subtotal);
if ($subtotal == -99999) {
$subtotal = 0;
$data["errors"][$value->fecha] = $value->fecha;
// return $data;
}
$data["cuenta"][$value->ctacontable][] = [
"idgestion" => $value->idgestion,
"idcentrocostos" => $value->id_centro_costos,
"idestablecimiento" => $value->id_estable,
"establecimiento" => $value->establecimiento,
"idactividad" => $value->idactividad,
"actividad" => $value->actividad,
"idcampania" => $value->idcampana,
"codigo" => $value->codigo,
"cuenta" => $value->ctacontable,
"sub_total" => $subtotal,
"en_dolar" => $value->en_dolar,
"valor_dolar" => $value->valor_dolar,
"fecha" => $value->fecha,
"nombrecodigo" => $value->nombrecodigo,
"producto" => $value->producto,
"cantidad" => $value->cantidad,
"precio" => $precio,
"observacion" => $value->observacion,
"tipo_form" => $value->tipo_form,
];
}
foreach ($data["cuenta"] as $cuenta => $actividades) {
foreach ($actividades as $value) {
// var_dump($value['actividad']);
$facturas[$cuenta][$value['actividad']][$value['establecimiento']][] = [
"idgestion" => $value['idgestion'],
"establecimiento" => $value['establecimiento'],
"codigo" => $value['codigo'],
"cuenta" => $value['cuenta'],
"sub_total" => $value['sub_total'],
"en_dolar" => $value['en_dolar'],
"fecha" => $value['fecha'],
"nombrecodigo" => $value['nombrecodigo'],
"producto" => $value['producto'],
"cantidad" => $value['cantidad'],
"precio" => $value['precio'],
"observacion" => $value['observacion'],
"tipo_form" => $value['tipo_form']];
}
// var_dump($facturas);
}
$data['cuenta'] = $facturas;
// var_dump($data);
return $data;
//
}
function cambiarMoneda($valor, $tipo_moneda_factura, $valor_dolar_factura, $tasa, $tipo_moneda_reporte) {
// var_dump($tasa);
if ($tipo_moneda_reporte == 1 && $tipo_moneda_factura != 1) { // Si el reporte es en dolares y la moneda de factura es peso
// Divido el valor de la factura en peso por la taza del dolar para ese dia
if ($tasa >= 0 && $tasa != "") {
return $valor / $tasa;
}
return -99999;
} elseif ($tipo_moneda_reporte == 0 && $tipo_moneda_factura == 1) { // Si el reporte es en pesos y la moneda de la factura es dolar
// multiplico el valor por el valor dolar de la factura
return $valor * $valor_dolar_factura;
} else {
return $valor;
}
}
Como hago para hacer una función parseEmprendimiento, ando un poco perdido, quisiera saber si me pueden colaborar.
Gracias de antemano
Valora esta pregunta
-1