首页 > 解决方案 > 获取总金额并将其存储在另一张桌子上。(代码点火器)

问题描述

我的目标是仅合计所有 (commtype = IN) betAmount并将其存储在我的“comCurrentBalance”用户表中。然后,通过我的 SQL 更新,它将从“agent_commmission_history”表中减去用户输入的金额到 betAmount 的总值。我在下面提供了我的问题和目标的屏幕截图。任何帮助将不胜感激。

在此处输入图像描述

控制器:

public function comm($userID=0) {
        
        $this->commissions->commOut($userID);

        redirect(base_url() . "commission/commi");
    }

模型:

function commOut($data) {
        
        
        
        $ref= $this->session->userdata('uid') + date ('his');
        $id = $this->session->userdata('uid');
        
        $data = array(
            'userID' => $id,
            'transactionSource' => 'Commi',
            'refNumber' =>  $ref ,
            'amount' =>$this->input->post("amount"),
            "transType" =>"out",
            
        );
       
        $sqlInsertLedger = "INSERT INTO transaction_ledger (transactionSource, transType, refNumber, userID, amount, currentBalance, previousBalance, remarks, createdBy)
                                select '".$data['transactionSource']."', '".$data['transType']."', '".$data['refNumber']."', ".$data['userID'].", ".$data['amount'].", sum(TU.currentPoints + ".$data['amount'].") as totalPoints, TU.currentPoints,
                                'funded by agent', '".$this->session->userdata('uid')."'
                                from users TU where TU.userID=?";
        
        $Q = $this->db->query($sqlInsertLedger, $data['userID']);
        
        //update user table
        
        $sqlUpdate = "update users set  commCurrentBalance = commCurrentBalance - ?, currentPoints = currentPoints + ? where userID = ?"; // ***Current points is already adding and comCurrentBalance is subtracting based on user's input. However, my target is to total the betamount before subtracting happens.*****
        $Q = $this->db->query($sqlUpdate, array($data['amount'], $data['amount'], $data['userID']));
        
   
    }

标签: codeigniter

解决方案


推荐阅读