Compare commits

...

41 Commits

Author SHA1 Message Date
Putoo
e4d39f3f2f 121212 2026-07-17 18:12:08 +08:00
c80841880c 12121 2026-07-16 23:24:17 +08:00
Putoo
7c7ac2991a 12121 2026-07-16 18:07:00 +08:00
Putoo
00c2758df2 121212 2026-07-16 17:52:33 +08:00
Putoo
2cd2ed02f8 12121 2026-07-16 12:48:31 +08:00
c94b3ce200 23123 2026-07-15 23:04:46 +08:00
Putoo
4ef892e15e 1212121 2026-07-15 18:15:35 +08:00
Putoo
c9c870004b 1212 2026-07-15 12:55:22 +08:00
77fcf4ea47 1222 2026-07-14 21:15:27 +08:00
Putoo
73850ff7a2 12121 2026-07-14 18:59:40 +08:00
Putoo
171388d7e8 1212 2026-07-14 17:51:41 +08:00
Putoo
578d6f23db 1212 2026-07-14 16:23:20 +08:00
Putoo
3324d7c742 1212 2026-07-14 15:29:46 +08:00
Putoo
aa6ca6ac08 32312 2026-07-13 20:06:01 +08:00
Putoo
b5de98a214 12121 2026-07-13 19:52:55 +08:00
5d375e94bd 更新 README.md 2026-07-13 14:48:23 +08:00
858a7c2725 更新 README.md 2026-07-13 14:47:31 +08:00
LN
b1a196adb1 Merge branch 'master' of https://gitaa.cn/KxGame/Kg.SeaTime 2026-07-13 14:28:39 +08:00
LN
4636169e00 增加称号跟徽章接口 2026-07-13 14:28:33 +08:00
Ls
001909b8cb 称号、徽章 2026-07-13 14:27:07 +08:00
Putoo
035eb476ea 121212 2026-07-12 17:36:07 +08:00
Putoo
c40f3711bc 1212121 2026-07-11 18:52:38 +08:00
Putoo
dec8c2e076 121212133 2026-07-10 19:37:38 +08:00
Putoo
2c1bec379d 12121 2026-07-10 19:30:46 +08:00
Putoo
2ce226c4d7 121212 2026-07-10 19:22:40 +08:00
Putoo
c58d8c2e4a 121 2026-07-10 16:41:59 +08:00
Putoo
9de24634e3 121212 2026-07-10 16:39:52 +08:00
Putoo
cfe6612a7a 12121 2026-07-09 22:46:28 +08:00
LN
010ca90575 增加使用经验道具 2026-07-09 17:19:32 +08:00
Putoo
270a486ae2 12121 2026-07-09 11:29:19 +08:00
Putoo
c75f597405 1212 2026-07-08 19:23:34 +08:00
Putoo
fe2696074b 1212 2026-07-08 19:13:55 +08:00
5d0ebe5077 23232 2026-07-07 20:02:50 +08:00
Putoo
037e845622 1212121 2026-07-07 18:43:01 +08:00
Putoo
7f29fd46b8 232323 2026-07-07 11:51:45 +08:00
Putoo
49ac29c50a 12121 2026-07-07 08:38:26 +08:00
Putoo
63d56b245e 1212 2026-07-06 14:44:15 +08:00
Putoo
a1dbce8a96 111 2026-07-05 18:51:01 +08:00
Putoo
fdb16f5d91 121212 2026-07-04 19:12:40 +08:00
Putoo
732ff93b16 Merge remote-tracking branch 'master/master' 2026-07-04 18:07:47 +08:00
Putoo
fa00fc5d66 12121 2026-07-04 18:07:37 +08:00
252 changed files with 12293 additions and 724 deletions

1
.gitignore vendored
View File

@@ -8,3 +8,4 @@ node_modules
[Ll]og/
[Ll]ogs/
.idea/
任务生成/

View File

@@ -0,0 +1,25 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net10.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<Content Update="applicationsettings.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Service\Application.Domain.Entity\Application.Domain.Entity.csproj" />
<ProjectReference Include="..\Service\Application.Domain\Application.Domain.csproj" />
<ProjectReference Include="..\Service\Application.Service.Pub\Application.Service.Pub.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="Areas\" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,89 @@
using Microsoft.AspNetCore.Mvc;
namespace Application.Web.Admin.Controllers;
public class AccMoneyController : Controller
{
private readonly IUnitUserAccService _accService;
private readonly IUnitUserService _userService;
private readonly IMessageService _messageService;
public AccMoneyController(IUnitUserAccService accService, IUnitUserService userService,
IMessageService messageService)
{
_accService = accService;
_userService = userService;
_messageService = messageService;
}
// GET
public IActionResult Index()
{
return View();
}
[HttpPost]
public async Task<IActionResult> UpAcc(string u, long c, string t, string r, string p)
{
string url = "/AccMoney/Index";
var user = await _userService.GetUserInfoByUserNo(u);
if (user == null)
{
TempData["msg"] = "用户不存在!";
return Redirect(url);
}
if (await _accService.UpdateUserAccBath(user.userId, 1, t, c, p, r))
{
TempData["msg"] = "发放成功!";
string accName = GetCurrName(t);
string msg =$"亲爱的玩家,您的【{accName}】账户有变动,账户额度+{c},备注:[{r}];祝您驰骋四海,纵横天下!";
await _messageService.SendMaill(user.userId, "账户操作通知", msg, new List<TowerGet>());
return Redirect(url);
}
else
{
TempData["msg"] = "发放失败!";
return Redirect(url);
}
}
public static string GetCurrName(string accType)
{
string result = string.Empty;
switch (accType)
{
case "copper":
result = "铜贝";
break;
case "cowry":
result = "金贝";
break;
case "gold":
result = "金元";
break;
case "teach":
result = "师德";
break;
case "renown":
result = "声望";
break;
case "charm":
result = "魅力";
break;
case "enemy":
result = "罪恶值";
break;
}
return result;
}
}

View File

@@ -0,0 +1,12 @@
using Microsoft.AspNetCore.Mvc;
namespace Application.Web.Admin.Controllers;
public class IndexController : Controller
{
// GET
public IActionResult Index()
{
return View();
}
}

View File

@@ -0,0 +1,97 @@
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
namespace Application.Web.Admin.Controllers;
public class SendMailController : Controller
{
private readonly IMessageService _messageService;
private readonly IGameGoodsService _goodsService;
private readonly IUnitUserService _userService;
public SendMailController(IMessageService messageService,IGameGoodsService goodsService,IUnitUserService userService)
{
_messageService = messageService;
_goodsService = goodsService;
_userService = userService;
}
// GET
public IActionResult Index()
{
return View();
}
[HttpPost]
public async Task<IActionResult> Send(string id, string name, string sign, string awData, int goods, int count, string remark, int type)
{
string url = "/SendMail/Index";
List<TowerGet> award = new List<TowerGet>();
if (string.IsNullOrEmpty(awData))
{
if (goods != 0)
{
var goodsInfo = await _goodsService.GetGoodsInfo(goods);
if (goodsInfo == null)
{
TempData["msg"] = "物品不存在!";
return Redirect(url);
}
TowerGet add = new TowerGet();
add.code = GameEnum.PropCode.Goods.ToString();
add.name = goodsInfo.goodsName;
add.parameter = goods.ToString();
add.count = count;
award.Add(add);
}
}
else
{
award = JsonConvert.DeserializeObject<List<TowerGet>>(awData);
}
int index = 0;
List<string> users = new List<string>();
if (type == 0)
{
string[] ids = id.Split(',');
foreach (string item in ids)
{
var userInfo = await _userService.GetUserInfoByUserNo(item.Trim());
if (userInfo == null)
{
continue;
}
index++;
users.Add(userInfo.userId);
}
}
else if (type == 1)
{
DateTime time = TimeAssist.GetDateTimeYMD(0);
var data = await _userService.GetOnlineUserByTime(TimeExtend.GetTimeStampBySeconds(time));
foreach (var item in data)
{
users.Add(item.userId);
index++;
}
}
else
{
var data = await _userService.GetOnlineUserByTime(0);
foreach (var item in data)
{
users.Add(item.userId);
index++;
}
}
if (await _messageService.SendMaill(users, name, sign, award))
{
TempData["msg"] = string.Format("发放成功,共完成{0}个!", index);
return Redirect(url);
}
else
{
TempData["msg"] = "发放失败!";
return Redirect(url);
}
}
}

View File

