예제 #1
0
파일: Dot.php 프로젝트: paShaman/Scala
 /**
  * добавляем точки к группе
  *
  * @param $groupId
  * @param $posIds
  */
 public static function addDotsToGroup($groupId, $posIds)
 {
     if (empty($groupId) || empty($posIds)) {
         return Oracle::CODE_ERROR;
     }
     $db = Oracle::init();
     $user = Auth::instance()->get_user();
     $data = ['p_pos_group_id' => $groupId, 'p_action' => 1, 'p_pos_id' => [$posIds, SQLT_INT], 'p_manager_id' => $user['MANAGER_ID'], 'p_error_code' => 'out'];
     return $db->procedure('ctrl_pos_group_collection', $data);
 }
예제 #2
0
파일: Message.php 프로젝트: paShaman/Scala
 /**
  * отмечаем сообщения прочитанными
  *
  * @param bool $user
  */
 public static function makeRead($params = [], $user = false)
 {
     $db = Oracle::init();
     if (empty($user)) {
         $user = Auth::instance()->get_user();
     }
     $data = ['p_note_guid' => $params['note_guid'], 'p_new_status' => self::MESSAGE_STATUS_READ, 'p_manager_id' => $user['MANAGER_ID'], 'p_error_code' => 'out'];
     $res = $db->procedure('notification_change_status', $data);
     if (!empty($res)) {
         return $res;
     }
     return true;
 }
예제 #3
0
파일: News.php 프로젝트: paShaman/Scala
 /**
  * добавляем новость
  *
  * @param $params
  */
 public static function editNews($params)
 {
     if (empty($params)) {
         return false;
     }
     $db = Oracle::init();
     $data = ['p_type_id' => 0, 'p_announce' => 'анонс', 'p_title' => $params['title'], 'p_content' => $params['text'], 'p_picture' => empty($params['image']) ? '' : $params['image'], 'p_is_published' => 1, 'p_error_code' => 'out'];
     if (!empty($params['id'])) {
         $preData = ['p_news_id' => $params['id']];
         $res = $db->procedure('news_modify', array_merge($preData, $data));
     } else {
         $user = Auth::instance()->get_user();
         $preData = ['p_agent_id' => $user['AGENT_ID']];
         $res = $db->procedure('news_add', array_merge($preData, $data));
     }
     if ($res == Oracle::CODE_ERROR) {
         return false;
     }
     return true;
 }
예제 #4
0
파일: Manager.php 프로젝트: paShaman/Scala
 /**
  * получаем список доступный клиентов по манагеру
  *
  * @param array $params
  * @return array
  */
 public static function getClientsList($params = [])
 {
     $db = Oracle::init();
     $user = Auth::instance()->get_user();
     if (empty($params['manager_id'])) {
         $managerId = $user['MANAGER_ID'];
     } else {
         $managerId = $params['manager_id'];
     }
     if (empty($params['agent_id'])) {
         $agentId = $user['AGENT_ID'];
     } else {
         $agentId = $params['agent_id'];
     }
     $sql = "select *\n            from " . Oracle::$prefix . "V_WEB_CLIENTS_LIST t \n            where t.agent_id = " . $agentId . "\n            and not exists\n            (\n                select 1 \n                from " . Oracle::$prefix . "V_WEB_MANAGER_CLIENTS vwc \n                where vwc.client_id = t.client_id and vwc.agent_id = t.agent_id and vwc.manager_id = " . $managerId . "\n            )";
     if (!empty($params['search'])) {
         $sql .= " and upper(t.NAME) like '%" . mb_strtoupper(Oracle::quote($params['search'])) . "%'";
     }
     $sql .= " order by t.client_id desc ";
     return $db->query($sql);
 }
예제 #5
0
파일: Client.php 프로젝트: paShaman/Scala
 /**
  * созданеи ЛК для пользователя
  *
  * @param $params
  */
 public static function createCabinet($params)
 {
     if (empty($params['client_id']) || empty($params['email_to'])) {
         return false;
     }
     $db = Oracle::init();
     $user = Auth::instance()->get_user();
     $client = Model_Client::getClient($params['client_id']);
     if (empty($client)) {
         return false;
     }
     $data = ['p_client_id' => $client['CLIENT_ID'], 'p_role_id' => $params['role'], 'p_login' => $client['EMAIL'], 'p_password' => null, 'p_email_to' => $params['email_to'], 'p_fl_send' => 0, 'p_manager_id' => $user['MANAGER_ID'], 'p_error_code' => 'out'];
     $res = $db->procedure('client_private_office', $data);
     switch ($res) {
         case Oracle::CODE_ERROR:
         case 3:
             return Oracle::CODE_ERROR;
         case 2:
             return 'Неверный email';
         case 4:
             return 'Линчый кабинет уже создан';
         case 5:
             return 'Не удалось отправить почту на указанный email';
         default:
             return Oracle::CODE_SUCCESS;
     }
 }
