> проекты
Pizza-Party - корпоративная Pizza-голосовалка

Введение

       Неформальное общение внутри коллектива является одним из главных составляющих успешного развития компании, достижения поставленных целей. Зачастую, найти повод для организации данной формы общения составляет непростую задачу, так как праздники довольно редкое явление и тем более чаще всего они выбивают сотрудников из нормального режима работы. Однако, с недавних пор появился оптимальный вариант - пожевать чего-нить вкусненького особенно приятно в конце рабочего дня, например, устроить Pizza-party.

      Как показывает опыт, самый демократичный способ оформления заказа - это голосование, с последующим возмещением затрат каждым из участников в соответствии с употребленным количеством кусочков Pizza. Описать данный бизнес-процесс как раз и предназначен данный сервис. После рождения замечательной мысли по поводу поедания пиццы, необходимо уведомить всех сотрудников. Сотрудники решают, кто хочет принять участие и голосует за количество кусочков, заодно указывая свои предпочтения. По окончании голосования, инициатор вечеринки осуществляет заказ, например, по телефону, уже зная необходимое количество пицц и предпочтения участников. Когда заказ принят и известна общая стоимость вечеринки, все участники извещаются о стоимости куска пиццы, кому сдавать деньги и примерное время доставки. По завершении вечеринки каждый участник отдает инициатору деньги, а тот регистрирует это сумму в сервисе. Таким образом формируется заказ в соответствии с потребностями участников, все знают кому и сколько денег отдавать, инициатор спокоен за свои капиталовложения в вечеринку, они обязательно ему вернутся в полном объеме. Важную коммуникативную функцию берет на себе корпоративная служба электронной почты, инициатору не нужно бегать по всем и объяснять что да как.

Демонстрация работы сервиса
Архитектура решения

       Описываемый сервис реализован в виде intranet-решения, достаточно прост в установке и требует небольшого количества подготовительных работ. Решение состоит из следующих компонент:

  • Web-сервис - набор .php-модулей. Требуется наличие IIS и PHP-процессора.
  • Конфигурационный файл, содержащий все необходимые настройки сервиса - config.xml.
  • База данных заказов - database.xml, которая формируется в процессе работы сервиса.
  • Список сотрудников компании - domain.users.xml - формируемый при инсталляции Web-сервиса (см. раздел Инсталляция).

    Важно понимать, что особенность данного решения (в некотором смысле упрощающая администрирование сервиса) - это использование механизма встроенной аутентификации в Web-сервере IIS, который позволяет определить имя учетной записи пользователя зашедшего на страницу сервиса. Как включить данных механизм смотрите в разделе описывающем процесс инсталляции.
    Описание процесса

           Инициатор Pizza-party заходит на сайт и нажатием на кнопку "устроаивает" вечеринку. Все потенциальные участники получают почтовое уведомление с предложением поесть пиццы, а также ссылкой на страницу голосования количества кусочков.

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

           Для контроля возврата денег потраченных на вечеринку, инициатор вводит количество реально съеденных кусков пиццы каждым участником после того, как тот принесет ему деньги. Если в вечеринке участвовали сотрудники не успевшие на голосование, инициатор может добавить их в заказ (собственно только для этого и нужен список пользователей - users.xml) уже после оформления заказа.

           Когда инициатор удовлетворен погашением всех задолжностей за куски, он "закрывает" вечеринку. Все поели - все довольны.

    Конфигурационный файл
    <?xml version="1.0" encoding="UTF-8"?>
    <pizza>
    	<mail>
    		<notify>
    			<address>ateam208</address>
    			<address>ag</address>
    			<address>pumar</address>
    			<address>maxvul</address>
    			<address>Spiridonov</address>
    			<address>Khizhnyakov</address>
    		</notify>
    	</mail>
    </pizza>
    
  • mail/notify/address - адресаты, которые будут получать уведомление о начале Pizza-party.
    Инсталляция

          Внимательно следуйте всем пунктам инсталляции:

  • Создать сайт, установить php-процессор, в свойствах безопасности сайта указать использование механизма встроенной аутентификации.
  • Для отправки почтовых сообщений необходимо установить виртуальный SMTP-сервер.
  • Запустить сценарий install\install.vbs, который сформирует файл базы данных (db\database.xml) и файл xml\domain.users.xml
  • Настроить конфигурационный файл xml\config.xml.

    Требования: IIS (включая виртуальный SMTP сервер), php 4.3.x, MSXML 4.x., Win2k Advanced Server

     Evgeny Savitsky © 2002-2003