@@ -0,0 +1,13 @@
global using Photon.Core;
global using Photon.Core.Jwt;
global using Photon.Core.Services;
global using Photon.Core.SqlSugar;
global using Photon.Core.Assist;
global using Photon.Core.Timer;
global using SqlSugar;
global using Application.Service.Pub;
global using Application.Domain;
global using Application.Domain.Entity;
global using Microsoft.AspNetCore.Authorization;
global using Microsoft.AspNetCore.Mvc;

View File

@@ -0,0 +1,65 @@
using Photon.Core.Redis;
var builder = WebApplication.CreateBuilder(args);
builder.Services.Inject(new List<string> {
"Application.Web.Admin","Application.Domain"
});//框架初始化
builder.Configuration.RegisterConfig();//注入配置
builder.Services.InjectRedis(builder.Configuration);
builder.Services.InjectSql(builder.Configuration);
//日志
builder.Logging.InjectLog();
// Add services to the container.
// Learn more about configuring OpenAPI at https://aka.ms/aspnet/openapi
#region
builder.Services.AddCors(options =>
{
options.AddPolicy("all", builder =>
{
builder.AllowAnyOrigin() //允许任何来源的主机访问
.AllowAnyMethod()
.AllowAnyHeader();
});
});
#endregion
builder.Services.AddSignalR();
var app = builder.Build();
app.Services.UseInject();//启用框架
app.Configuration.UseConfig();//启用配置
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
app.UseExceptionHandler("/Home/Error");
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
app.UseCors("all");
app.UseStaticFiles();
app.UseHttpsRedirection();
app.UseAuthentication();
app.UseAuthorization();
app.MapControllers();
app.MapControllerRoute(
name: "default",
pattern: "{controller=Index}/{action=Index}/{id?}")
.WithStaticAssets();
SnowflakeAssist.Initialize(0, 0);
app.Run();

View File

@@ -0,0 +1,23 @@
{
"$schema": "https://json.schemastore.org/launchsettings.json",
"profiles": {
"http": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "http://localhost:5270",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"https": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "https://localhost:7023;http://localhost:5270",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}

View File

@@ -0,0 +1,24 @@
<form method="post" action="/AccMoney/UpAcc">
ID:<input type="text" value="" name="u" /><br />
充值账户:
<select name="t">
<option value="copper">铜贝</option>
<option value="gold">金元</option>
<option value="cowry">金贝</option>
<option value="teach">师德</option>
<option value="renown">声望</option>
<option value="charm">魅力</option>
<option value="enemy">罪恶值</option>
</select><br />
金额:<input type="number" value="" name="c" /><br />
充值类型:
<select name="p">
<option value="其他">其他</option>
<option value="充值">充值</option>
</select><br />
备注:<input type="text" value="" name="r" /><br />
<input type="submit" value="发放" />
<div style="color:red">
* @TempData["msg"]
</div>
</form>

View File

@@ -0,0 +1,7 @@
<div>
1.<a href="/SendMail/Index">邮件发放</a>
</div>
<div>
2.<a href="/AccMoney/Index">账户充值</a>
</div>

View File

@@ -0,0 +1,26 @@
<div>
<form action="/SendMail/Send" method="post">
发送类型:<select name="type">
<option value="0">指定玩家</option>
<option value="1">当天在线</option>
<option value="2">全部玩家</option>
</select><br />
ID:<textarea name="id" cols="10" style="width:300px" rows="5"></textarea><br />
邮件主题:<input name="name" type="text" /> <br />
邮件内容:<textarea name="sign" cols="10" style="width:300px" rows="5"></textarea><br />
=======附件=====<br />
多附件字符:<textarea name="awData" cols="10" style="width:300px" rows="5"></textarea><br />
<br />
*当只有一个附件时,可以填写以下内容。
<br />
物品ID:<input name="goods" type="text" /><br />
数量:<input type="number" name="count" /><br />
说明:<input type="text" name="remark" /><br />
<br />
<br />
<input type="submit" value="发送" />
</form>
<div style="color:red">
* @TempData["msg"]
</div>
</div>

View File

@@ -0,0 +1,20 @@
@using Microsoft.AspNetCore.Mvc.TagHelpers
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="/css/table.css" asp-append-version="true" />
</head>
<body>
<div class="foot" style="margin-bottom:10px">
<a href="/">返回首页</a>
</div>
<div class="main">
@RenderBody()
</div>
</body>
</html>

View File

@@ -0,0 +1,3 @@
@{
Layout = "_Layout";
}

View File

@@ -0,0 +1,43 @@
{
"AutoProgram": 0,
"Redis": {
"connection": "81.70.212.61:6379,password=kx.20260711,defaultdatabase=5"
},
"SqlData": [
{
"type": 0,
"name": "Kg.SeaTime.Game",
"connect": "data source=81.70.212.61;database=kg.seatime.game;user id=root;password=1f5ozxRGE3Y;pooling=true;port=3306;sslmode=Required;charset=utf8mb4;"
},
{
"type": 0,
"name": "Kg.SeaTime.Resource",
"connect": "data source=81.70.212.61;database=kg.seatime.resource;user id=root;password=1f5ozxRGE3Y;pooling=true;port=3306;sslmode=Required;charset=utf8mb4;"
},
{
"type": 0,
"name": "Kg.SeaTime.Log",
"connect": "data source=81.70.212.61;database=kg.seatime.log;user id=root;password=1f5ozxRGE3Y;pooling=true;port=3306;sslmode=Required;charset=utf8mb4;"
}
],
"JwtTokenOptions": {
"Issuer": "kx.seatime",
"Audience": "kx.seatime",
"SecurityKey": "46055HR0n7FeNHhDKAYD2i9ZsdsYn4jn"
},
"ResUrl": {
"local": "http://192.168.0.142:5298",
"resUrl": "http://localhost:12206",
"imgCDN": "/",
"videoCDN": "/"
},
"Sms": {
"SmsType": 1,
"AccessKey": "AKIDVptgCRP5UcT4PTGm1yf5E6pKYVBajeKn",
"Secret": "FG2atxlKflcEclgKhnc9XeU3LM6YjdGf",
"signName": "探玩驿站",
"TemplateCode": "963929",
"SmsSdkAppId": "1400523979",
"SmsOnTime": 300
}
}

View File

@@ -0,0 +1,8 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
}
}

View File

@@ -0,0 +1,9 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*"
}

View File

@@ -0,0 +1,25 @@
table {
border-collapse: collapse;
margin: 0 auto;
text-align: center;
margin-top: 20px;
}
table td, table th {
border: 1px solid #cad9ea;
color: #666;
height: 30px;
}
table thead th {
background-color: #CCE8EB;
width: 100px;
}
table tr:nth-child(odd) {
background: #fff;
}
table tr:nth-child(even) {
background: #F5FAFA;
}

View File

@@ -1,6 +1,9 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AActionMethodExecutor_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FSourcesCache_003F294078ecfce6fdb942ecfee089f09717de7a6fcfe5efd9fdb6f4f93c0fb4813_003FActionMethodExecutor_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AControllerActionInvoker_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F8204b8bcfef24edfabefbc1948f556841d7908_003F2b_003F62eb27e3_003FControllerActionInvoker_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AIRedisCache_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F55e5569a0f314a0db6a665eafad446dd6800_003F9e_003F88bbb06d_003FIRedisCache_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AISqlSugarClient_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F6c0f22f0a47643a3b2a40899acd2044c2e3a00_003F5b_003F113fef0a_003FISqlSugarClient_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AITimerJobManager_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F16de42b578c24823a56e75bd74225f401c00_003Fbf_003Fb5f6dd44_003FITimerJobManager_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AJwtExtensions_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F6b089d08a87d4ddd82371ae63e754ba05000_003F26_003Fd6433acb_003FJwtExtensions_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AJwtHelper_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F6b089d08a87d4ddd82371ae63e754ba05000_003Fe2_003F86047f24_003FJwtHelper_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AJwtSecurityTokenHandler_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FSourcesCache_003Ff9d3fc33fd2fba97d4e718534a67f1d3c61e492634cd51c4798ce5621f780f3_003FJwtSecurityTokenHandler_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
@@ -13,5 +16,7 @@
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ASqlSugarScopeProvider_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F6c0f22f0a47643a3b2a40899acd2044c2e3a00_003Fc5_003F4738d33f_003FSqlSugarScopeProvider_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AStringAssist_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fa380d649d5b2495d9bfa0fa24f13662b6400_003Fee_003F90da4dea_003FStringAssist_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003AString_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F51505665371d472f8bdbc333fa4d888cf49938_003Fdf_003F23ca03dd_003FString_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ATask_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F51505665371d472f8bdbc333fa4d888cf49938_003F14_003Fa1e9b3d3_003FTask_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ATimeAssist_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Fa380d649d5b2495d9bfa0fa24f13662b6400_003Fe6_003F9539602d_003FTimeAssist_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ATimerExtensions_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003F16de42b578c24823a56e75bd74225f401c00_003Fdd_003Fb2b9eaf5_003FTimerExtensions_002Ecs/@EntryIndexedValue">ForceIncluded</s:String>
<s:String x:Key="/Default/CodeInspection/ExcludedFiles/FilesAndFoldersToSkip2/=7020124F_002D9FFC_002D4AC3_002D8F3D_002DAAB8E0240759_002Ff_003ATokenValidationParameters_002Ecs_002Fl_003AC_0021_003FUsers_003F29055_003FAppData_003FRoaming_003FJetBrains_003FRider2025_002E3_003Fresharper_002Dhost_003FDecompilerCache_003Fdecompiler_003Ffbb48859ccd84b0d884ab212a4cf9fdb5f820_003F55_003F417754e1_003FTokenValidationParameters_002Ecs/@EntryIndexedValue">ForceIncluded</s:String></wpf:ResourceDictionary>

