Ejemplo n.º 1
0
                    </div>
                    <div class="col-xs-5">
                        <h2><?php 
echo CHtml::encode($model->ticket_title);
?>
</h2>
                        <div class="project_meta_details">
                            <?php 
$orderDetails = Orders::model()->findByAttributes(array("order_id" => $model->order_id));
$Total_amount = $orderDetails['currency'] . " " . $orderDetails['order_total'];
$attrList = json_decode($orderDetails['order_Data']);
$coupon_id = $orderDetails['coupon_id'];
$couponDetails = Coupons::model()->findByAttributes(array("id" => $coupon_id));
$clientInfo = $attrList->userdata;
$days = round($attrList->numofworkingday / 8);
$fwdby = TicketAssign::model()->findByAttributes(array('ticket_id' => $ticket_id, 'fwd_to' => Yii::app()->session['user_data']['user_id'], 'status' => 1));
$fwd_name = '';
if (!empty($fwdby)) {
    $fwd_name = ucfirst(Users::model()->getUserName($fwdby->fwd_by));
}
?>
                           
                            <p>Client: <strong><a href=""></a> <?php 
echo ucfirst(Users::model()->getUserName($orderDetails['client_id']));
?>
</strong></p>                            
                            <p>Priority: <strong><?php 
echo ucfirst($attrList->order->priority);
?>
</strong></p>
                            <p>Working Day(s): <strong><?php 
Ejemplo n.º 2
0
 /**
  * Retrieves a list of models based on the current search/filter conditions.
  *
  * Typical usecase:
  * - Initialize the model fields with values from filter form.
  * - Execute this method to get CActiveDataProvider instance which will filter
  * models according to data in model fields.
  * - Pass data provider to CGridView, CListView or any similar widget.
  *
  * @return CActiveDataProvider the data provider that can return the models
  * based on the search/filter conditions.
  */
 public function search()
 {
     // @todo Please modify the following code to remove attributes that should not be searched.
     $criteria = new CDbCriteria();
     $client_name = isset($_GET['Ticket']['clientname']) ? $_GET['Ticket']['clientname'] : '';
     $criteria->compare('ticket_id', trim($this->ticket_id), true);
     $criteria->compare('candidate_key', trim($this->candidate_key), true);
     $criteria->compare('ticket_title', trim($this->ticket_title), true);
     if (!empty($client_name)) {
         $clients = Users::model()->getAllClients($client_name);
         //print_r($clients);
         $clientsList = implode(",", $clients);
         $ordlists = Orders::model()->findAllByAttributes(array(), 'client_id in (' . $clientsList . ')');
         $ordlist = array();
         foreach ($ordlists as $single) {
             $ordlist[] = $single->order_id;
         }
         $criteria->AddInCondition('order_id', $ordlist);
     } else {
         $criteria->compare('order_id', trim($this->order_id));
     }
     $criteria->compare('description', trim($this->description), true);
     $criteria->compare('department_id', $this->department_id);
     $criteria->compare('ticket_resolve_date', $this->ticket_resolve_date, true);
     $criteria->compare('ticket_status', $this->ticket_status);
     $criteria->compare('closed_at', $this->closed_at, true);
     $criteria->compare('closed_by', $this->closed_by);
     $criteria->compare('read_by', $this->read_by, true);
     $criteria->compare('read', $this->read, true);
     $criteria->compare('close_reason', $this->close_reason, true);
     $criteria->compare('created_date', $this->created_date, true);
     $criteria->compare('updated_date', $this->updated_date, true);
     if (!in_array(Yii::app()->session['user_data']['user_role_type'], array(0, 1, 2))) {
         $ticketList = TicketAssign::model()->getTicketbyUser(Yii::app()->session['user_data']['user_id']);
         $ticket_ids = array();
         foreach ($ticketList as $ticket) {
             $ticket_ids[] = $ticket['ticket_id'];
         }
         if (!empty($ticket_ids)) {
             $criteria->AddInCondition('ticket_id', $ticket_ids);
         } else {
             if (!isset($_GET['clientsTicket'])) {
                 $criteria->addCondition('ticket_id==0');
             }
         }
         //             if (!isset($_GET['clientsTicket'])) {
         //               $criteria->AddCondition('ticket_status !=1');
         //             }
     } else {
         if (isset($_GET['user_id'])) {
             $ticketList = TicketAssign::model()->getTicketbyUser(Yii::app()->session['user_data']['user_id']);
             $ticket_ids = array();
             foreach ($ticketList as $ticket) {
                 $ticket_ids[] = $ticket['ticket_id'];
             }
             if (!empty($ticket_ids)) {
                 $criteria->AddInCondition('ticket_id', $ticket_ids);
             } else {
                 $criteria->Addcondition('ticket_id==0');
             }
         }
     }
     if (isset($_GET['ts'])) {
         if (isset($_GET['Ticket']['ticket_status'])) {
             $_GET['ts'] = $_GET['Ticket']['ticket_status'];
         }
         $ts = $_GET['ts'];
         if ($ts) {
             $criteria->AddCondition('ticket_status ==' . $ts);
         }
     }
     if (isset($_GET['client'])) {
         $client_id = base64_decode($_GET['client']);
         $order_ids = Ticket::Orderlistbyclients($client_id);
         if (!empty($order_ids)) {
             $criteria->AddInCondition('order_id', $order_ids);
         } else {
             $criteria->Addcondition('order_id==0');
         }
     }
     if (isset($_GET['clientsTicket'])) {
         $client_id = base64_decode($_GET['clientsTicket']);
         $order_ids = Ticket::Orderlistbyclients($client_id);
         if (!empty($order_ids)) {
             $criteria->AddInCondition('order_id', $order_ids);
         } else {
             $criteria->Addcondition('order_id==0');
         }
     }
     return new CActiveDataProvider($this, array('criteria' => $criteria, 'sort' => array('defaultOrder' => 'ticket_id DESC'), 'pagination' => array('pageSize' => 20)));
 }
