【调度系统】广东民航医疗快线调度系统源代码
wanglizhong
2025-04-28 1e955583470b47f7636eaba800c52c258ac24296
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
<?php
 
ini_set("display_errors", "on");
 
require_once dirname(__DIR__) . '/inc/aliyun_api_sdk/vendor/autoload.php';
 
use Aliyun\Core\Config;
use Aliyun\Core\Profile\DefaultProfile;
use Aliyun\Core\DefaultAcsClient;
use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest;
 
// 加载区域结点配置
Config::load();
 
/**
 * Class SmsDemo
 *
 * 这是短信服务API产品的DEMO程序,直接执行此文件即可体验短信服务产品API功能
 * (只需要将AK替换成开通了云通信-短信服务产品功能的AK即可)
 * 备注:Demo工程编码采用UTF-8
 */
class SmsDemo
{
 
    static $acsClient = null;
 
    /**
     * 取得AcsClient
     *
     * @return DefaultAcsClient
     */
    public static function getAcsClient() {
        //产品名称:云通信短信服务API产品,开发者无需替换
        $product = "Dysmsapi";
 
        //产品域名,开发者无需替换
        $domain = "dysmsapi.aliyuncs.com";
 
        // TODO 此处需要替换成开发者自己的AK (https://ak-console.aliyun.com/)
        $accessKeyId = "LTAIySpe19H0jIwE"; // AccessKeyId
 
        $accessKeySecret = "eH9JQEZZCgFguaDfcCLUcpK6746tgT"; // AccessKeySecret
 
        // 暂时不支持多Region
        $region = "cn-hangzhou";
 
        // 服务结点
        $endPointName = "cn-hangzhou";
 
 
        if(static::$acsClient == null) {
 
            //初始化acsClient,暂不支持region化
            $profile = DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);
 
            // 增加服务结点
            DefaultProfile::addEndpoint($endPointName, $region, $product, $domain);
 
            // 初始化AcsClient用于发起请求
            static::$acsClient = new DefaultAcsClient($profile);
        }
        return static::$acsClient;
    }
 
    /**
     * 发送短信
     * @return stdClass
     */
    public static function sendSms($Phone,$codejson,$lateCode,$SignName) {
 
        // 初始化SendSmsRequest实例用于设置发送短信的参数
        $request = new SendSmsRequest();
 
        //可选-启用https协议
        //$request->setProtocol("https");
 
        // 必填,设置短信接收号码
        $request->setPhoneNumbers($Phone);
 
        // 必填,设置签名名称,应严格按"签名名称"填写,请参考: https://dysms.console.aliyun.com/dysms.htm#/develop/sign
        $request->setSignName($SignName);
 
        // 必填,设置模板CODE,应严格按"模板CODE"填写, 请参考: https://dysms.console.aliyun.com/dysms.htm#/develop/template
        $request->setTemplateCode($lateCode);
 
        // 可选,设置模板参数, 假如模板中存在变量需要替换则为必填项
        $request->setTemplateParam($codejson);
 
        // 可选,设置流水号
        //$request->setOutId("yourOutId");
 
        // 选填,上行短信扩展码(扩展码字段控制在7位或以下,无特殊需求用户请忽略此字段)
       // $request->setSmsUpExtendCode("1234567");
 
        // 发起访问请求
        $acsResponse = static::getAcsClient()->getAcsResponse($request);
 
        return $acsResponse;
    }
 
}
function sendPayUrl($phone,$name,$payurl){
    $content='【医疗快线】移动支付指引:'.$name.'您好!请点击以下链接进入信息确认和支付界面。核对您的出车信息无误后,可选择支付宝或者微信支付:' .$payurl;
    require './sms/SmsSend.php';
    $sms = new SmsSend('LTAIySpe19H0jIwE', 'eH9JQEZZCgFguaDfcCLUcpK6746tgT');
    $result = $sms->sendSmsOne([['phone' => $phone, 'content' => $content]], '');
    return $result;
}
// 调用示例:
set_time_limit(0);
header('Content-Type: text/plain; charset=utf-8');
$Phone=empty($_REQUEST['Phone'])!=false ? "" : addslashes($_REQUEST['Phone']);    //接收者电话
$code=empty($_REQUEST['code'])!=false ? "" : addslashes($_REQUEST['code']);        //内容--验证码
$lateCode=empty($_REQUEST['lateCode'])!=false ? "" : addslashes($_REQUEST['lateCode']);//发送模板
$SignName=empty($_REQUEST['SignName'])!=false ? "医疗快线" : addslashes($_REQUEST['SignName']);//签名名称
//$Phone="18102258875";    //接收者电话
//$code="156474";            //内容--验证码
//$lateCode="SMS_174745063";    //发送模板
if ($lateCode=="SMS_172011248") {
    //支付指引
    $name=empty($_REQUEST['name'])!=false ? "" : addslashes($_REQUEST['name']);        //内容--姓名
    $payurl=empty($_REQUEST['payurl'])!=false ? "" : addslashes($_REQUEST['payurl']);        //内容--短链接验证码
    $codejson=json_encode(array("name"=>$name,"payurl"=>$payurl), JSON_UNESCAPED_UNICODE);
    sendPayUrl($Phone,$name,$payurl);
    return;
}elseif ($lateCode=="SMS_172011256" or $lateCode=="SMS_219742082") {
    //出车短信
    $UserName=empty($_REQUEST['UserName'])!=false ? "" : addslashes($_REQUEST['UserName']);        //内容--负责人
    $CarLicense=empty($_REQUEST['CarLicense'])!=false ? "" : addslashes($_REQUEST['CarLicense']);        //内容--车牌
    $codejson=json_encode(array("UserName"=>$UserName,"CarLicense"=>$CarLicense), JSON_UNESCAPED_UNICODE);
}elseif ($lateCode=="SMS_219737201") {
    //评价短信
    $payurl=empty($_REQUEST['payurl'])!=false ? "" : addslashes($_REQUEST['payurl']);        //内容--短链接验证码
    $codejson=json_encode(array("payurl"=>$payurl), JSON_UNESCAPED_UNICODE);
}elseif ($lateCode=="SMS_463648792") {
    //    已收到定金通知
    $name=empty($_REQUEST['name'])!=false ? "" : addslashes($_REQUEST['name']);        //内容--姓名
    $m1=empty($_REQUEST['m1'])!=false ? "" : addslashes($_REQUEST['m1']);        //内容--收到定金
    $m2=empty($_REQUEST['m2'])!=false ? "" : addslashes($_REQUEST['m2']);        //内容--收齐余下金额
    $d1=empty($_REQUEST['d1'])!=false ? "" : addslashes($_REQUEST['d1']);        //内容--出发地
    $codejson=json_encode(array("name"=>$name,"m1"=>$m1,"m2"=>$m2,"d1"=>$d1), JSON_UNESCAPED_UNICODE);
}elseif ($code!=''){
    //发送验证码
    $codejson=json_encode(array("code"=>$code), JSON_UNESCAPED_UNICODE);
}
if ($Phone!='' and $codejson!='' and $lateCode!='') {
$response = SmsDemo::sendSms($Phone,$codejson,$lateCode,$SignName);
echo json_encode($response);
}else{
echo 0;
}
 
 
 
//sleep(2);
 
//$response = SmsDemo::sendBatchSms();
//echo "批量发送短信(sendBatchSms)接口返回的结果:\n";
//print_r($response);
 
//sleep(2);
 
//$response = SmsDemo::querySendDetails();
//echo "查询短信发送情况(querySendDetails)接口返回的结果:\n";
//print_r($response);