View File

@@ -1,4 +1,5 @@
<Solution>
<Project Path="Application.Web.Admin/Application.Web.Admin.csproj" />
<Project Path="Service/Application.Domain.Entity/Application.Domain.Entity.csproj" Id="2c4b3532-d29e-4dec-bcf3-eeceb1c374fc" />
<Project Path="Service/Application.Domain/Application.Domain.csproj" Id="78231809-eabc-4800-9c91-479adb485405" />
<Project Path="Service/Application.Service.Pub/Application.Service.Pub.csproj" Id="3d90f467-0fcb-4074-bc96-33b36035ee23" />

View File

@@ -4,3 +4,37 @@
\# Web :前端项目VUE
# 任务生成提示词
提示词:
现在需要你进行wap游戏的任务数据生成生成要求按照当前目录下requirement.md中的要求生成。
任务背景:讲诉大航海时代,新手航海家,准备出海历险,精力海啸,坏血病等航海各类事件的故事,包含和青梅竹马告别等场景;你可以细化详细的一个故事。
任务环数200 环
任务总经验160000000
任务总声望200
任务总铜贝10000000
怪物最大等级30-70级
其他要求:
任务ID的起始ID为1002001
NPCID的起始ID为2001021
物品ID的起始ID为70025
售卖ID的起始ID为200005
怪物的起始ID为300035
采集配置的起始ID为20001
按照要求先进行生成数据结构分析,然后根据提示完成整个故事情节的设计,我确认无误后开始生成任务相关数据。

View File

@@ -10,4 +10,8 @@
<ProjectReference Include="..\Application.Service.Pub\Application.Service.Pub.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="log\" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,40 @@
namespace Application.Domain.Entity
{
public class game_map_goods
{
/// <summary>
/// mgId
/// </summary>
public string mgId { get; set; }
/// <summary>
/// userId
/// </summary>
public string? userId { get; set; }
/// <summary>
/// mapId
/// </summary>
public string? mapId { get; set; }
/// <summary>
/// name
/// </summary>
public string? name { get; set; }
/// <summary>
/// code
/// </summary>
public string? code { get; set; }
/// <summary>
/// par
/// </summary>
public string? par { get; set; }
/// <summary>
/// count
/// </summary>
public long count { get; set; }
}
}

View File

@@ -0,0 +1,39 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class game_magic
{
/// <summary>
/// userId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string userId { get; set; }
/// <summary>
/// areaId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? areaId { get; set; }
/// <summary>
/// time
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? time { get; set; }
/// <summary>
/// isWin
/// </summary>
[SugarColumn(IsNullable = true)]
public int? isWin { get; set; }
/// <summary>
/// uptime
/// </summary>
[SugarColumn(IsNullable = true)]
public long? uptime { get; set; }
}
}

View File

@@ -0,0 +1,93 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class game_onhook
{
/// <summary>
/// userId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string userId { get; set; }
/// <summary>
/// 场景
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? scene { get; set; }
/// <summary>
/// copper
/// </summary>
[SugarColumn(IsNullable = true)]
public long? copper { get; set; }
/// <summary>
/// exp
/// </summary>
[SugarColumn(IsNullable = true)]
public long? exp { get; set; }
/// <summary>
/// status
/// </summary>
[SugarColumn(IsNullable = true)]
public int? status { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// award
/// </summary>
[SugarColumn(IsNullable = true)]
public string? award { get; set; }
/// <summary>
/// 平分
/// </summary>
[SugarColumn(Length = 60, IsNullable = true)]
public decimal? score { get; set; }
/// <summary>
/// 时间/秒
/// </summary>
[SugarColumn(IsNullable = true)]
public int? time { get; set; }
/// <summary>
/// uptime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? uptime { get; set; }
/// <summary>
/// endTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? endTime { get; set; }
/// <summary>
/// 停止时间
/// </summary>
[SugarColumn(IsNullable = true)]
public long? stopTime { get; set; }
/// <summary>
/// sumCopper
/// </summary>
[SugarColumn(IsNullable = true)]
public long? sumCopper { get; set; }
/// <summary>
/// sumExp
/// </summary>
[SugarColumn(IsNullable = true)]
public long? sumExp { get; set; }
}
}

View File

@@ -0,0 +1,69 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class game_trade
{
/// <summary>
/// tradeId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string tradeId { get; set; }
/// <summary>
/// areaId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? areaId { get; set; }
/// <summary>
/// userId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? userId { get; set; }
/// <summary>
/// code
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? code { get; set; }
/// <summary>
/// propId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? propId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// count
/// </summary>
[SugarColumn(IsNullable = true)]
public int? count { get; set; }
/// <summary>
/// price
/// </summary>
[SugarColumn(IsNullable = true)]
public long? price { get; set; }
/// <summary>
/// content
/// </summary>
[SugarColumn(IsNullable = true)]
public string? content { get; set; }
/// <summary>
/// addTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? addTime { get; set; }
}
}

View File

@@ -23,17 +23,6 @@ namespace Application.Domain.Entity
/// </summary>
[SugarColumn(IsNullable = true)]
public long? gold { get; set; }
/// <summary>
/// 师德
/// </summary>
[SugarColumn(IsNullable = true)]
public long? teach { get; set; }
/// <summary>
/// 声望
/// </summary>
[SugarColumn(IsNullable = true)]
public long? renown { get; set; }
}
}

View File

@@ -0,0 +1,57 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class unit_user_badge
{
/// <summary>
/// ubId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string ubId { get; set; }
/// <summary>
/// userId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string userId { get; set; }
/// <summary>
/// badgeId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string badgeId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string name { get; set; }
/// <summary>
/// img
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string img { get; set; }
/// <summary>
/// show
/// </summary>
[SugarColumn(IsNullable = true)]
public int? show { get; set; }
/// <summary>
/// showChat
/// </summary>
[SugarColumn(IsNullable = true)]
public int? showChat { get; set; }
/// <summary>
/// addTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? addTime { get; set; }
}
}

View File

@@ -0,0 +1,39 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class unit_user_data
{
/// <summary>
/// userId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string userId { get; set; }
/// <summary>
/// 师德
/// </summary>
[SugarColumn(IsNullable = true)]
public long? teach { get; set; }
/// <summary>
/// 声望
/// </summary>
[SugarColumn(IsNullable = true)]
public long? renown { get; set; }
/// <summary>
/// 罪恶值
/// </summary>
[SugarColumn(IsNullable = true)]
public long? enemy { get; set; }
/// <summary>
/// 魅力
/// </summary>
[SugarColumn(IsNullable = true)]
public long? charm { get; set; }
}
}

View File

@@ -0,0 +1,45 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class unit_user_escort
{
/// <summary>
/// userId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string userId { get; set; }
/// <summary>
/// esId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? esId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// IsUse
/// </summary>
[SugarColumn(IsNullable = true)]
public int? isUse { get; set; }
/// <summary>
/// state
/// </summary>
[SugarColumn(IsNullable = true)]
public int? state { get; set; }
/// <summary>
/// endTime
/// </summary>
[SugarColumn(IsNullable = true)]
public long? endTime { get; set; }
}
}

View File

