admin/addon/fenxiao/api/controller/Account.php

96 lines
4.0 KiB
PHP

<?php
/**
* ThinkShop商城系统 - 团队十年电商经验汇集巨献!
* =========================================================
* Copy right 2019-2029 成都云之牛科技有限公司, 保留所有权利。
* ----------------------------------------------
* 官方网址: https://www.cdcloudshop.com
* =========================================================
*/
namespace addon\fenxiao\api\controller;
use addon\fenxiao\model\FenxiaoAccount;
use addon\fenxiao\model\Fenxiao as FenxiaoModel;
use app\api\controller\BaseApi;
use app\model\member\MemberAccount;
/**
* 分销商流水
*/
class Account extends BaseApi
{
/**
* 分销商流水分页
* @return false|string
*/
public function page()
{
$token = $this->checkToken();
if ($token['code'] < 0) return $this->response($token);
$page = isset($this->params['page']) ? $this->params['page'] : 1;
$page_size = isset($this->params['page_size']) ? $this->params['page_size'] : PAGE_LIST_ROWS;
$type = isset($this->params['type']) ? $this->params['type'] : '';
$model = new FenxiaoModel();
$fenxiao_info = $model->getFenxiaoInfo([['member_id', '=', $this->member_id]], 'fenxiao_id');
$fenxiao_info = $fenxiao_info['data'];
if (!empty($fenxiao_info['fenxiao_id'])) {
$condition = [
['fenxiao_id', '=', $fenxiao_info['fenxiao_id']]
];
if($type != '' && $type != 'undefined'){
$condition[] = [
['type', '=', $type]
];
}
$account_model = new FenxiaoAccount();
$list = $account_model->getFenxiaoAccountPageList($condition, $page, $page_size);
return $this->response($list);
}
return $this->response($this->error('', 'FENXIAO_NOT_EXIST'));
}
public function goufang_to_balance(){
$token = $this->checkToken();
if ($token['code'] < 0) return $this->response($token);
$apply_money = isset($this->params['apply_money']) ? $this->params['apply_money'] : 0;
$type = isset($this->params['type']) ? $this->params['type'] : '';
if($apply_money <= 0 || $type == ''){
return $this->response($this->error('','参数错误'));
}
if($apply_money % 100 != 0){
return $this->response($this->error('','转换金额需为100的整数倍'));
}
$model = new FenxiaoModel();
$menber_account = new MemberAccount();
$fenxiao_account = new FenxiaoAccount();
$fenxiao_info = $model->getFenxiaoInfo([['member_id', '=', $this->member_id]])['data'];
switch($type){
case 'goufang_to_balance':
if($fenxiao_info['house_purchase'] < $apply_money){
return $this->response($this->error('','购房券不足'));
}
$menber_account->addMemberAccount($fenxiao_info[ 'site_id' ], $fenxiao_info['member_id'], 'balance_money', $apply_money, 'goufang_to_balance', '购房券转换', '购房券转换');
$fenxiao_account->addAccount($fenxiao_info['fenxiao_id'], $fenxiao_info['fenxiao_name'], 'house_purchase', -$apply_money, 0,'house_purchase', '购房券转换');
break;
case 'balance_to_goufang':
$res = $menber_account->addMemberAccount($fenxiao_info[ 'site_id' ], $fenxiao_info['member_id'], 'balance_money', -$apply_money, 'goufang_to_balance', '购房券转换', '购房券转换');
if($res['code'] < 0){
return $this->response($res);
}
$fenxiao_account->addAccount($fenxiao_info['fenxiao_id'], $fenxiao_info['fenxiao_name'], 'house_purchase', $apply_money, 0,'house_purchase', '购房券转换');
break;
default:
return $this->response($this->error('','参数错误'));
}
return $this->response($this->success());
}
}