diff --git a/app/Model/OrderProduct.php b/app/Model/OrderProduct.php index e005b7d..56e31e9 100644 --- a/app/Model/OrderProduct.php +++ b/app/Model/OrderProduct.php @@ -6,6 +6,7 @@ namespace App\Model; +use Carbon\Carbon; use Hyperf\Database\Model\Collection; use Hyperf\Database\Model\Relations\HasMany; use Hyperf\Database\Model\Relations\HasOne; @@ -54,12 +55,12 @@ use Hyperf\Snowflake\Concern\Snowflake; * @property string $consignee_name_mask 收货人姓名(掩码) * @property string $consignee_tel 收货人电话 * @property string $consignee_tel_mask 收货人电话(掩码) - * @property \Carbon\Carbon $created_at 创建时间 - * @property \Carbon\Carbon $updated_at 修改时间 - * @property-read \Hyperf\Database\Model\Collection|OrderProductItem[]|null $OrderProductItem + * @property Carbon $created_at 创建时间 + * @property Carbon $updated_at 修改时间 + * @property-read Collection|OrderProductItem[]|null $OrderProductItem * @property-read OrderPrescription|null $OrderPrescription * @property-read PatientFamily|null $PatientFamily - * @property-read \Hyperf\Database\Model\Collection|OrderPrescriptionIcd[]|null $OrderPrescriptionIcd + * @property-read Collection|OrderPrescriptionIcd[]|null $OrderPrescriptionIcd */ class OrderProduct extends Model { @@ -239,4 +240,20 @@ class OrderProduct extends Model return self::where($params)->whereIn('order_product_status',$order_product_status)->get($fields); } + /** + * 获取患者某一时间段药品订单-创建时间 + * @param array $params + * @param array $created_at 接诊时间区间 + * @param array $order_product_status + * @return Collection|array + */ + public static function getProductWithCreateTime(array $params, array $created_at,array $order_product_status): Collection|array + { + return self::where($params) + ->whereIn('order_product_status', $order_product_status) + ->whereBetween('created_at', $created_at) + ->orderBy('created_at') + ->get(); + } + } diff --git a/app/Services/PatientOrderService.php b/app/Services/PatientOrderService.php index a8c2d36..e0f469e 100644 --- a/app/Services/PatientOrderService.php +++ b/app/Services/PatientOrderService.php @@ -2823,9 +2823,20 @@ class PatientOrderService extends BaseService } } - // 健康包药品订单数据 + // 健康包药品订单数据-周期内所有药品订单 if (in_array($order_service_package['order_service_status'],[3,4,5])){ + $params = array(); + $params['doctor_id'] = $order_service_package['doctor_id']; + $params['patient_id'] = $order_service_package['patient_id']; + $params['family_id'] = $order_service_package['family_id']; + $created_at = [$order_service_package['start_time'],$order_service_package['finish_time']]; + + $order_product_status_params = [2,3,4]; + $order_product = OrderProduct::getProductWithCreateTime($params,$created_at,$order_product_status_params); + if (!empty($order_product)){ + $result['order_product'] = $order_product->toArray(); + } } }