// +---------------------------------------------------------------------- declare (strict_types=1); namespace app\store\controller; use app\store\model\Order as OrderModel; use app\store\model\Goods as GoodsModel; use think\response\Json; use app\common\model\UploadFile as UploadFileModel; use PhpOffice\PhpSpreadsheet\Calculation\Statistical\Distributions\F; /** * 订单管理 * Class Order * @package app\store\controller */ class Order extends Controller { /** * 订单列表 * @param string $dataType * @return Json */ public function list(string $dataType): Json { // 订单列表 $model = new OrderModel; $params = $this->request->param(); $params['merchantId'] = $this->merchantId; $result = $model->getList($params); $data = $result->items(); $goodsModel = new GoodsModel; if (!empty($data)) { foreach ($data as $key => $value) { $data[$key]['address_match_text'] = '--'; $copy_text = "订单号:{$value['order_no']}\n"; $goods_images = $goodsModel->storeUsePlatformGoodsImage(array_column($value['goods']->toArray(), 'origin_goods_id')); foreach ($value['goods'] as $good) { //使用总后台的商品图片 if ($good['origin_goods_id'] && $value['store_id'] > 0) { $good['goods_image'] = $goods_images[$good['origin_goods_id']][0]['file']['preview_url'] ?? ""; } $copy_text .= "商品名称:{$good['goods_name']}\n"; if (!empty($good['goods_no'])) { $copy_text .= "商品编码:{$good['goods_no']}\n"; } $copy_text .= "单价:{$good['goods_price']}\n"; $copy_text .= "数量:{$good['total_num']}\n"; $copy_text .= "总价:{$good['total_price']}\n"; $copy_text .= "\n"; } if (!empty($value['address'])) { $copy_text .= "\n"; $copy_text .= "收件人:{$value['address']['name']}\n"; $copy_text .= "电话:{$value['address']['phone']}\n"; $address = ''; if (!empty($value['address']['region'])) { $address = $value['address']['region']['province'] . $value['address']['region']['city'] . $value['address']['region']['region']; } $copy_text .= "地址:$address{$value['address']['detail']}\n"; } $data[$key]['copy_text'] = $copy_text; if ($value['delivery_type'] == 10) { if ($value['address_match'] == 20) { $data[$key]['address_match_text'] = '匹配'; } else { $data[$key]['address_match_text'] = '不匹配'; } } $merchant = null; if ($value['merchant_id']) { $merchant = \app\common\model\Merchant::detail($value['merchant_id'], $value['store_id']); if ($merchant) { if ($merchant['license_img_id']) { $img_ids = explode(",", $merchant['license_img_id']); $files = UploadFileModel::getFileList($img_ids, $value['store_id']); $merchant['licenseImg'] = $files ?: null; } if ($merchant['logo_image_id']) { $files = UploadFileModel::getFileList([$merchant['logo_image_id']], $value['store_id']); $merchant['logoImage'] = $files ?: null; } } } $data[$key]['merchant'] = $merchant; } } $list['current_page'] = $result->currentPage(); $list['last_page'] = $result->lastPage(); $list['total'] = $result->total(); $list['data'] = $data; return $this->renderSuccess(compact('dataType', 'list')); } /** * 订单详情 * @param int $orderId * @return Json */ public function detail(int $orderId): Json { // 订单详情 $model = new OrderModel; if (!$detail = $model->getDetail($orderId)) { return $this->renderError('未找到该订单记录'); } return $this->renderSuccess(compact('detail')); } public function getHomeLocation(string $mobile){ $host = "https://ec8a.api.huachen.cn"; $path = "/mobile"; $method = "GET"; $appcode = "06d67297e6e14268801dbc3c974bec7e"; $headers = array(); array_push($headers, "Authorization:APPCODE " . $appcode); $bodys = ""; $url = $host . $path . "?" .'mobile='. $mobile; $curl = curl_init(); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_FAILONERROR, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); print_r(curl_exec($curl)); exit; // curl_setopt($curl, CURLOPT_HEADER, true); // if (1 == strpos("$".$host, "https://")) // { // curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); // } return (curl_exec($curl)); } }