Ejemplo n.º 3
0
 public function getClientAssigneeList($id)
 {
     $assigneeList = TicketAssign::model()->findAllByAttributes(array("ticket_id" => $id, "status" => 1, 'user_role_type' => 5), array('condition' => 'fwd_to!=:id', 'params' => array('id' => Yii::app()->session['user_data']['user_id'])));
     if (!empty($assigneeList)) {
         $str = '<table class = "table table-bordered table-striped" >
             <tr><th style = "width:20px;" > #</th><th>Name</th><th>Email ID</th><th>Role</th><th style="max-width:120px;">Department</th><th>Assigned by</th><th style="width:60px;">Action</th></tr>';
         $count = 1;
         foreach ($assigneeList as $list) {
             $userinfo = Users::model()->findByAttributes(array('user_id' => $list['fwd_to']));
             $str .= '<tr >
                     <td> ' . $count++ . ' </td>
                     <td>' . $userinfo['user_name'] . '</td>   
                     <td>' . $userinfo['user_email'] . '</td>   
                     <td>' . UserRoles::model()->getRoleName($userinfo["user_role_type"]) . '</td>
                     <td>' . Department::model()->getDepartmentName($userinfo['user_department_id']) . '</td>
                    <td>' . Users::model()->getUserName($list['fwd_by']) . '</td>';
             if (Yii::app()->session['user_data']['user_id'] == $list['fwd_by']) {
                 $str .= '<td><a class="removeUser" data="' . $userinfo['user_id'] . '"  title="Remove assign User" href="javascript:"><i class="fa fa-times" ></i></a></td></tr>';
             } else {
                 $str .= '<td></td></tr>';
             }
         }
         $str .= '</table>';
     } else {
         $str .= '<div class = "norecord col-sm-12">No users assigned.</div>';
     }
     return $str;
 }
Ejemplo n.º 4
0
<?php

$user_role_type = Yii::app()->session['user_data']['user_role_type'];
$modulist = ModulePermission::getAllmoduleList($user_role_type);
$ticketList = TicketAssign::model()->getTicketbyUser(Yii::app()->session['user_data']['user_id']);
//print_r($ticketList);
if (Yii::app()->session['user_data']['user_role_type'] == 5) {
    $orderlist = Ticket::Orderlistbyclients(Yii::app()->session['user_data']['user_id']);
    $ticketList = new CDbCriteria();
    $ticketList->select = 'ticket_id';
    $ticketList->addInCondition("order_id", $orderlist);
    $ticketList = Ticket::model()->findAll($ticketList);
}
$ticket_ids = array();
foreach ($ticketList as $ticket) {
    $ticket_ids[] = $ticket['ticket_id'];
}
$tickList = implode(',', $ticket_ids);
?>
 
