forum.bitel.ru
http://forum.bitel.ru/

Иерархия документов.
http://forum.bitel.ru/viewtopic.php?f=23&t=1356
Страница 1 из 1

Автор:  lda [ 11 авг 2008, 16:32 ]
Заголовок сообщения:  Иерархия документов.

В конфигурации плагина указано file.storage.root.path=/var/bill/docs.

Стало интересно как размещаются документы на сервера.
Получилось что путь к документу зависит от его id.
Например для документа с id=111 пусть до него будет такой: /var/bill/docs/1/1/1, для id=112 - /var/bill/docs/1/1/2 и т.д.
Поправьте меня если я не прав.

При добавлении документа с id=1111 сохранить его на сервере невозможно, так как его путь должен быть /var/bill/docs/1/1/1/1

Прошу разработчиков прояснить ситуацию.
Спасибо.

Вложения:
Комментарий к файлу: Сохранение документа с id=1111
Documents.JPG
Documents.JPG [ 7.81 КБ | Просмотров: 15366 ]

Автор:  skn [ 11 авг 2008, 18:00 ]
Заголовок сообщения: 

программа создает все промежуточные каталоги
по попводу ошибки см. логи

Автор:  lda [ 11 авг 2008, 18:20 ]
Заголовок сообщения: 

1. Я так понял что логика размещения файлов именно такая как я описал.
Может я чего то не понимаю, но при такой логике может оказаться что биллинг попытается в одной и той же директории создать папку и файл с одинаковым именем, что приведет к ошибке.
2. Никаких ошибок в локах биллинга я не нашел.

Автор:  skn [ 11 авг 2008, 23:35 ]
Заголовок сообщения: 

fixed в 13 build

Автор:  lda [ 12 авг 2008, 12:18 ]
Заголовок сообщения: 

Спасибо.
1. Вижу что добавили расширение к файлам .dat, кроме того поменялась логика размещения документов. При добавлении нового документа с id=1033 путь к файлу стал такой /var/bill/docs/10/33.dat.
Вобщем я не завидую тем кто уже использовал этот плагин, после обновления биллинг не найдет старых документов.

Прошу еще раз описать логику размещения документов!!!

2. Создал четыре новых документов.
/var/bill/docs
/..
1.dat
2.dat
3.dat
4.dat

Делаю запрос к биллингу:
Для документа с id=1: module=ru.bitel.bgbilling.plugins.documents&cid=556&id=1&action=FileDownload&

<data status="ok">

<file date="12.08.2008 09:49:20" id="1" size="31707" title="FileDownload.JPG">

<filedata>
/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a
HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
......
</filedata>
</file>
</data>
Все нормально.

Для остальных:
<data status="ok">
<file/>
</data>

Биллинг не возвращает документы с id=2,3 и 4.

3. Когда выйдет администратор из отпуска? :D

Автор:  skn [ 12 авг 2008, 13:38 ]
Заголовок сообщения: 

1) да так и есть расширение + папки. если нужно могу конвертор файлов выложить
2) все документы принадлежат одному договору? При выгрузке файлов происходит проверка cid
3) после 20 августа

Автор:  lda [ 12 авг 2008, 16:23 ]
Заголовок сообщения: 

1. Извините за назойливость, но я никак не могу понять логику размещения файлов.
Это я понял:
для id=1 путь /var/bill/docs/1.dat
для id=2 путь /var/bill/docs/2.dat
для id=11 путь /var/bill/docs/1/1.dat
для id=101 путь /var/bill/docs/1/0/1.dat
для id=5101 путь /var/bill/docs/5/1/0/1.dat

Но почему то оказалось:
для id=1033 путь /var/bill/docs/10/33.dat

2. Все документы принадлежат одному договору.

Автор:  skn [ 12 авг 2008, 17:29 ]
Заголовок сообщения: 

