powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / По какому пути лучше пойти?
18 сообщений из 18, страница 1 из 1
По какому пути лучше пойти?
    #35284466
Crvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет народ!
Вообщем тут встала задачка передо мной, раньше с таким не сталкивался. Для нее у меня пока два пути решения крутится в голове, посоветуйте на каком остановиться или может что нибудь оригинальное кто предложит. (Пишется все на ASP.Net 2.0 + SQLServer 2005)
Задача в следующем: клиенты заказывают онлайн печать фотографий, загружают изображения на сервер, выбирают параметры печати, в тоже время если какая нибудь фотка не понраивиться клиенты могут ее удалить , удаление происходит как физически с диска так и с таблицы где пишуться записи о фотках.
Вся проблема в том, что после того как клиент оплатит заказ и вдруг захочет сразу же удалить все фотки со своего ресурса (на это он имеет полное право), изображения не сможет загрузить оператор для их печати. Что можно сделать что бы этого можно было избежать?
Я пока вижу выход в следующем, когда пользователь подтверждает оплату заказа, все фотографии в его заказе копируются в другое место на диске, откуда потом и будет забирать оператор для их печати, НО, я боюсь что эта процедура может затянуться по времени...
Или же может пометить эти фотки в б/д какимнибудь флагом, типа заказаны но не приняты, и не давать пользователю удалять их?

А если пойти по первому пути и все это повесить на хранимую процедуру которая и будет все это дело копировать, может быть в этом случае пользователь не заметит тормозов?
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35284477
Фотография Taffy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У вашего заказа просто должно быть поле - стадии обработки. И разрешать удалять только на определенных стадиях. При чем проверку лучше делать на клиенте. Хотя можно и на триггере
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35284480
Фотография DeColo®es
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне почему-то кажется, что если хапретить клиенту удалять фотографии, по которым есть, но еще не готов заказ, он не будет возмущаться... ;)
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35284488
Crvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DeColo®esМне почему-то кажется, что если хапретить клиенту удалять фотографии, по которым есть, но еще не готов заказ, он не будет возмущаться... ;)

Да, я стараюсь тоже придерживаться такого же мнения, не люблю ущемлять права пользователя.
Так что, пока остается один выход это заниматься копированием файлов на диске и хотелось бы делать это все средствами сервера, т.е. после оформления заказа вызывается хранимая процедура и выполняет копирование файлов или все таки лучше сделать это средствами ASP?
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35284507
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaffyУ вашего заказа просто должно быть поле - стадии обработки. И разрешать удалять только на определенных стадиях.Дополню, имхо, на стадии "заказ оплачен" должно быть возможно удаление с возвратом денег, на стадии "ушло в печать" удаление уже невозможно. Копировать, имхо, никуда не надо кроме как для технологических нужд, т.е. самой печати. Если печать невозможно в он-лайне связать с базой, то интервал времени от перехода в стадию "ушло в печать" до самой печати должен быть минимален.
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35284610
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CrvikВся проблема в том, что после того как клиент оплатит заказ и вдруг захочет сразу же удалить все фотки со своего ресурса (на это он имеет полное право), изображения не сможет загрузить оператор для их печати. Что можно сделать что бы этого можно было избежать?
При оплате заказа ставить флаг "требуется для печати".
При удалении фотографии проверять флаг и выставлять другой - "удалить когда будут напечатаны, а пока спрятать и нигде не показывать".

Это самый простой путь вписаться в названные требования. Но вообще-то тут больше интересно, что делать по бизнесу - например, не нужно ли спросить клиента "может тогда удалить и из заказа тоже?" Или, допустим, дать клиенту выставлять флаг "удалить по завершении заказа"?
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35284787
Crvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer CrvikВся проблема в том, что после того как клиент оплатит заказ и вдруг захочет сразу же удалить все фотки со своего ресурса (на это он имеет полное право), изображения не сможет загрузить оператор для их печати. Что можно сделать что бы этого можно было избежать?
При оплате заказа ставить флаг "требуется для печати".
При удалении фотографии проверять флаг и выставлять другой - "удалить когда будут напечатаны, а пока спрятать и нигде не показывать".

