Автор работы: Пользователь скрыл имя, 16 Июня 2014 в 20:02, дипломная работа
Целью разработки является создание веб-сервиса для потенциальных рекламодателей, который поможет им расширять целевую аудиторию и платить за реальные и фактические просмотры их рекламы, так как бот–просмотры в данном случае практически исключены. Так же целью является увеличение количество точек WI-FI в определённом городе для удобства граждан и возможностью выйти в интернет бесплатно в любом публичном месте.
Актуальность проекта: Беспроводные локальные сети являются достаточно часто востребованной темой на сегодняшний день, ведь это не только самый лучший способ связать в единую сеть несколько разнотипных устройств, но и возможность осуществлять высокоскоростную передачу и приём данных, оставляя при этом устройствам свою мобильность.
Местная вентиляция обеспечивает вентиляцию непосредственно у рабочего места, а не в объеме всего цеха.
5.2.8 Защита от воздействия электромагнитного поля
Таблица 5.3 Предельно допустимые нормы ЭМИ
По электрической составляющей для Частот |
В/м |
60 кГц |
50 |
3 |
20 |
30 |
10 |
50 |
5 |
По магнитной составляющей частот |
А/м |
60 кГц |
5 |
30 |
0,3 |
ЗАКЛЮЧЕНИЕ
Задача состоящая в разработке основы веб-сервиса выполнена. Были написаны модули для биллинга: оплата, тикеты, загрузка рекламы. Так же был настроен модем с WI-FI роутером. Проведен подсчет экономической составляющей, на основе чего можно полагать, что проект может заинтересовать инвесторов. Далее планируется разработка новых модулей и обновление всей системы.
Цель дипломного проекта достигнута. Платформа разработана и находится на стадии эксплуатации.
В наше время вычислительная техника быстро поднимается в верх в сфере массово обслуживания применяется во всех областях деятельности человека. Применение вычислительной техники облегчает труд человека, автоматизирует его, и следовательно, позволяет экономить физические и материальные средства. За время обучения в университет «ТУРАН» приобрели навыки от своих преподавателей по разработке проектов различными средствами, такими как: PHP, HTML, CSS, JAVA, XML, Ajax и т.д.
Заключительным этапом за период обучения в университете является преддипломная практика, на которой заканчивается сбор необходимой информации для написан дипломного проекта.
Проект написан на языке гипертекстовой разметки HTML, с использованием скрипов языка программирования Java и языка PHP. Разработанная мною система была одобрен руководством фирмы и заверена актом выполненных работ. (см. вложения)
СПИСОК ЛИТЕРАТУРЫ
Приложение А
(обязательное)
Техническое задание на разработку веб-сервиса
5. Предполагаемая возрастная аудитория сайта: Предполагаемое возрастное ядро аудитории от 20-40 лет.
6. Количество страниц сайта: 5 страниц.
7. Блок-схема сайта: Определяется веб - дизайнером самостоятельно.
Головная (начальная) страница сайта должна содержать гиперссылки,
обеспечивающие переход с нее на все страницы сайта.
8. Объем сайта, Мб: 23 Мб
9. Оформление рисунков: Все рисунки объемом более 1 Кб должны быть выполнены с замещающим текстом. Рисунки размером более 15 Кб должны быть выполнены с предпросмотром. Формат всех рисунков - gif или jpg (jpeg).
10. Пропускная способность линии связи: Среднее время загрузки страниц не должно превышать 35 секунд при скорости соединения 28 Кб/сек. Допускается увеличение времени загрузки отдельных страниц до 40 секунд, но не более чем на 25% числа страниц сайта. Головная (начальная) страница должна иметь время загрузки не более 55 секунд.
Примечание:
Во всех случаях не учитывается время загрузки подгружаемых элементов (счетчики, баннеры, информеры) и т.д.
11. Основной диапазон разрешений мониторов, на которых будет просматриваться сайт: От 600x800 до 1240x1024 пикселей (от 15" ЭЛТ или 17" LCD). Основное разрешение, на которое оптимизируется сайт: 1024x768 пикселей.
12. Минимальное разрешение монитора, в котором будет просматриваться сайт: 600x800 пикселей.
13. Основной браузер, которым будет просматриваться сайт, и его минимальная версия: Google Chrome 3128 и выше
14. Общий фон сайта: Серый
15. Срок разработки сайта: 4 месяца
Приложение Б
Листинг программы
<?php
class ClientareaController extends Util_Addons_ControllerPublic {
public function _init() {
//Util_Addons_Messages::init()
}
public function indexAction() {
$this->redirect('/clientarea.
}
/**
* Отобразить расшифровку по счетам.
*/
public function invoiceDetailedListAction() {
// фильтр по диапазону дат
$from = $this->getRequest()->getParam(
$till = $this->getRequest()->getParam(
if($from) {
$tmp = strtotime($from);
if($tmp>0) {
$from = date('Y-m-d', $tmp);
} else {
$from = false;
}
}
$from = $from?$from:date('Y-m-d', strtotime('-3 month'));
if($till) {
$tmp = strtotime($till);
if($tmp>0) {
$till = date('Y-m-d', $tmp);
} else {
Продолжение приложения Б
$till = false;
}
}
$till = $till?$till:date('Y-m-d')
if($from>$till) {
$tmp = $till;
$till = $from;
$from = $tmp;
}
$this->view->from = $from;
$this->view->till = $till;
// проверка диапазона даты оплат
$paid_from = $this->getRequest()->getParam(
$paid_till = $this->getRequest()->getParam(
if($paid_from) {
$tmp = strtotime($paid_from);
if($tmp>0) {
$paid_from = date('Y-m-d', $tmp);
} else {
$paid_from = false;
}
}
if($paid_till) {
$tmp = strtotime($paid_till);
if($tmp>0) {
$paid_till = date('Y-m-d', $tmp);
} else {
$paid_till = false;
}
}
if($paid_from>$paid_till) {
Продолжение приложения Б
$tmp = $paid_till;
$paid_till = $paid_from;
$paid_from = $tmp;
}
$this->view->paid_from = $paid_from;
$this->view->paid_till = $paid_till;
// фильтр по описанию
$descr = trim($this->getRequest()->
if(!empty($descr)) {
$this->view->descr = $descr;
}
$this->view->list = Util_DB::getInstance()->
SELECT
ii.id, ii.description, ii.amount,
i.id as invoiceid, i.datepaid, i.status, i.date
FROM
tblinvoiceitems AS ii
LEFT JOIN tblinvoices AS i ON (ii.invoiceid=i.id)
WHERE
i.id>0
AND ii.userid = ".($this->getUserId()*1)."
".($from?"AND i.date>='{$from}'":'')."
".($till?"AND i.date<='{$till}'":'')."
".($paid_from?"AND i.datepaid>='{$paid_from} 00:00:00'":'')."
".($paid_till?"AND i.datepaid<='{$paid_till} 23:59:59'":'')."
".($descr?"AND ii.description LIKE ".Util_DB::getInstance()->esc(
ORDER BY
ii.id DESC
LIMIT 5000
Продолжение приложения Б
")->toArray();
}
/**
* Отобразить счета.
*/
public function invoiceListAction() {
// фильтр по диапазону дат
$from = $this->getRequest()->getParam(
$till = $this->getRequest()->getParam(
if($from) {
$tmp = strtotime($from);
if($tmp>0) {
$from = date('Y-m-d', $tmp);
} else {
$from = false;
}
}
$from = $from?$from:date('Y-m-d', strtotime('-3 month'));
if($till) {
$tmp = strtotime($till);
if($tmp>0) {
$till = date('Y-m-d', $tmp);
} else {
$till = false;
}
}
$till = $till?$till:date('Y-m-d');
if($from>$till) {
$tmp = $till;
Продолжение приложения Б
$till = $from;
$from = $tmp;
}
$this->view->from = $from;
$this->view->till = $till;
// проверка диапазона даты оплат
$paid_from = $this->getRequest()->getParam(
$paid_till = $this->getRequest()->getParam(
if($paid_from) {
$tmp = strtotime($paid_from);
if($tmp>0) {
$paid_from = date('Y-m-d', $tmp);
} else {
$paid_from = false;
}
}
if($paid_till) {
$tmp = strtotime($paid_till);
if($tmp>0) {
$paid_till = date('Y-m-d', $tmp);
} else {
$paid_till = false;
}
}
if($paid_from>$paid_till) {
$tmp = $paid_till;
$paid_till = $paid_from;
$paid_from = $tmp;
}
$this->view->paid_from = $paid_from;
Продолжение приложения Б
$this->view->paid_till = $paid_till;
$this->view->list = Util_DB::getInstance()->
SELECT
*
FROM
tblinvoices
WHERE
userid = ".($this->getUserId()*1)."
".($from?"AND date>='{$from}'":'')."
".($till?"AND date<='{$till}'":'')."
".($paid_from?"AND datepaid>='{$paid_from} 00:00:00'":'')."
".($paid_till?"AND datepaid<='{$paid_till} 23:59:59'":'')."
ORDER BY
status DESC, id DESC
LIMIT 5000
")->toArray();
}
public function createCreditInvoiceAction() {
$userId = $this->getUserId();
$CreditClient = Model_PS_Credit_Client::
if($CreditClient) {
$this->view->CreditClient = $CreditClient;
if($CreditClient->
$this->msgErr('По кредитной
$this->redirect('/clientarea.
}
} else {
$this->msgErr('Вам недоступна
Продолжение приложения Б
$this->redirect('/clientarea.
}
}
public function createCreditInvoiceProceedActi
$userId = $this->getUserId();
$amount = $this->getRequest()->getParam(
$CreditClient = Model_PS_Credit_Client::
if($CreditClient) {
if($CreditClient->
if(empty($amount)) {
$amount = $CreditClient->
}
$invoiceid = $CreditClient->
if($invoiceid) {
$this->redirect('/viewinvoice.
} else {
$this->msgErr('Возникли какие-
$this->redirect('/clientarea.
}
}
} else {
$this->msgErr('Вам недоступна
$this->redirect('/clientarea.
}
}
public function cancelInvoiceAction() {
$id = $this->getRequest()->getParam(
$Invoice = Model_PS_Invoice::
Продолжение приложения Б
$this->msgErr('Счёт с №'.$id.' не найден.');
$this->redirect('/clientarea.
}
if($Invoice['userid']!=$this->
$this->msgErr('Счёт с №'.$id.' не принадлежит вам. В доступе отказано.');
$this->redirect('/clientarea.
}
if($Invoice->getStatus()!=='
$this->msgErr('Счёт с №'.$id.' отменить нельзя, он имеет статус '.$Invoice->getStatus().'. Можно отменить только неоплаченный счёт.');
$this->redirect('/clientarea.
}
try {
$result = $Invoice->apiSetStatus('
// делаем возврат на баланс
if($Invoice->getCredit()>0) {
$rez = Util_Whmcs::localAPI('
array(
'clientid'=>$Invoice->
'amount'=>$Invoice->getCredit(
'description'=>'Возврат средств с отмененного счёта #'.$Invoice->getId(),
)
);
if($rez['result']=='success') {
$Invoice->setTotal($Invoice->
$Invoice->setCredit(0);
$Invoice->save();
}
Продолжение приложения Б
}
} catch(Exception $e) {
$this->msgErr($e->getMessage()
$this->redirect('/clientarea.
}
if($result) {
$Log = new Model_PS_ActivityLog();
$Log->update(array(
'description'=>'Cancelled Invoice - Invoice ID: '.$id,
'user'=>'Client',
'userid'=>$this->getUserId(),
));
$Log->save();
$this->msgOk('Счёт с №'.$id.' отменён.');
$this->redirect('/clientarea.
}
}
/**
* Изменить период оплаты для продукта
*/
public function changeProductBillingCycleActio
$id = $this->getRequest()->getParam(
$cycle = $this->getRequest()->getParam(
$clientid = $this->getRequest()->getParam(
if($id<=0) {
$this->msgErr('Некорректно указан id продукта.');
$this->redirect('/clientarea.
}
$availableCycles = Array('monthly', 'quarterly', 'semi-annually', 'annually');
Продолжение приложения Б
if(!in_array($cycle, $availableCycles)) {
$this->msgErr('Вы указали
$this->redirect('/clientarea.
}
$rez = Util_Whmcs::localAPI('
'clientid'=>$clientid,
'serviceid'=>$id,
'type'=>'package',
//'newproductid'=>34,
'newproductbillingcycle'=>$
'paymentmethod'=>'psbank',
'calconly'=>false,
));
/*
$rez = Util_Whmcs::localAPI('
'serviceid'=>$id,
'type'=>'product',
'billingcycle'=>$cycle,
'autorecalc'=>1,
));
*/
$this->msgOk(print_r($rez, true));
$this->redirect('/clientarea.
}
/**
* Вывести данные пользователя из сессии
*/
public function sessionAction() {
Util_Whmcs::print_r($_SESSION)
Продолжение приложения Б
$userRow = Model_PS_Client::getInstance($
Util_Whmcs::print_r(md5($
}
public function multiClientListAction() {
$Client = Model_PS_Client::getInstance($
if ($Client && $Client->getParentUserId()*1 > 0) {
$Filter = Util_DB_Filter::create('grid_
->whereCondition("
->setPage($this->getRequest()-
->setPerPage($this->
->set('order_by', $this->getRequest()->getParam(
->whereParam(array('name'=>'
Информация о работе Разработка биллинга для Hot-Spot точек Wi-fi