87
tests/test_printer_yilianyun.php
普通文件
87
tests/test_printer_yilianyun.php
普通文件
@@ -0,0 +1,87 @@
|
||||
<?php
|
||||
|
||||
$config = include __DIR__ . "/../application/extra/printer.php";
|
||||
|
||||
$clientId = $config["client_id"];
|
||||
$clientSecret = $config["client_secret"];
|
||||
$machineCode = $config["sn"];
|
||||
|
||||
echo "========== 1. 获取易联云 AccessToken ==========\n";
|
||||
$timestamp = time();
|
||||
$sign = md5($clientId . $timestamp . $clientSecret);
|
||||
|
||||
$tokenParams = [
|
||||
"grant_type" => "client_credentials",
|
||||
"client_id" => $clientId,
|
||||
"client_secret" => $clientSecret,
|
||||
"timestamp" => $timestamp,
|
||||
"sign" => $sign,
|
||||
"id" => sprintf("%04d%04d", rand(1, 9999), rand(1, 9999))
|
||||
];
|
||||
|
||||
$ch = curl_init();
|
||||
curl_setopt($ch, CURLOPT_URL, "https://open-api.yilianyun.net/oauth/oauth");
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_POST, 1);
|
||||
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($tokenParams));
|
||||
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
|
||||
$resTokenStr = curl_exec($ch);
|
||||
curl_close($ch);
|
||||
|
||||
echo "Token 接口返回: " . $resTokenStr . "\n\n";
|
||||
|
||||
$resToken = json_decode($resTokenStr, true);
|
||||
|
||||
if (isset($resToken["body"]["access_token"])) {
|
||||
$accessToken = $resToken["body"]["access_token"];
|
||||
echo "获取 AccessToken 成功: " . $accessToken . "\n\n";
|
||||
|
||||
echo "========== 2. 发送易联云打印小票指令 ==========\n";
|
||||
$content = "<FS2><CB>小众厨房设备商城</CB></FS2>\n";
|
||||
$content .= "<CB>-- 测试订单 --</CB>\n";
|
||||
$content .= "--------------------------------\n";
|
||||
$content .= "订单编号:" . "TEST" . date("YmdHis") . "\n";
|
||||
$content .= "下单时间:" . date("Y-m-d H:i:s") . "\n";
|
||||
$content .= "--------------------------------\n";
|
||||
$content .= "商品名称 数量 单价\n";
|
||||
$content .= "商用切菜机(测试) 1 ¥69.00\n";
|
||||
$content .= "隔热垫(测试) 2 ¥15.00\n";
|
||||
$content .= "--------------------------------\n";
|
||||
$content .= "合计金额:¥99.00 元\n";
|
||||
$content .= "客户姓名:测试用户\n";
|
||||
$content .= "联系电话:13984283762\n";
|
||||
$content .= "送货地址:贵州省修文县城内配送点\n";
|
||||
$content .= "--------------------------------\n";
|
||||
$content .= "<QR>https://chufang.gynhc.com</QR>\n";
|
||||
$content .= "<CB>谢谢惠顾,欢迎再次光临!</CB>\n";
|
||||
|
||||
$printTs = time();
|
||||
$printSign = md5($clientId . $printTs . $clientSecret);
|
||||
|
||||
$printParams = [
|
||||
"client_id" => $clientId,
|
||||
"access_token" => $accessToken,
|
||||
"machine_code" => $machineCode,
|
||||
"content" => $content,
|
||||
"origin_id" => "TEST" . date("YmdHis"),
|
||||
"sign" => $printSign,
|
||||
"timestamp" => $printTs,
|
||||
"id" => sprintf("%04d%04d", rand(1, 9999), rand(1, 9999))
|
||||
];
|
||||
|
||||
$ch2 = curl_init();
|
||||
curl_setopt($ch2, CURLOPT_URL, "https://open-api.yilianyun.net/printer/printindex");
|
||||
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch2, CURLOPT_POST, 1);
|
||||
curl_setopt($ch2, CURLOPT_POSTFIELDS, http_build_query($printParams));
|
||||
curl_setopt($ch2, CURLOPT_TIMEOUT, 10);
|
||||
curl_setopt($ch2, CURLOPT_SSL_VERIFYPEER, false);
|
||||
$resPrintStr = curl_exec($ch2);
|
||||
curl_close($ch2);
|
||||
|
||||
echo "打印接口返回: " . $resPrintStr . "\n";
|
||||
} else {
|
||||
echo "获取 AccessToken 失败,请检查开发者ID与密钥。\n";
|
||||
}
|
||||
|
||||
在新工单中引用
屏蔽一个用户