user; if ($way == CommonConstant::edit) { ApproveService::make($id, $params, $user, CommonConstant::edit); $this->success('修改成功'); } else { ApproveInfoService::create($id, $module, $params, $user); $this->success('申请已提交,请等待审批'); } } /** * 列表 * * @Apidoc\Method("POST") * @Apidoc\Param("page", type="integer",require=true, desc="页数") * @Apidoc\Param("page_num", type="integer", require=true, desc="每页数量") * @Apidoc\Param("group", type="integer", require=true, desc="类别:list=我的申请记录,form=采购审批单") * @Apidoc\Param("module", type="integer", require=false, desc="模块类型:1=申购申请,2=呈批申请,3=入库申请,4=领用申请,5=出差申请,6=请假申请,7=用车申请,8=维修申请,9=合同呈批,10=收文批阅,11=学校文件") * @Apidoc\Param("status", type="integer", require=false, desc="审批状态:2=审批中,3=审批通过,4=审批驳回,5=审批撤销") * @Apidoc\Param("search", type="string", require=false, desc="搜索 事由 编号") * @Apidoc\Returned("id", type="integer", desc="申请ID") * @Apidoc\Returned("module", type="integer", desc="模块类型") * @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="module=1申购事由,module=2申请标题,module=4物品用途,module=5出差事由,module=6请假原因,module=7出发地点,module=8维修地点,module=9合同编号,module=10文件名称,module=11文件名称") * @Apidoc\Returned("type", type="string", desc="module=1采购类型,module=2呈批类型,module=5出差类型,module=6请假类型,module=8维修类型,module=9合同类型") * @Apidoc\Returned("desc", type="string", desc="module=2缓急程度,module=8具体内容,module=9缓急程度,module=10来文单位名称,module=11缓急程度") * @Apidoc\Returned("start_time", type="string", desc="module=5出差开始时间,module=7出发时间") * @Apidoc\Returned("end_time", type="string", desc="module=5出差结束时间,module=7返回时间") * @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="用户姓名"), * ), * ) * @Apidoc\Returned("apply_goods", type="array", desc="申购商品列表 module=1 && type=1", * @Apidoc\Returned("id", type="integer", desc="申购商品ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("goods_name", type="string", desc="商品名称"), * ) * @Apidoc\Returned("stock_goods", type="array", desc="入库商品列表 module=3", * @Apidoc\Returned("id", type="integer", desc="入库商品ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("goods_name", type="string", desc="商品名称"), * ) * @Apidoc\Returned("use_goods", type="array", desc="领用商品列表 module=4", * @Apidoc\Returned("id", type="integer", desc="领用商品ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("goods_name", 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="姓名"), * ) */ public function get_list() { $group = input('group') ?: 'list'; $module = input('module') ?: 0; $status = input('status') ?: 0; $search = input('search') ?: ''; $offset = $this->off_set; $length = $this->page_num; $user = $this->user; $list = ApproveInfoService::get_list($group, $module, $status, $search, $offset, $length, $user); $this->success($group == 'form' ? '采购审批单' : '我的申请记录', $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("reason", type="string", desc="module=1申购事由,module=2申请标题,module=4物品用途,module=5出差事由,module=6请假原因,module=7出发地点,module=8维修地点,module=9合同编号,module=10文件名称,module=11文件名称") * @Apidoc\Returned("type", type="string", desc="module=1采购类型,module=2呈批类型,module=5出差类型,module=6请假类型,module=8维修类型,module=9合同类型") * @Apidoc\Returned("desc", type="string", desc="module=2缓急程度,module=8具体内容,module=9缓急程度,module=10来文单位名称,module=11缓急程度") * @Apidoc\Returned("start_time", type="string", desc="module=5出差开始时间,module=7出发时间") * @Apidoc\Returned("end_time", type="string", desc="module=5出差结束时间,module=7返回时间") * @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("approve", type="array", 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("group", type="integer", desc="类别:0=审批人,1=发起人"), * @Apidoc\Returned("approve_user", type="string", desc="审批人userid"), * @Apidoc\Returned("approve_flow", type="integer", desc="流程批次"), * * @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("avatar", type="string", desc="头像地址"), * ), * ) * @Apidoc\Returned("approve_copy", type="array", desc="抄送信息", * @Apidoc\Returned("id", type="integer", desc="抄送ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("approve_flow", type="integer", desc="流程批次"), * @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="用户姓名"), * @Apidoc\Returned("avatar", type="string", desc="头像地址"), * ), * ) * @Apidoc\Returned("create_user", type="object", desc="提交人信息", * @Apidoc\Returned("userid", type="string", desc="用户userid"), * @Apidoc\Returned("name", type="string", desc="用户姓名"), * @Apidoc\Returned("avatar", type="string", desc="头像地址"), * @Apidoc\Returned("approve_time", type="string", desc="日期"), * ) * @Apidoc\Returned("apply_user", type="object", desc="申请人信息", * @Apidoc\Returned("userid", type="string", desc="用户userid"), * @Apidoc\Returned("name", type="string", desc="用户姓名"), * @Apidoc\Returned("avatar", type="string", desc="头像地址"), * ) * @Apidoc\Returned("department_data", type="array", desc="所在部门列表", * @Apidoc\Returned("dept_id", type="string", desc="部门ID"), * @Apidoc\Returned("name", type="string", desc="部门名称"), * ) * @Apidoc\Returned("apply_goods", type="array", desc="申购商品列表 module=1 && type=1", * @Apidoc\Returned("id", type="integer", desc="申购商品ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("goods_name", type="string", desc="商品名称"), * @Apidoc\Returned("total_amount", type="string", desc="总金额"), * ) * @Apidoc\Returned("stock_goods", type="array", desc="入库商品列表 module=3", * @Apidoc\Returned("id", type="integer", desc="入库商品ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("goods_name", type="string", desc="商品名称"), * ) * @Apidoc\Returned("use_goods", type="array", desc="领用商品列表 module=4", * @Apidoc\Returned("id", type="integer", desc="领用商品ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("goods_name", 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="姓名"), * ) */ public function get_detail() { $id = input('id') ?: 0; $user = $this->user; $info = ApproveInfoService::get_detail($id, $user, CommonConstant::IS_WHO_1, '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("reason", type="string", desc="module=1申购事由,module=2申请标题,module=4物品用途,module=5出差事由,module=6请假原因,module=7出发地点,module=8维修地点,module=9合同编号,module=10文件名称,module=11文件名称") * @Apidoc\Returned("type", type="string", desc="module=1采购类型,module=2呈批类型,module=5出差类型,module=6请假类型,module=8维修类型,module=9合同类型") * @Apidoc\Returned("desc", type="string", desc="module=2缓急程度,module=8具体内容,module=9缓急程度,module=10来文单位名称,module=11缓急程度") * @Apidoc\Returned("start_time", type="string", desc="module=5出差开始时间,module=7出发时间") * @Apidoc\Returned("end_time", type="string", desc="module=5出差结束时间,module=7返回时间") * @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("apply_goods", type="array", desc="申购商品列表 module=1 && type=1", * @Apidoc\Returned("id", type="integer", desc="申购商品ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("goods_name", type="string", desc="商品名称"), * @Apidoc\Returned("total_amount", type="string", desc="总金额"), * ) * @Apidoc\Returned("stock_goods", type="array", desc="入库商品列表 module=3", * @Apidoc\Returned("id", type="integer", desc="入库商品ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("goods_name", type="string", desc="商品名称"), * ) * @Apidoc\Returned("use_goods", type="array", desc="领用商品列表 module=4", * @Apidoc\Returned("id", type="integer", desc="领用商品ID"), * @Apidoc\Returned("info_id", type="integer", desc="申请ID"), * @Apidoc\Returned("goods_name", 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("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') ?: 0; $user = $this->user; $info = ApproveInfoService::get_detail($id, $user, CommonConstant::IS_WHO_1, 'info'); $this->success('信息', $info); } /** * 催办 * * @Apidoc\Method("POST") * @Apidoc\Param("id", type="integer",require=true, desc="申请ID") */ public function urging() { $id = input('id') ?: 0; $user = $this->user; Db::startTrans(); try { ApproveInfoService::make($id, $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') ?: 0; $user = $this->user; Db::startTrans(); try { ApproveInfoService::make($id, $user, 'cancel'); Db::commit(); } catch (Exception $e) { Db::rollback(); $this->error($e->getMessage()); } $this->success('撤销成功'); } }