<div class="page-content">

    <!-- begin PAGE TITLE AREA -->
    <!-- Use this section for each page's title and breadcrumb layout. In this example a date range picker is included within the breadcrumb. -->
    <div class="row">
        <div class="col-lg-12">
            <div class="page-title">
                <h1>Dashboard
                    <small>Content Overview</small>
                </h1>
                <!-- <ol class="breadcrumb">
Ejemplo n.º 5
0
 public function actionGetOrderlList()
 {
     $data = $_REQUEST;
     $result = array();
     $newResult = array();
     if (!empty($data)) {
         $limit = 20;
         $page = $data['page'];
         $offset = ($page - 1) * $limit;
         $user_id = $data['Client'];
         $category = $data['category'];
         $status = $data['order_status'];
         $start_date = $data['start_date'];
         $end_date = $data['end_date'];
         $condition = "";
         if (!empty($start_date)) {
             $condition = "created_date >= '{$start_date}' AND created_date <= '{$end_date} 23:59:59'";
         }
         if (!empty($category)) {
             if (!empty($condition)) {
                 $condition .= " AND ";
             }
             $condition .= " ticket_title = '" . $category . "'";
         }
         if (!in_array(Yii::app()->session['user_data']['user_role_type'], array(0, 1, 2))) {
             $ticketList = TicketAssign::model()->getTicketbyUser(Yii::app()->session['user_data']['user_id']);
             $ticket_ids = array();
             foreach ($ticketList as $ticket) {
                 $ticket_ids[] = $ticket['ticket_id'];
             }
             if (!empty($ticket_ids)) {
                 if (!empty($condition)) {
                     $condition .= " AND ";
                 }
                 $ticket_ids = implode($ticket_ids, ",");
                 $condition .= 'ticket_id in (' . $ticket_ids . ')';
             } else {
                 if (!empty($condition)) {
                     $condition .= " AND ";
                 }
                 $condition .= 'ticket_id i=0';
             }
             if (!empty($condition)) {
                 $condition .= " AND ";
             }
             $condition .= "ticket_status != 1 ";
         }
         // echo $condition;die;
         $orderTotal = count(Ticket::model()->findAllByAttributes(array(), array("condition" => $condition)));
         $orderList = Ticket::model()->findAllByAttributes(array(), array("condition" => $condition, 'limit' => $limit, "offset" => $offset));
         $count = 0;
         foreach ($orderList as $val) {
             if (!empty($user_id)) {
                 $orderDetails = Orders::model()->findByAttributes(array("order_id" => $val['order_id'], "client_id" => $user_id));
             } else {
                 $orderDetails = Orders::model()->findByAttributes(array("order_id" => $val['order_id']));
             }
             $paymentD = json_decode($orderDetails['order_payment']);
             if (!empty($orderDetails)) {
                 if (!empty($status)) {
                     if ($paymentD->payment_status == $status) {
                         $result[] = array("order_id" => $orderDetails['order_id'], "url" => Yii::app()->createUrl("ticket/view", array("id" => base64_encode($val['ticket_id']))), "client" => Users::model()->getUserName($orderDetails['client_id']), "amount" => $orderDetails['order_total'], "category" => $val['ticket_title'], "status" => $paymentD->payment_status, 'date' => date('d M Y @ g:i A', strtotime($val['created_date'])));
                     } else {
                         $count++;
                     }
                 } else {
                     $result[] = array("order_id" => $orderDetails['order_id'], "url" => Yii::app()->createUrl("ticket/view", array("id" => base64_encode($val['ticket_id']))), "client" => Users::model()->getUserName($orderDetails['client_id']), "amount" => $orderDetails['order_total'], "category" => $val['ticket_title'], "status" => $paymentD->payment_status, 'date' => date('d M Y @ g:i A', strtotime($val['created_date'])));
                 }
             } else {
                 $count++;
             }
         }
         if (!empty($orderList) && !empty($result)) {
             $newResult['pagination'] = $this->actionCreatePager($orderTotal - $count, $limit, $page);
             $newResult['records'] = $result;
         }
     }
     echo json_encode($newResult);
 }