Идея впринципе неплохая, т.е. если я правильно понял, после заказа выставлять флаг "требуется для печати" для всех фоток и после того как клиент нажмет удалить эту фотку возводиться еще один флаг и после этого убрать эту фотку с глаз клента, а после того как оператор забрал удалять фотки с последним флагом.
Млин, с одной стороны ничего сложного как кажется нету, а с другой стороны можно запутаться с этими флагами 8)

softwarer
Это самый простой путь вписаться в названные требования. Но вообще-то тут больше интересно, что делать по бизнесу - например, не нужно ли спросить клиента "может тогда удалить и из заказа тоже?" Или, допустим, дать клиенту выставлять флаг "удалить по завершении заказа"?
Нет, пока насчет отмены заказа клиентом речи не шло, да и скорее всего не будет.
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35285610
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CrvikМлин, с одной стороны ничего сложного как кажется нету, а с другой стороны можно запутаться с этими флагами 8)
Флаг - это условность. С тем же успехом флагом может выступать, например, ссылка на фотографию из позиции заказа или еще как. Главное - сначала нужно продумать сценарий, продумать, что должно происходить с точки зрения бизнес-логики. А потом подбирать технически удачную реализацию продуманного - не пытаясь подогнать бизнес-логику под "то, что я легко могу написать".
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35285776
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Taffy При чем проверку лучше делать на клиенте.
Ну-ну, кстати.
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35285846
Фотография DeColo®es
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CrvikДа, я стараюсь тоже придерживаться такого же мнения, не люблю ущемлять права пользователя.
Так что, пока остается один выход это заниматься копированием файлов на диске и хотелось бы делать это все средствами сервера, т.е. после оформления заказа вызывается хранимая процедура и выполняет копирование файлов или все таки лучше сделать это средствами ASP?Вообще-то я имел в виду - не давать удалять фотографии вообще.
При чем тут ущемление "прав пользователя"?
Вы же не показываете "неудаленные" фото другим ?
А с точки зрения пользователя, с того момента, когда он передал фотографию, он не может быть уверен, что никто ее не будет использовать по своему усмотрению. Даже, если ее "удалили" - в нормальной базе все равно есть бэкапы системы, включающие и удалденные фото тоже.
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35285906
Crvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DeColo®esВообще-то я имел в виду - не давать удалять фотографии вообще.
При чем тут ущемление "прав пользователя"?
Вы же не показываете "неудаленные" фото другим ?
А с точки зрения пользователя, с того момента, когда он передал фотографию, он не может быть уверен, что никто ее не будет использовать по своему усмотрению. Даже, если ее "удалили" - в нормальной базе все равно есть бэкапы системы, включающие и удалденные фото тоже.

Ну как же тут не идет речь об ущемлении прав пользователя, раз мы не даем право удалять их же фотографии? С точки зрения пользователя, он должен быть уверен, что фотография дойдет до точки пеати и будет распечатана, но как я могу это гарантировать если этот же пользователь после заказа сразу эе захочет поудалять эти фотки на своем ресурсе, что бы загрузить новые и сделать еще один заказ? Вот я и ущу оптимальный способ как бы это реализовать...