@@ -0,0 +1,69 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class unit_user_maxname
{
/// <summary>
/// umnId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string umnId { get; set; }
/// <summary>
/// userId
/// </summary>
[SugarColumn(Length = 50, IsNullable = false)]
public string userId { get; set; }
/// <summary>
/// mnId
/// </summary>
[SugarColumn(Length = 50, IsNullable = false)]
public string mnId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string name { get; set; }
/// <summary>
/// img
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string img { get; set; }
/// <summary>
/// attr
/// </summary>
[SugarColumn(IsNullable = true, IsJson = true)]
public List<AttrItem> attr { get; set; }
/// <summary>
/// count
/// </summary>
[SugarColumn(IsNullable = true)]
public int? count { get; set; }
/// <summary>
/// addTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? addTime { get; set; }
/// <summary>
/// endTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? endTime { get; set; }
/// <summary>
/// show
/// </summary>
[SugarColumn(IsNullable = true)]
public int? show { get; set; }
}
}

View File

@@ -19,7 +19,7 @@ namespace Application.Domain.Entity
public string? userId { get; set; }
/// <summary>
/// areaCode
/// 作用区域
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? areaCode { get; set; }
@@ -43,17 +43,23 @@ namespace Application.Domain.Entity
public string? monsterName { get; set; }
/// <summary>
/// code
/// 场景
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? code { get; set; }
/// <summary>
/// par
/// 相关参数
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? par { get; set; }
/// <summary>
/// state
/// </summary>
[SugarColumn(IsNullable = true)]
public int? state { get; set; }
/// <summary>
/// addTime
/// </summary>

View File

@@ -0,0 +1,55 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class unit_user_task
{
/// <summary>
/// utId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string utId { get; set; }
/// <summary>
/// userId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? userId { get; set; }
/// <summary>
/// taskId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? taskId { get; set; }
/// <summary>
/// itemId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? itemId { get; set; }
[SugarColumn(IsNullable = true)]
public int? lev { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// code
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? code { get; set; }
/// <summary>
/// endTime
/// </summary>
[SugarColumn(IsNullable = true)]
public long? endTime { get; set; }
}
}

View File

@@ -0,0 +1,39 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class unit_user_task_log
{
/// <summary>
/// utId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string utId { get; set; }
/// <summary>
/// userId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? userId { get; set; }
/// <summary>
/// taskId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? taskId { get; set; }
/// <summary>
/// addTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? addTime { get; set; }
/// <summary>
/// endTime
/// </summary>
[SugarColumn(IsNullable = true)]
public long? endTime { get; set; }
}
}

View File

@@ -0,0 +1,63 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Game")]
public class unit_user_temp
{
/// <summary>
/// userId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string userId { get; set; }
/// <summary>
/// areaId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? areaId { get; set; }
/// <summary>
/// 人品
/// </summary>
[SugarColumn(Length = 18, IsNullable = true)]
public decimal? luck { get; set; }
/// <summary>
/// 评分
/// </summary>
[SugarColumn(Length = 18, IsNullable = true)]
public decimal? score { get; set; }
/// <summary>
/// 攻击
/// </summary>
[SugarColumn(Length = 18, IsNullable = true)]
public decimal? atk { get; set; }
/// <summary>
/// 防御
/// </summary>
[SugarColumn(Length = 18, IsNullable = true)]
public decimal? defense { get; set; }
/// <summary>
/// 敏捷
/// </summary>
[SugarColumn(Length = 18, IsNullable = true)]
public decimal? agility { get; set; }
/// <summary>
/// 体力
/// </summary>
[SugarColumn(Length = 18, IsNullable = true)]
public decimal? upBlood { get; set; }
/// <summary>
/// 士气
/// </summary>
[SugarColumn(Length = 18, IsNullable = true)]
public decimal? upMorale { get; set; }
}
}

View File

@@ -18,12 +18,6 @@ namespace Application.Domain.Entity
[SugarColumn(IsNullable = true)]
public long? vitality { get; set; }
/// <summary>
/// 最大活力
/// </summary>
[SugarColumn(IsNullable = true)]
public long? upVitality { get; set; }
/// <summary>
/// 更新时间
/// </summary>

View File

@@ -0,0 +1,69 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Log")]
public class game_charm_log
{
/// <summary>
/// logId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string logId { get; set; }
/// <summary>
/// userId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? userId { get; set; }
/// <summary>
/// fromId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? fromId { get; set; }
/// <summary>
/// goodsId
/// </summary>
[SugarColumn(IsNullable = true)]
public Int32? goodsId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// img
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? img { get; set; }
/// <summary>
/// count
/// </summary>
[SugarColumn(IsNullable = true)]
public int? count { get; set; }
/// <summary>
/// charm
/// </summary>
[SugarColumn(IsNullable = true)]
public int? charm { get; set; }
/// <summary>
/// sumCharm
/// </summary>
[SugarColumn(IsNullable = true)]
public int? sumCharm { get; set; }
/// <summary>
/// addTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? addTime { get; set; }
}
}

View File

@@ -0,0 +1,45 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Log")]
public class game_exchange_log
{
/// <summary>
/// ueId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string ueId { get; set; }
/// <summary>
/// userId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? userId { get; set; }
/// <summary>
/// exId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? exId { get; set; }
/// <summary>
/// count
/// </summary>
[SugarColumn(IsNullable = true)]
public int? count { get; set; }
/// <summary>
/// addTime
/// </summary>
[SugarColumn(IsNullable = true)]
public long? addTime { get; set; }
/// <summary>
/// endTime
/// </summary>
[SugarColumn(IsNullable = true)]
public long? endTime { get; set; }
}
}

View File

@@ -60,6 +60,8 @@ namespace Application.Domain.Entity
[SugarColumn(IsNullable = true)]
public int? state { get; set; }
[SugarColumn(Length = 50, IsNullable = true)]
public string? winCode { get; set; }
/// <summary>
/// 胜利方
/// </summary>

View File

@@ -0,0 +1,8 @@
namespace Application.Domain.Entity;
public class FightRemoveData
{
public string code { get; set; }
public string par { get; set; }
public int count { get; set; }
}

View File

@@ -0,0 +1,12 @@
namespace Application.Domain.Entity;
public class FightResultModel
{
public int result { get; set; }
public int myHarm { get; set; }
public int otHarm { get; set; }
public List<string> myStateData { get; set; }
public List<FightRemoveData> myRemData { get; set; }
public List<string> otStateData { get; set; }
public List<FightRemoveData> otRemData { get; set; }
}

View File

@@ -0,0 +1,9 @@
namespace Application.Domain.Entity;
public class GameNpcModel
{
public int npcId { get; set; }
public string name { get; set; }
public string tips { get; set; }
public int state { get; set; }
}

View File

@@ -0,0 +1,10 @@
namespace Application.Domain.Entity;
public class GameRankModel
{
public string userId { get; set; }
public UserModel user { get; set; }
public string sign { get; set; }
public string par { get; set; }
}

View File

@@ -0,0 +1,12 @@
namespace Application.Domain.Entity;
public class MapBusTo
{
public string name { get; set; }
public string mapId { get; set; }
public string code { get; set; }
public string par { get; set; }
public int time { get; set; }
public int sTime { get; set; }
public int eTime { get; set; }
}

View File

@@ -5,4 +5,5 @@ public class NpcBus
public string code { get; set; }
public string name { get; set; }
public string url { get; set; }
public string parms { get; set; }
}

View File

@@ -0,0 +1,10 @@
namespace Application.Domain.Entity;
public class OnHookAwardModel
{
public string userId { get; set; }
public long exp { get; set; }
public long copper { get; set; }
public long useTime { get; set; }
public List<TowerGet> award { get; set; }
}

View File

@@ -13,7 +13,7 @@ public class RandomModel
/// </summary>
public string code { get; set; }
public string name { get; set; }
public int empty { get; set; }
public double empty { get; set; }
public List<RandomData> data { get; set; }
}

View File

@@ -0,0 +1,8 @@
namespace Application.Domain.Entity;
public class RankAwardModel
{
public int min { get; set; }
public int max { get; set; }
public List<TowerGet> award { get; set; }
}

View File

@@ -0,0 +1,8 @@
namespace Application.Domain.Entity;
public class TaskNeedData:TowerNeed
{
public string areaCode { get; set; }
public string mapId { get; set; }
}

View File

@@ -0,0 +1,11 @@
namespace Application.Domain.Entity;
public class UserTaskModel
{
public string code { get; set; }
public int taskId { get; set; }
public int itemId { get; set; }
public string name { get; set; }
public int state { get; set; }
public CheckTowerNeed result { get; set; }
}

View File

@@ -0,0 +1,33 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Resource")]
public class game_badge
{
/// <summary>
/// badgeId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string badgeId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string name { get; set; }
/// <summary>
/// remark
/// </summary>
[SugarColumn(IsNullable = true)]
public string remark { get; set; }
/// <summary>
/// img
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string img { get; set; }
}
}

View File