Ejemplo n.º 6
0
 public function getTicketbyUser($user_id)
 {
     if (isset($_GET['user_id'])) {
         $fwd_by = base64_decode($_GET['user_id']);
         $result = TicketAssign::model()->findAllByAttributes(array('fwd_to' => $fwd_by, 'status' => 1));
     } else {
         $result = TicketAssign::model()->findAllByAttributes(array('fwd_to' => $user_id, 'status' => 1));
     }
     return $result;
 }
Ejemplo n.º 7
0
 function actionEmailChangeTicketStatus()
 {
     $template = Template::getTemplate('ticket_status_changed_mail_template_');
     $subject = $template->template_subject;
     $message = $template->template_content;
     $results = TicketChangeLog::model()->findAllByAttributes(array(), array('condition' => 'send_mail = :send_mail', 'params' => array('send_mail' => 0)));
     foreach ($results as $users) {
         $userdata['user_by'] = Users::model()->getUserName($users->user_id);
         $userInfo = Users::model()->findByPk($user->fwd_to);
         $ticket_id = $users->ticket_id;
         $remark = $users->remark;
         $userdata['user_by'] = Users::model()->getUserName($users->user_id);
         $userdata['remark'] = $remark;
         $userdata['ticket_status_name'] = TicketStatus::model()->getStatusName($users->status_id);
         $userdata['ticket_id'] = $ticket_id;
         $userdata['ticket_link'] = Utils::getBaseUrl() . "/ticket/view/" . base64_encode($ticket_id);
         $assignee = TicketAssign::model()->findAllByAttributes(array(), array('condition' => 'ticket_id = :ticket_id AND fwd_to !=:user_id AND status=1 ', 'params' => array('ticket_id' => $ticket_id, user_id => $users->user_id)));
         $assigneeby = TicketAssign::model()->findAllByAttributes(array(), array('condition' => 'ticket_id = :ticket_id AND fwd_by !=:user_id AND status=1 ', 'params' => array('ticket_id' => $ticket_id, user_id => $users->user_id), 'group' => "fwd_by"));
         // For Assignee mail
         foreach ($assignee as $user) {
             $userInfo = Users::model()->findByPk($user->fwd_to);
             $userdata['user_name'] = $userInfo->user_name;
             $subject = $this->replace($userdata, $subject);
             $message = $this->replace($userdata, $message);
             $this->SendMail($userInfo->user_email, $userInfo->user_name, $subject, $message);
         }
         // this is fowwarded by
         foreach ($assigneeby as $user) {
             $userInfo = Users::model()->findByPk($user->fwd_by);
             $userdata['user_name'] = $userInfo->user_name;
             $subject = $this->replace($userdata, $subject);
             $message = $this->replace($userdata, $message);
             $this->SendMail($userInfo->user_email, $userInfo->user_name, $subject, $message);
         }
         $model = TicketChangeLog::model()->findByPk($users->id);
         $model->send_mail = 1;
         $model->update();
     }
 }
Ejemplo n.º 8
0
 public function actionCustomSearch()
 {
     $restrictedUsers = array();
     $restrictedUsers = $_POST['restrictedUsers'];
     $ticket_id = $_POST['ticket_id'];
     $assigneeList = TicketAssign::model()->findAllByAttributes(array("ticket_id" => $ticket_id, "status" => 1));
     foreach ($assigneeList as $row) {
         $restrictedUsers[] = $row['fwd_to'];
     }
     $username = $_POST['username'];
     $deparment = $_POST['department'];
     $emailid = $_POST['email_id'];
     $userList = Users::model()->getFilterUser($username, $deparment, $restrictedUsers, $emailid);
     if (!empty($userList)) {
         foreach ($userList as $row) {
             $userlist[$row['user_id']] = $row['user_name'] . " (" . $row['user_email'] . ", " . UserRoles::model()->getRoleName($row['user_role_type']) . ")";
         }
         echo CHtml::checkBoxList('userlist', '', $userlist, array('template' => '<div class="col-sm-6 removeBR">{input} {label}</div>', 'class' => 'selectAssignee'));
     } else {
         echo "<div class='col-md-12'><div class='alert alert-danger'>No users found. </div></div>";
     }
 }