Files
2025-12-15 10:06:20 +08:00

163 lines
5.0 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace app\adminapi\controller;
use app\admin\model\AdminLog;
use app\common\controller\adminApi;
use think\Config;
use think\Db;
use think\Hook;
use think\Session;
use think\Validate;
/**
* 版本管理
* @internal
*/
class Version extends adminApi
{
protected $noNeedLogin = [];
protected $noNeedRight = [];
protected $table = 'version';
public function _initialize()
{
parent::_initialize();
}
/*
* 列表
*/
public function version_list(){
$page = input('page', 1);
$page_limit = input('page_limit', 30);
$version = input('version', '');
$where=[];
if($version != ''){
$where['newversion'] = $version;
}
$list = db::name($this->table)->where($where)->page($page, $page_limit)->select();
$count = db::name($this->table)->where($where)->count();
$list_data = [];
foreach ($list as $key => $value) {
$list_data[$key]['id'] = $value['id'];
$list_data[$key]['newversion'] = $value['newversion'];
$list_data[$key]['type'] = $value['type'];
$list_data[$key]['downloadurl'] = $value['downloadurl'];
$list_data[$key]['content'] = $value['content'];
$list_data[$key]['enforce'] = $value['enforce'];
$list_data[$key]['enforce_str'] = $value['enforce']==1 ? '是' : '否';
$list_data[$key]['status'] = $value['status'];
$list_data[$key]['status_str'] = $value['status']==1 ? '启用' : '禁用';
$list_data[$key]['version_code'] = $value['code'];
$list_data[$key]['createtime'] = date('Y-m-d H:i:s', $value['createtime']);
}
$return_data = [
'page' =>$page,
'page_limit' => $page_limit,
'count' => $count,
'lists' => $list_data
];
return V(1,"成功", $return_data);
}
/*
* 添加
*/
public function version_add(){
$version = input('version', '');
$type = input('type', '');
$downloadurl = input('downloadurl', '');
$content = $_POST['content'] ?? '';
$enforce = input('enforce', '');
$version_code = input('version_code', '');
$status = input('status', 1);
$version = db::name($this->table)->where(['newversion'=>$version])->find();
if($version){
return V(0,"版本号已存在");
}
$data = [
'newversion' => $version,
'type' => $type,
'downloadurl' => $downloadurl,
'content' => $content,
'enforce' => $enforce,
'code' => $version_code,
'status' => $status,
'createtime' => time()
];
$res = db::name($this->table)->insert($data);
if($res){
return V(1,"添加成功");
}else{
return V(0,"添加失败");
}
}
/*
* 修改
*/
public function version_edit(){
$version = input('version', '');//新版本好
$type = input('type', '');//1-安卓 2-IOS
$downloadurl = input('downloadurl', '');//下载地址
$content = $_POST['content'] ?? '';//更新内容
$enforce = input('enforce', '');//强制更新 1-是 0-否
$version_code = input('version_code', '');//版本号(目前安卓使用,用来判定是否升级)
$status = input('status', 1);//0-待发布1-已发布2-禁用
$id = input('id', '');
$now_version = db::name($this->table)->where(['id'=>$id])->find();
if(!$now_version){
return V(0,"数据不存在");
}
$res = version_compare($now_version['newversion'], $version);
if($res == 0){
return V(0,"版本号已存在");
}
$data = [
'newversion' => $version,
'oldversion' => $now_version['newversion'],
'type' => $type,
'downloadurl' => $downloadurl,
'content' => $content,
'enforce' => $enforce,
'code' => $version_code,
'status' => $status,
'updatetime' => time()
];
$res = db::name($this->table)->where(['id'=>$id])->update($data);
if($res){
return V(1,"修改成功");
}else{
return V(0,"修改失败");
}
}
/*
* 删除
*/
public function version_del(){
$id = input('id', '');
$res = db::name($this->table)->where(['id'=>$id])->delete();
if($res){
return V(1,"删除成功");
}else{
return V(0,"删除失败");
}
}
/*
* 状态修改
*/
public function version_status(){
$id = input('id', '');
$status = input('status', 0);
$res = db::name($this->table)->where(['id'=>$id])->update(['status'=>$status]);
if($res){
return V(1,"修改成功");
}else{
return V(0,"修改失败");
}
}
}