@@ -0,0 +1,51 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Resource")]
public class game_cdk
{
/// <summary>
/// cdkId
/// </summary>
[SugarColumn(IsPrimaryKey = true)]
public int cdkId { get; set; }
/// <summary>
/// area
/// </summary>
[SugarColumn(IsNullable = true)]
public int? area { get; set; }
/// <summary>
/// cdkName
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? cdkName { get; set; }
/// <summary>
/// award
/// </summary>
[SugarColumn(IsNullable = true,IsJson = true)]
public List<TowerGet> award { get; set; }
/// <summary>
/// limit
/// </summary>
[SugarColumn(IsNullable = true)]
public int? limit { get; set; }
/// <summary>
/// addTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? addTime { get; set; }
/// <summary>
/// endTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? endTime { get; set; }
}
}

View File

@@ -0,0 +1,33 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Resource")]
public class game_cdk_item
{
/// <summary>
/// ciId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string ciId { get; set; }
/// <summary>
/// cdkId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? cdkId { get; set; }
/// <summary>
/// userId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? userId { get; set; }
/// <summary>
/// upTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? upTime { get; set; }
}
}

View File

@@ -57,8 +57,8 @@ namespace Application.Domain.Entity
/// <summary>
/// busNeed
/// </summary>
[SugarColumn(IsNullable = true)]
public string? busNeed { get; set; }
[SugarColumn(IsNullable = true, IsJson = true)]
public List<TowerNeed> busNeed { get; set; }
/// <summary>
/// busContent

View File

@@ -0,0 +1,33 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Resource")]
public class game_escort
{
/// <summary>
/// esId
/// </summary>
[SugarColumn(IsPrimaryKey = true)]
public int esId { get; set; }
/// <summary>
/// random
/// </summary>
[SugarColumn(IsNullable = true)]
public int? random { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// award
/// </summary>
[SugarColumn(IsNullable = true)]
public string? award { get; set; }
}
}

View File

@@ -0,0 +1,75 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Resource")]
public class game_exchange
{
/// <summary>
/// exId
/// </summary>
[SugarColumn(IsPrimaryKey = true)]
public int exId { get; set; }
/// <summary>
/// areaId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? areaId { get; set; }
/// <summary>
/// npcId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? npcId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// tips
/// </summary>
[SugarColumn(IsNullable = true)]
public string? tips { get; set; }
/// <summary>
/// exType
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? exType { get; set; }
/// <summary>
/// count
/// </summary>
[SugarColumn(IsNullable = true)]
public int? count { get; set; }
/// <summary>
/// needData
/// </summary>
[SugarColumn(IsNullable = true,IsJson = true)]
public List<TowerNeed> needData { get; set; }
/// <summary>
/// getData
/// </summary>
[SugarColumn(IsNullable = true,IsJson = true)]
public List<TowerGet> getData { get; set; }
/// <summary>
/// startTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? startTime { get; set; }
/// <summary>
/// endTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? endTime { get; set; }
}
}

View File

@@ -0,0 +1,63 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Resource")]
public class game_job
{
/// <summary>
/// jobId
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? jobId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// code
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? code { get; set; }
/// <summary>
/// par
/// </summary>
[SugarColumn(IsNullable = true)]
public string? par { get; set; }
/// <summary>
/// opType
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? opType { get; set; }
/// <summary>
/// cron
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? cron { get; set; }
/// <summary>
/// state
/// </summary>
[SugarColumn(IsNullable = true)]
public int? state { get; set; }
/// <summary>
/// addTime
/// </summary>
[SugarColumn(IsNullable = true)]
public DateTime? addTime { get; set; }
/// <summary>
/// remark
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? remark { get; set; }
}
}

View File

@@ -0,0 +1,39 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Resource")]
public class game_maxname
{
/// <summary>
/// mnId
/// </summary>
[SugarColumn(IsPrimaryKey = true, Length = 50)]
public string mnId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string name { get; set; }
/// <summary>
/// img
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string img { get; set; }
/// <summary>
/// attr
/// </summary>
[SugarColumn(IsNullable = true, IsJson = true)]
public List<AttrItem> attr { get; set; }
/// <summary>
/// remark
/// </summary>
[SugarColumn(IsNullable = true)]
public string remark { get; set; }
}
}

View File

@@ -0,0 +1,81 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Resource")]
public class game_task
{
/// <summary>
/// taskId
/// </summary>
[SugarColumn(IsPrimaryKey = true)]
public int taskId { get; set; }
/// <summary>
/// code
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? code { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// itemCount
/// </summary>
[SugarColumn(IsNullable = true)]
public int? itemCount { get; set; }
/// <summary>
/// count
/// </summary>
[SugarColumn(IsNullable = true)]
public int? count { get; set; }
/// <summary>
/// timeSpan
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? timeSpan { get; set; }
/// <summary>
/// sTime
/// </summary>
[SugarColumn(IsNullable = true)]
public int? sTime { get; set; }
/// <summary>
/// eTime
/// </summary>
[SugarColumn(IsNullable = true)]
public int? eTime { get; set; }
/// <summary>
/// lev
/// </summary>
[SugarColumn(IsNullable = true)]
public int? lev { get; set; }
/// <summary>
/// remark
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? remark { get; set; }
/// <summary>
/// 任务完成时间分钟 0不限制
/// </summary>
[SugarColumn(IsNullable = true)]
public int? time { get; set; }
/// <summary>
/// status
/// </summary>
[SugarColumn(IsNullable = true)]
public int? status { get; set; }
}
}

View File

@@ -0,0 +1,99 @@
using SqlSugar;
using System;
namespace Application.Domain.Entity
{
[Tenant("Kg.SeaTime.Resource")]
public class game_task_item
{
/// <summary>
/// tiId
/// </summary>
[SugarColumn(IsPrimaryKey = true)]
public int tiId { get; set; }
/// <summary>
/// taskId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? taskId { get; set; }
/// <summary>
/// name
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? name { get; set; }
/// <summary>
/// 主线、支线
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? code { get; set; }
/// <summary>
/// inType
/// </summary>
[SugarColumn(Length = 50, IsNullable = true)]
public string? inType { get; set; }
/// <summary>
/// 普通,答题
/// </summary>
[SugarColumn(Length = 255, IsNullable = true)]
public string? itemCode { get; set; }
/// <summary>
/// 0起始环 1任务环 2结束环
/// </summary>
[SugarColumn(IsNullable = true)]
public int? itemType { get; set; }
/// <summary>
/// npcId
/// </summary>
[SugarColumn(IsNullable = true)]
public int? npcId { get; set; }
/// <summary>
/// needData
/// </summary>
[SugarColumn(IsNullable = true,IsJson = true)]
public List<TaskNeedData> needData { get; set; }
/// <summary>
/// 环说明
/// </summary>
[SugarColumn(IsNullable = true)]
public string? taskTips { get; set; }
/// <summary>
/// nextTips
/// </summary>
[SugarColumn(IsNullable = true)]
public string? nextTips { get; set; }
/// <summary>
/// 按钮提示
/// </summary>
[SugarColumn(IsNullable = true)]
public string? btnTips { get; set; }
/// <summary>
/// award
/// </summary>
[SugarColumn(IsNullable = true)]
public string? award { get; set; }
/// <summary>
/// 任务时长
/// </summary>
[SugarColumn(IsNullable = true)]
public int? time { get; set; }
/// <summary>
/// 等级
/// </summary>
[SugarColumn(IsNullable = true)]
public int? lev { get; set; }
}
}

View File

@@ -0,0 +1,11 @@
namespace Application.Domain.Entity;
public class GiftLogView
{
public UserModel user { get; set; }
public UserModel from { get; set; }
public string name { get; set; }
public string img { get; set; }
public int count { get; set; }
public DateTime? time { get; set; }
}

View File

@@ -10,4 +10,12 @@
<ProjectReference Include="..\Application.Domain.Entity\Application.Domain.Entity.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="BusEvents\EventModel\" />
</ItemGroup>
<ItemGroup>
<Compile Remove="BusEvents\EventModel\FightAwardEventModel.cs" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,29 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Application.Domain
{
public class BusEventsEnum
{
public enum BusEventsName
{
PutFightAward,//战斗奖励事件
PutOnHookAward,//发放挂机奖励
HandleOnHook,//处理挂机
HandleUpdateRank,//更新排名
HandleOnlineTime,//处理在线时间
HandleCreateMonster,//处理创建的怪物
HandleFightData,//处理战斗日志数据
HandleExchangeData,//处理兑换数据
HandleTaskLog,//处理任务日志
HandelTaskUser,//处理角色任务
HandleClearChat,//清理频道信息
HandleMessageData,//处理消息类
HandleMagicData,//处理魔城争霸赛
}
}
}