DeColo®es Вы же не показываете "неудаленные" фото другим ?
Дргуим , вы имеете ввиду другим пользователям, нет это протеворечит условиям проекта, или вы имеете ввиду публичные фотографии?
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35286331
Фотография DeColo®es
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CrvikНу как же тут не идет речь об ущемлении прав пользователя, раз мы не даем право удалять их же фотографии? С точки зрения пользователя, он должен быть уверен, что фотография дойдет до точки пеати и будет распечатана, но как я могу это гарантировать если этот же пользователь после заказа сразу эе захочет поудалять эти фотки на своем ресурсе, что бы загрузить новые и сделать еще один заказ? Вот я и ущу оптимальный способ как бы это реализовать...С того момента, как пользователь передал куда-либо фотографию, он может быть уверен в одном - с ней могут сделать все, что угодно, даже если он нажмет кнопку "удалить" и ему "сделают вид, что все удалено". На самый крайний случай, фотографию можно отсканировать после печати и пользователь об этом даже не узнает.
К тому же, Вы со своей схемой перемещения сами только имитируете удаление - ведь если удалять "по-честному", то нужно удалить везде, включае отправленные в печать файлы, да и из бэкапов тоже нужно удалять. Так что ни о какой "гарантии удаления" речи идти не может.
А то, где именно хранится фото до момента печати - пользователю реальной разницы нет.

Crvik DeColo®es Вы же не показываете "неудаленные" фото другим ?
Дргуим , вы имеете ввиду другим пользователям, нет это протеворечит условиям проекта, или вы имеете ввиду публичные фотографии?Я не знаю, что значит "публичные фотографии" в Вашем понимании, а под "другими" - да, других пользователей.
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35286610
Crvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DeColo®esС того момента, как пользователь передал куда-либо фотографию, он может быть уверен в одном - с ней могут сделать все, что угодно, даже если он нажмет кнопку "удалить" и ему "сделают вид, что все удалено".
...
А то, где именно хранится фото до момента печати - пользователю реальной разницы нет.


Уважаемый DeColo®es, топик создавался с целью узнать какой метод лучше выбрать хранения фотографий до момента печати, а не о том что можно сделать с фотками клиентов.
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35287263
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Crvikтопик создавался с целью узнать какой метод лучше выбрать хранения фотографий до момента печати
Cкажу так: копирование не есть хороший метод. Это жутко расточительно. Хотя, конечно, при нулевой загрузке можно и так; просто это... непрофессионально.
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35287330
Crvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerCкажу так: копирование не есть хороший метод. Это жутко расточительно. Хотя, конечно, при нулевой загрузке можно и так; просто это... непрофессионально.

Я, тоже уже начал склоняться к тому, что это не рационально.. Хотелось бы послушать профессиональное мнение, как бы вы поступили в данном случае?
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35287557
Фотография DeColo®es
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Варианта Вам уже предлдожили - либо не давать "удалить" до момента печати вообще, либо помечать, как удаленные.
Я бы "не удалял" - клиенту возможно будет интересно посмотреть, что же именно у него находится в обработке. Причем увидеть картинку, а не просто DSC1290837.jpg
А для удаления - сделать "галку": "Удалить после печати".
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35287666
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerФлаг - это условность. С тем же успехом флагом может выступать, например, ссылка на фотографию из позиции заказа или еще как. Главное - сначала нужно продумать сценарий, продумать, что должно происходить с точки зрения бизнес-логики. А потом подбирать технически удачную реализацию продуманного - не пытаясь подогнать бизнес-логику под "то, что я легко могу написать".
Это утверждение - квитэссенция всего топика. Больше ничего можно не писать. Если до автора вопроса не дошло - то и бесполезно.
...
Рейтинг: 0 / 0
По какому пути лучше пойти?
    #35289585
Crvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист-Любитель softwarerФлаг - это условность. С тем же успехом флагом может выступать, например, ссылка на фотографию из позиции заказа или еще как. Главное - сначала нужно продумать сценарий, продумать, что должно происходить с точки зрения бизнес-логики. А потом подбирать технически удачную реализацию продуманного - не пытаясь подогнать бизнес-логику под "то, что я легко могу написать".
Это утверждение - квитэссенция всего топика. Больше ничего можно не писать. Если до автора вопроса не дошло - то и бесполезно.

спасибо за помощь, именно за этим я и обратился, еще раз спасибо!
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / По какому пути лучше пойти?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]