За чистый и ясный код!

Статьи на тему программирования под веб, используя PHP, MySQL, Jquery и многое другое

Перенос газового счетчика. Оформление технической документации.

Ноябрь28

В этой статье я хочу рассказать, как я делал техническую документацию на перенос счетчика газа. Какие документы для этого нужны, какие трудности и тд.

Объект:
1 з-х комнатная квартира в новом 6-ти этажном доме. В новых, заселяемых домах газ сразу не включают, кто-то говорил цифры от 70-90% от всех проживающийх, чтобы включить газ.

План квартиры в соответствии с техпаспортом

План квартиры в соответствии с техпаспортом

фронтальный вид дома

фронтальный вид дома

2 Фото расположение счетчика до перепланировки.

Первоначальное расположение счетчика

Первоначальное расположение счетчика

Первоначальное расположение счетчика

Первоначальное расположение счетчика

3 ЖЕК застройщика, не муниципальный. Сайт застройщика Авантаж

Как только я начал делать ремонт, и получил первые эскизы кухни от дизайнера

Дизайн кухни

Дизайн кухни

понял, что месторасположение счетчика (1.6м от пола) не вписывается в мои планы. Пришлось счетчик просто переносить, на высоту шкафчика. Когда только начинались работы по ремонту квартиры, я нашел каких-то двух «строителей», которые мне перенесли счетчик на нужную мне высоту, но скрутили мне трубы (от трубы к счетчику и от счетчика к газовому шлангу) на металлических уголках. Заплатил за это 150 грн.

PD58

Металлический уголок

Что крайне запрещено, должен быть сварной шов, причем как мне потом сказали проверяющие, за шов пожизненно несет ответственность тот газовщик, который его делал.

Пригласил "строителей" которые мне вот так сделали счетчик

Пригласил "строителей" которые мне вот так сделали счетчик

При монтаже кухни я открутил счетчик с трубой чтобы не мешал. И так у меня все отдельно и валялось, всё никак не мог договориться, чтобы пришли красиво все сделали…. Пока не наступил час Ч и не появилось объва о том, что подключают газ, быть всем дома, будет комиссия.

В какой состоянии первая комиссия увидела счетчик

В какой состоянии первая комиссия увидела счетчик

Пришла комиссия, несколько тётичек и пожилой газовщик, ессно забраковали мой счетчик с таким трубами и поставили с своей тетрадочки минус :-(. Тем у кого счетчик был, но даже и на таких уголках сказали, чтобы до официальной комиссии не было этого порно, но + при этом поставили.
Мой сосед сам был в такой ситуации, и он успел сделать все как надо до главкомиссии и газ в квартиру получил ).

После первой комиссии я засуетился (как по пословице) и мне газовщик сделал все очень красиво, реально, все на швах, все аккуратно — умничка, за что и получил 500 грн, но без техдокументации. После первой, через какое-то время пришла вторая комиссия и сразу мне ВСЕ ЗАБРАКОВАЛА. Сказали, что все сделано не правильно, что по плану квартире счетчик находить не там где надо, что швы и прочее делал необразованный ламер, причем этот мастер работает у них не первый десяток лет)))). Мне поставили заглушку с пломбой — нет тебе газа. И послали меня по адресу, сказали, как сделаешь техдокументацию, все тебе подключат.

Захотели с меня стянуть 40грн, просто за то, что они выкрутили мой счетчик и вкрутили в трубу заглушку с пломбой. Я сказал, заплачу если дадут мне квитанцию — плачу по сей день.

На следующий день я нашел сайтик http://www.1562.kharkov.ua/ru/article/view/id/137 и позвонил по какому-то из телефонов. Мужчина, который не представился, скзал мне какие документы нужны, после того как я объяснил своё положение.
Документы следующие
1 Техпаспорт на квартиру (оригинал + копия)
2 Документ на право собственности (оригинал + копия)
3 Паспорт и код (оригинал + копия)
4 Разрешение из ЖЭКа на то, что ЖЭК не против моих изменений.

По 4-му пункту у меня были вопросы. Оказывается в квартире мне принадлежит только «воздух», все коммуникации, в частности газопровод, это собственность ЖЭКа и меня его я должен получить разрешение этой службы. Пошел я в свой ЖЭК, переговорил с его руководителем, он сказал, что такого никогда не делал, мол иди так…

