/**
 * 调用群发接口,发送多条图文消息,服务号每个月4次
 */
function sendmultinewmsg()
{
    // 当前php文件所在目录
    //define('DIR_ROOT', str_replace('\\', '/', dirname(__FILE__)));
    // 项目根目录
    define('DIR_ROOT', $_SERVER['DOCUMENT_ROOT']);
    //define('DIR_ROOT', "/wwwroot/");
    $courseids = $_POST["courseids"];
    /*$inTemp = "";
    	foreach($courseids as $courseid){
    		$inTemp = $inTemp.$courseid.",";
    	}
    	$in = substr($inTemp, 0, strlen($inTemp) -1);
    	*/
    // 根据courseid查询对应的课程(推送)信息
    $querysql = "select * from cn_news where id in  (" . $courseids . ")";
    global $db;
    global $smarty;
    $res = $db->query($querysql);
    $rowlist = $db->fetch_all($res);
    // 先判断下是否存在不满足条件的数据
    $errortitle = "";
    foreach ($rowlist as $row) {
        if (empty($row["simage"])) {
            $errortitle .= "<font color='red'>\"" . $row["id"] . "\"</font><br />";
        }
    }
    if (!empty($errortitle)) {
        echo "编号为:<br />" . $errortitle . "的信息不完善,请重新编辑,添加图片、缩略图信息";
        return;
    }
    // TODO 先保存图片素材,得到media_id, 页面提示用户,图片素材数量上限
    // 图片(image)、语音(voice)、视频(video)和缩略图(thumb)
    $meidaType = "image";
    //
    // 循环所有的消息,制成成图片消息,拿到media id 数组
    $articles = array();
    $showcoverpic = "0";
    // 是否显示封面,1为显示,0为不显示
    foreach ($rowlist as $row) {
        //获取当前文件物理路径
        $tmp_file = DIR_ROOT . "/" . $row["simage"];
        //echo $tmp_file;
        if (file_exists($tmp_file)) {
            // 先循环制作所有的图片素材, 调素材管理接口上传图片,得到meidaid
            $response = WxUtil::uploadpic($meidaType, $tmp_file);
            if ($response["errcode"] == 0) {
                // 制作成功的,拼成一条信息
                $picmediaid = $response["media_id"];
                $title = $row["title"];
                $sourceurl = "http://bangmaisiw.w107.mc-test.com/wap/Course-Details.php?id=" . $row["id"];
                $content = $row["contents"];
                $digest = "";
                $article = array("thumb_media_id" => $picmediaid, "author" => "", "title" => $title, "content_source_url" => $sourceurl, "content" => $content, "digest" => $digest, "show_cover_pic" => $showcoverpic);
                $articles[] = $article;
            } else {
                LogUtil::logs("批量创建图片素材失败:消息来源id:" . $row["id"] . ",错误信息:" . $response["errmsg"], getLogFile("/business.log"));
            }
        } else {
            LogUtil::logs("文件不存在:" . $row["image"], getLogFile("/business.log"));
        }
    }
    $pictextResp = WxUtil::uploadmultipicmsg($articles);
    //echo print_r($pictextResp);
    // 图文消息 media_id
    if ($pictextResp["errcode"] == 0) {
        $pictextMediaid = $pictextResp["media_id"];
        // 拿到mediaid, 就可以发起推送了
        // 先获取openid列表
        $openidsql = "select openid, nickname from wx_user_info where subscribe = '1' ";
        $openidres = $db->query($openidsql);
        // php的json格式:array(""=>"")
        $openidList = $db->fetch_all($openidres);
        // 循环下,转成无key的值数组
        $openidarr = array();
        $lognickname = "";
        foreach ($openidList as $openid) {
            $lognickname .= $openid["nickname"] . ",";
            $openidarr[] = $openid["openid"];
        }
        //echo print_r($openidarr);
        $tp = new TypeParent();
        echo $tp->batchSendPicMsg($openidarr, $pictextMediaid);
        echo "<br />消息发送到:" . $lognickname;
        //		$yulanopenid = "osp6swvOvVa1aXcjbFGui0Ur88V4";
        //		echo $tp -> batchSendPicMsgYulan($yulanopenid, $pictextMediaid);
    } else {
        echo "消息发送失败:" . $pictextResp["errmsg"];
    }
}