openbaseAction.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. /**
  3. * 基本接口
  4. * 请求地址如:http://URL/api.php?m=openbase&openkey=openkey&a=方法名
  5. */
  6. class openbaseClassAction extends openapiAction
  7. {
  8. /**
  9. * 例子1:新增模块单据,如新增流程单据等
  10. * 接口地址:http://URL/api.php?m=openbase&openkey=openkey&a=querydata
  11. */
  12. public function querydataAction()
  13. {
  14. $arr = $this->getpostarr();
  15. if(!$arr)return returnerror('not data');
  16. $modenum = $arr['basemodenum'];
  17. $adminid = $arr['baseoptid']; //提交的用户
  18. if(isempt($modenum))return returnerror('modenum is empty');
  19. $uid = $this->getuserid($adminid);
  20. if($uid==0)return returnerror('['.$adminid.']用户不存在');
  21. $sm = arrvalue($arr,'baseexplain'); //说明
  22. unset($arr['basemodenum']);
  23. unset($arr['baseoptid']);
  24. //此方法在文件:webmain/model/flowModel.php下的querydata方法。
  25. $mid = m('flow')->querydata($modenum, $arr, $sm);
  26. return returnsuccess(array(
  27. 'mid' => $mid,
  28. ));
  29. }
  30. /**
  31. * 例子2:推送消息到应用中
  32. * 接口地址:http://URL/api.php?m=openbase&openkey=openkey&a=pushtodo
  33. */
  34. public function pushtodoAction()
  35. {
  36. $mid = null; //要推送单据ID
  37. $modenum = 'daily'; //推送到哪个模块中,daily是工作日报模块
  38. //1、初始化流程
  39. $flow = m('flow')->initflow($modenum, $mid);
  40. //2、调用推送方法,调用webmain/model/flow/flow.php 下的push方法
  41. $receid = '1'; //接收人ID,多个,分开,如推送给全部人员写:d1
  42. $gname = ''; //推送到哪个应用下,为空,默认是跟当前模块名一样的应用。
  43. $cont = '这是个推送的内容';
  44. $title = '这是个标题'; //可以为空
  45. $flow->push($receid, $gname, $cont, $title);
  46. return '推送完成';
  47. }
  48. /**
  49. * 例子3:向单用户/会话发消息,聊天的。
  50. */
  51. }