View File

@@ -0,0 +1,132 @@
namespace Application.Domain
{
public class BusEventsSubscriber : IEventSubscriber
{
/// <summary>
/// 处理战斗结束相关(含奖励发放)
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.PutFightAward, NumRetries = 0,RetryTimeout = 999999999)]
public async Task PutFightAward(EventHandlerExecutingContext context)
{
var data = context.GetPayload<game_fight_data>();
var fightService = App.GetService<IGameFightService>();
await fightService.HandleFight(data);
}
/// <summary>
/// 发放挂机奖励
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.PutOnHookAward, NumRetries = 0,RetryTimeout = 999999999)]
public async Task PutOnHookAward(EventHandlerExecutingContext context)
{
var data = context.GetPayload<OnHookAwardModel>();
var hookService = App.GetService<IOnHookService>();
await hookService.HandleOnHookGoods(data);
}
/// <summary>
/// 处理挂机
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.HandleOnHook, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleOnHook(EventHandlerExecutingContext context)
{
var hookService = App.GetService<IOnHookService>();
await hookService.HandleHook();
}
/// <summary>
/// 处理排行榜
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.HandleUpdateRank, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleUpdateRank(EventHandlerExecutingContext context)
{
var rankService = App.GetService<IRankService>();
await rankService.HandleRank();
}
/// <summary>
/// 处理在线时间
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.HandleOnlineTime, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleOnlineTime(EventHandlerExecutingContext context)
{
var attrService = App.GetService<IUnitUserAttrService>();
await attrService.HandleOnLineTimeData();
}
/// <summary>
/// 处理生成的怪物
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.HandleCreateMonster, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleCreateMonster(EventHandlerExecutingContext context)
{
var monsterService = App.GetService<IGameMonsterService>();
await monsterService.HandleCreateMonster();
}
/// <summary>
/// 处理战斗日志记录
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.HandleFightData, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleFightData(EventHandlerExecutingContext context)
{
var fightService = App.GetService<IGameFightService>();
await fightService.HandleFightData();
}
/// <summary>
/// 处理兑换记录
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.HandleExchangeData, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleExchangeData(EventHandlerExecutingContext context)
{
var exchangeService = App.GetService<IExchangeService>();
await exchangeService.HandleExchangeLogData();
}
/// <summary>
/// 处理任务日志
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.HandleTaskLog, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleTaskLog(EventHandlerExecutingContext context)
{
var taskService = App.GetService<IGameTaskService>();
await taskService.HandleUserTaskLog();
}
/// <summary>
/// 处理角色任务
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.HandelTaskUser, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandelTaskUser(EventHandlerExecutingContext context)
{
var taskService = App.GetService<IGameTaskService>();
await taskService.HandleUserTask();
}
/// <summary>
/// 清理频道信息
/// </summary>
/// <param name="context"></param>
[EventSubscribe(BusEventsEnum.BusEventsName.HandleClearChat, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleClearChat(EventHandlerExecutingContext context)
{
var chatService = App.GetService<IGameChatService>();
await chatService.ClearChat();
}
[EventSubscribe(BusEventsEnum.BusEventsName.HandleMessageData, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleMessageData(EventHandlerExecutingContext context)
{
var messageService = App.GetService<IMessageService>();
await messageService.HandleMessageData();
}
[EventSubscribe(BusEventsEnum.BusEventsName.HandleMagicData, NumRetries = 0,RetryTimeout = 999999999)]
public async Task HandleMagicData(EventHandlerExecutingContext context)
{
var magicService = App.GetService<IGameMagicService>();
await magicService.HandleMagicData();
}
}
}

View File

@@ -4,18 +4,22 @@ public static class GameConfig
{
public const int GameMaxLev = 320;//最大等级
public const int OnLineTime = 30;//在线延迟时间(分钟)
public const int SendChatGoodsBase = 10014;//小海螺
public const int SendChatGoodsBase = 10000;//小海螺
public const int SendChatGoodsArea = 10001;//大海螺
public const int SendChatGoodsService = 10002;//金海螺
public const int UpLevAddWeight = 10;//升级增加负重
public const int GameBaseVigour = 50;//初始活力
public const int GameRelationEnemyNeedGold = 300;//添加仇人所需金元
public const int GameUpdateNickNeedGoods = 10001;//更新昵称所需道具
public const int GameUpdateSexNeedGoods = 10001;//更新性别所需道具
public const int GameRelationEnemyNeedGold = 100;//添加仇人所需金元
public const int GameUpdateNickNeedGoods = 10018;//更新昵称所需道具
public const int GameUpdateSexNeedGoods = 10065;//更新性别所需道具
public const int GameUserFriendMaxCount = 50;//好友最大上限人数
public const int GameAutoBagGoodsId = 10001;//百宝箱物品ID
public const int GameAutoDrugGoodsId = 10001;//急救箱物品ID
public const int GameAutoBagGoodsId = 10022;//百宝箱物品ID
public const int GameAutoDrugGoodsId = 10023;//急救箱物品ID
public const int GameToMapNeedCopper = 5;//传送每海里费用
public const int TeamCacheTime = 300;//队伍缓存时间
public const int GameEquApprGoods = 10001;//鉴定装备道具
public const int GameEquApprGoods = 10019;//鉴定装备道具
public const int GameGetTaskGoods =10034 ;//引路蜂
public const int GameRetTaskGoods =10033 ;//领路蝶
public const string GameMagicMapId = "257_18";//魔城地图ID
public const string GameMagicInMapId = "260_15";//魔城进入地图ID
}

View File

@@ -10,7 +10,7 @@ public static class AccEnum
teach,//师德
renown,//声望
charm,//魅力
evil,//罪恶值
enemy,//罪恶值
}
public enum Name
{

View File

@@ -9,6 +9,7 @@ public static class GameChatEnum
Team,//队伍
Region,//全区
Dress,//全服
System//系统
System,//系统
Notice,//通知
}
}

View File

@@ -2,6 +2,26 @@
public static class GameEnum
{
public enum JobType
{
single,//1次
alway,//永久
}
public enum JobCode
{
OnHook,//定时任务
UpdateRank,//更新排名
UpdateOnlineTime,//更新在线时间
UpdateCreateMonster,//更新创建得怪物
UpdateFightData,//更新战斗信息
UpdateExchangeData,//更新兑换的记录
UpdateTaskLog,//更新任务日志
UpdateTaskUser,//更新角色任务
ClearChat,//清理频道信息
ClearMessage,//清理个人消息信息
UpdateMagicData,//处理魔城数据
}
public enum PropCode//游戏资源编码
{
Monster,//怪物
@@ -59,12 +79,15 @@ public static class GameEnum
MapTo,
Store,
Make,
Exchange,
}
public enum DicCode
{
Awaken,//觉醒配置
Quality,//洗练配置
MagicAward,//魔城奖励
}
public enum ComputeType
{

View File

@@ -16,10 +16,16 @@ public static class GoodsEnum
Pack,//宝箱
ChoicePack,//选择宝箱
Weight,//负重
Gift,//礼物道具
Tease,//整蛊道具
Exp,//经验
State,//状态物品
Ship,//船只
Practise,//修炼道具
Durability,//耐久道具
AddExp,//扣除经验获得道具
Collect,//收集的物品
GetExp//使用后获得经验
}
public enum DrugCls

View File

@@ -10,4 +10,22 @@ public class MapEnum
add_blood,
add_copper,
}
public enum MapCode
{
DEF_MAP,
Dup_Map,
Magic_Map,
}
public enum NpcCode
{
Default,
Task,
Event,
}
public enum NpcEventCode
{
Magic_Event,
}
}

View File

@@ -7,6 +7,7 @@ public static class MessageEnum
Friend,//交友消息
Marry,//婚姻消息
Trade,//交易通知
Notice,//普通通知
}
public enum BroadcastCode
{

View File

@@ -7,5 +7,10 @@ public static class MonsterEnum
Default,
}
public enum MonsterCode
{
Default,
Dup,
Task
}
}

View File

@@ -14,6 +14,5 @@ public static class SkillEnum
AGILE,//敏捷术
RIDI,//乘骑术
WING,//翼形术
Collect,//采集术
}
}

View File

@@ -0,0 +1,16 @@
namespace Application.Domain;
public static class TaskEnum
{
public enum TaskCode
{
线,
线,
}
public enum ItemCode
{
,
}
}

View File

