push_helper.php 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: stanley-king
  5. * Date: 2016/11/15
  6. * Time: 下午12:26
  7. */
  8. require_once (BASE_ROOT_PATH . '/helper/sms_helper.php');
  9. require_once (BASE_ROOT_PATH . '/helper/push_sender.php');
  10. class push_helper
  11. {
  12. static $admin_info = null;
  13. private static function admin_alias() {
  14. return bonus\parameters::admin_member_id;
  15. }
  16. private static function admin_avatar()
  17. {
  18. if(self::$admin_info == null) {
  19. self::$admin_info = new member_info(self::admin_alias());
  20. }
  21. return self::$admin_info->avatar();
  22. }
  23. public static function stolen_bonus(member_info $from_info,member_info $to_info,$amount)
  24. {
  25. $thief = $to_info->nickname();
  26. $text = "{$thief}偷走了您{$amount}元的红包.";
  27. $push_param['alias'] = $from_info->member_id();
  28. $push_param['title'] = "摇红包";
  29. $push_param['text'] = $text;
  30. $push_param['extra']['go_type'] = 'bonus';
  31. $push_param['extra']['title'] = "红包被偷";
  32. $push_param['extra']['text'] = $text;
  33. $push_param['extra']['show_type'] = 'pop';
  34. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  35. $push_param['extra']['image'] = $to_info->avatar();
  36. QueueClient::push('upushSendMsg',$push_param);
  37. }
  38. public static function fly_bonus(member_info $from_info,member_info $to_info,$amount)
  39. {
  40. $name = $from_info->nickname();
  41. $text = "{$name}的{$amount}元的红包,在向您飞来~.";
  42. $push_param['alias'] = $to_info->member_id();
  43. $push_param['title'] = "摇红包";
  44. $push_param['text'] = $text;
  45. $push_param['extra']['go_type'] = 'bonus';
  46. $push_param['extra']['title'] = "摇红包";
  47. $push_param['extra']['text'] = $text;
  48. $push_param['extra']['show_type'] = 'pop';
  49. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  50. $push_param['extra']['image'] = $from_info->avatar();
  51. QueueClient::push('upushSendMsg',$push_param);
  52. }
  53. public static function order_refund_bonus($member_id,$amount)
  54. {
  55. $minfo = new member_info($member_id);
  56. $text = "退款通知:金额{$amount}元红包已退还到您的账户.";
  57. $push_param['alias'] = $member_id;
  58. $push_param['title'] = "退款";
  59. $push_param['text'] = $text;
  60. $push_param['extra']['go_type'] = 'bonus';
  61. $push_param['extra']['title'] = "退款";
  62. $push_param['extra']['text'] = $text;
  63. $push_param['extra']['show_type'] = 'pop';
  64. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  65. $push_param['extra']['image'] = $minfo->avatar();
  66. QueueClient::push('upushSendMsg',$push_param);
  67. }
  68. public static function send_bonus($member_id,$to_ids)
  69. {
  70. $sender = new member_info($member_id);
  71. $name = $sender->nickname();
  72. foreach ($to_ids as $member_id)
  73. {
  74. $push_param = [];
  75. $text = "新的红包:您的好友{$name}给您发了一个红包,请查收.";
  76. $push_param['alias'] = $member_id;
  77. $push_param['title'] = "新到红包";
  78. $push_param['text'] = $text;
  79. $push_param['extra']['go_type'] = 'bonus';
  80. $push_param['extra']['title'] = "新到红包";
  81. $push_param['extra']['text'] = $text;
  82. $push_param['extra']['show_type'] = 'pop';
  83. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  84. $push_param['extra']['image'] = $sender->avatar();
  85. QueueClient::push('upushSendMsg',$push_param);
  86. }
  87. }
  88. public static function bonus_refund($member_id,$amount)
  89. {
  90. $sender = new member_info($member_id);
  91. $text = "红包退还通知:您发送的红包已超过24小时,退还未被领取的金额{$amount}元,您可以重新发送并通知小伙伴及时领取.";
  92. $push_param['alias'] = $member_id;
  93. $push_param['title'] = "过期未领红包退还";
  94. $push_param['text'] = $text;
  95. $push_param['extra']['go_type'] = 'bonus';
  96. $push_param['extra']['title'] = "过期未领红包退还";
  97. $push_param['extra']['text'] = $text;
  98. $push_param['extra']['show_type'] = 'pop';
  99. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  100. $push_param['extra']['image'] = $sender->avatar();
  101. QueueClient::push('upushSendMsg',$push_param);
  102. }
  103. public static function invite_bonus($member_id,$money)
  104. {
  105. $minfo = new member_info($member_id);
  106. $text = "好东西就要与好盆友一起分享,感谢您的热情推荐,特奖励您{$money}元的友情红包,请查收~.";
  107. $push_param['alias'] = $member_id;
  108. $push_param['title'] = "邀请奖励";
  109. $push_param['text'] = $text;
  110. $push_param['extra']['go_type'] = 'bonus';
  111. $push_param['extra']['title'] = "邀请奖励";
  112. $push_param['extra']['text'] = $text;
  113. $push_param['extra']['show_type'] = 'pop';
  114. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/main/index?index=2';
  115. $push_param['extra']['image'] = $minfo->avatar();
  116. QueueClient::push('upushSendMsg',$push_param);
  117. }
  118. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  119. public static function register_bonus($user, $money,$type_sn,$fQueue=false)
  120. {
  121. $text = "您获得{$money}元的新人首单红包,请查收~";
  122. $push_param['alias'] = $user;
  123. $push_param['title'] = "收到新人首单红包";
  124. $push_param['text'] = $text;
  125. $push_param['extra']['go_type'] = 'bonus';
  126. $push_param['extra']['title'] = "收到新人首单红包";
  127. $push_param['extra']['text'] = $text;
  128. $push_param['extra']['show_type'] = 'pop';
  129. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  130. $push_param['extra']['image'] = self::admin_avatar();
  131. self::push($user,$push_param,Sms::tpl_reg_user_bonus,['amount' => $money],$fQueue);
  132. }
  133. public static function money_rate_desc($money,$rate)
  134. {
  135. $amount = intval($money * 100 + 0.5) / 100;
  136. return "{$amount}元";
  137. // $discount = 100 - $rate;
  138. // if($discount == 0) {
  139. // $desc = "全抵";
  140. // } else {
  141. // $tmp = $discount / 10;
  142. // $desc = "{$tmp}折";
  143. // }
  144. //
  145. // $desc = "可抵扣";
  146. // $amount = intval($money * 100 + 0.5) / 100;
  147. // return "{$amount}元{$desc}";
  148. }
  149. private static function push($alias, $push_param, $sms_type='',$sms_param=[], $fQueue=false)
  150. {
  151. $alias_info = new member_info($alias);
  152. $mobile = $alias_info->mobile();
  153. $client_type = $alias_info->client_type();
  154. if($fQueue)
  155. {
  156. if($client_type > 0) {
  157. QueueClient::push('upushSendMsg',$push_param);
  158. }
  159. else
  160. {
  161. if(!empty($sms_type) && $alias_info->can_sms()) {
  162. $sms_param['mobile'] = $mobile;
  163. $sms_param['type'] = $sms_type;
  164. QueueClient::push('sendOperSMS',$sms_param);
  165. }
  166. else {
  167. QueueClient::push('upushSendMsg',$push_param);
  168. }
  169. }
  170. }
  171. else
  172. {
  173. if($client_type > 0) {
  174. $push = new push_sender();
  175. $status = $push->send($push_param,$client_type);
  176. }
  177. else
  178. {
  179. if(!empty($sms_type) && $alias_info->can_sms()) {
  180. $sms = new Sms();
  181. $status = $sms->send_oper($mobile,$sms_type,$sms_param);
  182. }
  183. else {
  184. $push = new push_sender();
  185. $status = $push->send($push_param,$client_type);
  186. }
  187. }
  188. }
  189. }
  190. private static function inviter_text(member_info $invitee, $level, $money, $rate)
  191. {
  192. $nickname = $invitee->nickname();
  193. $text = self::money_rate_desc($money, $rate);
  194. return "{$nickname} 成为您的{$level}度粉丝,您获得{$text}红包奖励.";
  195. }
  196. public static function inviter_bonus($inviter, $user, $level, $money, $rate, $type_sn,$fQueue=false)
  197. {
  198. $user_info = new member_info($user);
  199. $text = self::inviter_text($user_info,$level,$money,$rate);
  200. $push_param['alias'] = $inviter;
  201. $push_param['title'] = "收到邀请奖励红包";
  202. $push_param['text'] = $text;
  203. $push_param['extra']['go_type'] = 'bonus';
  204. $push_param['extra']['title'] = "收到邀请奖励红包";
  205. $push_param['extra']['text'] = $text;
  206. $push_param['extra']['show_type']= 'pop';
  207. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  208. $push_param['extra']['image'] = $user_info->avatar();
  209. self::push($inviter,$push_param,Sms::tpl_reg_inviter,['user_name' => $user_info->nickname(),'level' => $level,'amount' => $money],$fQueue);
  210. }
  211. private static function invitee_text(member_info $inviter, member_info $user, $level, $money, $rate)
  212. {
  213. $desc = self::money_rate_desc($money, $rate);
  214. $text = "{$user->nickname()}成为{$inviter->nickname()}的{$level}度粉丝,您获得{$desc}红包奖励.";
  215. return $text;
  216. }
  217. public static function invitee_bonus($inviter, $invitee,member_info $user,$level, $money, $rate, $type_sn,$fQueue=false)
  218. {
  219. $inviter_info = new member_info($inviter);
  220. $text = self::invitee_text($inviter_info,$user,$level,$money,$rate);
  221. $push_param['alias'] = $invitee;
  222. $push_param['title'] = "收到雨露均沾红包";
  223. $push_param['text'] = $text;
  224. $push_param['extra']['go_type'] = 'bonus';
  225. $push_param['extra']['title'] = "收到雨露均沾红包";
  226. $push_param['extra']['text'] = $text;
  227. $push_param['extra']['show_type']= 'pop';
  228. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  229. $push_param['extra']['image'] = $inviter_info->avatar();
  230. if($level < 2) {
  231. self::push($invitee,$push_param,Sms::tpl_reg_invitee,
  232. ['user_name' => $user->nickname(),'inviter_name' => $inviter_info->nickname(),'level' => $level,'amount' => $money],
  233. $fQueue);
  234. } else {
  235. $push = new push_sender();
  236. $push->send($push_param);
  237. }
  238. }
  239. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  240. private static function buygoods_inviter_text(member_info $user, $level, $goods_name)
  241. {
  242. $text = "您的{$level}度粉丝 {$user->nickname()},刚刚购买了《{$goods_name}》.";
  243. return $text;
  244. }
  245. public static function inviter_order_paied($inviter, $user, $level, $goods_info,$fQueue=false)
  246. {
  247. $user_info = new member_info($user);
  248. $text = self::buygoods_inviter_text($user_info,$level,$goods_info['goods_name']);
  249. $push_param['alias'] = $inviter;
  250. $push_param['title'] = "粉丝正在买";
  251. $push_param['text'] = $text;
  252. $push_param['extra']['go_type'] = 'bonus';
  253. $push_param['extra']['title'] = "粉丝正在买";
  254. $push_param['extra']['text'] = $text;
  255. $push_param['extra']['show_type']= 'pop';
  256. $push_param['extra']['url'] = schema_helper::goods($goods_info['goods_id']);
  257. $push_param['extra']['image'] = $goods_info['goods_image'];
  258. QueueClient::push('upushSendMsg',$push_param);
  259. //self::push($inviter,$push_param);
  260. }
  261. private static function buygoods_invitee_text(member_info $user, $goods_name)
  262. {
  263. $text = "您的好友 {$user->nickname()},刚刚购买了《{$goods_name}》.";
  264. return $text;
  265. }
  266. public static function invitee_order_paied($invitee, $user, $goods_info)
  267. {
  268. $user_info = new member_info($user);
  269. $text = self::buygoods_invitee_text($user_info,$goods_info['goods_name']);
  270. $push_param['alias'] = $invitee;
  271. $push_param['title'] = "好友正在买";
  272. $push_param['text'] = $text;
  273. $push_param['extra']['go_type'] = 'bonus';
  274. $push_param['extra']['title'] = "好友正在买";
  275. $push_param['extra']['text'] = $text;
  276. $push_param['extra']['show_type']= 'pop';
  277. $push_param['extra']['url'] = schema_helper::goods($goods_info['goods_id']);
  278. $push_param['extra']['image'] = $goods_info['goods_image'];
  279. QueueClient::push('upushSendMsg',$push_param);
  280. }
  281. public static function user_order_paied($user, $paysn)
  282. {
  283. $text = "请留意发货短信,确认收货后会有红包奖励~";
  284. $push_param['alias'] = $user;
  285. $push_param['title'] = "支付成功";
  286. $push_param['text'] = $text;
  287. $push_param['extra']['go_type'] = '';
  288. $push_param['extra']['title'] = "支付成功";
  289. $push_param['extra']['text'] = $text;
  290. $push_param['extra']['show_type'] = 'pop';
  291. $push_param['extra']['url'] = schema_helper::order_info($paysn);
  292. $push_param['extra']['image'] = self::admin_avatar();
  293. QueueClient::push('upushSendMsg',$push_param);
  294. //self::push($user,$push_param);
  295. }
  296. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  297. public static function user_order_complete_fixed($user, $money, $rate, $type_sn)
  298. {
  299. $desc = self::money_rate_desc($money,$rate);
  300. $text = "您的宝贝已被安全签收,小熊猫送您{$desc}红包,请查收~";
  301. $push_param['alias'] = $user;
  302. $push_param['title'] = "收货红包";
  303. $push_param['text'] = $text;
  304. $push_param['img'] = self::admin_avatar();
  305. $push_param['extra']['go_type'] = 'bonus';
  306. $push_param['extra']['title'] = "收货红包";
  307. $push_param['extra']['text'] = $text;
  308. $push_param['extra']['show_type']= 'pop';
  309. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  310. $push_param['extra']['image'] = self::admin_avatar();
  311. QueueClient::push('upushSendMsg',$push_param);
  312. //self::push($user,$push_param);
  313. }
  314. public static function user_order_complete_random($user,$num,$type_sn)
  315. {
  316. $text = "您的宝贝已被安全签收,小熊猫送您{$num}个可分享红包,分享给小伙伴吧~";
  317. $push_param['alias'] = $user;
  318. $push_param['title'] = "收货可分享红包";
  319. $push_param['text'] = $text;
  320. $push_param['img'] = self::admin_avatar();
  321. $push_param['extra']['go_type'] = 'bonus';
  322. $push_param['extra']['title'] = "收货可分享红包";
  323. $push_param['extra']['text'] = $text;
  324. $push_param['extra']['show_type']= 'pop';
  325. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  326. $push_param['extra']['image'] = self::admin_avatar();
  327. QueueClient::push('upushSendMsg',$push_param);
  328. //self::push($user,$push_param);
  329. }
  330. private static function inviter_order_complete_text(member_info $invitee, $level, $money, $rate)
  331. {
  332. $nickname = $invitee->nickname();
  333. $text = self::money_rate_desc($money, $rate);
  334. return "您的{$level}度粉丝 {$nickname} 下单成功,您获得{$text}红包奖励.";
  335. }
  336. public static function inviter_order_complete_bonus($inviter, $user, $level, $money, $rate, $type_sn,$fQueue=false)
  337. {
  338. $user_info = new member_info($user);
  339. $text = self::inviter_order_complete_text($user_info,$level,$money,$rate);
  340. $push_param['alias'] = $inviter;
  341. $push_param['title'] = "收到粉丝下单红包";
  342. $push_param['text'] = $text;
  343. $push_param['extra']['go_type'] = 'bonus';
  344. $push_param['extra']['title'] = "收到粉丝下单红包";
  345. $push_param['extra']['text'] = $text;
  346. $push_param['extra']['show_type']= 'pop';
  347. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  348. $push_param['extra']['image'] = $user_info->avatar();
  349. self::push($inviter,$push_param,Sms::tpl_order_complete_inviter,['level' => $level,'name' => $user_info->nickname(),'amount' => $money],$fQueue);
  350. }
  351. private static function invitee_order_complete_text(member_info $user, $money, $rate)
  352. {
  353. $nickname = $user->nickname();
  354. $text = self::money_rate_desc($money, $rate);
  355. return "好友{$nickname}下单成功,您获得{$text}红包奖励.";
  356. }
  357. public static function invitee_order_complete_bonus($invitee,member_info $user, $money, $rate, $type_sn,$fQueue=false)
  358. {
  359. $text = self::invitee_order_complete_text($user,$money,$rate);
  360. $push_param['alias'] = $invitee;
  361. $push_param['title'] = "收到好友下单红包";
  362. $push_param['text'] = $text;
  363. $push_param['extra']['go_type'] = 'bonus';
  364. $push_param['extra']['title'] = "收到好友下单红包";
  365. $push_param['extra']['text'] = $text;
  366. $push_param['extra']['show_type']= 'pop';
  367. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  368. $push_param['extra']['image'] = $user->avatar();
  369. self::push($invitee,$push_param,Sms::tpl_order_complete_invitee,['name' => $user->nickname(),'amount' => $money],$fQueue);
  370. }
  371. private static function all_order_complete_text(member_info $user, $money, $rate)
  372. {
  373. $nickname = $user->nickname();
  374. $text = self::money_rate_desc($money, $rate);
  375. return "{$nickname}下单成功,引发红包风暴,您获得{$text}红包奖励.";
  376. }
  377. public static function all_order_complete_bonus($user, member_info $buyer, $money, $rate, $type_sn, $fQueue=false)
  378. {
  379. $text = self::all_order_complete_text($buyer,$money,$rate);
  380. $push_param['alias'] = $user;
  381. $push_param['title'] = "收到下单红包雨";
  382. $push_param['text'] = $text;
  383. $push_param['extra']['go_type'] = 'bonus';
  384. $push_param['extra']['title'] = "收到下单红包雨";
  385. $push_param['extra']['text'] = $text;
  386. $push_param['extra']['show_type']= 'pop';
  387. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  388. $push_param['extra']['image'] = self::admin_avatar();
  389. self::push($user,$push_param,Sms::tpl_order_complete_all,['name' => $buyer->nickname(),'amount' => $money],$fQueue);
  390. }
  391. public static function order_cancel_bonus($member_id,$amount,$rate,$order_sn,$type_sn)
  392. {
  393. $desc = self::money_rate_desc($amount,$rate);
  394. $text = "订单{$order_sn}取消成功,退还{$desc}红包.";
  395. $push_param['alias'] = $member_id;
  396. $push_param['title'] = "收到取消订单红包";
  397. $push_param['text'] = $text;
  398. $push_param['extra']['go_type'] = 'bonus';
  399. $push_param['extra']['title'] = "收到取消订单红包";
  400. $push_param['extra']['text'] = $text;
  401. $push_param['extra']['show_type'] = 'pop';
  402. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  403. $push_param['extra']['image'] = self::admin_avatar();
  404. QueueClient::push('upushSendMsg',$push_param);
  405. }
  406. public static function order_evaluate_bonus($user, $money,$rate,$type_sn)
  407. {
  408. $desc = self::money_rate_desc($money, $rate);
  409. $text = "感谢您的每一个评价,小熊猫送您{$desc}红包,请查收~.";
  410. $push_param['alias'] = $user;
  411. $push_param['title'] = "收到评价红包";
  412. $push_param['text'] = $text;
  413. $push_param['extra']['go_type'] = 'bonus';
  414. $push_param['extra']['title'] = "收到评价红包";
  415. $push_param['extra']['text'] = $text;
  416. $push_param['extra']['show_type'] = 'pop';
  417. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  418. $push_param['extra']['image'] = self::admin_avatar();
  419. QueueClient::push('upushSendMsg',$push_param);
  420. }
  421. private static function inviter_evaluated_text(member_info $user, $level, $goods_name)
  422. {
  423. $text = "您的{$level}度粉丝 {$user->nickname()},刚刚评论了《{$goods_name}》.";
  424. return $text;
  425. }
  426. public static function inviter_order_evaluated($inviter, $user, $level, $goods_info)
  427. {
  428. $user_info = new member_info($user);
  429. $text = self::inviter_evaluated_text($user_info,$level,$goods_info['goods_name']);
  430. $push_param['alias'] = $inviter;
  431. $push_param['title'] = "粉丝正在评论";
  432. $push_param['text'] = $text;
  433. $push_param['extra']['go_type'] = 'bonus';
  434. $push_param['extra']['title'] = "粉丝正在评论";
  435. $push_param['extra']['text'] = $text;
  436. $push_param['extra']['show_type']= 'pop';
  437. $push_param['extra']['url'] = schema_helper::goods($goods_info['goods_id']);
  438. $push_param['extra']['image'] = $goods_info['goods_image'];
  439. QueueClient::push('upushSendMsg',$push_param);
  440. }
  441. private static function invitee_evaluated_text(member_info $user, $goods_name)
  442. {
  443. $text = "您的好友 {$user->nickname()},刚刚评论了《{$goods_name}》.";
  444. return $text;
  445. }
  446. public static function invitee_order_evaluated($invitee, $user, $goods_info)
  447. {
  448. $user_info = new member_info($user);
  449. $text = self::invitee_evaluated_text($user_info,$goods_info['goods_name']);
  450. $push_param['alias'] = $invitee;
  451. $push_param['title'] = "好友正在评论";
  452. $push_param['text'] = $text;
  453. $push_param['extra']['go_type'] = 'bonus';
  454. $push_param['extra']['title'] = "好友正在评论";
  455. $push_param['extra']['text'] = $text;
  456. $push_param['extra']['show_type']= 'pop';
  457. $push_param['extra']['url'] = schema_helper::goods($goods_info['goods_id']);
  458. $push_param['extra']['image'] = $goods_info['goods_image'];
  459. QueueClient::push('upushSendMsg',$push_param);
  460. }
  461. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  462. public static function nofity_ugc_pub($follow,$author_id,$special_id,$title)
  463. {
  464. $author = new member_info($author_id);
  465. $text = "好友{$author->nickname()} 发表文章《{$title}》";
  466. $push_param['alias'] = $follow;
  467. $push_param['title'] = "好友发表文章";
  468. $push_param['text'] = $text;
  469. $push_param['extra']['go_type'] = 'bonus';
  470. $push_param['extra']['title'] = "好友发表文章";
  471. $push_param['extra']['text'] = $text;
  472. $push_param['extra']['show_type']= 'pop';
  473. $push_param['extra']['url'] = schema_helper::ugc($title,$special_id);
  474. $push_param['extra']['image'] = $author->avatar();
  475. QueueClient::push('upushSendMsg',$push_param);
  476. }
  477. public static function nofity_ugc_submit($author,$reader,$special_id,$title)
  478. {
  479. $user = new member_info($reader);
  480. $text = "好友{$user->nickname()} 阅读了您的文章《{$title}》";
  481. $push_param['alias'] = $author;
  482. $push_param['title'] = "好友阅读文章";
  483. $push_param['text'] = $text;
  484. $push_param['extra']['go_type'] = 'bonus';
  485. $push_param['extra']['title'] = "好友阅读文章";
  486. $push_param['extra']['text'] = $text;
  487. $push_param['extra']['show_type']= 'pop';
  488. $push_param['extra']['url'] = schema_helper::ugc($title,$special_id);
  489. $push_param['extra']['image'] = $user->avatar();
  490. QueueClient::push('upushSendMsg',$push_param);
  491. }
  492. public static function nofity_ugc_comment($author,$commender,$fcomment,$special_id,$content,$article_title)
  493. {
  494. $commender = new member_info($commender);
  495. if($fcomment) {
  496. $title = '收到留言回复';
  497. $text = "好友{$commender->nickname()} 回复您的评论:{$content}";
  498. } else {
  499. $title = '收到文章评论';
  500. $text = "文章《{$article_title}》收到一个新评论";
  501. }
  502. $push_param['alias'] = $author;
  503. $push_param['title'] = $title;
  504. $push_param['text'] = $text;
  505. $push_param['extra']['go_type'] = '';
  506. $push_param['extra']['title']= $title;
  507. $push_param['extra']['text'] = $text;
  508. $push_param['extra']['show_type'] = 'pop';
  509. $push_param['extra']['url'] = schema_helper::ugc($article_title,$special_id);
  510. $push_param['extra']['image'] = $commender->avatar();
  511. QueueClient::push('upushSendMsg',$push_param);
  512. }
  513. public static function nofity_ugc_support($author,$commender,$fcomment,$special_id,$content,$article_title)
  514. {
  515. if($commender > 0)
  516. {
  517. $commender = new member_info($commender);
  518. if($fcomment) {
  519. $text = "{$commender->nickname()} 点赞您的评论:{$content}";
  520. } else {
  521. $text = "{$commender->nickname()} 点赞您的文章《{$article_title}》";
  522. }
  523. $push_param['extra']['image'] = $commender->avatar();
  524. }
  525. else
  526. {
  527. if($fcomment) {
  528. $text = "刚刚有人点赞您的评论:{$content}";
  529. } else {
  530. $text = "刚刚有人点赞您的文章《{$article_title}》";
  531. }
  532. $push_param['extra']['image'] = "";
  533. }
  534. $push_param['alias'] = $author;
  535. $push_param['title'] = '收到点赞';
  536. $push_param['text'] = $text;
  537. $push_param['extra']['go_type'] = '';
  538. $push_param['extra']['title']= '收到点赞';
  539. $push_param['extra']['text'] = $text;
  540. $push_param['extra']['show_type'] = 'pop';
  541. $push_param['extra']['url'] = schema_helper::ugc($article_title,$special_id);
  542. QueueClient::push('upushSendMsg',$push_param);
  543. }
  544. public static function nofity_ugc_appreciate($author,$user,$special_id,$article,$rate,$amount)
  545. {
  546. $user_info = new member_info($user);
  547. $name = $user_info->nickname();
  548. $desc = self::money_rate_desc($amount,$rate);
  549. $text = "{$name}打赏您的文章《{$article}》{$desc}红包,快去查看吧.";
  550. $push_param['alias'] = $author;
  551. $push_param['title'] = "文章打赏";
  552. $push_param['text'] = $text;
  553. $push_param['extra']['go_type'] = 'bonus';
  554. $push_param['extra']['title'] = "文章打赏";
  555. $push_param['extra']['text'] = $text;
  556. $push_param['extra']['show_type'] = 'pop';
  557. $push_param['extra']['url'] = schema_helper::ugc($article,$special_id);
  558. $push_param['extra']['image'] = $user_info->avatar();
  559. QueueClient::push('upushSendMsg',$push_param);
  560. }
  561. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  562. public static function fcode_unlock($member_id,$num)
  563. {
  564. $text = "F码解锁通知:您有{$num}个F码已成功解锁,请注意过期时间~.";
  565. $push_param['alias'] = $member_id;
  566. $push_param['title'] = "F码";
  567. $push_param['text'] = $text;
  568. $push_param['extra']['go_type'] = 'fcode';
  569. $push_param['extra']['title'] = "F码";
  570. $push_param['extra']['text'] = $text;
  571. $push_param['extra']['show_type'] = 'pop';
  572. $push_param['extra']['url'] = schema_helper::mine_fcode();
  573. $push_param['extra']['image'] = self::admin_avatar();
  574. QueueClient::push('upushSendMsg', $push_param);
  575. }
  576. public static function notice_expring($member_id,$amount,$remain_days)
  577. {
  578. $minfo = new member_info($member_id);
  579. $text = "红包过期提醒:您价值{$amount}元的红包即将在{$remain_days}天内过期,尽快使用或者慷慨地分享给好友吧~";
  580. $push_param['alias'] = $member_id;
  581. $push_param['title'] = "红包过期提醒";
  582. $push_param['text'] = $text;
  583. $push_param['extra']['go_type'] = 'fcode';
  584. $push_param['extra']['title']= "红包过期提醒";
  585. $push_param['extra']['text'] = $text;
  586. $push_param['extra']['show_type'] = 'pop';
  587. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/mine/fcode';
  588. $push_param['extra']['image'] = $minfo->avatar();
  589. QueueClient::push('upushSendMsg', $push_param);
  590. }
  591. public static function notice_expired($member_id,$amount)
  592. {
  593. $minfo = new member_info($member_id);
  594. $text = "红包过期通知:您价值{$amount}元的红包已过期,别伤心,每天十点试试手气,可以继续赚红包哦~";
  595. $push_param['alias'] = $member_id;
  596. $push_param['title'] = "红包过期通知";
  597. $push_param['text'] = $text;
  598. $push_param['extra']['go_type'] = 'bonus';
  599. $push_param['extra']['title']= "红包过期提醒";
  600. $push_param['extra']['text'] = $text;
  601. $push_param['extra']['show_type'] = 'pop';
  602. $push_param['extra']['url'] = 'xmmz://p.lrlz.com/mine/fcode';
  603. $push_param['extra']['image'] = $minfo->avatar();
  604. QueueClient::push('upushSendMsg', $push_param);
  605. }
  606. public static function notice_subscribe($member_id,member_info $user)
  607. {
  608. $name = $user->nickname();
  609. $text = "手机{$name}用户,关注了你~";
  610. $push_param['alias'] = $member_id;
  611. $push_param['title'] = "好友关系";
  612. $push_param['text'] = $text;
  613. $push_param['extra']['go_type'] = 'bonus';
  614. $push_param['extra']['title']= "好友关系";
  615. $push_param['extra']['text'] = $text;
  616. $push_param['extra']['show_type'] = 'pop';
  617. $push_param['extra']['image'] = $user->avatar();
  618. QueueClient::push('upushSendMsg',$push_param);
  619. }
  620. public static function oper_push($member_id,$content)
  621. {
  622. $minfo = new member_info($member_id);
  623. $push_param['alias'] = $member_id;
  624. $push_param['title'] = "日常活动";
  625. $push_param['text'] = $content;
  626. $push_param['extra']['go_type'] = '';
  627. $push_param['extra']['title']= "日常活动";
  628. $push_param['extra']['text'] = $content;
  629. $push_param['extra']['show_type'] = 'pop';
  630. $push_param['extra']['image'] = $minfo->avatar();
  631. QueueClient::push('upushSendMsg',$push_param);
  632. }
  633. public static function format_msg($member_id,$content)
  634. {
  635. $param['alias'] = $member_id;
  636. $param['text'] = $content;
  637. $param['extra']['go_type'] = '';
  638. $param['extra']['show_type'] = 'pop';
  639. return $param;
  640. }
  641. public static function fcode_warning($cid,$member_id,$usable_time)
  642. {
  643. $minfo = new member_info($member_id);
  644. $goods_name = self::goods_name($cid);
  645. $remain_days = intval((time() - $usable_time) / 86400);
  646. if(!empty($goods_name))
  647. {
  648. $param = [];
  649. $param['alias'] = $member_id;
  650. $param['title'] = "F码过期提醒";
  651. if($remain_days > 0) {
  652. $text = "F码过期提醒:您《{$goods_name}》的F码即将在{$remain_days}天内过期,请尽快使用";
  653. } else {
  654. $text = "F码过期提醒:您《{$goods_name}》的F码即将在今天过期,请尽快使用";
  655. }
  656. $param['text'] = $text;
  657. $param['extra']['go_type'] = 'fcode';
  658. $param['extra']['title']= "用户评价";
  659. $param['extra']['text'] = $text;
  660. $param['extra']['show_type'] = 'pop';
  661. $param['extra']['url'] = 'xmmz://p.lrlz.com/mine/fcode';
  662. $param['extra']['image'] = $minfo->avatar();
  663. QueueClient::push('upushSendMsg', $param);
  664. }
  665. }
  666. private static function goods_name($cid)
  667. {
  668. $items = Model()->table('goods_common')->field('goods_name')->where(['goods_commonid' => $cid])->select();
  669. if(empty($items)) {
  670. return false;
  671. }
  672. else {
  673. return $items[0]['goods_name'];
  674. }
  675. }
  676. private static function pushurl()
  677. {
  678. $url = BASE_SITE_URL . "/mobile/index.php?act=webpush";
  679. return $url;
  680. }
  681. //DialogMessage
  682. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  683. public static function poor_user_bonus($user, $money, $rate, $type_sn, $fQueue=false)
  684. {
  685. // $url = self::pushurl() . "&op=bonus&type_sn={$type_sn}";
  686. $desc = self::money_rate_desc($money,$rate);
  687. $text = "您的红包余额不足,好心人紧急为您充值{$desc}红包~";
  688. $push_param['alias'] = $user;
  689. $push_param['title'] = "收到津贴红包";
  690. $push_param['text'] = $text;
  691. $push_param['extra']['go_type'] = 'bonus';
  692. $push_param['extra']['title'] = "收到津贴红包";
  693. $push_param['extra']['text'] = $text;
  694. $push_param['extra']['show_type']= 'pop';
  695. $push_param['extra']['url'] = url_helper::bonus_open_url($type_sn);
  696. $push_param['extra']['image'] = self::admin_avatar();
  697. self::push($user,$push_param);
  698. }
  699. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  700. public static function first_present($member_id,$fcode)
  701. {
  702. $fc_id = intval($fcode['fc_id']);
  703. $url = self::pushurl() . "&op=fcode&fc_id={$fc_id}";
  704. $minfo = new member_info($member_id);
  705. $push_param['alias'] = $member_id;
  706. $push_param['title'] = "收到下单首单礼";
  707. $text = "恭喜您获得首单礼,现在就去下单";
  708. $push_param['text'] = $text;
  709. $push_param['extra']['go_type'] = '';
  710. $push_param['extra']['title']= "下单首单礼";
  711. $push_param['extra']['text'] = $text;
  712. $push_param['extra']['show_type'] = 'dialog';
  713. $push_param['extra']['image'] = $minfo->avatar();
  714. $push_param['extra']['url'] = $url;
  715. QueueClient::push('upushSendMsg',$push_param);
  716. }
  717. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  718. public static function call_friends($caller,$callee)
  719. {
  720. $minfo = new member_info($caller);
  721. $push_param['alias'] = $callee;
  722. $push_param['title'] = "{$minfo->nickname()} 的召唤";
  723. $text = "我正在赚红包,你也有得赚,赶快登陆App查看你的红包余额,赢免费大牌美妆~";
  724. $push_param['text'] = $text;
  725. $push_param['extra']['go_type'] = '';
  726. $push_param['extra']['title']= "{$minfo->nickname()} 的召唤";
  727. $push_param['extra']['text'] = $text;
  728. $push_param['extra']['show_type'] = 'pop';
  729. $push_param['extra']['image'] = $minfo->avatar();
  730. $push_param['extra']['url'] = schema_helper::invite_page();
  731. self::push($callee,$push_param,Sms::tpl_call_user_back,['name' => $minfo->nickname()],true);
  732. }
  733. public static function pop_message($user, $title, $text,$url)
  734. {
  735. $push_param['alias'] = $user;
  736. $push_param['title'] = $title;
  737. $push_param['text'] = $text;
  738. $push_param['extra']['go_type'] = '';
  739. $push_param['extra']['title']= $title;
  740. $push_param['extra']['text'] = $text;
  741. $push_param['extra']['show_type'] = 'pop';
  742. $push_param['extra']['image'] = self::admin_avatar();
  743. $push_param['extra']['url'] = $url;
  744. return $push_param;
  745. }
  746. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  747. public static function bargain_bonus($user, $money,$type_sn,$fQueue=false)
  748. {
  749. $text = "您获得{$money}元的砍价红包,请查收~";
  750. $push_param['alias'] = $user;
  751. $push_param['title'] = "收到砍价红包";
  752. $push_param['text'] = $text;
  753. $push_param['extra']['go_type'] = 'bonus';
  754. $push_param['extra']['title'] = "收到砍价红包";
  755. $push_param['extra']['text'] = $text;
  756. $push_param['extra']['show_type'] = 'pop';
  757. $push_param['extra']['url'] = schema_helper::bonus_detail($type_sn);
  758. $push_param['extra']['image'] = self::admin_avatar();
  759. QueueClient::push('upushSendMsg',$push_param);
  760. }
  761. }
  762. class push_event
  763. {
  764. static public function publish_special($member_ids,$ispub,$count)
  765. {
  766. if($ispub) {
  767. $visible_type = 'pub_visible';
  768. } else {
  769. $visible_type = 'pri_visible';
  770. }
  771. foreach ($member_ids as $member_id)
  772. {
  773. $info['alias'] = $member_id;
  774. $info['custom'] = ['type' => 'add_special','visible_type' => $visible_type,'count' => $count];
  775. QueueClient::push('sendPushMessage',$info);
  776. }
  777. }
  778. }