diff --git a/app/Admin/Controllers/ImsCjdcOrderMainController.php b/app/Admin/Controllers/ImsCjdcOrderMainController.php
index b8d4ecc..a40ba17 100644
--- a/app/Admin/Controllers/ImsCjdcOrderMainController.php
+++ b/app/Admin/Controllers/ImsCjdcOrderMainController.php
@@ -3,6 +3,7 @@
namespace App\Admin\Controllers;
use App\Admin\Extensions\OrderDetail;
+use App\Admin\Extensions\OrderPrint;
use App\Admin\Extensions\OrderStateHandle;
use App\Admin\Repositories\ImsCjdcOrderMain;
use Dcat\Admin\Admin;
@@ -44,9 +45,14 @@ class ImsCjdcOrderMainController extends AdminController
$state = $actions->row->state;
if ($state==2){
$actions->append(new OrderStateHandle('接单',3));
+ $actions->append(new OrderPrint('打印'));
}elseif ($state==31){
$actions->append(new OrderStateHandle('完成',4));
+ $actions->append(new OrderPrint('打印'));
+ }elseif ($state==3){
+ $actions->append(new OrderStateHandle('站内自送',30));
}
+
$actions->append(new OrderDetail('详情'));
//$actions->append("拒绝 ");
diff --git a/app/Admin/Controllers/LanzuServiceHorsemanController.php b/app/Admin/Controllers/LanzuServiceHorsemanController.php
index 4a5e39b..0feca6f 100644
--- a/app/Admin/Controllers/LanzuServiceHorsemanController.php
+++ b/app/Admin/Controllers/LanzuServiceHorsemanController.php
@@ -22,10 +22,14 @@ class LanzuServiceHorsemanController extends AdminController
$grid->id->sortable();
$grid->name;
$grid->tel;
- $grid->market_id('所属市场');
- $grid->status('状态');
- $grid->head_url;
- $grid->created_at;
+ $grid->market_id('所属市场')->display(function (){
+ return ImsCjdcMarket::find($this->market_id)->name;
+ });
+ $grid->status('状态')->using([1=>'正常',-1=>'禁用']);
+ $grid->head_url->image('',50,50);
+ $grid->created_at->display(function ($time){
+ return date('Y-m-d H:i',$time);
+ });
$grid->filter(function (Grid\Filter $filter) {
$filter->equal('id');
@@ -44,15 +48,20 @@ class LanzuServiceHorsemanController extends AdminController
{
return Show::make($id, new LanzuServiceHorseman(), function (Show $show) {
$show->id;
- $show->user_id;
+ $show->user_id('懒ID');
$show->name;
$show->tel;
- $show->market_id;
- $show->status;
- $show->qr_url;
- $show->head_url;
- $show->created_at;
- $show->updated_at;
+ $show->market_id('所属市场')->as(function (){
+ return ImsCjdcMarket::find($this->market_id)->name;
+ });
+ $show->status('状态')->using([1=>'正常',-1=>'禁用']);
+ $show->head_url->image();
+ $show->created_at->as(function ($time){
+ return date('Y-m-d H:i',$time);
+ });
+ $show->updated_at->as(function ($time){
+ return date('Y-m-d H:i',$time);
+ });
});
}
@@ -68,9 +77,9 @@ class LanzuServiceHorsemanController extends AdminController
$form->text('user_id','懒ID')->required();
$form->text('name')->required();
$form->mobile('tel')->required();
- $form->text('market_id','所属市场')->options(ImsCjdcMarket::getMarket())->required();
+ $form->select('market_id','所属市场')->options(ImsCjdcMarket::getMarket())->required();
$form->radio('status','状态')->options([1=>'启用',-1=>'禁用'])->value(1)->required();
- $form->image('head_url')->uniqueName();
+ $form->image('head_url')->uniqueName()->required();
$form->display('created_at');
$form->display('updated_at');
diff --git a/app/Admin/Extensions/OrderPrint.php b/app/Admin/Extensions/OrderPrint.php
new file mode 100644
index 0000000..d813fd1
--- /dev/null
+++ b/app/Admin/Extensions/OrderPrint.php
@@ -0,0 +1,34 @@
+getKey();
+ dd($id);
+ }
+
+ /**
+ * 设置要POST到接口的数据
+ *
+ * @return array
+ */
+ public function parameters()
+ {
+
+ }
+}
diff --git a/app/Admin/Extensions/OrderStateHandle.php b/app/Admin/Extensions/OrderStateHandle.php
index 3615407..5e34e39 100644
--- a/app/Admin/Extensions/OrderStateHandle.php
+++ b/app/Admin/Extensions/OrderStateHandle.php
@@ -33,7 +33,14 @@ class OrderStateHandle extends RowAction
$id = $this->getKey();
$orderMain = new ImsCjdcOrderMain();
$state = $request->get('state');
- $res = $orderMain->modifyState($id,$state);
+ if ($state==30){
+ $res = $orderMain->updateShippingType($id,1);
+ }elseif ($state==100){
+
+ }else{
+ $res = $orderMain->modifyState($id,$state);
+ }
+
if ($res==true){
return $this->response()->success('操作成功')->refresh();
}else{
diff --git a/app/Libs/feier_print/api_php_demo.php b/app/Libs/feier_print/api_php_demo.php
new file mode 100644
index 0000000..916993a
--- /dev/null
+++ b/app/Libs/feier_print/api_php_demo.php
@@ -0,0 +1,326 @@
+测试打印
';
+$content .= '名称 单价 数量 金额
';
+$content .= '--------------------------------
';
+$content .= '饭 10.0 10 100.0
';
+$content .= '炒饭 10.0 10 100.0
';
+$content .= '蛋炒饭 10.0 10 100.0
';
+$content .= '鸡蛋炒饭 10.0 10 100.0
';
+$content .= '西红柿炒饭 10.0 10 100.0
';
+$content .= '西红柿蛋炒饭 10.0 10 100.0
';
+$content .= '西红柿鸡蛋炒饭 10.0 10 100.0
';
+$content .= '--------------------------------
';
+$content .= '备注:加辣
';
+$content .= '合计:xx.0元
';
+$content .= '送货地点:广西南宁五象新区
';
+$content .= '联系电话:13888888888888
';
+$content .= '订餐时间:2014-08-08 08:08:08
';
+$content .= 'http://www.feieyun.com';//把二维码字符串用标签套上即可自动生成二维码
+//标签说明:
+$content = "1";//设定打印时出纸和打印字体的方向,n 0 或 1,每次设备重启后都会初始化为 0 值设置,1:正向出纸,0:反向出纸,
+$content .= "#001 五号桌 1/3可乐鸡翅张三先生 13800138000";//40mm宽度标签纸打印例子,打开注释调用标签打印接口打印
+
+/**
+ * [打印订单接口 Open_printMsg]
+ * @param [string] $sn [打印机编号sn]
+ * @param [string] $content [打印内容]
+ * @param [string] $times [打印联数]
+ * @return [string] [接口返回值]
+ */
+function printMsg($sn, $content, $times = 1)
+{
+ $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 {
+ //服务器返回的JSON字符串,建议要当做日志记录起来
+ $result = $client->getContent();
+ return $result;
+ }
+}
+
+/**
+ * [批量添加打印机接口 Open_printerAddlist]
+ * @param [string] $printerContent [打印机的sn#key]
+ * @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();
+ return $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();
+ return $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();
+ return $result;
+ }
+}
+
+/**
+ * [signature 生成签名]
+ * @param [string] $time [当前UNIX时间戳,10位,精确到秒]
+ * @return [string] [接口返回值]
+ */
+function signature($time)
+{
+ return sha1(USER . UKEY . $time);//公共参数,请求公钥
+}
+
+function FeiePrint($order_num)
+{
+ $data = Db::table('ims_cjdc_order_main')
+ ->alias('m')
+ ->join(['ims_cjdc_order'=>'o'],'o.order_main_id = m.id','inner')
+ ->join(['ims_cjdc_order_goods'=>'g'],'o.id = g.order_id','inner')
+ ->join(['ims_cjdc_feprint'=>'f'],'m.market_id = f.market_id','inner')
+ ->join(['ims_cjdc_store'=>'s'],'s.id = o.store_id','inner')
+ //->distinct(true)
+ ->where('m.order_num',$order_num)
+ ->field("o.note as o_note,g.name,g.number,g.money,g.good_unit,m.delivery_time as ps_time,m.address,m.note,m.name as user_name,m.dada_fee,m.money as m_money,m.yhq_money2,m.box_money,f.sn,m.tel,m.order_num,g.id,g.spec,s.name as shopname")
+ ->order('s.id')
+ ->select();
+// $order_goods = Db::table('ims_cjdc_order_goods')->where('order_id', $order_main['id'])->field("name,number,money")->select();
+// $sn = Db::table('ims_cjdc_feprint')->where('market_id', $order_main['market_id'])->value("sn");
+ $content = PrintFormat($data, 14, 6, 3, 6);
+ $res = printMsg($data[0]['sn'], $content, 1);
+ return ($res);
+}
+
+function PrintFormat($arr, $A, $B, $C, $D)
+{
+ $orderInfo = '懒族生活
';
+ $orderInfo .= '名称 单价 数量 金额
';
+ $orderInfo .= '--------------------------------
';
+ $shopname = "";
+ $shopnum = 0;
+ foreach ($arr as $k5 => $v5) {
+ if ($shopname != $v5['shopname']) {
+ if ($shopname != "") {
+ $orderInfo .= '
';
+ }
+ $shopnum++;
+ $orderInfo .= "(" . $shopnum . ")" .$v5['shopname'] . '
';
+ $shopname = $v5['shopname'];
+ }
+ $name = $v5['name'];
+ if(!empty($v5['spec'])) {
+ $name .= "(规格:". $v5['spec'].")";
+ }elseif (!empty($v5['good_unit'])){
+ $name .= "(规格:". $v5['good_unit'].")";
+ }
+ $price = $v5['money'];
+ $num = $v5['number'];
+ $prices = sprintf("%.2f",$v5['money']*$v5['number']);
+ $kw3 = '';
+ $kw1 = '';
+ $kw2 = '';
+ $kw4 = '';
+ $str = $name;
+ $blankNum = $A;//名称控制为14个字节
+ $lan = mb_strlen($str,'utf-8');
+ $m = 0;
+ $j=1;
+ $blankNum++;
+ $result = array();
+ if(strlen($price) < $B){
+ $k1 = $B - strlen($price);
+ for($q=0;$q<$k1;$q++){
+ $kw1 .= ' ';
+ }
+ $price = $kw1.$price;
+ }
+ if(strlen($num) < $C){
+ $k2 = $C - strlen($num);
+ for($q=0;$q<$k2;$q++){
+ $kw2 .= ' ';
+ }
+ $num = $kw2.$num;
+ }
+ if(strlen($prices) < $D){
+ $k3 = $D - strlen($prices);
+ for($q=0;$q<$k3;$q++){
+ $kw4 .= ' ';
+ }
+ $prices = $kw4.$prices;
+ }
+ for ($i=0;$i<$lan;$i++){
+ $new = mb_substr($str,$m,$j,'utf-8');
+ $j++;
+ if(mb_strwidth($new,'utf-8')<$blankNum) {
+ if($m+$j>$lan) {
+ $m = $m+$j;
+ $tail = $new;
+ $lenght = iconv("UTF-8", "GBK//IGNORE", $new);
+ $k = $A - strlen($lenght);
+ for($q=0;$q<$k;$q++){
+ $kw3 .= ' ';
+ }
+ if($m==$j){
+ $tail .= $kw3.' '.$price.' '.$num.' '.$prices;
+ }else{
+ $tail .= $kw3.'
';
+ }
+ break;
+ }else{
+ $next_new = mb_substr($str,$m,$j,'utf-8');
+ if(mb_strwidth($next_new,'utf-8')<$blankNum) continue;
+ else{
+ $m = $i+1;
+ $result[] = $new;
+ $j=1;
+ }
+ }
+ }
+ }
+ $head = '';
+ foreach ($result as $key=>$value) {
+ if($key < 1){
+ $v_lenght = iconv("UTF-8", "GBK//IGNORE", $value);
+ $v_lenght = strlen($v_lenght);
+ if($v_lenght == 13) $value = $value." ";
+ $head .= $value.' '.$price.' '.$num.' '.$prices;
+ }else{
+ $head .= $value.'
';
+ }
+ }
+ $orderInfo .= $head.$tail;
+ if(!empty($v5['o_note'])){
+ $orderInfo .= '备注:'.$v5['o_note'].'
';
+ }
+ @$nums += $prices;
+ }
+// $time = date('Y-m-d H:i:s', time());
+ $orderInfo .= '--------------------------------
';
+ if ($arr[0]['box_money'] > 0) {
+ $kw5 = '';
+ $len = 24 - strlen($arr[0]['box_money']);
+ for ($q = 0; $q < $len; $q++) {
+ $kw5 .= ' ';
+ }
+ $orderInfo .= '包装费:' . $kw5 . $arr[0]['box_money'] . '
';
+ }
+ if($arr[0]['dada_fee'] > 0){
+ $kw5 = '';
+ $len = 24 - strlen($arr[0]['dada_fee']);
+ for ($q = 0; $q < $len; $q++) {
+ $kw5 .= ' ';
+ }
+ $orderInfo .= '配送费:'.$kw5.$arr[0]['dada_fee'].'
';
+ }
+ if($arr[0]['yhq_money2'] > 0){
+ $yhq_money2 = sprintf("%.2f",$arr[0]['yhq_money2']);
+ $kw6 = '';
+ $len = 25 - strlen($yhq_money2);
+ for ($q = 0; $q < $len; $q++) {
+ $kw6 .= ' ';
+ }
+ $orderInfo .= '红包:'.$kw6.'-'.$yhq_money2.'
';
+ }
+ $total = '合计:'.$arr[0]['m_money'];
+ $user_name = $arr[0]['user_name'];
+ if(strlen($user_name)>18){
+ $user_name=substr($user_name,0,18).'...';
+ }
+ $str = $user_name . $total;
+ $kw5 = '';
+ $lenght = iconv("UTF-8", "GBK//IGNORE", $str);
+ $total_len = 32 - strlen($lenght);
+ for ($q = 0; $q < $total_len; $q++) {
+ $kw5 .= ' ';
+ }
+ $total_str = $user_name.$kw5.$total;
+ $orderInfo .= $total_str.'
';
+ $orderInfo .= '送货地点:' . $arr[0]['address'] . '
';
+ $tel = substr_replace( $arr[0]['tel'], '****', 3, 4);
+ $orderInfo .= '联系电话:' . $tel . '
';
+ $orderInfo .= '配送时间:' . $arr[0]['ps_time'] . '
';
+ if(!empty($arr[0]['note'])){
+ $orderInfo .= '备注:'.$arr[0]['note'].'
';
+ }
+ //$orderInfo .= 'http://www.feieyun.com';//把解析后的二维码生成的字符串用标签套上即可自动生成二维码
+ return $orderInfo;
+}
+
+?>
diff --git a/app/Libs/feier_print/httpclient.php b/app/Libs/feier_print/httpclient.php
new file mode 100644
index 0000000..4f691ef
--- /dev/null
+++ b/app/Libs/feier_print/httpclient.php
@@ -0,0 +1,307 @@
+host = $host;
+ $this->port = $port;
+ }
+ function get($path, $data = false) {
+ $this->path = $path;
+ $this->method = 'GET';
+ if ($data) {
+ $this->path .= '?'.$this->buildQueryString($data);
+ }
+ return $this->doRequest();
+ }
+ function post($path, $data) {
+ $this->path = $path;
+ $this->method = 'POST';
+ $this->postdata = $this->buildQueryString($data);
+ return $this->doRequest();
+ }
+ function buildQueryString($data) {
+ $querystring = '';
+ if (is_array($data)) {
+ foreach ($data as $key => $val) {
+ if (is_array($val)) {
+ foreach ($val as $val2) {
+ $querystring .= urlencode($key).'='.urlencode($val2).'&';
+ }
+ } else {
+ $querystring .= urlencode($key).'='.urlencode($val).'&';
+ }
+ }
+ $querystring = substr($querystring, 0, -1); // Eliminate unnecessary &
+ } else {
+ $querystring = $data;
+ }
+ return $querystring;
+ }
+ function doRequest() {
+ if (!$fp = @fsockopen($this->host, $this->port, $errno, $errstr, $this->timeout)) {
+ switch($errno) {
+ case -3:
+ $this->errormsg = 'Socket creation failed (-3)';
+ case -4:
+ $this->errormsg = 'DNS lookup failure (-4)';
+ case -5:
+ $this->errormsg = 'Connection refused or timed out (-5)';
+ default:
+ $this->errormsg = 'Connection failed ('.$errno.')';
+ $this->errormsg .= ' '.$errstr;
+ $this->debug($this->errormsg);
+ }
+ return false;
+ }
+ socket_set_timeout($fp, $this->timeout);
+ $request = $this->buildRequest();
+ $this->debug('Request', $request);
+ fwrite($fp, $request);
+ $this->headers = array();
+ $this->content = '';
+ $this->errormsg = '';
+ $inHeaders = true;
+ $atStart = true;
+ while (!feof($fp)) {
+ $line = fgets($fp, 4096);
+ if ($atStart) {
+ $atStart = false;
+ if (!preg_match('/HTTP\/(\\d\\.\\d)\\s*(\\d+)\\s*(.*)/', $line, $m)) {
+ $this->errormsg = "Status code line invalid: ".htmlentities($line);
+ $this->debug($this->errormsg);
+ return false;
+ }
+ $http_version = $m[1];
+ $this->status = $m[2];
+ $status_string = $m[3];
+ $this->debug(trim($line));
+ continue;
+ }
+ if ($inHeaders) {
+ if (trim($line) == '') {
+ $inHeaders = false;
+ $this->debug('Received Headers', $this->headers);
+ if ($this->headers_only) {
+ break;
+ }
+ continue;
+ }
+ if (!preg_match('/([^:]+):\\s*(.*)/', $line, $m)) {
+ continue;
+ }
+ $key = strtolower(trim($m[1]));
+ $val = trim($m[2]);
+ if (isset($this->headers[$key])) {
+ if (is_array($this->headers[$key])) {
+ $this->headers[$key][] = $val;
+ } else {
+ $this->headers[$key] = array($this->headers[$key], $val);
+ }
+ } else {
+ $this->headers[$key] = $val;
+ }
+ continue;
+ }
+ $this->content .= $line;
+ }
+ fclose($fp);
+ if (isset($this->headers['content-encoding']) && $this->headers['content-encoding'] == 'gzip') {
+ $this->debug('Content is gzip encoded, unzipping it');
+ $this->content = substr($this->content, 10);
+ $this->content = gzinflate($this->content);
+ }
+ if ($this->persist_cookies && isset($this->headers['set-cookie']) && $this->host == $this->cookie_host) {
+ $cookies = $this->headers['set-cookie'];
+ if (!is_array($cookies)) {
+ $cookies = array($cookies);
+ }
+ foreach ($cookies as $cookie) {
+ if (preg_match('/([^=]+)=([^;]+);/', $cookie, $m)) {
+ $this->cookies[$m[1]] = $m[2];
+ }
+ }
+ $this->cookie_host = $this->host;
+ }
+ if ($this->persist_referers) {
+ $this->debug('Persisting referer: '.$this->getRequestURL());
+ $this->referer = $this->getRequestURL();
+ }
+ if ($this->handle_redirects) {
+ if (++$this->redirect_count >= $this->max_redirects) {
+ $this->errormsg = 'Number of redirects exceeded maximum ('.$this->max_redirects.')';
+ $this->debug($this->errormsg);
+ $this->redirect_count = 0;
+ return false;
+ }
+ $location = isset($this->headers['location']) ? $this->headers['location'] : '';
+ $uri = isset($this->headers['uri']) ? $this->headers['uri'] : '';
+ if ($location || $uri) {
+ $url = parse_url($location.$uri);
+ return $this->get($url['path']);
+ }
+ }
+ return true;
+ }
+ function buildRequest() {
+ $headers = array();
+ $headers[] = "{$this->method} {$this->path} HTTP/1.0";
+ $headers[] = "Host: {$this->host}";
+ $headers[] = "User-Agent: {$this->user_agent}";
+ $headers[] = "Accept: {$this->accept}";
+ if ($this->use_gzip) {
+ $headers[] = "Accept-encoding: {$this->accept_encoding}";
+ }
+ $headers[] = "Accept-language: {$this->accept_language}";
+ if ($this->referer) {
+ $headers[] = "Referer: {$this->referer}";
+ }
+ if ($this->cookies) {
+ $cookie = 'Cookie: ';
+ foreach ($this->cookies as $key => $value) {
+ $cookie .= "$key=$value; ";
+ }
+ $headers[] = $cookie;
+ }
+ if ($this->username && $this->password) {
+ $headers[] = 'Authorization: BASIC '.base64_encode($this->username.':'.$this->password);
+ }
+ if ($this->postdata) {
+ $headers[] = 'Content-Type: application/x-www-form-urlencoded';
+ $headers[] = 'Content-Length: '.strlen($this->postdata);
+ }
+ $request = implode("\r\n", $headers)."\r\n\r\n".$this->postdata;
+ return $request;
+ }
+ function getStatus() {
+ return $this->status;
+ }
+ function getContent() {
+ return $this->content;
+ }
+ function getHeaders() {
+ return $this->headers;
+ }
+ function getHeader($header) {
+ $header = strtolower($header);
+ if (isset($this->headers[$header])) {
+ return $this->headers[$header];
+ } else {
+ return false;
+ }
+ }
+ function getError() {
+ return $this->errormsg;
+ }
+ function getCookies() {
+ return $this->cookies;
+ }
+ function getRequestURL() {
+ $url = 'https://'.$this->host;
+ if ($this->port != 80) {
+ $url .= ':'.$this->port;
+ }
+ $url .= $this->path;
+ return $url;
+ }
+ function setUserAgent($string) {
+ $this->user_agent = $string;
+ }
+ function setAuthorization($username, $password) {
+ $this->username = $username;
+ $this->password = $password;
+ }
+ function setCookies($array) {
+ $this->cookies = $array;
+ }
+ function useGzip($boolean) {
+ $this->use_gzip = $boolean;
+ }
+ function setPersistCookies($boolean) {
+ $this->persist_cookies = $boolean;
+ }
+ function setPersistReferers($boolean) {
+ $this->persist_referers = $boolean;
+ }
+ function setHandleRedirects($boolean) {
+ $this->handle_redirects = $boolean;
+ }
+ function setMaxRedirects($num) {
+ $this->max_redirects = $num;
+ }
+ function setHeadersOnly($boolean) {
+ $this->headers_only = $boolean;
+ }
+ function setDebug($boolean) {
+ $this->debug = $boolean;
+ }
+ function quickGet($url) {
+ $bits = parse_url($url);
+ $host = $bits['host'];
+ $port = isset($bits['port']) ? $bits['port'] : 80;
+ $path = isset($bits['path']) ? $bits['path'] : '/';
+ if (isset($bits['query'])) {
+ $path .= '?'.$bits['query'];
+ }
+ $client = new HttpClient($host, $port);
+ if (!$client->get($path)) {
+ return false;
+ } else {
+ return $client->getContent();
+ }
+ }
+ function quickPost($url, $data) {
+ $bits = parse_url($url);
+ $host = $bits['host'];
+ $port = isset($bits['port']) ? $bits['port'] : 80;
+ $path = isset($bits['path']) ? $bits['path'] : '/';
+ $client = new HttpClient($host, $port);
+ if (!$client->post($path, $data)) {
+ return false;
+ } else {
+ return $client->getContent();
+ }
+ }
+ function debug($msg, $object = false) {
+ if ($this->debug) {
+ print '
HttpClient Debug: '.$msg;
+ if ($object) {
+ ob_start();
+ print_r($object);
+ $content = htmlentities(ob_get_contents());
+ ob_end_clean();
+ print '
'.$content.'
';
+ }
+ print '
';
+ }
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/app/Libs/feier_print/飞鹅云打印说明文档.txt b/app/Libs/feier_print/飞鹅云打印说明文档.txt
new file mode 100644
index 0000000..4fecb48
--- /dev/null
+++ b/app/Libs/feier_print/飞鹅云打印说明文档.txt
@@ -0,0 +1,46 @@
+一、添加打印机
+
+ 方法名 printerContent($content)
+
+ 参数说明 $content 打印机编号(必填) # 打印机识别码(必填) # 备注名称(选填) # 流量卡号码(选填),多台打印机请换行(\n)添加新打印机信息,每次最多100台
+ 如:316500010 # abcdefgh # 快餐前台 # 13688889999
+ 316500011 # abcdefgh # 快餐厨房 # 13688889990
+二、删除打印机
+
+ 方法名 printerDelList($snlist)
+
+ 参数说明 $snlist 打印机编号 多台用-连接
+ 如:316500010-316500011
+三、打印订单
+
+ 方法名 printMsg($sn,$content,$times)
+
+ 参数说明 $sn 打印机编码 $content 打印内容 $times 打印张数 无值默认为1
+ 如: $sn = 550510805;
+ $content = '测试打印
';
+ $content .= '名称 单价 数量 金额
';
+ $content .= '--------------------------------
';
+ $content .= '饭 10.0 10 100.0
';
+ $content .= '炒饭 10.0 10 100.0
';
+ $content .= '蛋炒饭 10.0 10 100.0
';
+ $content .= '鸡蛋炒饭 10.0 10 100.0
';
+ $content .= '西红柿炒饭 10.0 10 100.0
';
+ $content .= '西红柿蛋炒饭 10.0 10 100.0
';
+ $content .= '西红柿鸡蛋炒饭 10.0 10 100.0
';
+ $content .= '--------------------------------
';
+ $content .= '备注:加辣
';
+ $content .= '合计:xx.0元
';
+ $content .= '送货地点:广西南宁五象新区
';
+ $content .= '联系电话:13888888888888
';
+ $content .= '订餐时间:2014-08-08 08:08:08
';
+ $content .= 'http://www.feieyun.com';//把二维码字符串用标签套上即可自动生成二维码
+ //标签说明:
+ $content = "1";//设定打印时出纸和打印字体的方向,n 0 或 1,每次设备重启后都会初始化为 0 值设置,1:正向出纸,0:反向出纸,
+ $content .= "#001 五号桌 1/3可乐鸡翅张三先生 13800138000";//40mm宽度标签纸打印例子,打开注释调用标签打印接口打印
+
+四、查询订单状态
+
+ 方法名 queryOrderState($orderid)
+
+ 参数说明 $orderid 飞鹅订单号(发起打印请求成功时,从回调的参数中获取)
+ 如:550510805_20200603103522_387054119
\ No newline at end of file
diff --git a/app/Models/ImsCjdcMarket.php b/app/Models/ImsCjdcMarket.php
index 1496a8c..ca35ebb 100644
--- a/app/Models/ImsCjdcMarket.php
+++ b/app/Models/ImsCjdcMarket.php
@@ -8,7 +8,7 @@ use Illuminate\Database\Eloquent\Model;
class ImsCjdcMarket extends Model
{
- use HasDateTimeFormatter;
+ use HasDateTimeFormatter;
use SoftDeletes;
protected $table = 'ims_cjdc_market';
@@ -29,6 +29,18 @@ class ImsCjdcMarket extends Model
return $this->hasOne('\App\Models\LanzuMpInfo','id','mp_id');
}
-
+ /**
+ * 获取市场信息
+ * @return \Illuminate\Http\JsonResponse
+ */
+ public static function getMarket()
+ {
+ $markets = self::get();
+ $item = [];
+ foreach ($markets as $market) {
+ $item[$market->id] = $market->name;
+ }
+ return $item;
+ }
}
diff --git a/app/Models/ImsCjdcOrderMain.php b/app/Models/ImsCjdcOrderMain.php
index 76ad925..661354b 100644
--- a/app/Models/ImsCjdcOrderMain.php
+++ b/app/Models/ImsCjdcOrderMain.php
@@ -55,5 +55,8 @@ class ImsCjdcOrderMain extends Model
}
-
+ public function updateShippingType($oid,$type)
+ {
+ return self::where('id',$oid)->update(['order_shipping_code'=>$type]);
+ }
}
diff --git a/app/Models/LanzuServiceHorseman.php b/app/Models/LanzuServiceHorseman.php
index 74ad9f0..38017bc 100644
--- a/app/Models/LanzuServiceHorseman.php
+++ b/app/Models/LanzuServiceHorseman.php
@@ -12,5 +12,5 @@ class LanzuServiceHorseman extends Model
use SoftDeletes;
protected $table = 'lanzu_service_horseman';
-
+ protected $dateFormat = 'U';
}