예제 #6
0
파일: Card.php 프로젝트: paShaman/Scala
 /**
  * изъятие карты
  *
  * @param $params
  * @return bool|int
  */
 public static function withdrawCard($params)
 {
     if (empty($params['contract_id']) || empty($params['card_id'])) {
         return false;
     }
     $db = Oracle::init();
     $user = Auth::instance()->get_user();
     $data = ['p_card_id' => $params['card_id'], 'p_contract_id' => $params['contract_id'], 'p_manager_id' => $user['MANAGER_ID'], 'p_error_code' => 'out'];
     $res = $db->procedure('card_contract_withdraw', $data);
     if (!empty($res)) {
         return $res;
     }
     return true;
 }
예제 #7
0
파일: Contract.php 프로젝트: paShaman/Scala
 /**
  * редактируем группу точек
  *
  * @param $params
  */
 public static function editDotsGroup($params, $action = self::DOTS_GROUP_ACTION_EDIT)
 {
     if (empty($params['group_id'])) {
         return Oracle::CODE_ERROR;
     }
     $db = Oracle::init();
     $user = Auth::instance()->get_user();
     $data = ['p_pos_group_id' => $params['group_id'], 'p_action' => $action, 'p_group_name' => !empty($params['name']) ? $params['name'] : '', 'p_pos_group_type' => 1, 'p_manager_id' => $user['MANAGER_ID'], 'p_error_code' => 'out'];
     return $db->procedure('ctrl_pos_group_edit', $data);
 }
예제 #8
0
파일: Listing.php 프로젝트: paShaman/Scala
 /**
  * список поставщиков
  *
  * @param $search
  * @param ids
  * @return array|bool|int
  */
 public static function getSuppliers($search, $ids = [])
 {
     if (empty($search) && empty($ids)) {
         return false;
     }
     $db = Oracle::init();
     $user = Auth::instance()->get_user();
     $sql = "select * from " . Oracle::$prefix . "V_WEB_SUPPLIERS_LIST t where t.agent_id = " . $user['AGENT_ID'];
     if (!empty($search)) {
         $sql .= " and upper(t.SUPPLIER_NAME) like '%" . mb_strtoupper(Oracle::quote($search)) . "%'";
     }
     if (!empty($ids)) {
         $sql .= " and t.ID in (" . implode(',', $ids) . ")";
     }
     return $db->query($db->limit($sql, 0, self::$limit));
 }
예제 #9
0
파일: Oracle.php 프로젝트: paShaman/Scala
 /**
  * при регенерации данных пользователя подтягиваем его роль и вызываем завершение авторизации
  */
 public function regenerate_user_profile()
 {
     $user = Auth::instance()->get_user();
     $db = Oracle::init();
     $user = $db->row("select * from " . Oracle::$prefix . "V_WEB_MANAGERS where MANAGER_ID = " . $user['MANAGER_ID']);
     $user['role'] = $user['ROLE_ID'];
     self::complete_login($user);
 }
예제 #10
0
파일: Report.php 프로젝트: paShaman/Scala
 /**
  * получаем настройки для шаблона отчета
  *
  * @param $reportId
  */
 public static function getReportTemplateSettings($reportId)
 {
     if (empty($reportId)) {
         return false;
     }
     $db = Oracle::init();
     $sql = "select * from " . Oracle::$prefix . "V_WEB_REPORTS_FORM t where t.report_id = " . Oracle::quote($reportId);
     $settings = $db->tree($sql, 'PROPERTY_TYPE');
     return $settings;
 }
예제 #11
0
파일: Tariff.php 프로젝트: paShaman/Scala
 /**
  * получение справочников
  */
 public static function getReference()
 {
     $db = Oracle::init();
     $sql = "select * from " . Oracle::$prefix . "V_WEB_TARIF_CONSTRUCT t";
     return $db->tree($sql, 'CONDITION_ID');
 }