@@ -4,7 +4,8 @@ public static class UserEnum
{
public enum AttrCode
{
Person
Person,
Monster
}
public enum ConfigCode

View File

@@ -4,3 +4,4 @@ global using Application.Domain.Entity;
global using Photon.Core.Redis;
global using Photon.Core.Assist;
global using Application.Service.Pub;
global using Jaina;

View File

@@ -49,6 +49,10 @@ public class MessageHandle
{
return new MessageHandleResult() { success = true, msg = "消息通知已处理!" };
}
else if (events.code == nameof(MessageEnum.EventCode.Notice))
{
return new MessageHandleResult() { success = true, msg = "消息通知已处理!" };
}
return new MessageHandleResult() { success = false, msg = "暂不支持该操作处理!" };
}

View File

@@ -0,0 +1,10 @@
namespace Application.Domain;
public interface IExchangeService
{
Task<List<game_exchange>> GetExchangeData(int npcId);
Task<game_exchange> GetExchangeInfo(int exId);
Task<int> GetExchangeCount(string userId, int exId);
Task<bool> AddUserExchangeLog(string userId, int exId, int count, long endTime);
Task HandleExchangeLogData();
}

View File

@@ -0,0 +1,14 @@
namespace Application.Domain;
public interface IGameCdkService
{
Task<game_cdk> GetCdkInfo(int cdkId);
Task<game_cdk_item> GetCdkItemInfo(string cdk);
Task<bool> UpdateCdkUser(string cdk, string userId);
Task<int> GetUserCdkCount(int cdkId, string userId);
Task<bool> AddCdkItem(List<game_cdk_item> data);
}

View File

@@ -0,0 +1,11 @@
namespace Application.Domain;
public interface IGameEscortService
{
Task<List<game_escort>> GetEscortData();
Task<game_escort> GetEscortInfo(int esId);
Task<unit_user_escort> GetUserEscort(string userId);
Task<bool> ClearUserEscort(string userId);
Task<bool> UpdateUserEscort(string userId, int esId, string name);
Task<bool> UpdateUserEscort(unit_user_escort data);
}

View File

@@ -0,0 +1,10 @@
namespace Application.Domain;
public interface IGameMagicService
{
Task UpdateUserMagicTime(string userId,int areaId);
Task UpdateUserMagicEndTime(string userId, bool isWin);
Task<bool> IsHaveWin(int areaId, string time);
Task<bool> CheckInMagic(string userId);
Task HandleMagicData();
}

View File

@@ -0,0 +1,13 @@
namespace Application.Domain;
public interface IOnHookService
{
Task<game_onhook> GetUserOnHook(string userId);
Task<bool> StartOnHook(string userId,string scene, long copper, long exp, string name, string award, decimal score,
int time, int onHookTime);
Task<bool> StopOnHook(string userId);
Task HandleHook();
Task HandleOnHookGoods(OnHookAwardModel data);
}

View File

@@ -0,0 +1,11 @@
namespace Application.Domain;
public interface IRankService
{
Task<string> GetRankUpdateTime();
Task<List<GameRankModel>> GetGameRank(int type, int area, int page, int limit, RefAsync<int> total);
Task<List<GameRankModel>> GetGameCopperRank(int area, int page, int limit, RefAsync<int> total);
Task<List<GameRankModel>> GetGameLevRank(int area, int page, int limit, RefAsync<int> total);
Task<List<GameRankModel>> GetGameTeachAndRenownRank(int type, int area, int page, int limit, RefAsync<int> total);
Task HandleRank();
}

View File

@@ -12,4 +12,5 @@ public interface IGameChatService
Task<bool> SendChat(string userId, string code, string sign, string par = "");
Task<game_chat> GetChatInfo(string chatId);
Task<bool> DeleteChat(string chatId, string opUser);
Task ClearChat();
}

View File

@@ -14,11 +14,14 @@ public interface IGameEquService
Task<List<unit_user_equ>> GetUserEquData(string userId, int type, string equName, int PageIndex, int PageSize,
RefAsync<int> Total, bool isRemOn = false, bool isRemLock = false);
Task<List<unit_user_equ>> GetUserEquData(string userId, int type, string equName, int PageIndex,
int PageSize, RefAsync<int> Total,int DealType);
Task<List<unit_user_equ>> GetUserEquData(string userId, string query);
Task<List<unit_user_equ>> GetUserEquData(string userId, int equId);
Task<List<unit_user_equ>> GetUserEquData(string userId, string code, List<string> noUeId);
Task<unit_user_equ> GetUserEquInfo(string ueId);
Task<int> GetUserEquByEquIdCount(string userId, int equId);
Task<List<unit_user_equ>> GetUserEquByEquId(string userId, int equId);
Task<List<unit_user_equ>> GetUserEquByEquIdToDeduct(string userId, int equId);
Task<bool> AddUserEqu(string userId, int equId, int count, string remark);
Task<bool> AddUserEqu(unit_user_equ equData, string remark);
Task<unit_user_equ> AddUserEqu(string userId, int equId, bool rdAttr = false, string remark = "");
@@ -62,6 +65,13 @@ public interface IGameEquService
Task<int> GetUserEquWeightSum(string userId);
Task<game_equ_make> GetMakeEquByGoodsId(int goodsId);
Task RemoveUserOnEqu(string userId, string type, int count);
#endregion
#region
Task UpdateUserOnEquDurability(string userId);
#endregion
}

View File

@@ -9,18 +9,26 @@ public interface IGameFightService
#endregion
#region
Task<game_fight_data> GetFightInfo(string fightId);
Task<long> GetFightBlood(string keyId, long maxBlood);
Task SetFightBlood(string keyId, long blood);
Task AddFightHarm(string fightId, string userId, long harm);
Task RemoveFightHarm(string fightId, string userId);
Task<bool> AddFight(string fightId, string areaCode, string keyId, string mainId, string code,
string scene, string mapId,
string userId, long exp = 0, long copper = 0, long petExp = 0, string award = "", string pars = "");
Task<bool> SetFightWin(string fightId, string winUser);
Task<bool> SetFightWin(game_fight_data fightData, string winUser,bool setDefMap=true);
Task HandleFightData();
#endregion
#region
Task<int> GetUserFightHarm(string userId);
Task SetUserFightHarm(string userId, int harm);
Task HandleFight(game_fight_data eventData);
Task<List<game_map_goods>> GetMapFightGoods(string mapId);
Task<game_map_goods> GetFightGoodsInfo(string mapId, string mgId);
Task RemoveFightGoods(string mapId, string mgId);
Task AutoUseDrug(UserAttrModel user, game_fight_data fight);
Task HandelFightEnd(string userId, List<FightRemoveData> data);
#endregion
}

View File

@@ -17,6 +17,9 @@ public interface IGameGoodsService
Task<List<unit_user_goods>> GetUserGoodsData(string userId, List<string> code, List<string> noCode, string search, int page,
int limit, RefAsync<int> total);
Task<List<unit_user_goods>> GetUserGoodsData(string userId, List<string> code, List<string> noCode, string search, int page,
int limit, RefAsync<int> total,int DealType);
Task<List<unit_user_goods>> GetUserGoodsData(string userId, string code);
Task<bool> UpdateUserGoods(string userId, int op, int goodsId, int count, string remark = "");
@@ -32,8 +35,9 @@ public interface IGameGoodsService
#region
Task<string> CheckUseDrug(string userId, int goodsId, string drugConfig, string scene = "");
Task<string> CheckUseDrug(string userId, int goodsId, string scene = "");
Task<bool> UseDrug(string userId, int goodsId, string drugConfig, string scene = "");
Task<bool> UseDrug(string userId, int goodsId, string scene = "");
#endregion
}

View File

