事件:
公司正在开发且已经上线给客户使用的校友云平台,在一次客户新建短信任务后,可能由于客户网速较慢等原因,客户可能连续点击了两次开始发送按钮。导致短信任务虽然只生成了一个,但是短信消费日志里面有两条消费记录(消费记录是按短信任务生成的,即一个任务一条消费记录)。
解决方法:
因为每次发送短信不管成功还是失败,都会生成相应的日志文件。所以每次开始执行任务的时候都先判断一下是否有相应的日志文件存在。
代码:
//检查任务状态 检查日志是否存在
if(file_exists($smstasklogfile) || file_exists($smstaskerrorlogfile)){
echo $rs = action_msg('请不要重复发送任务', 144);
die;
}
另外:开始发送短信的之前需要判断任务所属用户是否为当前用户。特别是当id为get方式传输的时候。