hospital-applets-api/app/Services/UserCouponService.php

64 lines
2.4 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace App\Services;
use App\Model\UserCoupon;
/**
* 用户优惠卷
*/
class UserCouponService extends BaseService
{
/**
* 获取用户可用优惠卷-单条
* @param string|int $user_id 用户id
* @param string|int $inquiry_type 订单类型1:专家问诊 2:快速问诊 3:公益问诊 4:问诊购药)
* @param int $coupon_client 使用平台1:小程序)
* @return array
*/
public function getUserUsableCouponOne(string|int $user_id, string|int $inquiry_type, int $coupon_client = 1): array
{
// 问诊类型需加1
$inquiry_type = $inquiry_type + 1;
$params = array();
$params[] = ['user_id', '=', $user_id];
$params[] = ['user_coupon_status', '=', 0];// 状态0:未使用 1:已使用 3:已过期)
$params[] = ['valid_start_time', '<', date('Y-m-d H:i:s', time())]; // 有效使用时间
$params[] = ['valid_end_time', '>', date('Y-m-d H:i:s', time())]; // 过期使用时间
$coupon_params = array();
$coupon_params[] = ['coupon_client', '=', $coupon_client];
$coupon_params[] = ['coupon_status', '=', 1]; // 状态1:正常 2:强制失效 3:结束 4:删除)
$application_scope_params = [1, $inquiry_type]; // 适用范围1:全部 2:快速问诊 3:专家问诊 4:公益问诊 5:问诊购药)
$user_coupon = \App\Model\UserCoupon::getDateWithCouponOne($params, $coupon_params, $application_scope_params);
if (empty($user_coupon)) {
return array();
}
return $user_coupon->toArray();
}
/**
* 获取用户某状态全部优惠卷-列表
* @param string|int $user_id 用户id
* @param array $inquiry_type [1,2,3,4,5]适用范围1:全部 2:快速问诊 3:专家问诊 4:公益问诊 5:问诊购药)
* @param int $user_coupon_status 状态0:未使用 1:已使用 3:已过期)
* @return array
*/
public function getUserCouponStatusList(string|int $user_id, array $inquiry_type, int $user_coupon_status): array
{
$params = array();
$params[] = ['user_id', '=', $user_id];
$params[] = ['user_coupon_status', '=', $user_coupon_status];// 状态0:未使用 1:已使用 3:已过期)
$user_coupon = UserCoupon::getWithCouponList($params);
if (empty($user_coupon)) {
return array();
}
return $user_coupon->toArray();
}
}