Ещё один прикол, т.к. моя квартира находиться в кредите, то я должен получить разрешение у банка, т.к. это его собственность. Я позвонил в банк, рассказал о проблеме, мой менеджер очень удивился и сказал, узнает у юристов. Через какое-то время я перезвонил, но она никак меня не обрадовала и я сказал, давайте попробуем без вашего разрешения, раз у банка это первый случай. Кстати когда я делал перепланировку квартиры (первоначальный план — это план при покупке квартиры) я тоже пошел в банк и спросил, не нужно ли от них никаких разрешений. Юрист мне сказал, пока нет документов на право собственности и техпасорта — делай что хочешь, а вот после — уже будем думать.

30.11.2010

Пошел я в эту службу, уже приготовился к самым большим очередям, нервам и тд…, но все оказалось приятней. Нашел кабинет который занимается техдокументацией № 1 прием с 9:30-15, перерывом с 12-13, рабочие дни пн-пт. Объяснил свою проблему девушке, сразу получил отрицательны ответ, мол 1.6 от пола и все, так прописано у них в каких-то ТУ (техническое условие), какой кретин его писал, почему нельзя газовый счетчик поднять до 2-х метров…. единственно объяснение какое я нашел, так это то, что на таком расстоянии трудно выключить газ в случае проблемы…. Спорил я спорил, все хорошо, без нервов. Пока девушка не ушла куда-то с моими документами (техпаспорт и право собственности), через 5 минут она пришла и написала список какие доки мне нужны. К тем которые мне сообщили по телефону еще приписалось обмер диаметра трубы (общей и моего отвода).

Т.к. опять звучал документ — разрешение от ЖЭКа, то я поинтересовался на каком основании от меня это просят, причем этот ЖЭК не общий, а компании-застройщика. Она без всяких нервов, пошерстила в своих копиях и нашла мне и показала номера решений Харьковского городского совет №1186 от 20.12.2006 и №188 от 22.02.2007, по которым я обязан получить такое разрешение, но там четко написано ЖИЛКОМСЕРВИС — это муниципальный ЖЭК, я даже не знаю каким мы боком к ним, но поспорить пока не могу.

Для качественного экономического перевода воспользуйтесь услугами профессионалов.

За сем я и ушел. Теперь собираю документы. Завтра иду в свой ЖЭК получать свой документ.

По мере поступления новостей, буду дописывать эту статью.

02.12.2010

Пошел обратно в свой ЖЭК, начальника не было, но я объяснил ситуацию людям там работающим. Они позвонили по телефон +38 057 763 04 15 в газовую службу и узнали на чьё имя и как писать разрешение. Формат очень простой.

Разрешение ЖЭКа на работу

Разрешение ЖЭКа на работу

07.12.2010

Сегодня со всеми документами направился опять в Харьковгоргаз. Скажу сразу уже приготовился ругаться, ведь в большинстве случаев в бывших совковых организациях без этого никуда.

Но всё прошло как нельзя лучше. Меня приняла одна из девушек, которой я пояснил свою проблему. Она проверила мои доки и поинтересовалась, где оригинал техпаспорта (нотариус техпаспорта не заверяет). Ответил, что в банке на том вопросы и закончились.

Приступили к выяснению расположения и типа счетчика. Спросила застеклен ли балкон, слава Богу нет, если бы был застеклен то заставили бы снять остекление, т.к. по их ТУ не положено иметь две границы (1 окно на кухне, 2-сам балкон), бред, но куда попрешь против этого тупизма…

Единственная была запарка, что нельзя по ТУ располагать счетчик на высоте 2.1м от пола. Пошла выяснять к начу, предложили следующее — они не будут указывать высоту, а просто сместят положение счетчика на 5 см в бок, ну как бы план изменился — вот новые доки. Вроде все выяснили, спрашивали диаметры труб (был такой пункт в необходимых документах), пропускную способность счетчика (на счетчике G 1.6 написано).

Спросил самое интересное — сколько и как долго?! Ответ меня поразил, сами доки стоят около 100грн!!!!! там 3 квитанции, которые надо оплатить в Сбербанке или к ним в кассу. Срок исполнения 2 месяца, сказали перезвонить через 1.5. Пока вот такие расклады, а меня пугали цифрами в 3000-6000 грн!

10.12.2010

