ソースを参照

Agregado saldo, ejercido, ejercer

Jogibeda 6 ヶ月 前
コミット
a8738d78a8
共有2 個のファイルを変更した59 個の追加1 個の削除を含む
  1. 55 0
      modules/v1/controllers/ObraController.php
  2. 4 1
      modules/v1/controllers/ObraRubroController.php

+ 55 - 0
modules/v1/controllers/ObraController.php

@@ -6,6 +6,7 @@ use app\models\ObraEmpleado;
 use app\models\ObraHerramienta;
 use common\data\Respuesta;
 use common\rest\AuthController;
+use Exception;
 use Mpdf\Tag\Select;
 use Yii;
 use yii\db\Expression;
@@ -200,4 +201,58 @@ class ObraController extends AuthController {
     return ['error' => 'Error al calcular la nómina. Verifique el log para más detalles.'];
 }
 }
+
+public function actionTotalRubro($id){
+  try {
+  $TotalRubro= 0;
+  $q=(new Query())->select(['{{ObraRubro}}.[[cantidad]]'])
+  ->from('ObraRubro') 
+  ->rightJoin('Obra', '{{Obra}}.[[id]] = {{ObraRubro}}.[[idObra]]') 
+  ->andWhere(['{{ObraRubro}}.[[idObra]]' => $id]) 
+  ->andWhere(['{{ObraRubro}}.[[eliminado]]'=>null])
+  ->column();
+  foreach($q as $cantidad){
+    $TotalRubro=$TotalRubro+$cantidad;
+  }
+  return $TotalRubro;
+} catch (\Exception $e) {
+  Yii::error("Error en actionRubro: " . $e->getMessage());
+  return ['error' => 'Error al calcular el Rubro. Verifique el log para más detalles.'];
+}
 }
+
+
+public function actionSaldo($gasto, $nomina, $pago){
+ try{
+  $TotalSaldo=($gasto+$nomina)-$pago;
+  return $TotalSaldo; 
+
+ }catch(\Exception $e){
+  Yii::error("Error en actionsaldo: " . $e->getMessage());
+  return ['error' => 'Error al calcular el Saldo. Verifique el log para más detalles.'];
+ } 
+}
+
+public function actionEjercidoObra($gasto, $rubro){
+  try{
+    $TotalEjercido = ($rubro != 0) ? ($gasto * 100) / $rubro : 0;
+
+   return $TotalEjercido; 
+ 
+  }catch(\Exception $e){
+   Yii::error("Error en actionEjercidoObra: " . $e->getMessage());
+   return ['error' => 'Error al calcular el Ejercido. Verifique el log para más detalles.'];
+  } 
+ }
+ public function actionEjercer($rubro, $pago){
+  try{
+   $TotalEjercer=$rubro-$pago;
+   return $TotalEjercer; 
+ 
+  }catch(\Exception $e){
+   Yii::error("Error en actionEjercidoObra: " . $e->getMessage());
+   return ['error' => 'Error al calcular el Ejercido. Verifique el log para más detalles.'];
+  } 
+ }
+}
+

+ 4 - 1
modules/v1/controllers/ObraRubroController.php

@@ -13,13 +13,16 @@ class ObraRubroController extends AuthController {
 	public function actionIndex() {
 		$id = trim($this->req->get("id", ""));
 		$buscar = trim($this->req->get("q", ""));
+		$idObra=trim($this->req->get("idObra",""));
 
 		$query = $this->queryInicial;
 
 		if ($id > 0) {
 			$query->andWhere(["id" => $id]);
 		}
-
+		if ($idObra !== "") {
+			$query->andWhere(["idObra" => $idObra]);
+		  }
 		if ($buscar) {
 
 			$query->andWhere([