修改药品优惠卷及药品订单数据
This commit is contained in:
parent
5baf6de537
commit
7967447f6a
@ -184,6 +184,33 @@ class UserCoupon extends Model
|
||||
->get($fields);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取患者某一类型下的全部优惠卷
|
||||
* @param string|int $user_id
|
||||
* @param int $distribution_object
|
||||
* @param array $fields
|
||||
* @return Collection|array
|
||||
*/
|
||||
public static function getUserAllObjectTypeCoupon(string|int $user_id,int $distribution_object,array $fields = ['*']): Collection|array
|
||||
{
|
||||
$params = array();
|
||||
$params[] = ['user_id', '=', $user_id];
|
||||
$params[] = ['valid_start_time', '<', date('Y-m-d H:i:s', time())]; // 有效使用时间
|
||||
$params[] = ['valid_end_time', '>', date('Y-m-d H:i:s', time())]; // 过期使用时间
|
||||
|
||||
return self::with(['Coupon'])
|
||||
->whereHas('Coupon', function ($query) use ($distribution_object) {
|
||||
$query->where("coupon_client",1)
|
||||
->where("coupon_status",1)
|
||||
->where(function ($query) use ($distribution_object) {
|
||||
$query->orwhere("distribution_object",$distribution_object);
|
||||
});
|
||||
})
|
||||
->where($params)
|
||||
->groupBy("coupon_id")
|
||||
->get($fields);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取患者今日过期优惠卷
|
||||
* @param array $params
|
||||
|
||||
@ -1720,16 +1720,24 @@ class PatientOrderService extends BaseService
|
||||
ProductPlatformAmount::dec($params, 'stock', $product_data['product_num']);
|
||||
|
||||
// 处理健康包数据,增加使用数量
|
||||
if (!empty($order_service_package)){
|
||||
$data = array();
|
||||
$data['order_service_id'] = $order_service_package['order_service_id'];
|
||||
$data['order_product_id'] = $order_product['order_product_id'];
|
||||
$data['order_product_no'] = $order_product['order_product_no'];
|
||||
$data['product_item_id'] = $order_product_item['product_item_id'];
|
||||
$data['product_id'] = $product_data['product_id'];
|
||||
$data['used_quantity'] = $product_data['used_quantity'];
|
||||
if (!empty($order_service_package) && !empty($order_service_package_detail)){
|
||||
// 获取服务包内所有药品
|
||||
$health_package_products = $OrderServicePackageService->getOrderServiceProduct($order_service_package_detail['package_id']);
|
||||
foreach ($health_package_products as $health_package_product) {
|
||||
if ($health_package_product['product_id'] == $product_data['product_id']){
|
||||
$data = array();
|
||||
$data['order_service_id'] = $order_service_package['order_service_id'];
|
||||
$data['order_product_id'] = $order_product['order_product_id'];
|
||||
$data['order_product_no'] = $order_product['order_product_no'];
|
||||
$data['product_item_id'] = $order_product_item['product_item_id'];
|
||||
$data['product_id'] = $product_data['product_id'];
|
||||
$data['used_quantity'] = $product_data['used_quantity'];
|
||||
|
||||
OrderServicePackageProduct::addOrderServicePackageProduct($data);
|
||||
OrderServicePackageProduct::addOrderServicePackageProduct($data);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -3170,8 +3178,8 @@ class PatientOrderService extends BaseService
|
||||
// 健康包关联优惠卷数据
|
||||
if (in_array($order_service_package['order_service_status'],[3,4,5])){
|
||||
// 订单状态(1:待支付 2:未开始 3:服务中 4:服务完成 5:服务取消)
|
||||
// 获取用户优惠卷
|
||||
$coupon = UserCoupon::getUserObjectTypeCoupon($order_service_package['user_id'],7);
|
||||
// 获取患者某一类型下的全部优惠卷
|
||||
$coupon = UserCoupon::getUserAllObjectTypeCoupon($order_service_package['user_id'],7);
|
||||
if (!empty($coupon)){
|
||||
$result['order_service_package_coupon'] = $coupon->toArray();
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user