<?php require_once('../auth/auth.php');require_once('../auth/acid_balance.php'); ?>
<?php 
if(isset($_POST['epur_invoice'])){
   $invoice    = $_POST['epur_invoice'];
   $tdate      = $_POST['etdate'].' '.$time;
   $s_acid     = $_POST['es_acid'];
   $f_acid     = $_POST['ef_acid'];
   $d_acid     = $_POST['ed_acid'];
   $discount   = $_POST['ediscount'];
   $f_value    = $_POST['ef_value'];
   $m_acid     = $_POST['em_acid'];
   $payment    = $_POST['epayment'];
   $details    = $_POST['edetails'];
   $m_invoice  = $_POST['em_invoice'];
   $d_man      = $_POST['ed_man'];
   $wh_id      = $_POST['ewh_id'];
   $net_amount = $_POST['esm_totalc'];


if ($net_amount > 0.01) {

// Delete Part Start ///
  $stckd= mysqli_query($conn,"SELECT pro_id,net_amount,datetime FROM order_list WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND invoice='$invoice'") or die(mysqli_error($conn));

      while ($stcd = mysqli_fetch_assoc($stckd)) {
        $ditem_id  = $stcd['pro_id'];
        $ditem_net = $stcd['net_amount'];
        $datetime  = $stcd['datetime'];

    mysqli_query($conn,"DELETE FROM order_list WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND invoice='$invoice' AND pro_id='$ditem_id'") or die(mysqli_error($conn));

    $dstock_tmp = item_qty($ditem_id)['stock_qty'];
     $dstock_qty = (@$dstock_tmp)?$dstock_tmp:0;
    mysqli_query($conn,"UPDATE item SET avg_cost =(((avg_cost*item_qty)-'$ditem_net') / '$dstock_qty') WHERE coid='$coid' AND pro_id ='$ditem_id'") or die(mysqli_error($conn));
    mysqli_query($conn,"UPDATE item SET item_qty='$dstock_qty' WHERE coid='$coid' AND pro_id ='$ditem_id'") or die(mysqli_error($conn));
   }

   $puinv= mysqli_query($conn,"SELECT dr_acid,cr_acid FROM transaction WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND invoice='$invoice'") or die(mysqli_error($conn));
    $stacid = [];
      while ($stsc = mysqli_fetch_assoc($puinv)) {
        array_push($stacid,$stsc['dr_acid'],$stsc['cr_acid']);
   }

    mysqli_query($conn,"DELETE FROM transaction WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND invoice='$invoice'") or die(mysqli_error($conn));

// Delete Part END ///

if(date("Y-m-d",strtotime($datetime))==$_POST['etdate']){

  $time       = date("H:i:s",strtotime($datetime));
  $tdate      = $_POST['etdate'].' '.$time;

}

// New Insert Part Start ///

    mysqli_query($conn,"INSERT INTO `order_list`(`coid`, `bid`, `brid`, `acid`, `invoice`, `order_type`, `wh_id`, `pro_id`, `item_code`, `pro_type`, `plus`, `qty`, `pro_unit`, `unit_val`, `out_qty`, `run_qty`, `pu_price`, `avg_price`, `sale_price`, `change_slprice` , `discount`, `dis_amount`, `amount`, `t_amount`, `net_amount`, `tax`, `profit`, `details`, `d_man`, `userid`, `datetime`, `active`) SELECT `coid`, `bid`, `brid`, '$s_acid', `invoice`, `order_type`, '$wh_id', `pro_id`, `item_code`, `pro_type`, `plus`, (qty*unit_val), `pro_unit`, `unit_val`, `out_qty`, `run_qty`, `pu_price`, `avg_price`, `sale_price`, `change_slprice`, `discount`, `dis_amount`, `amount`, `t_amount`, `net_amount`, `tax`, `profit`, `details`, '$d_man', `userid`, '$tdate', 1 FROM `order_list_edit` WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND invoice='$invoice'") or die(mysqli_error($conn));


      $inv_row= mysqli_fetch_assoc(mysqli_query($conn,"SELECT acid,gcatid FROM accounts WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND ac_type='stock' LIMIT 1"));
      $inv_acid   = $inv_row['acid'];
      $inv_gcatid = $inv_row['gcatid'];
      $m_gcatid= mysqli_fetch_assoc(mysqli_query($conn,"SELECT gcatid FROM accounts WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND acid='$m_acid' LIMIT 1"))['gcatid'];

       $s_gcatid= mysqli_fetch_assoc(mysqli_query($conn,"SELECT gcatid FROM accounts WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND acid='$s_acid' LIMIT 1"))['gcatid'];

      mysqli_query($conn,"INSERT INTO transaction(coid,bid,brid,dr_acid,cr_acid,e_acid,dr_gcatid,cr_gcatid,invoice,m_invoice,ttype,details,note,amount,date,ptime,userid,em_id,active) 
          VALUES ('$coid','$bid','$brid','$inv_acid', '$s_acid', '$uid', '$inv_gcatid', '$s_gcatid', '$invoice', '$m_invoice', 'EPUR','$details','epurchase','$net_amount','$tdate','$time','$uid','$uid','1')") or die(mysqli_error($conn));

      mysqli_query($conn,"DELETE FROM order_list_edit WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND invoice='$invoice' AND active=0") or die(mysqli_error($conn));
      
      if ($f_acid>0 && $f_value>0) {

          $f_gcatid= mysqli_fetch_assoc(mysqli_query($conn,"SELECT gcatid FROM accounts WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND acid='$f_acid' LIMIT 1"))['gcatid'];

           mysqli_query($conn,"INSERT INTO transaction(coid,bid,brid,dr_acid,cr_acid,e_acid,dr_gcatid,cr_gcatid,invoice,m_invoice,ttype,details,note,amount,date,ptime,userid,em_id,active) 
          VALUES ('$coid','$bid','$brid', '$f_acid','$m_acid', '$uid', '$f_gcatid','$m_gcatid', '$invoice', '$m_invoice', 'P','Freight Charge','epur_freight','$f_value','$tdate','$time','$uid','$uid','1')") or die(mysqli_error($conn));

        $tmp_f = balance($f_acid)['ac_balance'];
        $f_acid_balance = (@$tmp_f)?$tmp_f:0;
        mysqli_query($conn,"UPDATE accounts SET balance='$f_acid_balance' WHERE coid='$coid' AND acid ='$f_acid'") or die(mysqli_error($conn));
        }


      if ($d_acid>0 && $discount>0) {

          $d_gcatid= mysqli_fetch_assoc(mysqli_query($conn,"SELECT gcatid FROM accounts WHERE coid='$coid' AND bid='$bid' AND brid='$brid' AND acid='$d_acid' LIMIT 1"))['gcatid'];

           mysqli_query($conn,"INSERT INTO transaction(coid,bid,brid,dr_acid,cr_acid,e_acid,dr_gcatid,cr_gcatid,invoice,m_invoice,ttype,details,note,amount,date,ptime,userid,em_id,active) 
          VALUES ('$coid','$bid','$brid','$s_acid', '$d_acid', '$uid', '$s_gcatid', '$d_gcatid', '$invoice', '$m_invoice', 'P','Purchase Discount','epur_discount','$discount','$tdate','$time','$uid','$uid','1')") or die(mysqli_error($conn));

        $tmp_d = balance($d_acid)['ac_balance'];
        $d_acid_balance = (@$tmp_d)?$tmp_d:0;
        
        mysqli_query($conn,"UPDATE accounts SET balance='$d_acid_balance' WHERE coid='$coid' AND acid ='$d_acid'") or die(mysqli_error($conn));
        }

        if ($m_acid>0 && $payment>0) {


           mysqli_query($conn,"INSERT INTO transaction(coid,bid,brid,dr_acid,cr_acid,e_acid,dr_gcatid,cr_gcatid,invoice,m_invoice,ttype,details,note,amount,date,ptime,userid,em_id,active) 
          VALUES ('$coid','$bid','$brid','$s_acid', '$m_acid', '$uid', '$s_gcatid', '$m_gcatid', '$invoice', '$m_invoice', 'P','Purchase Payment','epur_payment','$payment','$tdate','$time','$uid','$uid','1')") or die(mysqli_error($conn));


        $tmp_m = balance($m_acid)['ac_balance'];
        $m_acid_balance = (@$tmp_m)?$tmp_m:0;
        mysqli_query($conn,"UPDATE accounts SET balance='$m_acid_balance' WHERE coid='$coid' AND acid ='$m_acid'") or die(mysqli_error($conn));

        }


        $tmp_inv = balance($inv_acid)['ac_balance'];
        $inv_acid_balance = (@$tmp_inv)?$tmp_inv:0;
        
        $tmp_s = balance($s_acid)['ac_balance'];
        $s_acid_balance = (@$tmp_s)?$tmp_s:0;
        
        mysqli_query($conn,"UPDATE accounts SET balance='$inv_acid_balance' WHERE coid='$coid' AND acid ='$inv_acid'") or die(mysqli_error($conn));
        mysqli_query($conn,"UPDATE accounts SET balance='$s_acid_balance' WHERE coid='$coid' AND acid ='$s_acid'") or die(mysqli_error($conn));

// New Insert Part Start ///


// Change Accounts Balance Update Start ///

      $chacid = array_diff($stacid, [$s_acid,$f_acid,$d_acid,$m_acid,$inv_acid]);
      if (!empty($chacid)) {
        foreach (array_unique($chacid) as $acid) {
            
            $tmp_bal = balance($acid)['ac_balance'];
            $acid_balance = (@$tmp_bal)?$tmp_bal:0;
            mysqli_query($conn,"UPDATE accounts SET balance='$acid_balance' WHERE coid='$coid' AND acid ='$acid'") or die(mysqli_error($conn));
        } 
      }               
// Change Accounts Balance Update Start ///            


        if (isset($_POST['eemail'])) {
            // Email Part Here
        }

        if (isset($_POST['esms'])) {
            // SMS Part Here
        }


    }
}
?>
