Realmente quisiera armar un JSON dentro de un JSON, no se si esto se pueda, voy a poner un poco de codigo, aqui esta mi metodo:
Código PHP:
private function getListadoProductosCateg($idEmpresa='',$idCategoria)
{
if ($this->request_method() != "GET") {
$this->mostrarRespuesta($this->convertirJson($this->devolverError(1)), 405);
}
if ($idEmpresa !='' && $idCategoria != '') {
$query="SELECT PRO_EMPRESA AS empresa, PRO_CODIGO AS codigo, PRO_NOMBRE AS nombre,
PRO_DESCRI AS descripcion, PRO_TIPPREC AS tipo_precio, PRO_CODUND AS unidad_medida,
PRO_TIPIVA AS tipo_iva, PRO_CATEGORIAS AS categorias, PRO_RUTAIMG AS imagen,
PRO_ACTIVO AS activo_inactivo FROM dnproducto
WHERE PRO_EMPRESA=:empresa AND PRO_CATEGORIAS=:categoria";
$result=$this->_conexion->prepare($query);
$result->execute(array(':empresa'=>$idEmpresa,':categoria'=>$idCategoria));
$num = $this->ContarReg("dnproducto");
if ($num > 0){
while ($filas = $result->fetchAll(PDO::FETCH_ASSOC)) {
$respuesta['estado'] = 'correcto';
$respuesta['code'] = '200';
$respuesta['productos'] = $filas;
$this->mostrarRespuesta($this->convertirJson($respuesta), 200);
}
}
$this->mostrarRespuesta($this->convertirJson($this->devolverError(2)), 400);
}
}
Existe un campo en la tabla producto que puedo asociar a la tabla de precios y ese campo es PRO_TIPPREC, la consulta que da los precios es asi:
Código MySQL:
Ver original
poniendo un codigo cualquiera, yo quisiera que el JSON actual se le agregara un JSON con los precios asociados a X productos.
el resultado del JSON actual es asi:
Código PHP:
Ver original
{"estado":"correcto","code":"200","productos":[{"empresa":"000001","codigo":"0000000003","nombre":"Papas","descripcion":"Papas","tipo_precio":"A","unidad_medida":"UND","tipo_iva":"GN","categorias":"14","imagen":"potatoes_saco.jpg","activo_inactivo":"1"},{"empresa":"000001","codigo":"0000000004","nombre":"Cebolla Blanca","descripcion":"Cebolla Blanca","tipo_precio":"A","unidad_medida":"UND","tipo_iva":"GN","categorias":"14","imagen":"cebolla_blanca.jpg","activo_inactivo":"1"},{"empresa":"000001","codigo":"0000000005","nombre":"Cebolla Morada","descripcion":"Cebolla Morada","tipo_precio":"A","unidad_medida":"UND","tipo_iva":"GN","categorias":"14","imagen":"cebolla_morada.jpg","activo_inactivo":"1"},{"empresa":"000001","codigo":"0000000006","nombre":"Zanahoria","descripcion":"Zanahoria","tipo_precio":"A","unidad_medida":"UND","tipo_iva":"GN","categorias":"14","imagen":"zanahoria.jpg","activo_inactivo":"1"}]}
y quisiera que quedara asi (este lo hice a mano):
Código PHP:
Ver original
{"estado":"correcto","code":"200","productos":{"":[{"empresa":"000001","codigo":"0000000003","nombre":"Papas","descripcion":"Papas","tipo_precio":"A","unidad_medida":"UND","tipo_iva":"GN","categorias":"14","imagen":"potatoes_saco.jpg","activo_inactivo":"1","precios":[{"PRE_MONTO":"230"}]},{"empresa":"000001","codigo":"0000000004","nombre":"Cebolla Blanca","descripcion":"Cebolla Blanca","tipo_precio":"A","unidad_medida":"UND","tipo_iva":"GN","categorias":"14","imagen":"cebolla_blanca.jpg","activo_inactivo":"1","precios":[{"PRE_MONTO":"230"},{"PRE_MONTO":"120"}]},{"empresa":"000001","codigo":"0000000005","nombre":"Cebolla Morada","descripcion":"Cebolla Morada","tipo_precio":"A","unidad_medida":"UND","tipo_iva":"GN","categorias":"14","imagen":"cebolla_morada.jpg","activo_inactivo":"1"},{"empresa":"000001","codigo":"0000000006","nombre":"Zanahoria","descripcion":"Zanahoria","tipo_precio":"A","unidad_medida":"UND","tipo_iva":"GN","categorias":"14","imagen":"zanahoria.jpg","activo_inactivo":"1"}]}}
Espero puedan ayudarme, se me ha complicado hacer esto y disculpen lo largo del post y espero me haya explicado bien.
Saludos