user); Db::commit(); } catch (Exception $e) { Db::rollback(); $this->error($e->getMessage()); } $this->success('申请已提交,请等待审批'); } /** * 我的申请记录 * * @Apidoc\Method("POST") * @Apidoc\Param("page", type="integer",require=true, desc="页数") * @Apidoc\Param("page_num", type="integer", require=true, desc="每页数量") * @Apidoc\Param("module", type="integer", require=true, desc="模块类型:1=申购申请,2=呈批申请,3=入库申请,4=领用申请,5=出差申请,6=请假申请,7=用车申请,8=维修申请,9=合同呈批,10=收文批阅,11=学校文件") * @Apidoc\Param("status", type="integer", require=true, desc="审批状态:2=审批中,3=审批通过,4=审批驳回,5=审批撤销") * @Apidoc\Param("search", type="string", require=false, desc="搜索 事由 编号") * @Apidoc\Returned("id", type="integer", desc="申请ID") * @Apidoc\Returned("status", type="integer", desc="审批状态:2=审批中,3=审批通过,4=审批驳回,5=审批撤销") * @Apidoc\Returned("create_at", type="string", desc="创建时间") * @Apidoc\Returned("order_no", type="string", desc="审批编号") * @Apidoc\Returned("apply_date", type="string", desc="申请日期") * @Apidoc\Returned("reason", type="string", desc="事由") * @Apidoc\Returned("start_time", type="string", desc="开始时间") * @Apidoc\Returned("end_time", type="string", desc="结束时间") * @Apidoc\Returned("peer_user", type="array", desc="同行人员列表 module=5", * @Apidoc\Returned("id", type="integer", desc="同行人员ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("name", type="string", desc="姓名"), * ) * @Apidoc\Returned("approve_one", type="object", desc="审批信息 status=2,4", * @Apidoc\Returned("id", type="integer", desc="审批ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("approve_user", type="string", desc="审批人userid"), * @Apidoc\Returned("user", type="object", desc="审批人信息", * @Apidoc\Returned("userid", type="string", desc="用户userid"), * @Apidoc\Returned("name", type="string", desc="姓名"), * ), * ) */ public function get_list() { $module = input('module'); $status = input('status'); $search = input('search'); $offset = $this->off_set; $length = $this->page_num; $list = ApproveInfoService::get_list($module, $status, $search, $offset, $length, $this->user); $this->success('我的申请记录', $list); } /** * 详情 * * @Apidoc\Method("POST") * @Apidoc\Param("id", type="integer",require=true, desc="申请ID") * @Apidoc\Returned("id", type="integer", desc="申请ID") * @Apidoc\Returned("module", type="integer", desc="模块类型:1=申购申请,2=呈批申请,3=入库申请,4=领用申请,5=出差申请,6=请假申请,7=用车申请,8=维修申请,9=合同呈批,10=收文批阅,11=学校文件") * @Apidoc\Returned("module_id", type="integer", desc="对应模块ID") * @Apidoc\Returned("status", type="integer", desc="审批状态:2=审批中,3=审批通过,4=审批驳回,5=审批撤销") * @Apidoc\Returned("create_at", type="string", desc="创建时间") * @Apidoc\Returned("order_no", type="string", desc="审批编号") * @Apidoc\Returned("apply_date", type="string", desc="申请日期") * @Apidoc\Returned("module_info", type="object", desc="模块信息", * @Apidoc\Returned("id", type="integer", desc="模块ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("create_at", type="string", desc="创建时间"), * @Apidoc\Returned("reason", type="string", desc="事由"), * @Apidoc\Returned("start_time", type="string", desc="开始时间"), * @Apidoc\Returned("end_time", type="string", desc="结束时间"), * @Apidoc\Returned("type", type="integer", desc="出差类型:1=市内,2=市外"), * @Apidoc\Returned("is_who", type="integer", desc="是否跨关内关外:0=否,1=是"), * @Apidoc\Returned("remark", type="string", desc="备注"), * @Apidoc\Returned("document_text", type="array", desc="附件列表"), * @Apidoc\Returned("images_text", type="array", desc="图片列表"), * ) * @Apidoc\Returned("peer_user", type="array", desc="同行人员列表 module=5", * @Apidoc\Returned("id", type="integer", desc="同行人员ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("name", type="string", desc="姓名"), * ) * @Apidoc\Returned("approve_info", type="object", desc="审批信息", * @Apidoc\Returned("id", type="integer", desc="审批ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("status", type="integer", desc="审批状态:1=待审批,2=审批中,3=审批通过,4=审批拒绝"), * @Apidoc\Returned("create_at", type="string", desc="创建时间"), * @Apidoc\Returned("approve_flow", type="integer", desc="流程批次"), * @Apidoc\Returned("approve_user", type="string", desc="审批人userid"), * @Apidoc\Returned("approve_time", type="string", desc="审批时间"), * @Apidoc\Returned("remark", type="string", desc="审批备注"), * @Apidoc\Returned("time", type="string", desc="审批时长(上一次审批完成到本次审批的时间,单位秒)"), * @Apidoc\Returned("time_text", type="string", desc="审批时长文本"), * @Apidoc\Returned("user", type="object", desc="审批人信息", * @Apidoc\Returned("userid", type="string", desc="用户userid"), * @Apidoc\Returned("name", type="string", desc="姓名"), * ), * ) * @Apidoc\Returned("department", type="array", desc="所在部门列表", * @Apidoc\Returned("dept_id", type="string", desc="部门ID"), * @Apidoc\Returned("name", type="string", desc="部门名称"), * ) */ public function get_detail() { $id = input('id'); $info = ApproveInfoService::get_detail($id, $this->user, 'detail'); $this->success('详情', $info); } /** * 信息 * * @Apidoc\Desc("重新发起信息") * @Apidoc\Method("POST") * @Apidoc\Param("id", type="integer",require=true, desc="申请ID") * @Apidoc\Returned("id", type="integer", desc="申请ID") * @Apidoc\Returned("module", type="integer", desc="模块类型:1=申购申请,2=呈批申请,3=入库申请,4=领用申请,5=出差申请,6=请假申请,7=用车申请,8=维修申请,9=合同呈批,10=收文批阅,11=学校文件") * @Apidoc\Returned("module_id", type="integer", desc="对应模块ID") * @Apidoc\Returned("status", type="integer", desc="审批状态:2=审批中,3=审批通过,4=审批驳回,5=审批撤销") * @Apidoc\Returned("create_at", type="string", desc="创建时间") * @Apidoc\Returned("order_no", type="string", desc="审批编号") * @Apidoc\Returned("apply_date", type="string", desc="申请日期") * @Apidoc\Returned("module_info", type="object", desc="模块信息", * @Apidoc\Returned("id", type="integer", desc="模块ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("create_at", type="string", desc="创建时间"), * @Apidoc\Returned("reason", type="string", desc="事由"), * @Apidoc\Returned("start_time", type="string", desc="开始时间"), * @Apidoc\Returned("end_time", type="string", desc="结束时间"), * @Apidoc\Returned("type", type="integer", desc="出差类型:1=市内,2=市外"), * @Apidoc\Returned("is_who", type="integer", desc="是否跨关内关外:0=否,1=是"), * @Apidoc\Returned("remark", type="string", desc="备注"), * @Apidoc\Returned("document_text", type="array", desc="附件列表"), * @Apidoc\Returned("images_text", type="array", desc="图片列表"), * ) * @Apidoc\Returned("peer_user", type="array", desc="同行人员列表 module=5", * @Apidoc\Returned("id", type="integer", desc="同行人员ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("is_who", type="integer", desc="是否外部人员:0=否,1=是"), * @Apidoc\Returned("user_id", type="string", desc="用户userid"), * @Apidoc\Returned("name", type="string", desc="姓名"), * @Apidoc\Returned("desc", type="string", desc="备注"), * ) **/ public function get_info() { $id = input('id'); $info = ApproveInfoService::get_detail($id, $this->user, 'info'); $this->success('信息', $info); } /** * 催办 * * @Apidoc\Method("POST") * @Apidoc\Param("id", type="integer",require=true, desc="申请ID") */ public function urging() { $id = input('id'); Db::startTrans(); try { ApproveInfoService::make($id, $this->user, 'urging'); Db::commit(); } catch (Exception $e) { Db::rollback(); $this->error($e->getMessage()); } $this->success('催办成功'); } /** * 撤销 * * @Apidoc\Method("POST") * @Apidoc\Param("id", type="integer",require=true, desc="申请ID") */ public function cancel() { $id = input('id'); Db::startTrans(); try { ApproveInfoService::make($id, $this->user, 'cancel'); Db::commit(); } catch (Exception $e) { Db::rollback(); $this->error($e->getMessage()); } $this->success('撤销成功'); } }