first commit

This commit is contained in:
编码猿
2024-09-27 01:31:25 +08:00
commit 07c46ac300
558 changed files with 37414 additions and 0 deletions

View File

@@ -0,0 +1 @@
00f50071-d360-4bcc-aaeb-8c1a183444f7

View File

@@ -0,0 +1,48 @@
import 'package:peach/config/_.dart';
import 'package:peach/entity/_.dart';
import 'package:peach/db/SQLite.dart';
import 'package:peach/service/_.dart';
class ClassService {
static String tableNamePrincipal = "Principal"; // 默认菜单
static String tableNameAdditional = "Additional";// 可选菜单
/// 向指定表插入List数据
static Future<void> addList(String tableName, List<Principal> res) async {
List<Map<String, dynamic>> data = await ClassService.findAll(tableName);
// 如果表中没有数据,执行插入
if (data.isEmpty) {
var _db = await SQLite().db;
res.forEach((e) async {
await _db.insert(tableName, e.toJson());
});
}
}
/// 查询指定表中菜单数据
static Future<List<Map<String, dynamic>>> findAll(String tableName) async {
var _db = await await SQLite().db;
List<Map<String, dynamic>> result = await _db.query(tableName, orderBy: "id DESC");
return result.isNotEmpty
? result
: [];
}
/// 添加菜单到指定表
static Future<int> add({ String tableName , Principal item }) async {
var _db = await SQLite().db;
return await _db.insert(tableName, item.toJson());
}
/// 从指定表删除菜单
static Future<int> delete({ String tableName , Principal item }) async {
var _db = await await SQLite().db;
return await _db.delete(
tableName,
where: 'id = ?',
whereArgs: [item.id]
);
}
}

View File

@@ -0,0 +1,14 @@
import 'package:dio/dio.dart';
import 'package:peach/http/Dio.dart';
class DownloadService {
/// 下载图片
static Future downImage({ String url, Map<String, dynamic> params}) async {
return await HttpApi().get(
url: url,
params: params,
options: Options(responseType: ResponseType.bytes)
);
}
}

View File

@@ -0,0 +1,105 @@
import 'package:peach/config/_.dart';
import 'package:peach/http/Dio.dart';
import 'package:peach/entity/_.dart';
import 'package:peach/service/ClassService.dart';
class HomeService {
/// 获取分类菜单
static Future<ClassResult> GetClassData({ Map<String, dynamic> params }) async {
List<Map<String, dynamic>> a = await ClassService.findAll("Principal");
// 如果数据库有数据,那么直接返回数据库的数据
if (a.isNotEmpty) {
print("如果数据库有分类的数据,那么直接");
List<Map<String, dynamic>> b = await ClassService.findAll("Additional");
return ClassResult.fromJson({
'principal': a,
'additional': b,
});
// 没有数据调接口请求新的分类
} else {
print("如果数据库没有分类的数据,那么掉接口");
var res = await HttpApi().get(
url: Config.ApiUrl['ApiList']['class'],
params: params
);
var resJson = ClassEntity.fromJson(res).result;
resJson.principal.forEach((v) {
print("principal =============== ${v.id}");
});
resJson.additional.forEach((v) {
print("additional ++++++++++++++++++ ${v.id}");
});
await ClassService.addList("Principal",resJson.principal);
await ClassService.addList("Additional",resJson.additional);
return resJson;
}
}
/// 获取分类下的数据列表
static Future<AgentClassListData> GetClassListData({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['agentClassList'],
params: params
);
return AgentClassListEntity.fromJson(res).data;
}
/// 获取详情页数据
static Future<AgentInfo> GetInfoData({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['agentInfo'],
params: params
);
return AgentInfoEntity.fromJson(res).data;
}
/// 获取首页数据
static Future<Result> GetHomeData({ Map<String, dynamic> params }) async {
var res = await HttpApi().get(
url: Config.ApiUrl['ApiList']['index'],
params: params
);
return HomeEntity.fromJson(res).result;
}
/// App更新接口
static Future<UpdateVersionEntity> update({ Map<String, dynamic> params }) async {
var res = await HttpApi().get(
url: Config.ApiUrl['ApiList']['update'],
params: params
);
return UpdateVersionEntity.fromJson(res);
}
static Future<AgentClassListData> GetRecently({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['agentRecently'],
params: params
);
return AgentClassListEntity.fromJson(res).data;
}
/// 获取搜索的数据
static Future<List<ItemList>> GetSearchData({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['agentSearch'],
params: params
);
return SearchEntity.fromJson(res).data;
}
// 获取随机数据
static Future<AgentClassListData> GetAgentRandom({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['agentRandom'],
params: params
);
return AgentClassListEntity.fromJson(res).data;
}
}

View File

