打印 增加条码,调整bug等

main
yanzai 6 months ago
parent 1c12550ed8
commit 813b47c930

@ -78,6 +78,10 @@ class WorkMainController extends Controller
// }
}
$generator = new \Picqer\Barcode\BarcodeGeneratorHTML();
$tiaoma= $generator->getBarcode($value->app_num, $generator::TYPE_CODE_128, 2, 40);
$updatedHtml = preg_replace('/background-color:\s*black\s*;/i', 'background-color: black !important;', $tiaoma);
$value->barcode=$updatedHtml;
$itemInfo[]=[
'maininfo'=>$value,
'iteminfo'=>$ii,

@ -17,6 +17,7 @@ class UserController extends Controller
if ($res['code'] == 200) {
$res_data = $res['data'];
foreach ($res_data as $data_k => $data_v) {
if( $data_v['emplCode']=='admin') continue;
$user = DB::table('users')->where(['cas_code' => $data_v['emplCode']])->first();
$dept = DB::table('s_department')->where(['department_number' => $data_v['deptCode']])->first();
if (!$user) {
@ -25,6 +26,7 @@ class UserController extends Controller
'cas_code' => $data_v['emplCode'],
'cn_name' => $data_v['emplName'],
'username' => $data_v['emplCode'],
'pwd' =>'$2y$10$HlgBHem3knR9JGcPWWxfhuj/oQzGouQaWQ8BIDbSxliJ39G6pOj/K',//默认密码111111
'department_id' => $dept->id,
'status' => 1,
]);

@ -0,0 +1,16 @@
<?php
namespace App\Http\Controllers\API\Third;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
class CSharpController extends Controller
{
//C#调用这个接口通知pacs
public function NoticePacs(Request $request){
$orderNo = $request->query('orderNo');//医嘱号
Log::info($orderNo);
}
}

@ -33,14 +33,20 @@ class UserService
public function Save($arr){
$result=[];
if($arr['info']['id']){
$query=DB::table('users')->where(['id'=>$arr['info']['id']])->update([
$updateData = [
'group' => $arr['info']['groupId'],
'cn_name' => $arr['info']['cname'],
'username' => $arr['info']['uname'],
'status'=>$arr['info']['status'],
'department_id'=> isset($arr['info']['department_id']) ?$arr['info']['department_id']: 0,
'ward'=> isset($arr['info']['ward']) ?$arr['info']['ward']: null
]);
'status' => $arr['info']['status'],
];
if (isset($arr['info']['department_id'])) {
$updateData['department_id'] = $arr['info']['department_id'];
}
if (isset($arr['info']['ward'])) {
$updateData['ward'] = $arr['info']['ward'];
}
$query=DB::table('users')->where(['id'=>$arr['info']['id']])->update($updateData);
if($query){
$result['status']='ok';
$result['msg']='操作成功';

@ -10,7 +10,8 @@
"guzzlehttp/guzzle": "^7.0.1",
"laravel/framework": "^8.75",
"laravel/sanctum": "^2.11",
"laravel/tinker": "^2.5"
"laravel/tinker": "^2.5",
"picqer/php-barcode-generator": "^2.4"
},
"require-dev": {
"facade/ignition": "^2.5",

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "c61ff82cbf0142a401a48a8161e1595a",
"content-hash": "f37155ab1899ea3d5b3c56dba1cf5e92",
"packages": [
{
"name": "asm89/stack-cors",
@ -2378,6 +2378,93 @@
],
"time": "2023-02-25T19:38:58+00:00"
},
{
"name": "picqer/php-barcode-generator",
"version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/picqer/php-barcode-generator.git",
"reference": "4cec18909dffd86e14beb69b1040f2520c2e1bb1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/picqer/php-barcode-generator/zipball/4cec18909dffd86e14beb69b1040f2520c2e1bb1",
"reference": "4cec18909dffd86e14beb69b1040f2520c2e1bb1",
"shasum": ""
},
"require": {
"ext-mbstring": "*",
"php": "^7.3|^8.0"
},
"require-dev": {
"phpstan/phpstan": "^1.10",
"phpunit/phpunit": "^9.5"
},
"suggest": {
"ext-bcmath": "Barcode IMB (Intelligent Mail Barcode) needs bcmath extension",
"ext-gd": "For JPG and PNG generators, GD or Imagick is required",
"ext-imagick": "For JPG and PNG generators, GD or Imagick is required"
},
"type": "library",
"autoload": {
"psr-4": {
"Picqer\\Barcode\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"LGPL-3.0-or-later"
],
"authors": [
{
"name": "Nicola Asuni",
"email": "info@tecnick.com",
"homepage": "http://nicolaasuni.tecnick.com"
},
{
"name": "Casper Bakker",
"email": "info@picqer.com",
"homepage": "https://picqer.com"
}
],
"description": "An easy to use, non-bloated, barcode generator in PHP. Creates SVG, PNG, JPG and HTML images from the most used 1D barcode standards.",
"homepage": "https://github.com/picqer/php-barcode-generator",
"keywords": [
"CODABAR",
"Code11",
"Code93",
"EAN13",
"KIX",
"KIXCODE",
"MSI",
"POSTNET",
"Pharma",
"Standard 2 of 5",
"barcode",
"barcode generator",
"code128",
"code39",
"ean",
"html",
"jpeg",
"jpg",
"php",
"png",
"svg",
"upc"
],
"support": {
"issues": "https://github.com/picqer/php-barcode-generator/issues",
"source": "https://github.com/picqer/php-barcode-generator/tree/v2.4.0"
},
"funding": [
{
"url": "https://github.com/casperbakker",
"type": "github"
}
],
"time": "2023-09-16T08:58:52+00:00"
},
{
"name": "psr/clock",
"version": "1.0.0",
@ -8420,7 +8507,7 @@
"prefer-stable": true,
"prefer-lowest": false,
"platform": {
"php": "^7.3|^8.0"
"php": "^7.4|^8.0"
},
"platform-dev": [],
"plugin-api-version": "2.3.0"

@ -566,7 +566,13 @@
// 标题部分
'<div>' +
'<div style="width: 100%;text-align: center;font-size: 22px;">秦皇岛市中医医院</div>' +
'<div style="width: 100%;text-align: center;font-size: 18px;font-weight: bold;">检查预约回执单</div>' +
'<div style="width: 100%;text-align: center;font-size: 18px;font-weight: bold;">检查预约回执单</div>'+
'<div style="width:200px;height:50px;-webkit-print-color-adjust: exact; position: absolute;right: 10px;top:0px;">' +
// '<div style="background-color:#000000 !important; width:24px;height:50px;">1111</div>' +
'<div>'+ v.maininfo.barcode+'</div>'+
'<div style="text-align: center">'+v.maininfo.app_num+'</div>'+
'</div>'+
'</div>' +
// 基本信息表格
@ -590,7 +596,7 @@
// 检查信息
'<div style="border-bottom: 1px solid #333;font-size: 18px;padding-left: 8px;">' +
'<div>检查项目:'+v.maininfo.entrust+'</div>' +
'<div>预约时间:'+v.maininfo.reservation_date+' ' +(v.maininfo.period_begin_time || "").substring(0, 5)+'-'+(v.maininfo.period_end_time || "").substring(0, 5)+' '+ v.maininfo.weekday_label+'</div>' +
'<div>预约时间:'+v.maininfo.reservation_date+' ' +(v.maininfo.period_begin_time || "").substring(0, 5)+'-'+(v.maininfo.period_end_time || "").substring(0, 5)+' '+ v.maininfo.weekday_label+'</div>' +
'<div>检查地点:'+v.maininfo.department_resources?.department_resources_addr+'</div>' +
'</div>' +
@ -625,6 +631,9 @@
);
})
$("#shenqingdan").show();
$("#shenqingdan").jqprint();
$("#shenqingdan").hide();
@ -862,13 +871,13 @@
<td style="border: none; text-align: left;">姓名xxx</td>
<td style="border: none; text-align: left;">性别xxx</td>
<td style="border: none; text-align: left;">年龄xxx</td>
<td style="border: none; text-align: left;">病人类型xxx</td>
<td style="border: none; text-align: left;">病人类型xxx</td>
</tr>
<tr style="border: none;">
<td style="border: none; text-align: left;">住院号xxx</td>
<td style="border: none; text-align: left;">病区xxx</td>
<td style="border: none; text-align: left;">床号xxx</td>
<td style="border: none; text-align: left;">联系电话xxx</td>
<td style="border: none; text-align: left;">联系电话xxx</td>
</tr>
</table>
</div>
@ -886,7 +895,7 @@
<div>2、预约时间为8点~10点的请8点到登记处签到预约时间为10点~12点的请10点前到登记处签到便于工作人员进行检查评估和准备。</div>
<div>3、预约时间不是实际检查时间以现场登记后排队号为准。</div>
</td>
</tr>
</tr>
</table>
</div>
<div style="border-top: 1px solid #333;padding-left: 8px;">
@ -909,8 +918,19 @@
</div>
<style media="print">
@page{
size: auto;
margin: 0;
}</style>
<style>
*{
-webkit-print-color-adjust: exact;
color-adjust: exact;
}
table {
width: 100%;

@ -18,52 +18,52 @@
opt = $.extend({}, $.fn.jqprint.defaults, options);
var $element = (this instanceof jQuery) ? this : $(this);
if (opt.operaSupport && $.browser.opera)
{
if (opt.operaSupport && $.browser.opera)
{
var tab = window.open("","jqPrint-preview");
tab.document.open();
var doc = tab.document;
}
else
else
{
var $iframe = $("<iframe />");
if (!opt.debug) { $iframe.css({ position: "absolute", width: "0px", height: "0px", left: "-600px", top: "-600px" }); }
$iframe.appendTo("body");
var doc = $iframe[0].contentWindow.document;
}
if (opt.importCSS)
{
if ($("link[media=print]").length > 0)
if ($("link[media=print]").length > 0)
{
$("link[media=print]").each( function() {
doc.write("<link type='text/css' rel='stylesheet' href='" + $(this).attr("href") + "' media='print' />");
});
}
else
else
{
$("link").each( function() {
doc.write("<link type='text/css' rel='stylesheet' href='" + $(this).attr("href") + "' />");
});
}
}
if (opt.printContainer) { doc.write($element.outer()); }
else { $element.each( function() { doc.write($(this).html()); }); }
doc.close();
(opt.operaSupport && $.browser.opera ? tab : $iframe[0].contentWindow).focus();
setTimeout( function() { (opt.operaSupport && $.browser.opera ? tab : $iframe[0].contentWindow).print(); if (tab) { tab.close(); } }, 1000);
}
$.fn.jqprint.defaults = {
debug: false,
importCSS: true,
importCSS: true,
printContainer: true,
operaSupport: true
};
@ -71,5 +71,5 @@
// Thanks to 9__, found at http://users.livejournal.com/9__/380664.html
jQuery.fn.outer = function() {
return $($('<div></div>').html(this.clone())).html();
}
})(jQuery);
}
})(jQuery);

