$params['mer_id'], 'supplier_id' => $params['supplier_id'], 'merchant_bank_id' => $params['merchant_bank_id'], 'amount' => $params['amount'], ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑商户供应商提现表 * @param array $params * @return bool * @author likeadmin * @date 2024/05/14 11:21 */ public static function edit(array $params): bool { Db::startTrans(); try { MerchantWithdraw::where('id', $params['id'])->update([ 'mer_id' => $params['mer_id'], 'supplier_id' => $params['supplier_id'], 'merchant_bank_id' => $params['merchant_bank_id'], 'amount' => $params['amount'], ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 审核 * @param array $params * @return bool * @author likeadmin * @date 2024/05/14 11:21 */ public static function check(array $params,$admin_id): bool { $data = MerchantWithdraw::where('id', $params['id'])->findOrEmpty(); if($data['is_check'] != 0){ self::setError('此提现申请已审核,无需重复审核'); return false; } Db::startTrans(); try { MerchantWithdraw::where('id', $params['id'])->update([ 'is_check' => $params['is_check'], 'fail_msg' => $params['fail_msg'] ?? '', 'admin_id' => $admin_id ]); if($params['is_check'] == 2){ if (!empty($data['mer_id'])) { $merchant = Merchant::where('mer_id', $data['mer_id'])->findOrEmpty(); $merchant->where('mer_id', $data['mer_id'])->update([ 'mer_money' => bcadd($merchant['mer_money'], $data['amount'], 2) ]); } if (!empty($data['supplier_id'])) { $supplier = Supplier::where('id', $data['supplier_id'])->findOrEmpty(); $supplier->where('id', $data['supplier_id'])->update([ 'mer_money' => bcadd($supplier['mer_money'], $data['amount'], 2) ]); } } $pid = !empty($data['mer_id']) ? $data['mer_id'] : $data['supplier_id']; $apply_info = Db::name('user_auth_shop')->where('pid', $pid)->findOrEmpty(); if (!empty($apply_info['jg_register_id'])) { (new JgPushService())->sendMsg($apply_info['jg_register_id'], '您的提现申请请求' . ($params['status'] == 1 ? '已审核通过' : '审核未通过'), '/pages/quote/financialyDeatil'); } Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 设置到账 * @param array $params * @return bool * @author likeadmin * @date 2024/05/14 11:21 */ public static function arrival(array $params,$admin_id): bool { $data = MerchantWithdraw::where('id', $params['id'])->findOrEmpty(); if($data['is_check'] == 0){ self::setError('该提现申请还未审核,不能操作'); return false; } if($data['is_check'] == 2){ self::setError('该提现申请审核未通过,不能操作'); return false; } if($data['is_arrival'] == 1){ self::setError('该提现申请已到账,无需设置'); return false; } Db::startTrans(); try { MerchantWithdraw::where('id', $params['id'])->update([ 'is_arrival' => 1, 'arrival_proof' => $params['arrival_proof'] ? json_encode($params['arrival_proof']) : null, 'arrival_user' => $admin_id ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除商户供应商提现表 * @param array $params * @return bool * @author likeadmin * @date 2024/05/14 11:21 */ public static function delete(array $params): bool { return MerchantWithdraw::destroy($params['id']); } /** * @notes 获取商户供应商提现表详情 * @param $params * @return array * @author likeadmin * @date 2024/05/14 11:21 */ public static function detail($params): array { return MerchantWithdraw::findOrEmpty($params['id'])->toArray(); } }