@@ -12,6 +12,7 @@ public interface IGameMapService
Task<game_city_map> GetMapInfo(string mapId);
Task<int> GetMapCityByMapId(string mapId);
Task<List<game_city_npc>> GetMapNpc(string mapId);
Task<List<GameNpcModel>> GetMapNpcModel(string userId, string mapId, int areaId);
Task<game_city_npc> GetNpcInfo(int npcId);
#endregion
@@ -20,10 +21,11 @@ public interface IGameMapService
Task<string> GetUserOnMapId(string userId);
Task<game_city_map> GetUserOnToMapInfo(string userId);
Task<unit_user_online> GetUserOnMap(string userId);
Task UpdateUserOnMap(string userId, string mapId = "");
Task UpdateUserOnMap(string userId, string ip, string mapId);
Task<bool> UpdateUserOnMap(unit_user_online data, string mapId);
Task<UserOnMap> GetUserOnMapInfo(string userId);
Task SetUserMapDefult(string userId);
Task SetUserMapDefault(string userId);
Task<game_city_map> GetToMapInfo(string userId, string toMap, bool isUpUserMap = true, bool isChangeCity = false);
Task<List<unit_user_map>> GetUserCityMapData(string userId);
Task<bool> AddUserCityMap(string userId, int cityId);
@@ -32,6 +34,8 @@ public interface IGameMapService
#region
Task<List<UserModel>> GetMapUserByAll(string mapId, int area, int showArea, List<string> noUser);
Task<List<UserModel>> GetMapUser(string mapId, int area, int showArea, List<string> noUser);
Task<List<UserModel>> GetMapUser(string mapId, int area, int showArea, List<string> noUser, int take);
Task<List<UserModel>> GetMapUser(string mapId, int area, int showArea, List<string> noUser, int page,

View File

@@ -14,7 +14,20 @@ public interface IGameMonsterService
int count = 1, int time = 0, string par = "");
Task<unit_user_monster> GetCreateMonsterInfo(string umId);
Task<bool> RemoveCreateMonster(string umId);
Task<bool> RemoveCreateMonster(unit_user_monster data);
Task ClearCreateMonster(string userId,string code, string par, string monsterId, string mapId);
Task<int> GetUserMonsterCount(string userId, string monsterId, int state);
Task HandleCreateMonster();
Task<List<MapMonsterModel>> GetMapMonster(string userId, string mapId, string teamId);
#endregion
#region
Task<UserAttrModel> GetMonsterAttrModel(string keyId, string monsterId);
Task SetMonsterBlood(string keyId, int blood);
#endregion
}

View File

@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace Application.Domain.Services
{
public interface IGameBadgeService
{
#region unit_user_badge
Task<int> GetUserShowBadgeCount(string userId);
Task<int> GetUserShowBadgeOnCount(string userId);
Task<bool> UpdateUserBadgeShow(string ubId, int show);
Task<unit_user_badge> GetUserBadegInfo(string ubId);
Task<List<unit_user_badge>> GetUserBadgeList(string userId, int page, int limit, RefAsync<int> total);
#endregion
}
}

View File

@@ -3,4 +3,5 @@
public interface IGameDicService
{
Task<game_dic> GetDicInfo(string code);
Task<string> GetDicInfoContent(string code);
}

View File

@@ -2,5 +2,19 @@
public interface IGameMaxNameService
{
#region
Task<game_maxname> GetMaxNameInfo(string mnId);
#endregion
#region unit_user_maxname
Task<bool> AddMaxName(string userId, string mnId, int addCount);
Task<bool> UpdateUserMaxname(unit_user_maxname name);
Task<unit_user_maxname> GetUserMaxnameInfo(string umnId);
Task<List<unit_user_maxname>> GetUserMaxnameList(string userId, int page, int limit, RefAsync<int> total);
Task<List<unit_user_maxname>> GetUserMaxNameData(string userId);
#endregion
}

View File

@@ -26,6 +26,9 @@ public interface IMessageService
Task<List<unit_user_mail>> GetUserMailData(string userId, int page, int limit, RefAsync<int> total);
Task<unit_user_mail> GetMailInfo(string mailId);
Task<bool> SendMaill(string userId, string name, string sign, List<TowerGet> award, int days = 10);
Task<bool> SendMaill(List<string> userIds, string name, string sign, List<TowerGet> award,
int days = 10);
Task<bool> UpdateMaillInfo(unit_user_mail data);
#endregion
@@ -47,7 +50,9 @@ public interface IMessageService
#region 广
Task<List<game_broadcast>> GetBroadcastData(int area);
Task<bool> SendBroadcast(string userId, string code, string msg);
Task<bool> SendBroadcast(string userId, string code, string msg, int area = 0);
#endregion
Task HandleMessageData();
}

View File

@@ -3,6 +3,7 @@
public interface INoticeService
{
Task<List<game_notice>> GetNoticeDataByTake(int take);
Task<List<game_notice>> GetNoticeDataByMap();
Task<List<game_notice>> GetNoticeData(int page, int limit, RefAsync<int> total);
Task<game_notice> GetNoticeInfo(string id);
}

View File

@@ -0,0 +1,13 @@
namespace Application.Domain;
public interface ITradeService
{
Task<game_trade> GetTradeInfo(string tradeId);
Task<bool> AddTrade(int areaId, string userId, string code,string name, string propId, int count, long price,string content);
Task<bool> UpdateTradeCount(string tradeId, int op, int count, bool isDel = false);
Task<int> GetUserTradeCount(string userId);
Task<List<game_trade>> GetUserTradeData(string userId);
Task<List<game_trade>> GetUserTradeData(int areaId,string userId, int type, string query, int page, int limit,
RefAsync<int> total);
}

View File

@@ -0,0 +1,25 @@
namespace Application.Domain;
public interface IGameTaskService
{
#region
Task<game_task> GetTaskInfo(int taskId);
Task<List<UserTaskModel>> GetTaskDataByNpc(string userId, int npcId);
Task<game_task_item> GetTaskItemInfo(int itemId);
#endregion
#region
Task<List<unit_user_task>> GetUserTaskData(string userId);
Task<unit_user_task> GetUserTaskInfo(string userId, int taskId);
Task<bool> UpdateUserTaskInfo(string userId, int itemId);
Task<int> GetUserTaskCount(string userId, int taskId);
Task ResetNextTask(string userId, int nextId);
Task<UserTaskModel> GetUserTaskModel(string userId, game_task_item task);
Task HandleUserTaskLog();
Task HandleUserTask();
#endregion
}

View File

@@ -16,6 +16,8 @@ public interface IUnitUserAccService
Task<unit_user_copper> GetUserCopperInfo(string userId);
Task<bool> UpdateUserCopper(string userId, int type, long count, string remark = "");
Task<unit_user_data> GetUserDataInfo(string userId);
Task<bool> UpdateUserData(string userId, int type, string accType, long count, string remark = "");
#endregion
}

View File

@@ -21,7 +21,7 @@ public interface IUnitUserAttrService
Task<unit_user_exp> GetUserExp(string userId);
Task<bool> UpdateUserExp(string userId, long exp, int op = 1);
Task DeductUserExp(string userId, int type, long count);
#endregion
#region
@@ -37,27 +37,26 @@ public interface IUnitUserAttrService
Task<unit_user_vigour> GetUserVigourInfo(string userId);
Task<bool> UpdateUserVigour(string userId, int op, long count, string UpTime = "");
Task<bool> UpdateUserUpVigour(string userId, decimal count);
Task<long> GetUserMaxVitality(string userId);
#endregion
#region 线
Task<bool> UpdateOnLineTime(string userId, string code, int time);
Task HandleOnLineTimeData();
#endregion
#region
Task<unit_user_drug> GetUserDrug(string userId);
Task<bool> UpdateUserDrug(unit_user_drug data);
Task<bool> UpdateUserDrug(string userId, string drugId, int op, int count);
#endregion
#region BUFF状态
Task<List<unit_user_state>> GetUserStateData(string userId, string scene = "Default");
Task<decimal> GetUserStateDataTotal(string userId, string scene = "Default");
Task<bool> AddUserState(string userId, string groupId, string name, string scene, string tips,
List<AttrItem> attr, int time, int count = 1);
@@ -79,6 +78,7 @@ public interface IUnitUserAttrService
Task<List<unit_user_load>> GetUserLoadState(string userId);
Task<bool> AddUserLoadState(string userId, string name, string code);
Task AddUserLoadState(string userId, List<string> codes);
Task<bool> RandomRemoveUserLoadState(string userId, int count);
Task RemoveUserLoadState(string userId);

View File

@@ -20,4 +20,14 @@ public interface IUnitUserRelationService
Task<bool> DeleteUserEnemy(string userId, string eId);
#endregion
#region
Task<game_charm_log> GetUserNewGift(string userId);
Task<List<GiftLogView>> GetUserGiftLog(string userId, int page, int limit, RefAsync<int> total);
Task<bool> AddCharm(string userId, string fromId, int goodsId, string name, string img, int charm,
int count);
#endregion
}

View File

@@ -31,7 +31,7 @@ public interface IUnitUserService
#region
Task<int> GetOnlineCount();
Task<List<unit_user_online>> GetOnlineUserByTime(long time);
#endregion

View File

@@ -11,7 +11,8 @@ public interface IUnitUserWeight
Task<List<unit_user_weight_log>> GetUserWeightLog(string userId);
Task<bool> CheckUserWeight(string userId, int useWeight);
Task<bool> CheckUserWeight(string userId, TowerGet data);
Task<bool> CheckUserWeight(string userId, string code, string par, long count);
#region
Task<unit_user_ship> GetUserShipInfo(string usId);
Task<List<unit_user_ship>> GetUserShip(string userId);

Some files were not shown because too many files have changed in this diff Show More