/**
  * parametre olarak gelen array deki 'id' li kaydın update ini yapar  !!
  * @author Okan CIRAN
  * @version v 1.0  10.02.2016     
  * @param array | null $args
  * @param type $params
  * @return array
  * @throws PDOException
  */
 public function setUserDetailOperationsTypeCons($params = array())
 {
     try {
         $pdo = $this->getServiceLocator()->get('pgConnectFactory');
         $pdo->beginTransaction();
         $opUserId = InfoUsers::getUserId(array('pk' => $params['pk']));
         if (\Utill\Dal\Helper::haveRecord($opUserId)) {
             $opUserIdValue = $opUserId['resultSet'][0]['user_id'];
             $addSql = " op_user_id, ";
             $addSqlValue = intval($opUserIdValue) . ", ";
             if (isset($params['operation_type_id'])) {
                 $addSql .= " operation_type_id, ";
                 $addSqlValue .= intval($params['operation_type_id']) . ", ";
             }
             if (isset($params['cons_allow_id'])) {
                 $addSql .= " cons_allow_id, ";
                 $addSqlValue .= intval($params['cons_allow_id']) . ", ";
             }
             if (isset($params['role_id'])) {
                 $addSql .= " role_id, ";
                 $addSqlValue .= intval($params['role_id']) . ", ";
             }
             /*
              *  parametre olarak gelen array deki 'id' li kaydın, info_users_details tablosundaki 
              * active = 0 ve deleted = 0 olan kaydın active alanını 1 yapar  !!
              */
             InfoUsers::setUserDetailsDisables(array('id' => $params['id']));
             $sql = " \n                    INSERT INTO info_users_detail(\n                           profile_public, \n                           f_check,\n                           " . $addSql . "                      \n                           name, \n                           surname,                            \n                           act_parent_id,                            \n                           language_code, \n                           root_id,                            \n                           language_id, \n                           password,\n                           auth_allow_id,\n                           auth_email\n                            ) \n                           SELECT \n                                profile_public, \n                                f_check, \n                                " . $addSqlValue . "\n                                name, \n                                surname,                            \n                                act_parent_id,                            \n                                language_code, \n                                root_id,                            \n                                language_id, \n                                password,\n                                auth_allow_id,\n                                auth_email\n                            FROM info_users_detail \n                            WHERE root_id  =" . intval($params['id']) . " \n                                AND active =0 AND deleted =0\n\n \n                    ";
             $statementActInsert = $pdo->prepare($sql);
             //   echo debugPDO($sql, $params);
             $insertAct = $statementActInsert->execute();
             $insertID = $pdo->lastInsertId('info_users_detail_id_seq');
             $errorInfo = $statementActInsert->errorInfo();
             if ($errorInfo[0] != "00000" && $errorInfo[1] != NULL && $errorInfo[2] != NULL) {
                 throw new \PDOException($errorInfo[0]);
             }
             $pdo->commit();
             return array("found" => true, "errorInfo" => $errorInfo, "newId" => $insertID);
         } else {
             $errorInfo = '23502';
             /// 23502 user_id not_null_violation
             $pdo->rollback();
             $result = $kontrol;
             return array("found" => true, "errorInfo" => $errorInfo, "resultSet" => '');
         }
     } catch (\PDOException $e) {
         $pdo->rollback();
         return array("found" => false, "errorInfo" => $e->getMessage());
     }
 }