Сегодня оплатил эти квитанции, сканы внизу. Комиссия банка 3 грн с квитанции — итого 9грн.

Квитанция об оплате

Квитанция об оплате 1

Квитанция об оплате 2

Квитанция об оплате 2

Квитанция об оплате 3

Квитанция об оплате 3

10.02.2011

Сегодня уже прошло 2 недели, как мне должны были вернуть документацию, но её еще нет!
Звонил я и в первых числах месяца и сегодня, все отправляют меня на следующую пятницу)), говорят на согласовании у исполнительного директора.
Отныне я буду к ним звонить по 2 раза в день пока не получу свои документы.

18.02.2011

Ура, мой проект с одного отдела перекачивал в другой отдел. Сказали позвонить, опять в пятницу. Ждем.

24.02.2011

Ура, документация сделана. Сказали подъехать забрать и при себе иметь паспорт на газовый счетчик. Я его в жизни не видел, позвонил в ЖЭК сказали, перезвонить, т.к. чувак который за этот ответственный сейчас не на месте. Вот позвоню буду общаться, что мне делать дальше.
Из печального — когда я узнавал что мне делать после получения документов, мне девушка по телефону сказала, что нужно обратиться в монтажный участок, заплатить им 850грн!!!! и они произведут подключение, бля! чё за нах… у меня все полностью подключено!!!!!!!!!! И я буду платить только за то, чтобы мне закрутили вентиль на место…… охренно просто… ну ладно буду ждать, что скажет мой ЖЭК.

01.03.2011

Получил документа. Сделаны прикольно, всё в автокаде, красиво нарисовано, куча всего расписано не жалко 110 грн, которые за это заплатил.

схема проекта

схема проекта

Также дали бумагу, в которой перечень тех документов которые еще нужны.

перечень дополнительных документов

перечень дополнительных документов

Из более трудных — сертификат на трубы, но оказывается это не проблема. Звоним на металло-базу и узнаем у них. Метр трубы полдюймовой, то что написано в документации стоит 10.56 грн/м, документация дается без проблем. Это документ с завода производителя, где описаны всякие параметры испытаний, в общим этот документ говорит, что труба соот ГОСТу и пригодна для газа.

03.03.2011
Привез всю документацию, приняли, дали 3 счета которые надо оплатить, чтобы далее продлилась работа… Оплачиваю и 10.03.2011 поеду привезу чеки и узнаю что делать далее.

Какое-то техобслуживание

Какое-то техобслуживание

технический надзор

технический надзор

монтажные работы

монтажные работы

12.04.2011
Ура, у меня сегодня супер-пупер новость!!! У нас появился газ. В конторе мне назначили на 12 апреля бригаду которая переварить мне счетчик по моему проекту. Я даже не думал, что они приедут в 9 утра! К этому времени я успел снять только 2 из 4-х ящиков, но это долго времени не заняло. В общем снял, начал объяснять куда я хочу этот ящик, заранее с женой определились куда хотели бы разместить, на высоту в 1.6м ну никак не вписывалось, мы так за это переживали…. но ребята даже и не заикнулись об этой высоте они нас выслушали, посмотрели, подумали и согласились, еще раз все перемеряли. Ребята со снятыми мерками ушли на улицу варить и подготавливать трубы. Пришла какая-то другая бригада, которая отключила стояк от газа и проверяет работу первой бригады на утечки. В общем время шло, дело делалось, все мне приварили, проверили, расписался дал ребятам на чай за их работу и за то что не начали заёб… по поводу 1.6м. Также ребята позвонили в контору и им сказали принять работу полностью и подключить газ!!! Так и сделали и не выезжали всякие там эксперты, которые только и могут про 1.6м говорить, всё пучком.

Конечно весь этот путь занял 5.5 месяцев, отсюда вывод — или ремонт начинай с газа (если нужен перенос, установка чего-то) или смирись с тем что есть.

Несколько фоток:

Теперь осталось покрасить в серебряный цвет и труб будет почти не видно.

Теперь осталось покрасить в серебряный цвет и труб будет почти не видно.

Пришлось пойти на жертвы одним шкафчиком, даже половиной половины. Кстати высота данной конструкции 1.75м - средний рост, раз уж контора так за травматизм работников переживает.

Пришлось пойти на жертвы одним шкафчиком, даже половиной половины. Кстати высота данной конструкции 1.75м - средний рост, раз уж контора так за травматизм работников переживает.

