This commit is contained in:
2023-03-31 09:27:59 +08:00
parent 31f94fef18
commit 8be42f20f0
7 changed files with 27 additions and 148 deletions
+15 -146
View File
@@ -9,6 +9,7 @@ use App\Exception\BusinessException;
use App\Model\DoctorInquiryTime;
use App\Model\DoctorPharmacistCert;
use App\Model\OrderInquiry;
use App\Model\OrderPrescription;
use App\Model\UserDoctor;
use App\Services\ImService;
use App\Services\MessagePush;
@@ -505,153 +506,21 @@ class TestController extends AbstractController
public function test_11(){
$oss = new Oss();
$filename = "basic/file/prescription.jpg";
$sign_image = $oss->getObjectToRAM($filename);
$manager = new ImageManager();
$image = $manager->make($sign_image);
$fontPath = './extend/Ca/ZiYuYongSongTi-2.ttf';
// 处方号
$image->text('1234567890', 1480, 540, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(60);
$font->align('left');
});
// 日期
$image->text('2023-03-21', 354, 675, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(60);
$font->align('left');
});
// 科室
$image->text('测试科室1', 1385, 675, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(60);
$font->align('left');
});
// 姓名
$image->text('测试姓名', 354, 795, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(60);
$font->align('left');
});
// 性别
$image->text('男', 1385, 790, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(60);
$font->align('left');
});
// 年龄
$image->text('19', 354, 900, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(60);
$font->align('left');
});
// 过敏史
$image->text('对阿莫西林过敏对阿莫西林过敏', 405, 1030, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(60);
$font->align('left');
});
// 初步诊断
$image->text('对阿莫西林过敏对阿莫西林过敏', 445, 1145, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(60);
$font->align('left');
});
// 医生建议
$image->text('没有建议', 445, 1252, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(60);
$font->align('left');
});
$data = array();
$data['product'] = [
[
"product_name" => "感冒药150ml*10",
"single_unit" => "一次一包",
"frequency_use" => "1天3次",
"single_use" => "口服",
"prescription_product_num" => "X1盒",
],
[
"product_name" => "感冒药250ml*10",
"single_unit" => "一次一包",
"frequency_use" => "1天3次",
"single_use" => "口服",
"prescription_product_num" => "X1盒",
],
[
"product_name" => "感冒药350ml*10",
"single_unit" => "一次一包",
"frequency_use" => "1天3次",
"single_use" => "口服",
"prescription_product_num" => "X1盒",
],
[
"product_name" => "感冒药450ml*10",
"single_unit" => "一次一包",
"frequency_use" => "1天3次",
"single_use" => "口服",
"prescription_product_num" => "X1盒",
],
[
"product_name" => "感冒药550ml*10",
"single_unit" => "一次一包",
"frequency_use" => "1天3次",
"single_use" => "口服",
"prescription_product_num" => "X1盒",
],
];
// 用药
foreach ($data['product'] as $key => $item){
$x_axis = 229;
$y_axis = 1600 + $key * 250;
$x_axis_num = 1900;// 数量使用
$image->text($item['product_name'], $x_axis, $y_axis, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(50);
$font->align('left');
});
$image->text("X1盒", $x_axis_num, $y_axis, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(50);
$font->align('left');
});
$image->text("用量:" . $item['single_unit'] . " " . $item['frequency_use'], $x_axis, $y_axis+70, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(50);
$font->align('left');
});
$image->text("用法:" . $item['single_use'], $x_axis, $y_axis+140, function ($font) use($fontPath) {
$font->file($fontPath);
$font->size(50);
$font->align('left');
});
$OrderPrescriptionService = new OrderPrescriptionService();
$prescription_img = $OrderPrescriptionService->openPrescription($order_prescription->order_prescription_id,$user_info['user_id']);
if (empty($prescription_img)){
Db::rollBack();
return fail(HttpEnumCode::SERVER_ERROR, "处方开具失败");
}
// 将处理后的图片重新保存到其他路径
$image->save('./runtime/2.jpg');
// 修改处方表
$data = array();
$data['prescription_img'] = $prescription_img;
$data['doctor_created_time'] = date('Y-m-d H:i:s',time());
$params = array();
$params['order_prescription_id'] = $order_prescription->order_prescription_id;
OrderPrescription::edit($params,$data);
}
}