1) к файлам добавилось расширение .dat + для папок используется 2 цифры, а не одна.
для id=1 путь /var/bill/docs/1.dat
для id=2 путь /var/bill/docs/2.dat
для id=11 путь /var/bill/docs/11.dat
для id=101 путь /var/bill/docs/10/1.dat
для id=5101 путь /var/bill/docs/51/01.dat
2) выложил 14 билд, добавил сообщение об ошибке при несовпадение cid, попробуйте его

Автор:  lda [ 12 авг 2008, 17:41 ]
Заголовок сообщения: 

Спасибо разобрался.

А с тем что не выгружаются документы можете помочь?

Автор:  skn [ 12 авг 2008, 17:52 ]
Заголовок сообщения: 

выложил 14 билд, добавил сообщение об ошибке при несовпадение cid, попробуйте его

Автор:  lda [ 12 авг 2008, 18:45 ]
Заголовок сообщения: 

Обновил.
Что опять вернулись к старой нумерации?

Добавил новый документ.
при попытке его выгрузить получаю:
<data status="error">
<file/>
serverFile == null or serverFile.getContractId()[-1] != contractId[556]
</data>

Вложения:
Комментарий к файлу: Ошибка
error.JPG
error.JPG [ 7.37 КБ | Просмотров: 15304 ]

Автор:  skn [ 12 авг 2008, 23:54 ]
Заголовок сообщения: 

нумерацию не менял (по 2 цифры)

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

Автор:  lda [ 13 авг 2008, 11:13 ]
Заголовок сообщения: 

1. Всетаки логика поменялась на старую.
Запрос несуществующего файла:
module=ru.bitel.bgbilling.plugins.documents&cid=556&id=11111&action=FileDownload&
Ответ:
Ошибка поиска файла сервером.
/var/bill/docs/1/1/1/1/1 (No such file or directory)

Нумеруются опять по одной цифре и пропало расширение у файла.

2. Запрос на сервер:
module=ru.bitel.bgbilling.plugins.documents&cid=556&id=6&action=FileDownload&
Выдает:
serverFile == null or serverFile.getContractId()[-1] != contractId[556]

В базе вроде все ок:
SELECT * FROM `bgbilling`.`contract_document_8`
1, 556, 1, 1, 'test', 2008-08-12 09:48:55, 3, ''

SELECT * FROM `bgbilling`.`filestorage_files_list_8` WHERE id='6'
6, 1, 'Documents.JPG', 31707, 2008-08-12 16:42:39, 3, 'Documents.JPG'

Автор:  skn [ 13 авг 2008, 12:40 ]
Заголовок сообщения: 

похоже пакет криво собрался. Пересобрал. Проверил. Попробуйте.

Автор:  lda [ 13 авг 2008, 13:20 ]
Заголовок сообщения: 

С нумерацией теперь все в порядке.

Выгружается только файл с id=1.

Для остальных приходит ответ:
fileId = 2; contractId = 556; serverFile = ru.bitel.bgbilling.plugins.filestorage.server.BGServerFile@d3ade7; serverFile.getContractId() = -1

Автор:  skn [ 13 авг 2008, 17:11 ]
Заголовок сообщения: 

Нашел ошибку. Исправил. Выложил новый билд.

Автор:  lda [ 13 авг 2008, 17:32 ]
Заголовок сообщения: 

да заработало, спасибо.

Автор:  Феанор [ 15 май 2012, 08:54 ]
Заголовок сообщения:  Re: Иерархия документов.

Поднимем тему. Использую плагин документс, дергаю файлики в скриптах. Нагенерировалось у меня 100 файликов и встала проблема что появилась папка и в ней файлики... Вспомнил что видел эту тему. Ок, это я сейчас поправлю. А что будет если файлов будет больше 9999? Т.е. 10001 файлик попадет в папку 100/01.dat? Или будет 10/10/1.dat

Автор:  dimOn [ 15 май 2012, 12:17 ]
Заголовок сообщения:  Re: Иерархия документов.

Будет биться каждые 2 символа

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/