Первое, что сделали - вскипятили воду в чайнике.

Первое, что сделали - вскипятили воду в чайнике.

ЗЫ Следующее на смену — замена однотарифного электрического счетчика на двух-тарифный с целью снизить затраты на электричество из-за повышение оного на 45%.

Статья просмотренна 128415 раз, зашло посетителей 35477

Рекурсивный обход директории с помощью итераторов

Ноябрь15
Обращаю Ваше внимание на загородную недвижимость в области, найдите себе достойное жильё!

рекурсия с помощью итераторовКак-то на работе нужно мне было обойти директорию и удалить все файлики в ней, юзать для этого консоль я не мог. Все надо было делать на чистом php. Удалить просто не пустую директорию, как Вы знаете нельзя, надо удалить всё, что в ней, а потом удалить её.

Для таких целей используется рекурсия.

Я попытался разобраться в этом вопросе, и всё что узнал делюсь.
Сначала я просто попытался пройтись по одной директории не исполmзуя рекурсию разными методами для определения удобства использования и скорости работы.

Проход директории с помощью родных методов

К родным (native) методам я отнес функции opendir(), closedir(), readdir() и rewinddir(). Больше казать об этих ф-циях нечего, чистая классика. Открыли каталог (если он существует), получили дескриптор (указатель) на него и начинаем с ним работать, по окончанию желательно закрыть каталог.

К родным методам я отношу те, которые существует в голом ядре, т.е. если отключить все расширения и эти ф-ции, классы существуют, то я их называю родными или нативными. Например класс или ф-ции по работе с Memcache существуют если подключено соответствующее расширение, следовательно такие вещи родными назвать нельзя.

$dir = 'c:\\windows\\system32';

$odir = opendir($dir);

while (($file = readdir($odir)) !== FALSE)
{
	if ($file != '.' && $file != '..')
	{
		echo $file.'<br>';
	}
}

closedir($odir);

Проход директории с помощью предопределенного класса dir()

Предопределенных классов довольно много, они или являются родными, как класс dir(), Exception, Reflection, или такие которые подключаются с помощью соот. библиотек — mysqli, curl, GD и тд

$cat = dir($dir);

while (($file = $cat->read()) !== FALSE)
{
	if ($file != '.' && $file != '..')
	{
		echo $file.'<br>';
	}
}

$cat->close();

Методы класса dir()

Название метода Описание метода
path путь к директории
handle ресурс, дескриптор
close() закрыть директорию
rewind() сброс дескриптора в начало директории
read() Чтение одного элемента директории и передвигаем указатель на одну позицию вниз.

Проход директории с помощью Итератора (DirectoryIterator)

Что есть итератор хорошо описано в Википедии не буду копи-пастить…

Класс DirectoryIterator реализует интерфейс итератора (могут проходить коллекцию в цикле foreach).

$idir = new DirectoryIterator($dir);

foreach($idir as $file)
{
	if ($file != '.' && $file != '..')
	{
		echo $file->__toString().'<br>';
	}
}

У данного класса уж очень много методов для работы с файлами и/или директориями. Постараюсь их все здесь описать. Некоторые из приведенных ниже относятся только в Unix подобным системам.

Методы класса DirectoryIterator()

Название метода Описание метода
getFilename() возврат имени файла или поддиректории
getBasename() похож на getFilename(), но может удалять суфикс,если таковой передать в виде параметра *
isDot() Определяет является ли текущий элемент «.» или «..»
rewind() сброс указателя на первый элемент
valid() проверка является ли текущий элемент правильным файлом.
Честно не понял.
key() возврат ключа текущего элемента
current() возврат текущего элемента
next() на 1 шаг вперед передвигает указатель
__toString() оопшный метод, приводит свойство к строке
getPath() возврат просто имени директории/файла и все
getPathname() возврат пути к файлу/директории+само название
getPerms() возврат прав доступа только для UNIX
getInode() х.з. что это, судя по названи наверное какое-то имя узла,
думаю только для UNIX
getSize() размер файла в байтах, для директории всегда ноль
getOwner() возврат имя владельца, только для UNIX
getGroup() возврат ИД группы, только для UNIX
getATime() последний доступ к файлу/директории в сек (начало с 1970)
getMTime() последний модификации  файла/директории в сек (начало с 1970)
getCTime() последний изменения к файла/директории в сек (начало с 1970)
getType() возрат dir или file для сотв элемента.
isWritable() думаю понятно из названия, возврат истина/ложь
isReadable() думаю понятно из названия, возврат истина/ложь
isExecutable() думаю понятно из названия, возврат истина/ложь
isFile() думаю понятно из названия, возврат истина/ложь
isDir() думаю понятно из названия, возврат истина/ложь
isLink() думаю понятно из названия, возврат истина/лож,только для  UNIX
getLinkTarget() для данных методов не нашел описание даже на оф.сайте.
getRealPath() для данных методов не нашел описание даже на оф.сайте.
getFileInfo() для данных методов не нашел описание даже на оф.сайте.
getPathInfo() для данных методов не нашел описание даже на оф.сайте.
openFile() для данных методов не нашел описание даже на оф.сайте.
setFileClass() для данных методов не нашел описание даже на оф.сайте.
setInfoClass() для данных методов не нашел описание даже на оф.сайте.

