1.本地生活上级列表优化

This commit is contained in:
xucong 2024-08-10 18:10:35 +08:00
parent c51f3623df
commit 3c70ea333c
4 changed files with 92 additions and 47 deletions

@ -33,7 +33,6 @@ class LocalStore extends Api
$result = $model->getLocalList($data);
return JsonServer::success('查询成功',$result);
}
public function addLocalStore()
{
$user_id = $this->user_id;

@ -120,8 +120,15 @@ class Pay extends Api
return $result;
}
// 本地生活余额支付
public function localBalance()
{
$user_id = $this->user_id;
$post = $this->request->post();
$result = PayLogic::localBalance($user_id,$post);
return $result;
}
/**
* @notes 小程序回调

@ -658,7 +658,6 @@ class PayLogic extends Logic
}
//本地商家支付
public static function localWxPay($user_id,$post,$client){
$post['lid'] = 10;
$res = WeChatPayServer::localserverWxPay($user_id,$post, $client);
if (false === $res) {
return JsonServer::error(WeChatPayServer::getError());
@ -666,50 +665,7 @@ class PayLogic extends Logic
if ((is_object($res) || is_string($res)) && $client != Client_::pc) {
$res = (array)($res);
}
$company = Db::name("local_store")->where("lstore_id",$post['lid'])->where("is_delete",0)->find();
$dt['lstore_id'] = $post['lid'];
$dt['payment_type'] = $company['bankType'];
$dt['account_name'] = $company['store_nickname'];
$dt['bank_name'] = $company['bankName'];
$dt['bank_card'] = $company['bankCard'];
$dt['large_number'] = $post['largeNumber'];
$dt['separate_account'] = round($post['money']*0.6,2);
$dt['create_time'] = date("Y-m-d H:i:s");
$dt['user_id'] = $user_id;
$r = Db::name("local_store_order")->save($dt);
// 基本户 5%
$dt1['lstore_id'] = $post['lid'];
$dt1['payment_type'] = 1;
$dt1['account_name'] = "东龙汇";
$dt1['bank_name'] = "中国工商银行";
$dt1['bank_card'] = "1204068809100138961";
$dt1['large_number'] = "102335006882";
$dt1['separate_account'] = round($post['money']*0.08,2);
$dt1['create_time'] = date("Y-m-d H:i:s");
$dt1['user_id'] = $user_id;
$r1 = Db::name("local_store_order")->save($dt1);
// 22% 一般户
$dt2['lstore_id'] = $post['lid'];
$dt2['payment_type'] = 1;
$dt2['account_name'] = "东龙汇";
$dt2['bank_name'] = "中国工商银行";
$dt2['bank_card'] = "1204064019200152507";
$dt2['large_number'] = "102335006405";
$dt2['separate_account'] = round($post['money']*0.22,2);
$dt2['create_time'] = date("Y-m-d H:i:s");
$dt2['user_id'] = $user_id;
$r2 = Db::name("local_store_order")->save($dt2);
// 10% 一般户
$dt3['lstore_id'] = $post['lid'];
$dt3['payment_type'] = 1;
$dt3['account_name'] = "东龙汇";
$dt3['bank_name'] = "中国工商银行";
$dt3['bank_card'] = "1204064419000115357";
$dt3['large_number'] = "1204064419000115357";
$dt3['separate_account'] = round($post['money']*0.1,2);
$dt3['create_time'] = date("Y-m-d H:i:s");
$dt3['user_id'] = $user_id;
$r3 = Db::name("local_store_order")->save($dt3);
if (is_string($res)) {
$data = [
'code' => 1,
@ -722,6 +678,88 @@ class PayLogic extends Logic
return JsonServer::success('微信支付发起成功', $res, 1);
}
// 本地生活余额支付
public function localBalance($user_id,$post){
$user_balance = User::where(['id' => $user_id])->value('user_money');
if ($user_balance < $post['money']) {
return JsonServer::error('余额不足');
}
$user_balance_dec = User::where(['id' => $user_id])
->dec('user_money', $post['money'])
->update();
if (!$user_balance_dec) {
Db::rollback();
return JsonServer::error('余额扣除失败');
}
//记录余额
$acountLogResult = AccountLogLogic::AccountRecord($user_id, $post['money'], 2, AccountLog::balance_pay_order);
if ($acountLogResult === false) {
Db::rollback();
return JsonServer::error('账户明细记录添加失败');
}
$company = Db::name("local_store")->where("lstore_id",$post['lid'])->where("is_delete",0)->find();
$dt['lstore_id'] = $post['lid'];
$dt['payment_type'] = $company['bankType'];
$dt['account_name'] = $company['store_nickname'];
$dt['bank_name'] = $company['bankName'];
$dt['bank_card'] = $company['bankCard'];
$dt['large_number'] = $company['largeNumber'];
$dt['separate_account'] = round($post['money']*0.6,2);
$dt['create_time'] = date("Y-m-d H:i:s");
$dt['user_id'] = $user_id;
$dt['pay_shop_type'] = 1;
$r = Db::name("local_store_order")->save($dt);
if (!$r) {
Db::rollback();
return JsonServer::error('余额扣除失败');
}
// 基本户 5%
$dt1['lstore_id'] = $post['lid'];
$dt1['payment_type'] = 1;
$dt1['account_name'] = "东龙汇";
$dt1['bank_name'] = "中国工商银行";
$dt1['bank_card'] = "1204068809100138961";
$dt1['large_number'] = "102335006882";
$dt1['separate_account'] = round($post['money']*0.08,2);
$dt1['create_time'] = date("Y-m-d H:i:s");
$dt1['user_id'] = $user_id;
$r1 = Db::name("local_store_order")->save($dt1);
if (!$r1) {
Db::rollback();
return JsonServer::error('余额扣除失败');
}
// 22% 一般户
$dt2['lstore_id'] = $post['lid'];
$dt2['payment_type'] = 1;
$dt2['account_name'] = "东龙汇";
$dt2['bank_name'] = "中国工商银行";
$dt2['bank_card'] = "1204064019200152507";
$dt2['large_number'] = "102335006405";
$dt2['separate_account'] = round($post['money']*0.22,2);
$dt2['create_time'] = date("Y-m-d H:i:s");
$dt2['user_id'] = $user_id;
$r2 = Db::name("local_store_order")->save($dt2);
if (!$r2) {
Db::rollback();
return JsonServer::error('余额扣除失败');
}
// 10% 一般户
$dt3['lstore_id'] = $post['lid'];
$dt3['payment_type'] = 1;
$dt3['account_name'] = "东龙汇";
$dt3['bank_name'] = "中国工商银行";
$dt3['bank_card'] = "1204064419000115357";
$dt3['large_number'] = "1204064419000115357";
$dt3['separate_account'] = round($post['money']*0.1,2);
$dt3['create_time'] = date("Y-m-d H:i:s");
$dt3['user_id'] = $user_id;
$r3 = Db::name("local_store_order")->save($dt3);
if (!$r3) {
Db::rollback();
return JsonServer::error('余额扣除失败');
}
return true;
}
/**
* @notes 支付宝支付
* @param $order_id

@ -359,6 +359,7 @@ class PayNotifyLogic
// 余额充值参与百亿补贴
self::recharge_billions($order, $order['user_id']);
}
}