Example #1
0
 public function moneysave()
 {
     if (!IS_POST) {
         $this->message2('非法操作!', __APP__ . '/Admin');
     }
     $user_model = new UserModel();
     $user_account = new Model('account_log');
     $id = I('id', 0);
     if ($id <= 0) {
         $this->message('未指定会员信息!', __URL__ . '/index');
     }
     $user = $user_model->where('id=' . $id)->find();
     if (empty($user)) {
         $this->message('未找到指定会员信息!', __URL__ . '/index');
     }
     $account_type = I('account_type', 1);
     $bg_type = I('bg_type', 1);
     $addmoney = I('addmoney', 0);
     $reason = I('reason', '');
     if ($addmoney <= 0) {
         $this->message('请填写变动金额!', __URL__ . '/addmoney/id/' . $id);
     }
     if ($reason == '') {
         $this->message('请填写变更原因!', __URL__ . '/addmoney/id/' . $id);
     }
     if ($account_type == 1) {
         if ($bg_type == 1) {
             $money = $user['money'] + $addmoney;
             $content = '增加账户余额' . $addmoney;
         } else {
             $money = $user['money'] - $addmoney;
             $content = '减少账户余额' . $addmoney;
             $addmoney = 0 - $addmoney;
         }
         if ($money < 0) {
             $this->message('该人账户可用余额已不足以冲减!', __URL__ . '/addmoney/id/' . $id);
         }
         $data['money'] = $money;
     } else {
         if ($account_type == 2) {
             if ($bg_type == 1) {
                 $money = $user['refer_money'] + $addmoney;
                 $content = '增加可用佣金' . $addmoney;
             } else {
                 $money = $user['refer_money'] - $addmoney;
                 $content = '减少可用佣金' . $addmoney;
                 $addmoney = 0 - $addmoney;
             }
             $data['refer_money'] = $money;
             if ($money < 0) {
                 $this->message('该人账户可用佣金已不足以冲减!', __URL__ . '/addmoney/id/' . $id);
             }
         }
     }
     $user_model->startTrans();
     if (false !== $user_model->where('id=\'' . $id . '\'')->data($data)->save()) {
         $account_log['user_id'] = $id;
         $account_log['stage'] = 'admin';
         $account_log['money'] = $addmoney;
         $account_log['comm'] = $reason;
         $account_log['addtime'] = $this->getDate();
         if ($account_type == 1) {
             $account_log['remain_money'] = $money;
             $account_log['remain_refer_money'] = $user['refer_money'];
         } else {
             if ($account_type == 2) {
                 $account_log['remain_money'] = $user['money'];
                 $account_log['remain_refer_money'] = $money;
             }
         }
         if (false !== $user_account->data($account_log)->add()) {
             $user_model->commit();
             $content = '对会员' . $user['username'] . $content . ',若为本人操作,请忽略该条提醒!';
             send_fetion($content);
             $this->message('操作成功', __URL__ . '/index');
         } else {
             $user_model->rollback();
             $this->message('操作失败1:' . $user_account->getError(), __URL__ . '/addmoney/id/' . $id);
         }
     } else {
         $user_model->rollback();
         $this->message('操作失败2:' . $user_account->getDbError());
     }
 }