@ -157,4 +157,5 @@ Route::group(['middleware'=>['log']],function () {
Route::post('/GetEntrustInfo','App\Http\Controllers\API\Third\PacsController@GetEntrustInfo' );
});
Route::get('/NoticePacs','App\Http\Controllers\API\Third\CSharpController@NoticePacs' )->middleware('log');;//通知pacs

@ -114,7 +114,7 @@
})
})
const hunxiao=(str)=>{
let originalString =str
let originalString =String(str)
var charMap = {
'a': 'z', 'b': 'y', 'c': 'x', 'd': 'w', 'e': 'v',
'f': 'u', 'g': 't', 'h': 's', 'i': 'r', 'j': 'q',

@ -200,11 +200,16 @@
</div>
</el-dialog>
<div id="shenqingdan" v-if="shenqingdan_show">
<div id="shenqingdan" v-if="shenqingdan_show" style="position: relative;">
<div v-for="(item,index) in shenqingdan_list" :key="index">
<div>
<div style="width: 100%;text-align: center;font-size: 22px;">秦皇岛市中医医院</div>
<div style="width: 100%;text-align: center;font-size: 18px;font-weight: bold;">检查预约回执单</div>
<div style="width:200px;height:50px;-webkit-print-color-adjust: exact; position: absolute;right: 10px;top:0px;">
<div style="display: flex;justify-content: center;" v-html="item.maininfo.barcode" ></div>
<div style="text-align: center">{{item.maininfo.app_num}}</div>
</div>
</div>
<div style="border-top: 1px solid #333; border-bottom: 1px solid #333;padding-left: 4px;">
<table style="border: none;font-size: 16px; width: 100%;">

Loading…
Cancel
Save