validate()) return [ 'code' => 1, 'msg' => $this->getErrorSummary(false)[0], ]; // HKG 新增判断商城打烊状态 开始 if(Option::get(OptionSetting::MALL_STATUS,get_store_id(),'store',0)['value'] == 1) return [ 'code' => 1, 'msg' => '商城已打烊~' ]; // HKG 新增判断商城打烊状态 结束 try { // 预生成订单号 $order_no = OrderNo::getOrderNo(OrderNo::ORDER_PT); cache()->set('delivery_order_no_' . get_user_id(), $order_no); $mchList = $this->getMchListData(); if(isset($mchList['code']) && $mchList['code'] == 1){ return $mchList; } } catch(\Exception $e) { return [ 'code' => 1, 'line' => $e->getLine(), 'msg' => $e->getMessage(), 'file' => $e->getFile(), ]; } $food_pay_type = []; $md_info = []; $flag_id = 0; $store = Store::findOne(get_store_id()); // if (get_md_id() && (!empty(input_params('flag_id')) || !empty(input_params('table_num')))) { // if (!empty(input_params('flag_id'))) { // $flag_id = input_params('flag_id'); // } else { // $flag_id = FoodFlag::findOne(['store_id' => get_store_id(), 'md_id' => get_md_id(), 'status' => 0, 'table_num' => input_params('table_num')])->id; // } // if (get_md_id() > 0) { // $food_payment = $md->food_payment; // $food_paytype = $md->food_pay_type; // } else { // $food_payment = $store->food_payment; // $food_paytype = $store->food_pay_type; // } // $food_pay_list = []; // if (!empty($food_payment)) { // $food_pay_type = Json::decode($food_payment); // $pay_type_list_json = Option::get(OptionSetting::STORE_PAYMENT, get_store_id(), 'store'); // $is_food_ok = false; // if (!empty($pay_type_list_json)) { // $pay_type_list = Json::decode($pay_type_list_json['value']); // foreach ($pay_type_list as $index => $pay_type) { // if ($index == 'friend' && $pay_type['value'] == 1) { // $is_food_ok = true; // break; // } // } // } // foreach ($food_pay_type as &$value) { // if ($value['key'] == 'friend') { // if ($is_food_ok && $value['value'] == 1) { // $value['value'] = 1; // } else { // $value['value'] = 0; // } // } // if ($value['key'] == 'friend') { // $value['payment'] = 7; // } // if ($value['key'] == 'alipay') { // $value['payment'] = 4; // } // if ($value['key'] == 'wechat') { // $value['payment'] = 1; // } // if ($value['key'] == 'huodao') { // $value['payment'] = 2; // } // if ($value['key'] == 'bytedance') { // $value['payment'] = 5; // } // } // $food_pay_list = $food_pay_type; // // } // foreach ($food_pay_list as $k => $val) { // if ($val['payment'] == 4 && is_wechat_platform()) { // unset($food_pay_list[$k]); // } // if ($val['payment'] == 1 && is_alipay_platform()) { // unset($food_pay_list[$k]); // } // } // $food_pay_list = array_values($food_pay_list); // // 点餐支付方式 // $food_pay_type = [ // 'food_pay_type' => $food_paytype, // 'food_payment' => $food_pay_list // ]; // } if (get_md_id() > 0) { $md = Md::findOne(get_md_id()); $province_name = District::findOne($md->province)->name; $city_name = District::findOne($md->city)->name; $district_name = District::findOne($md->district)->name; $md_info = [ 'is_md' => 1, 'name' => $md->name, 'detail_address' => $province_name . $city_name . $district_name . $md->address, 'distance' => Tools::getDistance($this->latitude, $this->longitude, $md->latitude, $md->longitude), 'longitude' => $md->longitude, 'latitude' => $md->latitude, 'logo' => $md->cover_url ]; } else { $province_name = District::findOne($store->province_id)->name; $city_name = District::findOne($store->city_id)->name; $district_name = District::findOne($store->district_id)->name; $lat = ''; $long = ''; $coordinate = explode(',', $store->coordinate); if ($coordinate) { $lat = $coordinate[0]; $long = $coordinate[1]; } $md_info = [ 'is_md' => 0, 'name' => $store->name, 'detail_address' => $province_name . $city_name . $district_name . $store->address, 'distance' => Tools::getDistance($this->latitude, $this->longitude, $lat, $long), 'longitude' => $long, 'latitude' => $lat, 'logo' => $store->logo ]; } $template_id = NoticeAction::getSendTamplateId(['order_pay', 'order_submit', 'order_send']); return [ 'code' => 0, 'msg' => 'OOKK', 'data' => [ 'flag_id' => intval($flag_id), 'md_info' => $md_info, 'food_pay' => $food_pay_type, 'pay_type_list' => $this->getPayTypeList(), 'take_price' => sprintf('%.2f',0), 'send_price' => sprintf('%.2f', 0), 'address' => $this->address, 'level' => [], 'mch_list' => $mchList, 'integral'=>$this->integral, 'goods_card_list' => [], 'template_id' => $template_id ], ]; } }