'构建排队中', 1 => '正在构建', 2 => '构建成功', 3 => '构建失败', 5 => '构建超时', 6 => '版本创建成功', ]; // 支付宝小程序 状态 protected $versionStatus = [ 'INIT' => '开发中', 'AUDITING' => '审核中', 'AUDIT_REJECT' => '审核驳回', 'WAIT_RELEASE' => '待上架', 'BASE_AUDIT_PASS' => '准入不可营销', 'GRAY' => '灰度中', 'RELEASE' => '已上架', 'OFFLINE' => '已下架', 'AUDIT_OFFLINE' => '已下架', ]; public function __construct($siteId){ $this->site_id = $siteId; } /** * Common: 获取小程序发布记录 * Author: wu-hui * Time: 2022/12/29 17:04 * @return array * @throws \think\db\exception\DbException */ public function getList(){ // 参数获取 $page = input('page',1); $pageSize = input('page_size',PAGE_LIST_ROWS); $aliPayAppletModel = new AliPayApplet($this->site_id); // 列表获取 $field = [ 'id', 'version', 'ali_create_status', 'is_experience_version', 'version_status', 'create_time', 'audit_reason' ]; $result = Db::name('applet_release') ->field($field) ->where('site_id',$this->site_id) ->where('type',1) ->order('version','DESC') ->paginate(['list_rows' => $pageSize,'page' => $page]); if($result) { $result = $result->toArray(); try{ $aliCreateStatus = $this->aliCreateStatus; $versionStatus = $this->versionStatus; $newestVersion = $aliPayAppletModel->newestVersion(); // 循环处理信息 $list = $result['data'] ?? []; foreach($list as &$item){ // 获取构建状态 if(in_array($item['ali_create_status'],[0,1])) $item['ali_create_status'] = (int)$aliPayAppletModel->versionBuildQuery($item['version'],$item['id']); $item['ali_create_status_text'] = $aliCreateStatus[$item['ali_create_status']]; // 获取状态 if($item['version_status']) $item['version_status_text'] = $versionStatus[$item['version_status']]; // 判断当前版本是否为最新版本 $item['is_newest_version'] = false; if($item['version'] == $newestVersion) $item['is_newest_version'] = true; } // 获取版本信息 $list = [ 'count' => $result['total'], 'list' => $list, 'page_count' => $result['last_page'], ]; return $this->success($list); }catch(\Exception $e){ return $this->error('',$e->getMessage()); } } return $this->success(); } }