getMemberInfo([["member_id", "=", $member_id]], "nickname"); $member_info = $member_info_result["data"]; if ($param['type'] == 'manual') { $express_company_id = $param["express_company_id"] ?? 0; $express_company_name = ""; if ($express_company_id > 0) { $express_company_info = model("express_company")->getInfo([["company_id", "=", $express_company_id]], "company_name"); $express_company_name = $express_company_info["company_name"]; } $template_id = 0; $template_name = ''; //查询物流单号是否已存在,如果存在就合并入已存在的数据(手动发货才会合并) $condition = array( ["site_id", "=", $site_id], ["delivery_no", "=", $delivery_no], ["order_id", "=", $order_id], ["delivery_type", "=", $delivery_type], ["express_company_id", "=", $express_company_id], ["member_id", "=", $member_id] ); $info = model("express_delivery_package")->getInfo($condition, "*"); if (!empty($info)) { $temp_order_goods_id_arr = explode(",", $info["order_goods_id_array"]); $temp_goods_id_arr = explode(",", $info["goods_id_array"]); $order_goods_id_array = implode(",", array_unique(array_merge($temp_order_goods_id_arr, $order_goods_id_array))); $goods_id_array = implode(",", array_merge($temp_goods_id_arr, $goods_id_array)); $data = array( "order_goods_id_array" => $order_goods_id_array, "goods_id_array" => $goods_id_array, ); $result = model("express_delivery_package")->update($data, $condition); return $this->success($result); } } else { $delivery_type = 1; //获取模板信息 $template_model = new ExpressElectronicsheet(); $template_info = $template_model->getExpressElectronicsheetInfo( [ ['id', '=', $param['template_id']], ['site_id', '=', $site_id] ], 'template_name,company_id,company_name' ); $template_id = $param['template_id']; $template_name = $template_info['data']['template_name']; $express_company_id = $template_info['data']["company_id"]; $express_company_name = $template_info['data']["company_name"]; } if ($delivery_type > 0) { $count = model("express_delivery_package")->getCount([["site_id", "=", $site_id], ["order_id", "=", $order_id], ["delivery_type", "=", $delivery_type]]); $num = $count + 1; $package_name = "包裹" . $num; } else { $package_name = "无需物流"; } $express_company_info = model("express_company_template")->getInfo([["company_id", "=", $express_company_id]], "logo"); $express_company_image = empty($express_company_info) ? '' : $express_company_info["logo"]; $data = array( "order_id" => $order_id, "order_goods_id_array" => implode(",", $order_goods_id_array), "goods_id_array" => implode(",", $goods_id_array), "delivery_no" => $delivery_no, "site_id" => $site_id, "member_id" => $member_id, "member_name" => $member_info["nickname"] ?? '', "delivery_type" => $delivery_type, "express_company_id" => $express_company_id, "express_company_name" => $express_company_name, "package_name" => $package_name, "delivery_time" => time(), "express_company_image" => $express_company_image, "type" => $param['type'], "template_id" => $template_id, "template_name" => $template_name ); $result = model("express_delivery_package")->add($data); return $result; } }