|
@@ -0,0 +1,438 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace Mshop\Lib;
|
|
|
+
|
|
|
+use Dever;
|
|
|
+
|
|
|
+class Feieyun
|
|
|
+{
|
|
|
+ private $config = array
|
|
|
+ (
|
|
|
+
|
|
|
+ 'user' => '',
|
|
|
+
|
|
|
+ 'ukey' => '',
|
|
|
+
|
|
|
+ 'sn' => '',
|
|
|
+
|
|
|
+ 'host' => 'http://api.feieyun.cn:80/Api/Open/',
|
|
|
+ );
|
|
|
+
|
|
|
+ public function param($param)
|
|
|
+ {
|
|
|
+ $time = time();
|
|
|
+ $param['user'] = this->config['user'];
|
|
|
+ $param[''] = sha1($this->config['user'] . $this->config['ukey'] . $time);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public function send_api()
|
|
|
+ {
|
|
|
+ return Dever::load('mshop/lib/buy.send_commit');
|
|
|
+ }
|
|
|
+
|
|
|
+ <?php
|
|
|
+ header("Content-type: text/html; charset=utf-8");
|
|
|
+ include 'HttpClient.class.php';
|
|
|
+
|
|
|
+ define('USER', 'xxxxxxxxxxxxxxxxx');
|
|
|
+ define('UKEY', 'xxxxxxxxxxxxxxxxx');
|
|
|
+ define('SN', 'xxxxxxxxxxxxxxxxx');
|
|
|
+
|
|
|
+
|
|
|
+ define('IP','api.feieyun.cn');
|
|
|
+ define('PORT',80);
|
|
|
+ define('PATH','/Api/Open/');
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ $content = '<CB>测试打印</CB><BR>';
|
|
|
+ $content .= '名称 单价 数量 金额<BR>';
|
|
|
+ $content .= '--------------------------------<BR>';
|
|
|
+ $content .= '饭 10.0 10 100.0<BR>';
|
|
|
+ $content .= '炒饭 10.0 10 100.0<BR>';
|
|
|
+ $content .= '蛋炒饭 10.0 10 100.0<BR>';
|
|
|
+ $content .= '鸡蛋炒饭 10.0 10 100.0<BR>';
|
|
|
+ $content .= '西红柿炒饭 10.0 10 100.0<BR>';
|
|
|
+ $content .= '西红柿蛋炒饭 10.0 10 100.0<BR>';
|
|
|
+ $content .= '西红柿鸡蛋炒饭 10.0 10 100.0<BR>';
|
|
|
+ $content .= '--------------------------------<BR>';
|
|
|
+ $content .= '备注:加辣<BR>';
|
|
|
+ $content .= '合计:xx.0元<BR>';
|
|
|
+ $content .= '送货地点:广州市南沙区xx路xx号<BR>';
|
|
|
+ $content .= '联系电话:13888888888888<BR>';
|
|
|
+ $content .= '订餐时间:2014-08-08 08:08:08<BR>';
|
|
|
+ $content .= '<QR>http://www.feieyun.com</QR>';
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ $content = "<DIRECTION>1</DIRECTION>";
|
|
|
+ $content .= "<TEXT x='9' y='10' font='12' w='1' h='2' r='0'>#001 五号桌 1/3</TEXT><TEXT x='80' y='80' font='12' w='2' h='2' r='0'>可乐鸡翅</TEXT><TEXT x='9' y='180' font='12' w='1' h='1' r='0'>张三先生 13800138000</TEXT>";
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ * [批量添加打印机接口 Open_printerAddlist]
|
|
|
+ * @param [string] $printerContent [打印机的sn
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function printerAddlist($printerContent){
|
|
|
+ $time = time();
|
|
|
+ $msgInfo = array(
|
|
|
+ 'user'=>USER,
|
|
|
+ 'stime'=>$time,
|
|
|
+ 'sig'=>signature($time),
|
|
|
+ 'apiname'=>'Open_printerAddlist',
|
|
|
+ 'printerContent'=>$printerContent
|
|
|
+ );
|
|
|
+ $client = new HttpClient(IP,PORT);
|
|
|
+ if(!$client->post(PATH,$msgInfo)){
|
|
|
+ echo 'error';
|
|
|
+ }else{
|
|
|
+ $result = $client->getContent();
|
|
|
+ echo $result;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ * [打印订单接口 Open_printMsg]
|
|
|
+ * @param [string] $sn [打印机编号sn]
|
|
|
+ * @param [string] $content [打印内容]
|
|
|
+ * @param [string] $times [打印联数]
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function printMsg($sn,$content,$times){
|
|
|
+ $time = time();
|
|
|
+ $msgInfo = array(
|
|
|
+ 'user'=>USER,
|
|
|
+ 'stime'=>$time,
|
|
|
+ 'sig'=>signature($time),
|
|
|
+ 'apiname'=>'Open_printMsg',
|
|
|
+ 'sn'=>$sn,
|
|
|
+ 'content'=>$content,
|
|
|
+ 'times'=>$times
|
|
|
+ );
|
|
|
+ $client = new HttpClient(IP,PORT);
|
|
|
+ if(!$client->post(PATH,$msgInfo)){
|
|
|
+ echo 'error';
|
|
|
+ }else{
|
|
|
+
|
|
|
+ $result = $client->getContent();
|
|
|
+ echo $result;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * [标签机打印订单接口 Open_printLabelMsg]
|
|
|
+ * @param [string] $sn [打印机编号sn]
|
|
|
+ * @param [string] $content [打印内容]
|
|
|
+ * @param [string] $times [打印联数]
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function printLabelMsg($sn,$content,$times){
|
|
|
+ $time = time();
|
|
|
+ $msgInfo = array(
|
|
|
+ 'user'=>USER,
|
|
|
+ 'stime'=>$time,
|
|
|
+ 'sig'=>signature($time),
|
|
|
+ 'apiname'=>'Open_printLabelMsg',
|
|
|
+ 'sn'=>$sn,
|
|
|
+ 'content'=>$content,
|
|
|
+ 'times'=>$times
|
|
|
+ );
|
|
|
+ $client = new HttpClient(IP,PORT);
|
|
|
+ if(!$client->post(PATH,$msgInfo)){
|
|
|
+ echo 'error';
|
|
|
+ }else{
|
|
|
+
|
|
|
+ $result = $client->getContent();
|
|
|
+ echo $result;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * [批量删除打印机 Open_printerDelList]
|
|
|
+ * @param [string] $snlist [打印机编号,多台打印机请用减号“-”连接起来]
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function printerDelList($snlist){
|
|
|
+ $time = time();
|
|
|
+ $msgInfo = array(
|
|
|
+ 'user'=>USER,
|
|
|
+ 'stime'=>$time,
|
|
|
+ 'sig'=>signature($time),
|
|
|
+ 'apiname'=>'Open_printerDelList',
|
|
|
+ 'snlist'=>$snlist
|
|
|
+ );
|
|
|
+ $client = new HttpClient(IP,PORT);
|
|
|
+ if(!$client->post(PATH,$msgInfo)){
|
|
|
+ echo 'error';
|
|
|
+ }else{
|
|
|
+ $result = $client->getContent();
|
|
|
+ echo $result;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * [修改打印机信息接口 Open_printerEdit]
|
|
|
+ * @param [string] $sn [打印机编号]
|
|
|
+ * @param [string] $name [打印机备注名称]
|
|
|
+ * @param [string] $phonenum [打印机流量卡号码,可以不传参,但是不能为空字符串]
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function printerEdit($sn,$name,$phonenum){
|
|
|
+ $time = time();
|
|
|
+ $msgInfo = array(
|
|
|
+ 'user'=>USER,
|
|
|
+ 'stime'=>$time,
|
|
|
+ 'sig'=>signature($time),
|
|
|
+ 'apiname'=>'Open_printerEdit',
|
|
|
+ 'sn'=>$sn,
|
|
|
+ 'name'=>$name,
|
|
|
+ 'phonenum'=>$phonenum
|
|
|
+ );
|
|
|
+ $client = new HttpClient(IP,PORT);
|
|
|
+ if(!$client->post(PATH,$msgInfo)){
|
|
|
+ echo 'error';
|
|
|
+ }else{
|
|
|
+ $result = $client->getContent();
|
|
|
+ echo $result;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ * [清空待打印订单接口 Open_delPrinterSqs]
|
|
|
+ * @param [string] $sn [打印机编号]
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function delPrinterSqs($sn){
|
|
|
+ $time = time();
|
|
|
+ $msgInfo = array(
|
|
|
+ 'user'=>USER,
|
|
|
+ 'stime'=>$time,
|
|
|
+ 'sig'=>signature($time),
|
|
|
+ 'apiname'=>'Open_delPrinterSqs',
|
|
|
+ 'sn'=>$sn
|
|
|
+ );
|
|
|
+ $client = new HttpClient(IP,PORT);
|
|
|
+ if(!$client->post(PATH,$msgInfo)){
|
|
|
+ echo 'error';
|
|
|
+ }else{
|
|
|
+ $result = $client->getContent();
|
|
|
+ echo $result;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * [查询订单是否打印成功接口 Open_queryOrderState]
|
|
|
+ * @param [string] $orderid [调用打印机接口成功后,服务器返回的JSON中的编号 例如:123456789_20190919163739_95385649]
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function queryOrderState($orderid){
|
|
|
+ $time = time();
|
|
|
+ $msgInfo = array(
|
|
|
+ 'user'=>USER,
|
|
|
+ 'stime'=>$time,
|
|
|
+ 'sig'=>signature($time),
|
|
|
+ 'apiname'=>'Open_queryOrderState',
|
|
|
+ 'orderid'=>$orderid
|
|
|
+ );
|
|
|
+ $client = new HttpClient(IP,PORT);
|
|
|
+ if(!$client->post(PATH,$msgInfo)){
|
|
|
+ echo 'error';
|
|
|
+ }else{
|
|
|
+ $result = $client->getContent();
|
|
|
+ echo $result;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * [查询指定打印机某天的订单统计数接口 Open_queryOrderInfoByDate]
|
|
|
+ * @param [string] $sn [打印机的编号]
|
|
|
+ * @param [string] $date [查询日期,格式YY-MM-DD,如:2019-09-20]
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function queryOrderInfoByDate($sn,$date){
|
|
|
+ $time = time();
|
|
|
+ $msgInfo = array(
|
|
|
+ 'user'=>USER,
|
|
|
+ 'stime'=>$time,
|
|
|
+ 'sig'=>signature($time),
|
|
|
+ 'apiname'=>'Open_queryOrderInfoByDate',
|
|
|
+ 'sn'=>$sn,
|
|
|
+ 'date'=>$date
|
|
|
+ );
|
|
|
+ $client = new HttpClient(IP,PORT);
|
|
|
+ if(!$client->post(PATH,$msgInfo)){
|
|
|
+ echo 'error';
|
|
|
+ }else{
|
|
|
+ $result = $client->getContent();
|
|
|
+ echo $result;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * [获取某台打印机状态接口 Open_queryPrinterStatus]
|
|
|
+ * @param [string] $sn [打印机编号]
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function queryPrinterStatus($sn){
|
|
|
+ $time = time();
|
|
|
+ $msgInfo = array(
|
|
|
+ 'user'=>USER,
|
|
|
+ 'stime'=>$time,
|
|
|
+ 'sig'=>signature($time),
|
|
|
+ 'apiname'=>'Open_queryPrinterStatus',
|
|
|
+ 'sn'=>$sn
|
|
|
+ );
|
|
|
+ $client = new HttpClient(IP,PORT);
|
|
|
+ if(!$client->post(PATH,$msgInfo)){
|
|
|
+ echo 'error';
|
|
|
+ }else{
|
|
|
+ $result = $client->getContent();
|
|
|
+ echo $result;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * [signature 生成签名]
|
|
|
+ * @param [string] $time [当前UNIX时间戳,10位,精确到秒]
|
|
|
+ * @return [string] [接口返回值]
|
|
|
+ */
|
|
|
+ function signature($time){
|
|
|
+ return sha1(USER.UKEY.$time);
|
|
|
+ }
|
|
|
+
|
|
|
+?>
|
|
|
+
|
|
|
+}
|