DraveMor Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Доброго времени суток. Помогите пожалуйста с одним вопросом:Как прикрепить менеджера к товару, чтобы было видно кто из менеджеров какой товар добавил.Пример: Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Надо дорабатывать базу, процесс добавления товара, отображение результатов. А еще стоит подумать о том, что другой менеджер может изменить товар... Цитата Ссылка на сообщение Поделиться на другие сайты
DraveMor Опубликовано 3 декабря, 2014 Автор Жалоба Поделиться Опубликовано 3 декабря, 2014 Надо дорабатывать базу, процесс добавления товара, отображение результатов.А еще стоит подумать о том, что другой менеджер может изменить товар...Много дописывать?) Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Много дописывать?)Если по минимуму, то достаточно внести изминения в 3 файла и добавить новое поле в таблицу s_products. Цитата Ссылка на сообщение Поделиться на другие сайты
koteyka Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Да. Но нужно учесть, что если по минимуму, то будет показан только последний менеджер, редактировавший товар. Если до него другие менеджеры проводили какие-то действия с тем же товаром, то они пере запишутся. Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Да. Но нужно учесть, что если по минимуму, то будет показан только последний менеджер, редактировавший товар. Если до него другие менеджеры проводили какие-то действия с тем же товаром, то они пере запишутся.Ну а что мешает добавить какой то гет параметр скажем act=add, act=edit и уже исходя из этого выполнять какое то условие? Цитата Ссылка на сообщение Поделиться на другие сайты
koteyka Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Мне кажется, что тогда проще отдельной таблицей, что-то типа, product_id - manager_id - datetime_edit. Тогда можно будет просмотреть подробную информацию, кто и когда что-то правил.А если еще и действия записывать.... Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Мне кажется, что тогда проще отдельной таблицей, что-то типа, product_id - manager_id - datetime_edit. Тогда можно будет просмотреть подробную информацию, кто и когда что-то правил. А если еще и действия записывать.... Тогда переделать чуть ли не каждый модуль в админке придется. + лишние запросы к БД Цитата Ссылка на сообщение Поделиться на другие сайты
koteyka Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Тогда переделать чуть ли не каждый модуль в админке придется.+ лишние запросы к БДНу почему же? При добавлении или редактировании товара, т.е. при нажатии Сохранить, три (если не ошибаюсь) запроса на то, чтобы добавить id-шники и дату-время в таблицу. Потом три, чтобы вывести результат. Модуль только товара переделать. А зачем еще? Цитата Ссылка на сообщение Поделиться на другие сайты
koteyka Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Хотя, человеку нужно всего отследить кто создал, а не кто редактировал, тогда предложенный Вами вариант вполне подойдет. Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 3 декабря, 2014 Жалоба Поделиться Опубликовано 3 декабря, 2014 Ну почему же? При добавлении или редактировании товара, т.е. при нажатии Сохранить, три (если не ошибаюсь) запроса на то, чтобы добавить id-шники и дату-время в таблицу. Потом три, чтобы вывести результат. Модуль только товара переделать. А зачем еще?Затем что:Тогда можно будет просмотреть подробную информацию, кто и когда что-то правил. А если еще и действия записывать.... Или речь идет только о товарах? Цитата Ссылка на сообщение Поделиться на другие сайты
Решение artbe Опубликовано 4 декабря, 2014 Решение Жалоба Поделиться Опубликовано 4 декабря, 2014 Считаю, что для опытного програмера такая задача не составит труда, можно было и выложить решение. Грамотное решение возможно и стоит $, но если делать изменение в 3 файла - то даже не знаю .. Вообще выкладываю свое решение в 3 файла, не идеальное, но работает ALTER TABLE `s_products` ADD `last_edit` varchar(255) NOT NULL AFTER `external_id` api/Products.php добавить в выборку поля: $query = "SELECT и $query = "SELECT DISTINCT p.last_edit, simpla/ProductAdmin.php добавить $product->last_edit = $this->request->post('last_edit'); simpla/design/html/product.tpl <li><label class=property>Редактировал</label> <input type="hidden" name="last_edit" class="simpla_inp" type="text" value="{$manager->login}" /> {if $product->last_edit}{$product->last_edit}{else}Редактирований нет{/if} </li> + можно вывести в products.tpl Все Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 4 декабря, 2014 Жалоба Поделиться Опубликовано 4 декабря, 2014 Считаю, что для опытного програмера такая задача не составит труда, можно было и выложить решение. Если опытный программер находится на отдыхе в круизе уже неделю, немного устал отдыхать и соскучился по любимой работе, и его в этот момент кто-то попросит решить такую задачу, то ему, возможно, будет интересно сменить вид деятельности и выложить решение. ...если делать изменение в 3 файла - то даже не знаю .. Вообще выкладываю свое решение в 3 файла, не идеальное, но работает А если делать изменение в 3 файла - то я знаю ТОЧНО: Ваше решение как-то работает, но для серьезного магазина оно никак не годится: 1. Ваш метод работает совсем не так, как поставлена задача в первом посте. Поставлена задача - "кто товар добавил", а Вы решаете другую "кто изменил последним".2. Саму свою измененную задачу Вы решаете далеко не полностью. Вы фиксируете изменившего только в том случае, когда он сохраняет изменения на странице товара в админке. А есть еще как минимум два момента, которые Ваше решение не будет учитывать. И при Вашей доработке ушлый менеджер элементарно сумеет, например, изменить цены так, что Ваша доработка это не заметит.3. Чтобы полностью обработать все ситуации, надо изменять не 3 файла, как Вы самоуверенно заявляете, а существенно больше... Цитата Ссылка на сообщение Поделиться на другие сайты
artbe Опубликовано 4 декабря, 2014 Жалоба Поделиться Опубликовано 4 декабря, 2014 Если опытный программер находится на отдыхе в круизе уже неделю, немного устал отдыхать и соскучился по любимой работе, и его в этот момент кто-то попросит решить такую задачу, то ему, возможно, будет интересно сменить вид деятельности и выложить решение. А если делать изменение в 3 файла - то я знаю ТОЧНО: Ваше решение как-то работает, но для серьезного магазина оно никак не годится: 1. Ваш метод работает совсем не так, как поставлена задача в первом посте. Поставлена задача - "кто товар добавил", а Вы решаете другую "кто изменил последним".2. Саму свою измененную задачу Вы решаете далеко не полностью. Вы фиксируете изменившего только в том случае, когда он сохраняет изменения на странице товара в админке. А есть еще как минимум два момента, которые Ваше решение не будет учитывать. И при Вашей доработке ушлый менеджер элементарно сумеет, например, изменить цены так, что Ваша доработка это не заметит.3. Чтобы полностью обработать все ситуации, надо изменять не 3 файла, как Вы самоуверенно заявляете, а существенно больше... Вот с чего вы взяли, что я - "самоуверенно заявляю" это лишь была цитата из слов Noxter'a, который предложил сделать задачу по "минимуму" . (тыц). Не утрируйте и не домысливайте. Еще раз повторюсь, за нормальный допил данной доработки - брать $ считаю можно, но за 3 строчки - ну тут конечно каждый сам решает, но это epic fail. В любом случае видно, кто последний изменил (сохранил) инфу о товаре. Что касается: 2. Саму свою измененную задачу Вы решаете далеко не полностью. Вы фиксируете изменившего только в том случае, когда он сохраняет изменения на странице товара в админке. А есть еще как минимум два момента, которые Ваше решение не будет учитывать. И при Вашей доработке ушлый менеджер элементарно сумеет, например, изменить цены так, что Ваша доработка это не заметит.Если вы имеете ввиду, что в каталоге товаров можно изменить цены (не заходя в карточку товара), то да. Но и тут можно поставить условие. Также если человек сделает импорт товаров с новыми ценами - то тоже не будет учитываться. Но в таком случае (учитывая недочеты), и если вывести отдельный фильтр или страницу - "кто что и когда менял", то это уже будет модуль - который как раз и стоит $. Цитата Ссылка на сообщение Поделиться на другие сайты
DraveMor Опубликовано 4 декабря, 2014 Автор Жалоба Поделиться Опубликовано 4 декабря, 2014 Считаю, что для опытного програмера такая задача не составит труда, можно было и выложить решение. Грамотное решение возможно и стоит $, но если делать изменение в 3 файла - то даже не знаю .. Вообще выкладываю свое решение в 3 файла, не идеальное, но работает ALTER TABLE `s_products` ADD `last_edit` varchar(255) NOT NULL AFTER `external_id` api/Products.php добавить в выборку поля: $query = "SELECT и $query = "SELECT DISTINCT p.last_edit, simpla/ProductAdmin.php добавить $product->last_edit = $this->request->post('last_edit'); simpla/design/html/product.tpl <li><label class=property>Редактировал</label> <input type="hidden" name="last_edit" class="simpla_inp" type="text" value="{$manager->login}" /> {if $product->last_edit}{$product->last_edit}{else}Редактирований нет{/if} </li> + можно вывести в products.tpl Все Спасибо огромное! Отличное решение!) Если опытный программер находится на отдыхе в круизе уже неделю, немного устал отдыхать и соскучился по любимой работе, и его в этот момент кто-то попросит решить такую задачу, то ему, возможно, будет интересно сменить вид деятельности и выложить решение. А если делать изменение в 3 файла - то я знаю ТОЧНО: Ваше решение как-то работает, но для серьезного магазина оно никак не годится: 1. Ваш метод работает совсем не так, как поставлена задача в первом посте. Поставлена задача - "кто товар добавил", а Вы решаете другую "кто изменил последним".2. Саму свою измененную задачу Вы решаете далеко не полностью. Вы фиксируете изменившего только в том случае, когда он сохраняет изменения на странице товара в админке. А есть еще как минимум два момента, которые Ваше решение не будет учитывать. И при Вашей доработке ушлый менеджер элементарно сумеет, например, изменить цены так, что Ваша доработка это не заметит.3. Чтобы полностью обработать все ситуации, надо изменять не 3 файла, как Вы самоуверенно заявляете, а существенно больше... Этот скрипт не для серьезного магазина, согласен, но мне подходит.Проект очень простой - учет сертификатов сети магазинов. Что-то вроде онлайн склада сертификатов. Цитата Ссылка на сообщение Поделиться на другие сайты
yr4ik Опубликовано 5 декабря, 2014 Жалоба Поделиться Опубликовано 5 декабря, 2014 Тут вся задача (даже, как выразились, сложная) - решается в пол часа. Вы тут посты пишите дольше... artbe, сделайте лучше добавление параметра кто правил/добавлял в api/Products.php. В функциях: public function update_product($id, $product) { ..... public function add_product($product) { Добавить что то типа такого: if($manager = $this->managers->get_manager()) $product->last_edit = $manager->login; Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 6 декабря, 2014 Жалоба Поделиться Опубликовано 6 декабря, 2014 Тут вся задача (даже, как выразились, сложная) - решается в пол часа. Вы тут посты пишите дольше...Спасибо! Ваше решение на порядок лучше того, что предлагали Noxter и artbe. Но оно, к сожалению, далеко не полное и в некоторых случаях не зафиксирует менеджера, сделавшего важные изменения... Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 6 декабря, 2014 Жалоба Поделиться Опубликовано 6 декабря, 2014 Спасибо!Ваше решение на порядок лучше того, что предлагали Noxter и artbe.Но оно, к сожалению, далеко не полное и в некоторых случаях не зафиксирует менеджера, сделавшего важные изменения...Неужели? Соизвольте процитировать решение от Noxter-а коль Вы его где то видели. Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 6 декабря, 2014 Жалоба Поделиться Опубликовано 6 декабря, 2014 Придираемся к пустякам? Имелось в виду: имхо, РЕШЕНИЕ, которое дал yr4ik, лучше, чем ПРЕДЛОЖЕНИЯ, которые дал Noxter. В частности, лучше, чем следующее:Ну а что мешает добавить какой то гет параметр скажем act=add, act=edit и уже исходя из этого выполнять какое то условие? Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 6 декабря, 2014 Жалоба Поделиться Опубликовано 6 декабря, 2014 Придираемся к пустякам? Имелось в виду: имхо, РЕШЕНИЕ, которое дал yr4ik, лучше, чем ПРЕДЛОЖЕНИЯ, которые дал Noxter. В частности, лучше, чем следующее:Бесит Корс да? Ты же любишь все уточнять вынося мозг людям, так что будь добр по такой же точности и ответы писать. Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 6 декабря, 2014 Жалоба Поделиться Опубликовано 6 декабря, 2014 Не знаю, может, кого-то и бесит.Надеюсь, мой последний ответ понятен и дальнейших разъяснений не требуется.Если что-то еще неясно, спрашивайте - готов уточнить Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.