@@ -0,0 +1,93 @@
import 'package:peach/entity/_.dart';
import 'package:peach/db/SQLite.dart';
class LikeService {
static String TableName = "Like";
static String tabsNameSingleGraph = "SingleGraph";
///====================== 写真收藏 ======================///
/// 添加喜欢
static Future<int> addLike(LikeEntity user) async {
var _db = await SQLite().db;
return await _db.insert(LikeService.TableName, user.toJson());
}
/// 查询所有喜欢数据
static Future<List<LikeEntity>> findAll() async {
var _db = await await SQLite().db;
List<Map<String, dynamic>> result = await _db.query(LikeService.TableName);
return result.isNotEmpty
? result.map((e) {
return LikeEntity.fromJson(e);
}).toList()
:[];
}
/// 根据id查询数据注意这里返回 truefalse
/// 主要为了在详情页控制收藏按钮的样式,如果需要返回数据
/// 需要修改类型为: Future<List<LikeEntity>> 和 return的结果
/// LikeEntity.fromJson(e);
static Future<bool> find(int id) async {
var _db = await SQLite().db;
List<Map<String, dynamic>> result = await _db.query(
LikeService.TableName,
where: 'id = ?',
whereArgs: [id]
);
return result.isNotEmpty ? true : false;
}
/// 根据id删除数据
static Future<int> delete(int id) async {
var _db = await await SQLite().db;
return await _db.delete(
LikeService.TableName,
where: 'id = ?',
whereArgs: [id]
);
}
///====================== 单图收藏 ======================
// 查询所有收藏的图片
static Future<List<SingleGraphEntity>> findAllImg() async {
var _db = await await SQLite().db;
List<Map<String, dynamic>> result = await _db.query(LikeService.tabsNameSingleGraph, orderBy: "id DESC");
return result.isNotEmpty
? result.map((e) {
return SingleGraphEntity.fromJson(e);
}).toList()
:[];
}
// 添加图片
static Future<int> addImg(SingleGraphEntity Img) async {
var _db = await SQLite().db;
return await _db.insert(LikeService.tabsNameSingleGraph, Img.toJson());
}
// 检测图片是否已经收藏过
static Future<bool> checkIsLike(String src) async {
var _db = await SQLite().db;
List<Map<String, dynamic>> result = await _db.query(
LikeService.tabsNameSingleGraph,
where: 'src = ?',
whereArgs: [src]
);
return result.isNotEmpty ? true : false;
}
// 根据 地址删除收藏的图片
static Future<int> deleteImg(String src) async {
var _db = await await SQLite().db;
return await _db.delete(
LikeService.tabsNameSingleGraph,
where: 'src = ?',
whereArgs: [src]
);
}
}

View File

@@ -0,0 +1,25 @@
import 'package:peach/config/_.dart';
import 'package:peach/http/Dio.dart';
import 'package:peach/entity/_.dart';
class MechanismService {
/// 获取分类列表的数据
static Future<List<MechanismResult>> GetMechanismData({ Map<String, dynamic> params }) async {
var res = await HttpApi().get(
url: Config.ApiUrl['ApiList']['mechanism'],
params: params
);
return MechanismEntity.fromJson(res).result;
}
/// 机构列表点击进入详情
static Future<AgentClassListData> GetmechanismList({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['agentMechanismList'],
params: params
);
return AgentClassListEntity.fromJson(res).data;
}
}

View File

@@ -0,0 +1,27 @@
import 'package:peach/config/_.dart';
import 'package:peach/http/Dio.dart';
import 'package:peach/entity/_.dart';
class ModelService {
/// 模特列表
static Future<ModelResult> GetModelData({ Map<String, dynamic> params }) async {
var res = await HttpApi().get(
url: Config.ApiUrl['ApiList']['allModel'],
params: params
);
return ModelEntity.fromJson(res).result;
}
/// 进入模特主页
static Future<ModelInfoResult> GetModelInfo({ Map<String, dynamic> params }) async {
var res = await HttpApi().get(
url: Config.ApiUrl['ApiList']['modelList'],
params: params
);
print(" ===== > ${res}");
return ModelInfoEntity.fromJson(res).result;
}
}

View File

@@ -0,0 +1,60 @@
import 'package:peach/config/_.dart';
import 'package:peach/http/Dio.dart';
import 'package:peach/entity/_.dart';
class UserService {
/// 用户登录接口
static Future<LoginEntity> userLogin({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['login'],
params: params
);
return LoginEntity.fromJson(res);
}
/// 用户注册接口
static Future<RegisterEntity> userRegister({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['register'],
params: params
);
return RegisterEntity.fromJson(res);
}
/// 代理用户注册
static Future<RegisterEntity> agentUserRegister({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['agentreg'],
params: params
);
return RegisterEntity.fromJson(res);
}
/// 免费试看的次数限制
static Future<FreeUseEntity> freeUse({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['freeUse'],
params: params
);
return FreeUseEntity.fromJson(res);
}
/// 办理会员的时候的 下单接口
static Future<RegisterEntity> placeOrder({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['place'],
params: params
);
return RegisterEntity.fromJson(res);
}
/// 办理会员的时候的 下单接口
static Future<orderStatusEntity> orderStatus({ Map<String, dynamic> params }) async {
var res = await HttpApi().post(
url: Config.ApiUrl['ApiList']['orderStatus'],
params: params
);
return orderStatusEntity.fromJson(res);
}
}

View File

@@ -0,0 +1,17 @@
import 'package:dio/dio.dart';
import 'package:peach/config/_.dart';
import 'package:peach/http/Dio.dart';
import 'package:peach/entity/_.dart';
class VideoService {
/// 视频列表
static Future<VideoListEntity> GetVideoList({ Map<String, dynamic> params }) async {
var res = await HttpApi().get(
url: Config.ApiUrl['ApiList']['videoType'],
params: params
);
return VideoListEntity.fromJson(res);
}
}

View File

@@ -0,0 +1,10 @@
library Service;
export 'HomeService.dart';
export 'MechanismService.dart';
export 'ModelService.dart';
export 'LikeService.dart';
export 'DownloadService.dart';
export 'ClassService.dart';
export 'VideoService.dart';
export 'UserService.dart';