* — за подробностями обращайтесь к официальной документации.

Рекурсивный обход директории с помощью родных методов

Рассмотрев как можно пройтись по директории теперь рассмотри как можно пройтись абсолютно по всему каталогу.

function recursive($dir)
{
	static $deep = 0;

	$odir = opendir($dir);

	while (($file = readdir($odir)) !== FALSE)
	{
		if ($file == '.' || $file == '..')
		{
			continue;
		}
		else
		{
			echo str_repeat('---', $deep).$dir.DIRECTORY_SEPARATOR.$file.'<br>';
		}

		if (is_dir($dir.DIRECTORY_SEPARATOR.$file))
		{
			$deep ++;
			recursive($dir.DIRECTORY_SEPARATOR.$file);
			$deep --;
		}
	}
		closedir($odir);
}

recursive($dir);

При запуске данной ф-ции она пройдет абсолютно по всем (. и .. не включаем по внимание) директориям и файлам и нарисует дерево. Данная функция мне не понравилась, что она сильно громоздкая и я все же больше склоняюсь к ООП.

Рекурсивный обход директории с помощью итератора (RecursiveDirectoryIterator)

Решение для обхода каталога на ООП нашлось и его скрипт ниже.

$rdir = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir), TRUE);

foreach ($rdir as $file)
{
	echo str_repeat('---', $rdir->getDepth()).$file.'<br>';
}

Красиво, всего одна строка, два класса и полный набор данных.

Из существующий методов , которые я уже не привожу, т.к. многие уже описал в других классах (key, current, rewind, valid etc), хотелось бы подчеркнуть метод setMaxDepth(integer); — он позволяет задать глубину прохода.

Другие методы которые есть у данного класса даже не описаны на оф. сайте.

Тесты

Как я их проводил. В цикле (1000) я засекал время перед открытие директории и после её закрытия. Затем я высчитывал среднее арифметическое. Т.к. результаты сильно зависят от железа (винчестера и др параметров), то приводить просто время в секундах не кошерно, поэтому я перевел их проценты. За 100% я принял время работы родных функций.

Проход 1000 раз директории $dir = ‘c:\\windows\\system32’;
native — 100%
dir() — 107%
DirectoryIteratior — 115%

Рекурсия директории $dir = ‘c:\\windows\\system32’;
native — 100%
RecursiveDirectoryIterator — 115%

Как видно нативные почти всегда рулят, но и не так далеко отстают ООПшные фичи.
Кто что будет юзать — уж дело личное.

UPD
Прошу прощения у общественности, я не верно провел тест с рекурсивным обходом.
Вот более детальные данные.
native — 100%
RecursiveDirectoryIterator — 185%

Как видно нативные фичи всегда рулят!

Статья просмотренна 69835 раз, зашло посетителей 16962

  

Облако тегов

cli csv dump events form Kohana locale models MySQL mysqldump orm PHP tools trigger validate газ газовый счетчик итоги кеширование переменные

Облако тегов плагина WP Cumulus для WordPress требует для просмотра Flash Player 9 или выше.

Я на твиттере!

  • у твиттера тоже бывают перерывы...

Календарь

Ноябрь 2010
Пн Вт Ср Чт Пт Сб Вс
« Окт   Дек »
1234567
891011121314
15161718192021
22232425262728
2930  

Сейчас на сайте