trigger_logic = new TriggerLogic(); } /** * 挂号停诊消息 * @param Request $request * @return JsonResponse */ public function registerStopRemind(Request $request): JsonResponse { $validated = Validator::make($request->json()->all(), [ 'patient_id' => 'required', 'reg_date' => 'required|date_format:Y-m-d', 'begin_time' => 'required|date_format:H:i', 'end_time' => 'required|date_format:H:i', 'dept_name' => 'required', 'doctor_name' => 'required', 'tips' => 'required|max:20', ],[ 'patient_id.required' => '请传入患者ID', 'reg_date.required' => '请传入看诊日期', 'reg_date.date_format' => '请传入正确的看诊日期', 'begin_time.required' => '请传入看诊开始时间段', 'begin_time.date_format' => '请传入正确的看诊开始时间段', 'end_time.required' => '请传入看诊结束时间段', 'end_time.date_format' => '请传入正确的看诊结束时间段', 'dept_name.required' => '请传入科室名称', 'doctor_name.required' => '请传入医生名称', 'tips.required' => '请传入提示信息', 'tips.max' => '提示信息长度不得超过20', ]); if ($validated->fails()) { return jsonResponseToHis(Response::HTTP_OK, 1, $validated->errors()->first()); } $validated = $validated->safe()->only(['patient_id', 'reg_date', 'begin_time', 'end_time', 'dept_name', 'doctor_name', 'tips']); [$result, $message] = $this->trigger_logic->registerStopRemind( $validated['patient_id'], $validated['reg_date'], $validated['begin_time'], $validated['end_time'], $validated['dept_name'], $validated['doctor_name'], $validated['tips'], ); return jsonResponseToHis(Response::HTTP_OK, (int) $result, $message); } /** * 待缴费提醒 * @param Request $request * @return JsonResponse */ public function pendingPaymentRemind(Request $request): JsonResponse { $validated = Validator::make($request->all(), [ 'patient_id' => 'required', 'dept_name' => 'required', 'fee' => 'required|numeric', 'fee_type' => 'required', 'tips_message' => 'required|max:20', ],[ 'patient_id.required' => '请传入患者ID', 'dept_name.required' => '请传入科室名称', 'fee.required' => '请传入待缴纳处方费用', 'fee.numeric' => '待缴纳处方费用必须传入数字', 'fee_type.required' => '请传入待缴纳处方类型', 'tips_message.required' => '请传入提示信息', 'tips_message.max' => '提示信息长度不得超过20', ]); if ($validated->fails()) { return jsonResponseToHis(Response::HTTP_OK, 1, $validated->errors()->first()); } $validated = $validated->safe()->only(['patient_id', 'dept_name', 'fee', 'fee_type', 'tips_message']); [$result, $message] = $this->trigger_logic->pendingPaymentRemind( $validated['patient_id'], $validated['dept_name'], $validated['fee'], $validated['fee_type'], $validated['tips_message'], ); return jsonResponseToHis(Response::HTTP_OK, (int) $result, $message); } /** * 报告发布提醒 * @param Request $request * @return JsonResponse */ public function reportReleaseRemind(Request $request): JsonResponse { $validated = Validator::make($request->all(), [ 'patient_id' => 'required', 'report_type' => 'required|in:1,2', 'item_name' => 'required', 'report_time' => 'required|date_format:Y-m-d H:i:s', 'report_serial_no' => 'required', 'dept_name' => 'required', 'remark' => 'required|max:20', ],[ 'patient_id.required' => '请传入患者ID', 'report_type.required' => '请传入报告类型', 'report_type.in' => '请传入正确的报告类型', 'item_name.required' => '请传入报告名称', 'report_time.required' => '请传入报告时间', 'report_time.date_format' => '报告时间格式错误', 'report_serial_no.required' => '请传入报告流水号', 'remark.required' => '请传入备注信息', 'remark.max' => '备注信息长度不得超过20', ]); if ($validated->fails()) { return jsonResponseToHis(Response::HTTP_OK, 1, $validated->errors()->first()); } $validated = $validated->safe()->only(['patient_id', 'report_type', 'item_name', 'report_time', 'report_serial_no', 'dept_name', 'remark']); [$result, $message] = $this->trigger_logic->reportReleaseRemind( $validated['patient_id'], $validated['report_type'], $validated['item_name'], $validated['report_time'], $validated['report_serial_no'], $validated['dept_name'], $validated['remark'] ); return jsonResponseToHis(Response::HTTP_OK, (int) $result, $message); } }