Approve.php 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. <?php
  2. namespace app\api\controller;
  3. use app\common\service\ApproveService;
  4. use hg\apidoc\annotation as Apidoc;
  5. /**
  6. * @Apidoc\Title("审批")
  7. * @Apidoc\Group("api")
  8. * @Apidoc\Sort("12")
  9. */
  10. class Approve extends Base
  11. {
  12. public function initialize()
  13. {
  14. parent::initialize();
  15. parent::checkLogin();
  16. }
  17. /**
  18. * 审批待处理统计
  19. *
  20. * @Apidoc\Method("POST")
  21. * @Apidoc\Returned("module", type="integer", desc="模块类型:1=申购申请,2=呈批申请,3=入库申请,4=领用申请,5=出差申请,6=请假申请,7=用车申请,8=维修申请,9=合同呈批,10=收文批阅,11=学校文件")
  22. * @Apidoc\Returned("module_text", type="string", desc="模块类型描述")
  23. * @Apidoc\Returned("number", type="integer", desc="待处理数量")
  24. **/
  25. public function get_count(){
  26. $user = $this->user;
  27. $data = ApproveService::get_count($user);
  28. $this->success('审批待处理统计', $data);
  29. }
  30. /**
  31. * 审批列表
  32. *
  33. * @Apidoc\Method("POST")
  34. * @Apidoc\Param("page", type="integer",require=true, desc="页数")
  35. * @Apidoc\Param("page_num", type="integer", require=true, desc="每页数量")
  36. * @Apidoc\Param("status", type="integer", require=true, desc="处理状态:1=待处理,2=已处理,3=我收到的")
  37. * @Apidoc\Param("module", type="integer", require=false, desc="模块类型:1=申购申请,2=呈批申请,3=入库申请,4=领用申请,5=出差申请,6=请假申请,7=用车申请,8=维修申请,9=合同呈批,10=收文批阅,11=学校文件 不传默认全部")
  38. * @Apidoc\Param("start_time", type="string", require=false, desc="申请开始时间")
  39. * @Apidoc\Param("end_time", type="string", require=false, desc="申请结束时间")
  40. * @Apidoc\Param("search", type="string", require=false, desc="搜索 姓名 事由 编号")
  41. * @Apidoc\Returned("approve_id", type="integer", desc="审批ID")
  42. * @Apidoc\Returned("status", type="integer", desc="审批状态:1=待审批,2=审批中,3=审批同意,4=审批驳回")
  43. * @Apidoc\Returned("create_at", type="string", desc="创建时间")
  44. * @Apidoc\Returned("module", type="integer", desc="模块类型")
  45. * @Apidoc\Returned("order_no", type="string", desc="审批编号")
  46. * @Apidoc\Returned("apply_date", type="string", desc="申请日期")
  47. * @Apidoc\Returned("reason", type="string", desc="事由,文件名称")
  48. * @Apidoc\Returned("type", type="integer", desc="类型:采购类型,呈批类型,出差类型,请假类型,维修类型,合同类型")
  49. * @Apidoc\Returned("desc", type="string", desc="缓急程度,具体内容,来文单位")
  50. * @Apidoc\Returned("start_time", type="string", desc="开始时间")
  51. * @Apidoc\Returned("end_time", type="string", desc="结束时间")
  52. * @Apidoc\Returned("approve_one", type="object", desc="审批人信息 status=1",
  53. * @Apidoc\Returned("id", type="integer", desc="审批ID"),
  54. * @Apidoc\Returned("info_id", type="integer", desc="申请ID"),
  55. * @Apidoc\Returned("approve_user", type="string", desc="审批人userid"),
  56. * @Apidoc\Returned("user", type="object", desc="审批人信息",
  57. * @Apidoc\Returned("userid", type="string", desc="用户userid"),
  58. * @Apidoc\Returned("name", type="string", desc="用户姓名"),
  59. * ),
  60. * )
  61. * @Apidoc\Returned("approve_info_user", type="object", desc="创建人信息",
  62. * @Apidoc\Returned("userid", type="string", desc="用户userid"),
  63. * @Apidoc\Returned("name", type="string", desc="用户姓名"),
  64. * )
  65. * @Apidoc\Returned("apply_goods", type="array", desc="申购商品列表 module=1 && type=1",
  66. * @Apidoc\Returned("id", type="integer", desc="申购商品ID"),
  67. * @Apidoc\Returned("info_id", type="integer", desc="申请ID"),
  68. * @Apidoc\Returned("goods_name", type="string", desc="商品名称"),
  69. * )
  70. * @Apidoc\Returned("stock_goods", type="array", desc="入库商品列表 module=3",
  71. * @Apidoc\Returned("id", type="integer", desc="入库商品ID"),
  72. * @Apidoc\Returned("info_id", type="integer", desc="申请ID"),
  73. * @Apidoc\Returned("goods_name", type="string", desc="商品名称"),
  74. * )
  75. * @Apidoc\Returned("use_goods", type="array", desc="领用商品列表 module=4",
  76. * @Apidoc\Returned("id", type="integer", desc="领用商品ID"),
  77. * @Apidoc\Returned("info_id", type="integer", desc="申请ID"),
  78. * @Apidoc\Returned("goods_name", type="string", desc="商品名称"),
  79. * )
  80. * @Apidoc\Returned("peer_user", type="array", desc="同行人员列表 module=5",
  81. * @Apidoc\Returned("id", type="integer", desc="同行人员ID"),
  82. * @Apidoc\Returned("info_id", type="integer", desc="申请ID"),
  83. * @Apidoc\Returned("name", type="string", desc="姓名"),
  84. * )
  85. */
  86. public function get_list()
  87. {
  88. $status = input('status');
  89. $module = input('module');
  90. $start_time = input('start_time');
  91. $end_time = input('end_time');
  92. $search = input('search');
  93. $offset = $this->off_set;
  94. $length = $this->page_num;
  95. $user = $this->user;
  96. $data = ApproveService::get_list($status, $module, $start_time, $end_time, $search, $offset, $length, $user);
  97. $this->success('审批列表', $data);
  98. }
  99. /**
  100. * 详情
  101. *
  102. * @Apidoc\Method("POST")
  103. * @Apidoc\Param("approve_id", type="integer",require=true, desc="审批ID")
  104. * @Apidoc\Returned("approve_id", type="integer", desc="审批ID")
  105. * @Apidoc\Returned("approve_status", type="integer", desc="审批状态:1=待审批,2=审批中,3=审批同意,4=审批驳回")
  106. */
  107. public function get_detail()
  108. {
  109. $id = input('approve_id');
  110. $user = $this->user;
  111. $info = ApproveService::get_detail($id, $user, 'detail');
  112. $this->success('详情', $info);
  113. }
  114. /**
  115. * 信息
  116. *
  117. * @Apidoc\Desc("修改信息")
  118. * @Apidoc\Method("POST")
  119. * @Apidoc\Param("approve_id", type="integer",require=true, desc="审批ID")
  120. * @Apidoc\Returned("approve_id", type="integer", desc="审批ID")
  121. * @Apidoc\Returned("approve_status", type="integer", desc="审批状态:1=待审批,2=审批中,3=审批同意,4=审批驳回")
  122. */
  123. public function get_info()
  124. {
  125. $id = input('approve_id');
  126. $user = $this->user;
  127. $info = ApproveService::get_detail($id, $user, 'info');
  128. $this->success('信息', $info);
  129. }
  130. /**
  131. * 审批
  132. *
  133. * @Apidoc\Method("POST")
  134. * @Apidoc\Param("approve_id", type="integer",require=true, desc="审批ID")
  135. * @Apidoc\Param("status", type="integer",require=true, desc="审批状态:3=审批同意,4=审批驳回")
  136. * @Apidoc\Param("remark", type="sting",require=false, desc="审批意见")
  137. **/
  138. public function audit()
  139. {
  140. $id = input('approve_id');
  141. $status = input('status', 0);
  142. $remark = input('remark', '');
  143. $params = compact("id", "status", "remark");
  144. $user = $this->user;
  145. ApproveService::make($id, $params, $user, 'audit');
  146. $this->success('确认成功');
  147. }
  148. }