/**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Ajustes::find();
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to any records when validation fails
         // $query->where('0=1');
         return $dataProvider;
     }
     $query->andFilterWhere(['id_ajuste' => $this->id_ajuste, 'id_tipo_ajuste' => $this->id_tipo_ajuste, 'fecha_ajuste' => $this->fecha_ajuste, 'id_usuario_crea' => $this->id_usuario_crea, 'idefiscal' => $this->idefiscal, 'fecha_reverso_ajuste' => $this->fecha_reverso_ajuste, 'id_usuario_reversa' => $this->id_usuario_reversa]);
     $query->andFilterWhere(['like', 'concepto', $this->concepto])->andFilterWhere(['like', 'reversado', $this->reversado]);
     return $dataProvider;
 }
Beispiel #2
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getAjustes0()
 {
     return $this->hasMany(\app\modules\siap\models\Ajustes::className(), ['id_usuario_reversa' => 'idusuario']);
 }
 /**
  * Finds the Ajustes model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param integer $id_documento
  * @param integer $id_ajuste
  * @return Ajustes the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($id_documento, $id_ajuste)
 {
     if (($model = Ajustes::findOne(['id_documento' => $id_documento, 'id_ajuste' => $id_ajuste])) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }
 /**
  * Envía la información del documento consultado hacia la vista y crea un nuevo ajuste de acuerdo a las opciones. 
  * @return type
  * @throws CHttpException
  */
 public function actionCargarDocumento()
 {
     //    if (\Yii::$app->request->isAjax) {
     // para la Validación de usuario
     if (true) {
         //      \Yii::$app->response->format = \yii\console\Response::FORMAT_JSON;
         $documento = \Yii::$app->request->post('documento');
         $tipoMovimiento = \Yii::$app->request->post('tipoMovimiento');
         $tipoAjuste = \Yii::$app->request->post('tipoAjuste');
         if (\Yii::$app->request->post('OrdenCompra')) {
             $ordenCompra = \app\modules\siap\models\OrdenCompra::find()->where(['idordencompra' => $documento])->one();
             $ajuste = new \app\modules\siap\models\Ajustes();
             // Validar datos
             // Fecha
             // Cargar datos al modelo
             $atributos = ['id_tipo_ajuste' => 1, 'fecha_ajuste' => date('Y-m-d'), 'id_usuario_crea' => 1, 'idefiscal' => $ordenCompra->idefiscal, 'concepto' => $ordenCompra->fecha . ' cambia a ' . \Yii::$app->request->post('Ajustes')['fecha_ajuste'], 'observacion' => \Yii::$app->request->post('Ajustes')['observacion'], 'reversado' => '0'];
             $ajuste->setAttributes($atributos);
             // Guardar el ajuste
             $ajuste->save();
             return $this->render('create', ['model' => new \app\modules\siap\models\Ajustes()]);
         }
         switch ($tipoMovimiento) {
             case 5:
                 //ORDEN DE COMPRA
                 $ordenCompra = \app\modules\siap\models\OrdenCompra::find()->where(['idordencompra' => $documento])->one();
                 if ($ordenCompra) {
                     if ($ordenCompra->status != 2) {
                         return json_encode(['success' => false, 'mensaje' => 'La orden de compra no ha sido imputada.']);
                     }
                     $proveedor = \app\modules\siap\models\Proveedor::findOne($ordenCompra->idproveedor);
                     $provider = new \yii\data\ActiveDataProvider(['query' => \app\modules\siap\models\OrdenCompraDetalleSearch::find()->where('idordencompra = ' . $ordenCompra->idordencompra)]);
                     $unidadSolicitante = \app\modules\siap\models\Coordinacion::findOne($ordenCompra->idcordinacion);
                     $render = $this->renderFile(Yii::$app->basePath . '/views/ajustes/_ordenCompra.php', ['ordenCompra' => $ordenCompra, 'proveedor' => $proveedor, 'provider' => $provider, 'tipoModificacion' => $tipoAjuste, 'unidadSolicitante' => $unidadSolicitante]);
                     return json_encode(['success' => true, 'mensaje' => 'Orden de pago cargada con éxito.', 'html' => $render]);
                 } else {
                     return json_encode(['success' => false, 'mensaje' => 'No se consiguió la Orden de Compra.']);
                 }
                 break;
             case 6:
                 //ORDEN DE PAGO
                 return json_encode(['success' => true, 'mensaje' => 's']);
                 break;
             case 11:
                 //ORDEN DE SERVICIO
                 return json_encode(['success' => true, 'mensaje' => 's']);
                 break;
             case 12:
                 //PAGO DIRECTO
                 return json_encode(['success' => true, 'mensaje' => 's']);
                 break;
             case 13:
                 //PAGO DE NOMINA
                 return json_encode(['success' => true, 'mensaje' => 's']);
                 break;
             case 20:
                 //PAGADO
                 return json_encode(['success' => true, 'mensaje' => 's']);
                 break;
             default:
                 return json_encode(['success' => false, 'mensaje' => 'Disculpe, por ahora no esta disponible la edicion de este tipo de documentos.']);
                 break;
         }
     } else {
         throw new CHttpException(403, "Usted no se encuentra autorizado para realizar esta accion");
     }
 }