填充内容
This commit is contained in:
parent
3fdff4747f
commit
25c69541f9
59
代码块/C#/bigdatacache.snippet
Normal file
59
代码块/C#/bigdatacache.snippet
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
|
||||
<CodeSnippet Format="1.0.0">
|
||||
<Header>
|
||||
<Title>bigdatacache</Title>
|
||||
<Shortcut>bigdatacache</Shortcut>
|
||||
<Description>类的代码片段包含数据库访问</Description>
|
||||
<Author>zz</Author>
|
||||
<SnippetTypes>
|
||||
<SnippetType>Expansion</SnippetType>
|
||||
<SnippetType>SurroundsWith</SnippetType>
|
||||
</SnippetTypes>
|
||||
</Header>
|
||||
<Snippet>
|
||||
<Declarations>
|
||||
<Literal>
|
||||
<ID>name</ID>
|
||||
<ToolTip>字段名</ToolTip>
|
||||
<Default>T_APP_CONFIGS</Default>
|
||||
</Literal>
|
||||
<Literal>
|
||||
<ID>daoclass</ID>
|
||||
<ToolTip>类名</ToolTip>
|
||||
<Default>T_App_Config</Default>
|
||||
</Literal>
|
||||
</Declarations>
|
||||
<Code Language="csharp"><![CDATA[
|
||||
/// <summary>
|
||||
/// 缓存数据
|
||||
/// </summary>
|
||||
private static List<$daoclass$> _$name$ = null;
|
||||
/// <summary>
|
||||
/// 锁
|
||||
/// </summary>
|
||||
private static object _$name$_LOCK = new object();
|
||||
/// <summary>
|
||||
/// app配置数据,引用类型,不可修改,只能查询使用
|
||||
/// </summary>
|
||||
public static List<$daoclass$> $name$LIST
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_$name$ == null)
|
||||
{
|
||||
lock (_$name$_LOCK)
|
||||
{
|
||||
var dao = new DAO();
|
||||
_$name$ = dao.daoRes.context.$daoclass$.ToList();
|
||||
}
|
||||
}
|
||||
return _$name$;
|
||||
}
|
||||
}
|
||||
$selected$$end$
|
||||
]]>
|
||||
</Code>
|
||||
</Snippet>
|
||||
</CodeSnippet>
|
||||
</CodeSnippets>
|
||||
51
代码块/C#/classbase.snippet
Normal file
51
代码块/C#/classbase.snippet
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
|
||||
<CodeSnippet Format="1.0.0">
|
||||
<Header>
|
||||
<Title>classBll</Title>
|
||||
<Shortcut>classBll</Shortcut>
|
||||
<Description>类的代码片段</Description>
|
||||
<Author>zz</Author>
|
||||
<SnippetTypes>
|
||||
<SnippetType>Expansion</SnippetType>
|
||||
<SnippetType>SurroundsWith</SnippetType>
|
||||
</SnippetTypes>
|
||||
</Header>
|
||||
<Snippet>
|
||||
<Declarations>
|
||||
<Literal>
|
||||
<ID>modifier</ID>
|
||||
<ToolTip>修饰符</ToolTip>
|
||||
<Default>public</Default>
|
||||
</Literal>
|
||||
<Literal>
|
||||
<ID>name</ID>
|
||||
<ToolTip>类名</ToolTip>
|
||||
<Default>MyClass</Default>
|
||||
</Literal>
|
||||
<Literal>
|
||||
<ID>inherit</ID>
|
||||
<ToolTip>类名</ToolTip>
|
||||
<Default>BLLBase</Default>
|
||||
</Literal>
|
||||
</Declarations>
|
||||
<Code Language="csharp"><![CDATA[
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
$modifier$ class $name$ : $inherit$
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="dao"></param>
|
||||
$modifier$ $name$(DAO dao):base(dao){
|
||||
|
||||
}
|
||||
|
||||
$selected$$end$
|
||||
}]]>
|
||||
</Code>
|
||||
</Snippet>
|
||||
</CodeSnippet>
|
||||
</CodeSnippets>
|
||||
63
代码块/C#/classbasedao.snippet
Normal file
63
代码块/C#/classbasedao.snippet
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
|
||||
<CodeSnippet Format="1.0.0">
|
||||
<Header>
|
||||
<Title>classBlldao</Title>
|
||||
<Shortcut>classBlldao</Shortcut>
|
||||
<Description>类的代码片段包含数据库访问</Description>
|
||||
<Author>zz</Author>
|
||||
<SnippetTypes>
|
||||
<SnippetType>Expansion</SnippetType>
|
||||
<SnippetType>SurroundsWith</SnippetType>
|
||||
</SnippetTypes>
|
||||
</Header>
|
||||
<Snippet>
|
||||
<Declarations>
|
||||
<Literal>
|
||||
<ID>name</ID>
|
||||
<ToolTip>类名</ToolTip>
|
||||
<Default>MyClass</Default>
|
||||
</Literal>
|
||||
<Literal>
|
||||
<ID>daoclass</ID>
|
||||
<ToolTip>类名</ToolTip>
|
||||
<Default>T_</Default>
|
||||
</Literal>
|
||||
</Declarations>
|
||||
<Code Language="csharp"><![CDATA[
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public class $name$ : BLLBase
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="dao"></param>
|
||||
public $name$(DAO dao):base(dao){
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public List<$daoclass$> GetList()
|
||||
{
|
||||
var list = dao.daoRes.context.$daoclass$.Where(it=>true).ToList();
|
||||
return list;
|
||||
}
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public $daoclass$ GetFirstOrDefault() {
|
||||
var data = dao.daoRes.context.$daoclass$.FirstOrDefault(it => true);
|
||||
return data;
|
||||
}
|
||||
|
||||
$selected$$end$
|
||||
}]]>
|
||||
</Code>
|
||||
</Snippet>
|
||||
</CodeSnippet>
|
||||
</CodeSnippets>
|
||||
256
其它/202102226远程桌面备份.json
Normal file
256
其它/202102226远程桌面备份.json
Normal file
|
|
@ -0,0 +1,256 @@
|
|||
{
|
||||
"Connections": [
|
||||
{
|
||||
"ConnectionType": 25,
|
||||
"Group": "moguext",
|
||||
"ID": "3b50fe58-b722-43d8-bc07-6a768ed59462",
|
||||
"Name": "moguext",
|
||||
"GroupDetails": {
|
||||
"SafePassword": "LVfk8hUoy/orZ6HR+VxTsw==",
|
||||
"UserName": "sjgame"
|
||||
},
|
||||
"MetaInformation": {
|
||||
"Cost": 0.0,
|
||||
"PasswordHistory": [
|
||||
{
|
||||
"LoggedModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedDateTimeString": "2023-03-29T07:19:23",
|
||||
"SafePassword": "ob6Y/dNMaZU14hgzF60kzQ=="
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"Url": "43.129.195.20:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\海外",
|
||||
"ID": "53efb8ce-b5da-40a8-a650-4d925670b61a",
|
||||
"Name": "PC",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "101.42.136.223:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\国内",
|
||||
"ID": "8f6f0ca1-83e4-44d3-a3b6-e2b24d0117dd",
|
||||
"Name": "PC",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "82.157.13.127:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\国内",
|
||||
"ID": "d4ad266c-0ea8-4013-8357-b58ce6bb5a19",
|
||||
"Name": "web1",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "101.32.15.216:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\海外",
|
||||
"ID": "abc22a42-2683-4c63-802b-978141388f75",
|
||||
"Name": "web1",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "82.157.29.123:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\国内",
|
||||
"ID": "4c69f35e-f313-4541-bafe-dd549afeea2d",
|
||||
"Name": "web2",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "101.32.14.235:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\海外",
|
||||
"ID": "dfa45f6b-4e19-4229-b94d-0c95b6190e15",
|
||||
"Name": "web2",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "43.135.25.193:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\海外",
|
||||
"ID": "645f675f-9ff4-4e31-a663-6ec9d7370bcf",
|
||||
"Name": "web3",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "82.157.14.24:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\国内",
|
||||
"ID": "5f98d041-50dc-4f9b-94e4-3a6019c05eaf",
|
||||
"Name": "web3",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "121.5.26.77:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext",
|
||||
"ID": "4ad621ac-fd72-461b-8fb7-475654c1d616",
|
||||
"Name": "测试环境",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"ConnectionType": 25,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\国内",
|
||||
"ID": "d73becde-7ef3-4a03-9dcd-b6d2f74b5938",
|
||||
"Name": "国内"
|
||||
},
|
||||
{
|
||||
"ConnectionType": 25,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\海外",
|
||||
"ID": "54e52304-dc8c-44e3-b050-d82b17c3eb81",
|
||||
"Name": "海外"
|
||||
},
|
||||
{
|
||||
"Url": "172.27.27.21",
|
||||
"ConnectionType": 1,
|
||||
"Group": "家",
|
||||
"ID": "4a19dfdf-3774-49c2-81ee-7d3846a4a858",
|
||||
"Name": "家",
|
||||
"OpenEmbedded": true,
|
||||
"MetaInformation": {
|
||||
"Cost": 0.0,
|
||||
"PasswordHistory": [
|
||||
{
|
||||
"LoggedModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedDateTimeString": "2023-09-01T01:46:09",
|
||||
"SafePassword": "JQaNT6ye7Lk="
|
||||
},
|
||||
{
|
||||
"LoggedModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedDateTimeString": "2023-03-30T02:42:27",
|
||||
"SafePassword": "o63hoW1KAMI="
|
||||
}
|
||||
]
|
||||
},
|
||||
"RDP": { "SafePassword": "UwNATVDYiZ0=", "UserName": "zpc" }
|
||||
},
|
||||
{
|
||||
"ConnectionType": 25,
|
||||
"Group": "家",
|
||||
"ID": "6c79556d-587f-40ef-bfb0-304445f8bb4a",
|
||||
"Name": "家"
|
||||
},
|
||||
{
|
||||
"Url": "81.70.0.132:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\国内",
|
||||
"ID": "10979a05-9984-4564-9fef-cdf1e891dce7",
|
||||
"Name": "扩展服务",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "43.129.199.134:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\海外",
|
||||
"ID": "ddeec6fa-6fae-4068-8c18-17ec0c05083e",
|
||||
"Name": "扩展服务",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"ConnectionType": 25,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\其它",
|
||||
"ID": "ee02aa6b-c8d9-4cf9-a4c6-38cc0e1fe205",
|
||||
"Name": "其它"
|
||||
},
|
||||
{
|
||||
"Url": "112.124.23.127:33389",
|
||||
"ConnectionType": 1,
|
||||
"Group": "moguext\\国内",
|
||||
"ID": "e0062dd8-71de-4b61-8aaa-1f072ecae07f",
|
||||
"Name": "跳板机",
|
||||
"OpenEmbedded": true,
|
||||
"MetaInformation": {
|
||||
"Cost": 0.0,
|
||||
"PasswordHistory": [
|
||||
{
|
||||
"LoggedModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedDateTimeString": "2023-07-28T05:59:14",
|
||||
"SafePassword": "GmAg8YgbEf2Jo1yVEEXGGckO+rAJWTrK"
|
||||
}
|
||||
]
|
||||
},
|
||||
"RDP": {
|
||||
"SafePassword": "eUzDxJLEO+b1vA8xlsvMWM59DNt0JJz+",
|
||||
"UserName": "zhangzhe"
|
||||
}
|
||||
},
|
||||
{
|
||||
"Url": "112.124.23.127:33389",
|
||||
"ConnectionType": 1,
|
||||
"Group": "moguext\\国内",
|
||||
"ID": "5cd54c98-ef36-4b05-ac54-8da50d057700",
|
||||
"Name": "跳板机1",
|
||||
"OpenEmbedded": true,
|
||||
"MetaInformation": {
|
||||
"Cost": 0.0,
|
||||
"PasswordHistory": [
|
||||
{
|
||||
"LoggedModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedBy": "ZHANGZHE-PC\\zhangzhe",
|
||||
"ModifiedDateTimeString": "2023-09-19T08:09:34",
|
||||
"SafePassword": "omcbYur0NK7sYHNDaWy6ZskO+rAJWTrK"
|
||||
}
|
||||
]
|
||||
},
|
||||
"RDP": {
|
||||
"SafePassword": "fV8bd+9uDurFrlkdVsxGqc59DNt0JJz+",
|
||||
"UserName": "yinming"
|
||||
}
|
||||
},
|
||||
{
|
||||
"Url": "43.143.246.189:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\其它",
|
||||
"ID": "8493afcd-6f3f-41a0-87e7-f057799858bd",
|
||||
"Name": "西南交大服务器",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
},
|
||||
{
|
||||
"Url": "146.56.198.144:33389",
|
||||
"ConnectionType": 1,
|
||||
"CredentialConnectionID": "1310CF82-6FAB-4B7A-9EEA-3E2E451CA2CF",
|
||||
"Group": "moguext\\其它",
|
||||
"ID": "e6820f26-81b8-4713-be5a-5b62dc1ea436",
|
||||
"Name": "西南交大正式服务器-跳板机",
|
||||
"OpenEmbedded": true,
|
||||
"RDP": {}
|
||||
}
|
||||
],
|
||||
"DatabaseID": "a9c3669a-1bb4-426a-98f6-6d03854e8a09",
|
||||
"Version": 2
|
||||
}
|
||||
BIN
其它/圣剑-工作文档.docx
Normal file
BIN
其它/圣剑-工作文档.docx
Normal file
Binary file not shown.
BIN
其它/抖音-HISSAI绘画生成器.docx
Normal file
BIN
其它/抖音-HISSAI绘画生成器.docx
Normal file
Binary file not shown.
87
常用SQL/SQLQuery1.sql
Normal file
87
常用SQL/SQLQuery1.sql
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
select * from HissAI_UserData.[dbo].[T_Users] where UserName like '%466bb414a3754d55%'
|
||||
select top 1000 * from Phone300_VL_UI_CBT.dbo.T_App_Config;--App配置
|
||||
select top 1000 * from HissAI_Res.[dbo].[T_App_Config]
|
||||
select * from Phone300_VL_UI_CBT.dbo.T_VL_UI_Popout
|
||||
select * from HissAI_UserData.[dbo].[T_Users_Data] where UserId=10123
|
||||
update HissAI_UserData.[dbo].[T_Users_Data] set Currency=1000 where id=10114
|
||||
select * from HissAI_UserData.[dbo].[T_Users] where username='24bc5fc59a5dc3b4'
|
||||
select * from HissAI_UserData.[dbo].[T_Users_Data] where UserId=10113
|
||||
select * from HissAI_UserData.[dbo].[T_Users] where username='189eed353de9b77f'
|
||||
select * from HissAI_UserData.[dbo].[T_Users_Data] where UserId=10098
|
||||
select top 1000 * from HissAI_Res.[dbo].[T_App_Images]
|
||||
select * from HissAI_UserData.[dbo].[T_Users] where username='3f952f27b93776c0'
|
||||
select * from HissAI_UserData.[dbo].[T_Users_Data]
|
||||
select * from HissAI_UserData.[dbo].[T_Users_Data]
|
||||
update HissAI_UserData.[dbo].[T_Users_Data] set Currency=0,StatisticsData='' where UserId=44
|
||||
select * from HissAI_Data.dbo.T_Draw_Log where SizeTemplateId!=0 UserId=10120
|
||||
delete HissAI_UserData.[dbo].[T_Users_Data] where userid=11
|
||||
delete HissAI_UserData.[dbo].[T_Users] where id=11
|
||||
select count(1) from HissAI_Data.dbo.T_Draw_Log
|
||||
select * from
|
||||
select *,(select count(1) from HissAI_UserData.dbo.T_User_Favorite where DataId=f.DataId and appId=f.appid ) Favorite
|
||||
from HissAI_UserData.dbo.T_User_Favorite f where userid='' and [type]=1 and appid=1 order by Favorite desc
|
||||
select RAND() from HissAI_UserData.dbo.T_User_PhotoAlbum where type=0 and id<158
|
||||
update HissAI_UserData.dbo.T_User_PhotoAlbum set type=2 where type=0 and id<158
|
||||
select * from HissAI_Res.[dbo].[T_App_Language] where name='QQ绑定成功!' and
|
||||
select * from HissAI_UserData.dbo.T_User_Favorite where [type]=0 and id=5
|
||||
select * from HissAI_UserData.dbo.T_User_PhotoAlbum where [type]=1 and DrawId=21405 and userid=7
|
||||
|
||||
order by Favorite desc
|
||||
select * from HissAI_Data.[dbo].[T_User_LimitAction_Log]
|
||||
|
||||
17
|
||||
select * from HissAI_Res.dbo.[T_App_LevitatingBall]
|
||||
select * from HissAI_Res.dbo.T_App_Popup
|
||||
select * from HissAI_Data.[dbo].[T_Draw_Label]
|
||||
select * from HissAI_Data.[dbo].[T_Draw_Label_Describe]
|
||||
update HissAI_UserData.dbo.T_User_PhotoAlbum set Type=0 where [type]=2 order by Favorite desc
|
||||
select * from HissAI_UserData.dbo.T_User_PhotoAlbum where [type]=1 and Favorite=2
|
||||
select * from HissAI_UserData.dbo.T_User_PhotoAlbum where [type]=1 and userid=71
|
||||
select * from HissAI_UserData.dbo.T_User_PhotoAlbum where
|
||||
[type]=1
|
||||
select * from HissAI_UserData.dbo.T_User_OrderComplete
|
||||
update p set p.Favorite=(select count(1) from HissAI_UserData.dbo.T_User_PhotoAlbum where [type]=1 and Favorite=p.id) from HissAI_UserData.dbo.T_User_PhotoAlbum p where [type]=0 and id=2
|
||||
|
||||
|
||||
select Id,UserId,[Type],FavoriteTime,UpdateTime,CreateTime,[Desc],AppId,DrawId,isnull((select Favorite from HissAI_UserData.dbo.T_User_PhotoAlbum where [type]=0 and id=f.Favorite),0) Favorite from HissAI_UserData.dbo.T_User_PhotoAlbum f
|
||||
where [type]=0 and userid=
|
||||
|
||||
|
||||
select u.Id,u.Email,u.IP,u.IpContinent,u.IpCountry,u.NickName,u.UserName,d.UserIconUrl,d.TemporaryCurrency,d.Currency,d.VipType from HissAI_UserData.[dbo].[T_Users] u left join HissAI_UserData.[dbo].[T_Users_Data] d on u.Id=d.UserId and u.AppId=d.AppId
|
||||
where u.id in ( 10079)
|
||||
|
||||
select *,
|
||||
(select count(1) from HissAI_UserData.dbo.T_User_PhotoAlbum where DrawId=f.DrawId and appId=f.appid and [type]=0 ) Favorite
|
||||
from HissAI_UserData.dbo.T_User_PhotoAlbum f
|
||||
where userid=1 and [type]=1 and appid=1
|
||||
|
||||
select top 30 Id,UserId, from HissAI_UserData.dbo.T_User_PhotoAlbum
|
||||
SELECT top 30 Id, UserId, [Type], FavoriteTime, UpdateTime, CreateTime, [Desc], AppId, DrawId, Favorite, TaskId FROM
|
||||
[HissAI_UserData].dbo.T_User_PhotoAlbum where [type]=0 and appid=1001 order by FavoriteTime
|
||||
select ISNULL(count(1),0) from [HissAI_UserData].dbo.T_User_PhotoAlbum where [type]=0 and appid=1002
|
||||
|
||||
select * from Phone300_VL_UI_CBT.dbo.T_VL_UI_FloatBall_Cfg
|
||||
|
||||
select * from HissAI_Res.dbo.T_App_Language
|
||||
select count(1) from HissAI_Data.dbo.T_User_LimitAction_Log where appid=1001and userid=1
|
||||
alter table HissAI_Res.dbo.T_App_Language add AppId int not null default 1000
|
||||
|
||||
insert into T_App_Language(Name,Value,Language)
|
||||
select '不限','unlimited','en'
|
||||
union all
|
||||
select '吉卜力风景','ghibli scenery','en'
|
||||
union all
|
||||
select '吉卜力人物','ghibli figure','en'
|
||||
|
||||
select RAND() from HissAI_UserData.dbo.T_User_PhotoAlbum
|
||||
|
||||
GalleryListDto
|
||||
|
||||
select * from Phone300_VL_UI_CBT.dbo.T_UI_ConfigImages
|
||||
|
||||
select top 1000 * from CloudPlatFormUserData.dbo.T_Users_ConsumeList where bossid=25001 and CreateTime>'2023-04-23';--用户消费记录
|
||||
|
||||
select top 1000 * from CloudPlatFormUserData.dbo.T_Users_ConsumeAgreement;--消费签约表
|
||||
|
||||
select top 1000 * from CloudPlatFormUserData.dbo.T_Users_ConsumeMoneyList;--充值记录
|
||||
|
||||
1
常用SQL/SQLQuery2.sql
Normal file
1
常用SQL/SQLQuery2.sql
Normal file
|
|
@ -0,0 +1 @@
|
|||
select ISNULL(sum(price),0) from HissAI_UserData.dbo.T_User_OrderComplete where userid=''
|
||||
50
常用SQL/SQLQuery3sql.sql
Normal file
50
常用SQL/SQLQuery3sql.sql
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
insert into HissAI_Res.dbo.T_App_Language(Name,Value,Language)
|
||||
SELECT '不限', 'unlimited', 'en'
|
||||
UNION ALL
|
||||
SELECT '吉卜力风景', 'ghibli scenery', 'en'
|
||||
UNION ALL
|
||||
SELECT '吉卜力人物', 'ghibli figure', 'en'
|
||||
UNION ALL
|
||||
SELECT '水墨', 'ink painting', 'en'
|
||||
UNION ALL
|
||||
SELECT '艺术头像', 'art avatar', 'en'
|
||||
UNION ALL
|
||||
SELECT '商用logo', 'commercial logo', 'en'
|
||||
UNION ALL
|
||||
SELECT '新海诚', 'Makoto Shinkai', 'en'
|
||||
UNION ALL
|
||||
SELECT '漫画线稿', 'Comic draft', 'en'
|
||||
UNION ALL
|
||||
SELECT '杂志风格', 'magazine style', 'en'
|
||||
UNION ALL
|
||||
SELECT '三渲二', '3D to 2D', 'en'
|
||||
UNION ALL
|
||||
SELECT 'Q版人物', 'Q-version figure', 'en'
|
||||
UNION ALL
|
||||
SELECT '上传成功,等待审核中', 'Uploaded, waiting for review', 'en'
|
||||
UNION ALL
|
||||
SELECT '创单成功', 'Created a successful order', 'en'
|
||||
UNION ALL
|
||||
SELECT '删除成功', 'successfully deleted', 'en'
|
||||
UNION ALL
|
||||
SELECT '此订单产品已发放,请勿重复提交', 'Already issued, please do not resubmit', 'en'
|
||||
UNION ALL
|
||||
SELECT '收藏成功', 'Collection successfully', 'en'
|
||||
UNION ALL
|
||||
SELECT '登录成功', 'login successful', 'en'
|
||||
UNION ALL
|
||||
SELECT '绘画点不足', 'drawing point is empty', 'en'
|
||||
UNION ALL
|
||||
SELECT '产品成功发放', 'Product released successfully', 'en'
|
||||
UNION ALL
|
||||
SELECT '要上传的图片不存在', 'The image to upload does not exist', 'en'
|
||||
UNION ALL
|
||||
SELECT '绘画点100', 'Painting Points 100', 'en'
|
||||
UNION ALL
|
||||
SELECT '绘画点350', 'Drawing Points 350', 'en'
|
||||
UNION ALL
|
||||
SELECT '绘画点600', 'Drawing Points 600', 'en'
|
||||
UNION ALL
|
||||
SELECT '收藏资源不存在', 'favorite resource does not exist', 'en'
|
||||
UNION ALL
|
||||
SELECT '取消收藏成功', 'Cancel favorite successfully', 'en'
|
||||
25
常用SQL/快速启动.sql
Normal file
25
常用SQL/快速启动.sql
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
SELECT * FROM Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_CategoryCfg where appId=1 and EpgParentCategory!=0
|
||||
|
||||
alter table Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_CategoryCfg add IsQuickStartPopUp bit default 0 not null;
|
||||
alter table Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_CategoryCfg add IsOnlineQuickStartPopUp bit default 0 not null;
|
||||
alter table Phone300_VL_UI_CBT.dbo.T_VL_UI_GameInputSetting add IsToggleKeyboard bit default 0 not null;
|
||||
alter table Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_Cfg add IsOnlineQuickStartPopUp bit default 0 not null;
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'联机游戏快速启动弹窗' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_VL_UI_Epg_CategoryCfg', @level2type=N'COLUMN',@level2name=N'IsOnlineQuickStartPopUp'
|
||||
GO
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'游戏快速启动弹窗' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_VL_UI_Epg_CategoryCfg', @level2type=N'COLUMN',@level2name=N'IsQuickStartPopUp'
|
||||
GO
|
||||
update Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_CategoryCfg set IsQuickStartPopUp=1 where Extend1 like '%快速启动弹窗%'
|
||||
|
||||
select* from Phone300_VL_UI_CBT.dbo.T_VL_UI_GameInputSetting
|
||||
|
||||
|
||||
|
||||
select * from Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_Cfg
|
||||
|
||||
alter table Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_Cfg add IsOnlineQuickStartPopUp bit default 0 not null;
|
||||
|
||||
|
||||
|
||||
alter table Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_Cfg add StartEnableTime datetime;
|
||||
alter table Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_Cfg add EndEnableTime datetime;
|
||||
|
||||
95
常用SQL/成就表.sql
Normal file
95
常用SQL/成就表.sql
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
USE [MoguExt]
|
||||
GO
|
||||
|
||||
/****** Object: Table [dbo].[T_User_Achievement] Script Date: 2022/10/10 11:25:37 ******/
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_User_Achievement](
|
||||
[Id] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
|
||||
[AchievemenGuid] [nvarchar](64) NULL,
|
||||
[BossId] [nvarchar](50) NULL,
|
||||
[AppId] [int] NOT NULL,
|
||||
[AchievementType] [int] NOT NULL,
|
||||
[AchievementName] [nvarchar](200) NULL,
|
||||
[SuccessIocn] [int] NOT NULL,
|
||||
[ProcessingIocn] [int] NOT NULL,
|
||||
[UndoneIocn] [int] NOT NULL,
|
||||
[Diamond] [int] NOT NULL,
|
||||
[MoguBi] [int] NOT NULL,
|
||||
[RestrictedDate] [datetime] NOT NULL,
|
||||
[OrderById] [int] NOT NULL,
|
||||
[ShowText] [nvarchar](200) NULL,
|
||||
[CreateDateTime] [datetime] NOT NULL,
|
||||
[UpdateTimeDate] [datetime] NOT NULL,
|
||||
[IsEnable] [bit] NOT NULL,
|
||||
[BackgroundIocn] [int] NOT NULL,
|
||||
[RewardText] [nvarchar](200) NULL,
|
||||
CONSTRAINT [PK_T_USER_ACHIEVEMENT] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[Id] ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'唯一编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'AchievemenGuid'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'渠道号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'BossId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'app包' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'AppId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就类型,1:玩游戏 2 消耗,3.充值' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'AchievementType'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'AchievementName'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就完成图片' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'SuccessIocn'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就进行中图片' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'ProcessingIocn'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就未完成图片' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'UndoneIocn'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就奖励钻石' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'Diamond'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就奖励蘑菇币' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'MoguBi'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就完成限制日期' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'RestrictedDate'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'顺序,成就完成顺序' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'OrderById'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'显示文案' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'ShowText'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'创建时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'CreateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'修改时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'UpdateTimeDate'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否启用' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'IsEnable'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就详情背景图片' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'BackgroundIocn'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'奖励文案' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement', @level2type=N'COLUMN',@level2name=N'RewardText'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户成就' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Achievement'
|
||||
GO
|
||||
|
||||
|
||||
62
常用SQL/成就表条件表.sql
Normal file
62
常用SQL/成就表条件表.sql
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
USE [MoguExt]
|
||||
GO
|
||||
|
||||
/****** Object: Table [dbo].[T_User_AchievementTrigger] Script Date: 2022/10/10 11:25:30 ******/
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_User_AchievementTrigger](
|
||||
[Id] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
|
||||
[AchievementTriggerName] [nvarchar](50) NULL,
|
||||
[AchievementTriggerCondition] [nvarchar](20) NULL,
|
||||
[AchievementTriggerValue] [nvarchar](300) NULL,
|
||||
[AchievementTriggerParams] [nvarchar](300) NULL,
|
||||
[AchievementTriggerTriggerType] [int] NOT NULL,
|
||||
[CreateDateTime] [datetime] NULL,
|
||||
[UpdateDateTime] [datetime] NULL,
|
||||
[Identigier] [nvarchar](64) NULL,
|
||||
[AchievementTriggerMode] [int] NOT NULL,
|
||||
CONSTRAINT [PK_T_USER_ACHIEVEMENTTRIGGER] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[Id] ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'Id'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'触发名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'AchievementTriggerName'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'触发条件' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'AchievementTriggerCondition'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'触发条件值' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'AchievementTriggerValue'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'参数' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'AchievementTriggerParams'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'触发条件标识' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'AchievementTriggerTriggerType'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'创建时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'CreateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'修改时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'UpdateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'所属快捷支付标识' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'Identigier'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'触发方式,1连续,.2累计,' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger', @level2type=N'COLUMN',@level2name=N'AchievementTriggerMode'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就触发条件表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementTrigger'
|
||||
GO
|
||||
|
||||
|
||||
77
常用SQL/成就表进度表.sql
Normal file
77
常用SQL/成就表进度表.sql
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
USE [MoguExt]
|
||||
GO
|
||||
|
||||
/****** Object: Table [dbo].[T_User_AchievementSpeed] Script Date: 2022/10/10 11:25:45 ******/
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_User_AchievementSpeed](
|
||||
[Id] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
|
||||
[AchievemenGuid] [nvarchar](64) NULL,
|
||||
[AchievemenName] [nvarchar](200) NULL,
|
||||
[AchievemenTriggerId] [int] NOT NULL,
|
||||
[AchievemenTriggerName] [nvarchar](200) NULL,
|
||||
[IsComplete] [bit] NOT NULL,
|
||||
[UserId] [nvarchar](200) NULL,
|
||||
[BossId] [nvarchar](200) NULL,
|
||||
[AppId] [int] NOT NULL,
|
||||
[CreateDateTime] [datetime] NOT NULL,
|
||||
[Remark] [nvarchar](300) NULL,
|
||||
[Parameter1] [nvarchar](300) NULL,
|
||||
[Parameter2] [nvarchar](300) NULL,
|
||||
[Parameter3] [nvarchar](300) NULL,
|
||||
CONSTRAINT [PK_T_USER_ACHIEVEMENTSPEED] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[Id] ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'Id'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就唯一编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'AchievemenGuid'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'AchievemenName'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'AchievemenTriggerId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就进度名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'AchievemenTriggerName'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否完成' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'IsComplete'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'UserId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'渠道号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'BossId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'app包' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'AppId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'完成时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'CreateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'备注' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'Remark'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'参数1' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'Parameter1'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'参数2' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'Parameter2'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'参数3' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed', @level2type=N'COLUMN',@level2name=N'Parameter3'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户完成的成就进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementSpeed'
|
||||
GO
|
||||
|
||||
37
常用SQL/排行榜sql.sql
Normal file
37
常用SQL/排行榜sql.sql
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
--点赞榜 查询按照点赞数从高到低进行降序。 先去点赞表中查询到当月的点赞数据,
|
||||
--再根据点赞的图片找到对应的用户,最后根据用户进行分组排序
|
||||
select UserId,Totals,UserCount,(select NickName from HissAI_UserData.dbo.T_Users u where u.Id=t.UserId ) NickName,
|
||||
(select UserIconUrl from HissAI_UserData.dbo.T_Users_Data u where u.UserId=t.UserId ) UserIconUrl
|
||||
from (
|
||||
select top 30 UserId,sum(c) Totals,count(1) UserCount from (
|
||||
select DrawId,count(1) c,
|
||||
(select top 1 UserId from HissAI_UserData.dbo.T_User_Gallery where DrawId=l.DrawId) UserId
|
||||
from ( select DrawId,CreateTime as ExaminationDatetime,UserId from HissAI_UserData.dbo.T_User_Like li ) l
|
||||
where ExaminationDatetime>='2024-02-01' and ExaminationDatetime<'2024-03-01' group by DrawId
|
||||
) x where UserId!='' group by UserId order by Totals desc
|
||||
) t order by Totals desc
|
||||
|
||||
--发布榜 先查询当月画廊有多少新增用户,然后按照用户进行分组统计
|
||||
select UserId,Totals,UserCount,(select NickName from HissAI_UserData.dbo.T_Users u where u.Id=t.UserId ) NickName,(select UserIconUrl from HissAI_UserData.dbo.T_Users_Data u where u.UserId=t.UserId ) UserIconUrl from (
|
||||
select top 30 UserId,count(1) Totals,count(1) UserCount from HissAI_UserData.dbo.T_User_Gallery where ExaminationDatetime>='2024-02-01' and ExaminationDatetime<'2024-03-01' group by userId
|
||||
order by Totals desc
|
||||
) t order by Totals desc
|
||||
|
||||
--被画同款榜 先查询当月所有的画同款数据,再根据上面的画同款数据找到对应的画廊用户,然后根据用户统计画同款数量,最后排序,找用户
|
||||
select UserId,Totals,UserCount,(select NickName from HissAI_UserData.dbo.T_Users u where u.Id=t.UserId ) NickName,(select UserIconUrl from HissAI_UserData.dbo.T_Users_Data u where u.UserId=t.UserId ) UserIconUrl from (
|
||||
select top 30 UserId,SUM(Totals) Totals,count(1) UserCount from (
|
||||
select FollowDrawId,count(1) Totals from (
|
||||
select FollowDrawId,CreateTime ExaminationDatetime from HissAI_Data.dbo.T_Draw_Log where FollowDrawId!='' and IsException!=1
|
||||
) Draw_Log
|
||||
where ExaminationDatetime>='2024-02-01' and ExaminationDatetime<'2024-03-01'
|
||||
group by FollowDrawId
|
||||
) drawlog inner join HissAI_UserData.dbo.T_User_Gallery g
|
||||
on g.DrawId=drawlog.FollowDrawId where UserId!=0
|
||||
group by UserId order by Totals desc
|
||||
) t order by Totals desc
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
79
常用SQL/推出游戏条件表.sql
Normal file
79
常用SQL/推出游戏条件表.sql
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
USE [MoguExt]
|
||||
GO
|
||||
|
||||
/****** Object: Table [dbo].[T_Ext_GamePopup] Script Date: 2022/10/10 11:26:49 ******/
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_Ext_GamePopup](
|
||||
[Id] [numeric](18, 0) IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
|
||||
[ExtGamePopupId] [nvarchar](64) NULL,
|
||||
[ProductId] [nvarchar](100) NULL,
|
||||
[ProductImage] [int] NOT NULL,
|
||||
[ProductType] [int] NOT NULL,
|
||||
[AppId] [int] NOT NULL,
|
||||
[Continent] [nvarchar](200) NULL,
|
||||
[CountryName] [nvarchar](200) NULL,
|
||||
[BossId] [nvarchar](200) NULL,
|
||||
[OnlinePlatform] [nvarchar](100) NULL,
|
||||
[CreateDateTime] [datetime] NOT NULL,
|
||||
[UpdateDateTime] [datetime] NOT NULL,
|
||||
[ExtGameName] [nvarchar](200) NULL,
|
||||
[OrderById] [int] NOT NULL,
|
||||
[IsState] [bit] NOT NULL,
|
||||
CONSTRAINT [PK_T_EXT_GAMEPOPUP] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[Id] ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系统编号,用于关联条件' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'ExtGamePopupId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'产品编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'ProductId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'产品图片' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'ProductImage'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'产品类型' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'ProductType'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'app包' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'AppId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'州' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'Continent'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'国家' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'CountryName'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'渠道号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'BossId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'平台' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'OnlinePlatform'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'创建时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'CreateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'修改时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'UpdateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'ExtGameName'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'排序,优先级' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'OrderById'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否启用' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup', @level2type=N'COLUMN',@level2name=N'IsState'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'退出游戏后显示弹窗和购买道具' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_Ext_GamePopup'
|
||||
GO
|
||||
|
||||
|
||||
32
常用SQL/每月统计查询-国内-不包含游客.sql
Normal file
32
常用SQL/每月统计查询-国内-不包含游客.sql
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
--国内tv
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=0 and LoginTime>='2023-09-01' and LoginTime<'2023-10-01'
|
||||
group by UserId
|
||||
) t
|
||||
|
||||
--国内 tv new
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=19 and LoginTime>='2023-09-01' and LoginTime<'2023-10-01'
|
||||
group by UserId
|
||||
) t
|
||||
|
||||
--国内 主包
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=1 and LoginTime>='2023-09-01' and LoginTime<'2023-10-01' and BossId!='25001'
|
||||
group by UserId
|
||||
) t
|
||||
|
||||
--国内 既游
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=3 and LoginTime>='2023-09-01' and LoginTime<'2023-10-01' and BossId!='25001'
|
||||
group by UserId
|
||||
) t
|
||||
|
||||
--国内 ios
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=1 and LoginTime>='2023-09-01' and LoginTime<'2023-10-01' and BossId='25001'
|
||||
group by UserId
|
||||
) t
|
||||
|
||||
|
||||
|
||||
29
常用SQL/每月统计查询-国内.sql
Normal file
29
常用SQL/每月统计查询-国内.sql
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
select count(1) from (
|
||||
|
||||
SELECT UserID FROM MoguExt.dbo.T_Log_Login where CreateTime_Day>=20230801 and CreateTime_Day<20230901 and PlatformType='TV' and UserType>0
|
||||
and AppId=0
|
||||
group by userid
|
||||
) t
|
||||
|
||||
|
||||
select count(1) from (
|
||||
|
||||
SELECT UserID FROM MoguExt.dbo.T_Log_Login where CreateTime_Day>=20230801 and CreateTime_Day<20230901 and PlatformType='APP_ANDROID' and UserType>0
|
||||
and AppId=1
|
||||
group by userid
|
||||
) t
|
||||
|
||||
|
||||
|
||||
|
||||
select count(1) from (
|
||||
|
||||
SELECT UserID FROM MoguExt.dbo.T_Log_Login where CreateTime_Day>=20230801 and CreateTime_Day<20230901 and PlatformType='IOS' and UserType>0
|
||||
and AppId=1
|
||||
group by userid
|
||||
) t
|
||||
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=3 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' and BossID!='25001' group by UserId
|
||||
) t
|
||||
83
常用SQL/每月统计查询-国外.sql
Normal file
83
常用SQL/每月统计查询-国外.sql
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=4 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01'
|
||||
group by UserId
|
||||
) t
|
||||
|
||||
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=10 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' and BossId='25001'
|
||||
group by UserId
|
||||
) t
|
||||
|
||||
|
||||
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=7 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' and BossId!='27002'
|
||||
group by UserId
|
||||
) t
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=7 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' and BossId='27002'
|
||||
group by UserId
|
||||
) t
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=8 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' and BossId='27002' group by UserId
|
||||
) t
|
||||
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=9 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' group by UserId
|
||||
) t
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=11 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' group by UserId
|
||||
) t
|
||||
|
||||
|
||||
select 12,count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=12 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' group by UserId
|
||||
) t ;
|
||||
|
||||
select 13,count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=13 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' group by UserId
|
||||
) t ;
|
||||
|
||||
select 14,count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=14 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' group by UserId
|
||||
) t ;
|
||||
select 15,count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=15 and LoginTime>='2023-04-01' and LoginTime<'2023-05-01' group by UserId
|
||||
) t ;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=4 and LoginTime>='2023-01-01' and LoginTime<'2023-02-01' group by UserId
|
||||
) t
|
||||
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=8 and BossId='27002' and LoginTime>='2023-01-01' and LoginTime<'2023-02-01' group by UserId
|
||||
) t
|
||||
|
||||
|
||||
select count(1) from (
|
||||
select UserId from CloudPlatFormUserData.dbo.T_User_Login where appid=11 and BossId='27002' and LoginTime>='2023-01-01' and LoginTime<'2023-02-01' group by UserId
|
||||
) t
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
6
常用SQL/活动4003.sql
Normal file
6
常用SQL/活动4003.sql
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
select count( distinct UserID ) from MoguExt.dbo.T_HD_UserLog where HdID=4003
|
||||
select sum(ParamsInt1) from MoguExt.dbo.T_HD_UserLog where HdID=4003
|
||||
select * from MoguExt.dbo.T_HD_UserLog where HdID=4003
|
||||
select Params1,sum(ParamsInt1),((select top 1 Params2 from MoguExt.dbo.T_HD_UserLog where HdID=4003 and Params1=logx.Params1 and ParamsInt2=1 )+'-'+(select top 1 Params2 from MoguExt.dbo.T_HD_UserLog where HdID=4003 and Params1=logx.Params1 and ParamsInt2=3 )) k from MoguExt.dbo.T_HD_UserLog logx where HdID=4003 group by Params1
|
||||
|
||||
|
||||
96
常用SQL/游戏多语言.sql
Normal file
96
常用SQL/游戏多语言.sql
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
-- ================================================
|
||||
-- Template generated from Template Explorer using:
|
||||
-- Create Procedure (New Menu).SQL
|
||||
--
|
||||
-- Use the Specify Values for Template Parameters
|
||||
-- command (Ctrl-Shift-M) to fill in the parameter
|
||||
-- values below.
|
||||
--
|
||||
-- This block of comments will not be included in
|
||||
-- the definition of the procedure.
|
||||
-- ================================================
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
-- =============================================
|
||||
-- Author: <Author,,Name>
|
||||
-- Create date: <Create Date,,>
|
||||
-- Description: 同步游戏多语言,将AppId4的语言同步到其他AppId
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[Game_Multilingual_Synchronization]
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
declare @DefaultCfgCount int ;--蘑菇主包的语言数量
|
||||
declare @CfgAppId int ;--AppId
|
||||
declare @CfgCount int ;--其他Appid语言的数量
|
||||
select @DefaultCfgCount=count(1) from MoguExt.dbo.T_Multilingual_Cfg where appid=4 and Extended1='游戏';
|
||||
DECLARE CfgData_Cursor CURSOR FOR
|
||||
select AppId,count(1) from MoguExt.dbo.T_Multilingual_Cfg where appid!=4 and Extended1='游戏' group by AppId;
|
||||
--打开游标
|
||||
OPEN CfgData_Cursor
|
||||
|
||||
FETCH NEXT FROM CfgData_Cursor INTO @CfgAppId,@CfgCount
|
||||
--循环
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
if @CfgCount<@DefaultCfgCount
|
||||
begin
|
||||
Print ('同步属地==》'+Convert(nvarchar(100),@CfgAppId)+'原数量==>'+Convert(nvarchar(100),@CfgCount));
|
||||
insert into MoguExt.dbo.T_Multilingual_Cfg([ResId]
|
||||
,[CfgType]
|
||||
,[ResType]
|
||||
,[Language]
|
||||
,[Value]
|
||||
,[Uri]
|
||||
,[Explain]
|
||||
,[IsExport]
|
||||
,[CreateTime]
|
||||
,[Extended1]
|
||||
,[Extended2]
|
||||
,[ExtendedInt1]
|
||||
,[ExtendedInt2]
|
||||
,[AppId]
|
||||
,[Title]
|
||||
,[Title2]
|
||||
,[ImageId]
|
||||
,[ImageId2]
|
||||
,[ImageId3]
|
||||
,[ImageId4])
|
||||
select [ResId]
|
||||
,[CfgType]
|
||||
,[ResType]
|
||||
,[Language]
|
||||
,[Value]
|
||||
,[Uri]
|
||||
,[Explain]
|
||||
,[IsExport]
|
||||
,[CreateTime]
|
||||
,[Extended1]
|
||||
,[Extended2]
|
||||
,[ExtendedInt1]
|
||||
,[ExtendedInt2]
|
||||
,@CfgAppId
|
||||
,[Title]
|
||||
,[Title2]
|
||||
,[ImageId]
|
||||
,[ImageId2]
|
||||
,[ImageId3]
|
||||
,[ImageId4] from MoguExt.dbo.T_Multilingual_Cfg where Extended1='游戏' and appid=4 and Value not in (
|
||||
select Value from MoguExt.dbo.T_Multilingual_Cfg where appid=@CfgAppId and Extended1='游戏' )
|
||||
|
||||
end
|
||||
|
||||
else
|
||||
begin
|
||||
print('appid{'+Convert(nvarchar(100),@CfgAppId)+'}不需要同步')
|
||||
end
|
||||
|
||||
FETCH NEXT FROM CfgData_Cursor INTO @CfgAppId,@CfgCount
|
||||
END;
|
||||
--关闭游标
|
||||
CLOSE CfgData_Cursor;
|
||||
DEALLOCATE CfgData_Cursor;
|
||||
END
|
||||
GO
|
||||
51
常用SQL/游戏系列表.sql
Normal file
51
常用SQL/游戏系列表.sql
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
USE [CloudPlatFormData]
|
||||
GO
|
||||
|
||||
/****** Object: Table [dbo].[T_CGame_SeriesGames] Script Date: 2022/10/10 11:43:32 ******/
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_CGame_SeriesGames](
|
||||
[Id] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
|
||||
[SeriesId] [int] NOT NULL,
|
||||
[SeriesName] [nvarchar](100) NULL,
|
||||
[Remark] [nvarchar](200) NULL,
|
||||
[OrderById] [int] NOT NULL,
|
||||
[CreateDateTime] [datetime] NULL,
|
||||
[UpdateDateTime] [datetime] NULL,
|
||||
[IsOnline] [bit] NOT NULL,
|
||||
CONSTRAINT [PK_T_CGAME_SERIESGAMES] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[Id] ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系列标识' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_CGame_SeriesGames', @level2type=N'COLUMN',@level2name=N'SeriesId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'系列名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_CGame_SeriesGames', @level2type=N'COLUMN',@level2name=N'SeriesName'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'备注' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_CGame_SeriesGames', @level2type=N'COLUMN',@level2name=N'Remark'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'排序' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_CGame_SeriesGames', @level2type=N'COLUMN',@level2name=N'OrderById'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'创建时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_CGame_SeriesGames', @level2type=N'COLUMN',@level2name=N'CreateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'修改时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_CGame_SeriesGames', @level2type=N'COLUMN',@level2name=N'UpdateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否启用' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_CGame_SeriesGames', @level2type=N'COLUMN',@level2name=N'IsOnline'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'退出游戏时售卖的系统游戏道具' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_CGame_SeriesGames'
|
||||
GO
|
||||
|
||||
|
||||
49
常用SQL/用户反馈表.sql
Normal file
49
常用SQL/用户反馈表.sql
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
USE [HissAI_Data]
|
||||
GO
|
||||
|
||||
/****** Object: Table [dbo].[T_User_Feedback] Script Date: 2023/5/8 10:16:42 ******/
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_User_Feedback](
|
||||
[Id] [int] IDENTITY(1,1) NOT NULL,
|
||||
[UserId] [bigint] NOT NULL,
|
||||
[Description] [nvarchar](1000) NULL,
|
||||
[ContactInfo] [nvarchar](100) NULL,
|
||||
[AppId] [int] NOT NULL,
|
||||
[CreateDateTime] [datetime] NOT NULL,
|
||||
CONSTRAINT [PK__T_User_F__3214EC27B1F8D290] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[Id] ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
ALTER TABLE [dbo].[T_User_Feedback] ADD DEFAULT (getdate()) FOR [CreateDateTime]
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Feedback', @level2type=N'COLUMN',@level2name=N'Id'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Feedback', @level2type=N'COLUMN',@level2name=N'UserId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'反馈内容' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Feedback', @level2type=N'COLUMN',@level2name=N'Description'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'联系信息' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Feedback', @level2type=N'COLUMN',@level2name=N'ContactInfo'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'app包' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Feedback', @level2type=N'COLUMN',@level2name=N'AppId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'创建时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Feedback', @level2type=N'COLUMN',@level2name=N'CreateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户反馈表' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_Feedback'
|
||||
GO
|
||||
|
||||
|
||||
82
常用SQL/用户成就表完成表.sql
Normal file
82
常用SQL/用户成就表完成表.sql
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
USE [MoguExt]
|
||||
GO
|
||||
|
||||
/****** Object: Table [dbo].[T_User_AchievementFinish] Script Date: 2022/10/10 11:25:41 ******/
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_User_AchievementFinish](
|
||||
[Id] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
|
||||
[AchievemenGuid] [nvarchar](64) NULL,
|
||||
[AchievemenName] [nvarchar](200) NULL,
|
||||
[UserId] [nvarchar](200) NULL,
|
||||
[BossId] [nvarchar](200) NULL,
|
||||
[AppId] [int] NOT NULL,
|
||||
[CreateDateTime] [datetime] NOT NULL,
|
||||
[Remark] [nvarchar](300) NULL,
|
||||
[ShowAchievemen] [datetime] NOT NULL,
|
||||
[Speed] [int] NOT NULL,
|
||||
[IsCompleted] [bit] NOT NULL,
|
||||
[SpeedCount] [int] NOT NULL,
|
||||
[IsShowPopup] [bit] NOT NULL,
|
||||
[UpdateDateTime] [datetime] NOT NULL,
|
||||
[SuccessDateTime] [datetime] NULL,
|
||||
CONSTRAINT [PK_T_USER_ACHIEVEMENTFINISH] PRIMARY KEY CLUSTERED
|
||||
(
|
||||
[Id] ASC
|
||||
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
|
||||
) ON [PRIMARY]
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'主键' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'Id'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就唯一编号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'AchievemenGuid'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'成就名称' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'AchievemenName'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'UserId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'渠道号' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'BossId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'app包' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'AppId'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'创建时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'CreateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'备注' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'Remark'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'显示成就完成时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'ShowAchievemen'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'Speed'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否完成' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'IsCompleted'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'总进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'SpeedCount'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否显示过' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'IsShowPopup'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'更新时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'UpdateDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'修改时间' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish', @level2type=N'COLUMN',@level2name=N'SuccessDateTime'
|
||||
GO
|
||||
|
||||
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'用户成就完成进度' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'T_User_AchievementFinish'
|
||||
GO
|
||||
|
||||
|
||||
39
常用SQL/系统相关/获取注释.sql
Normal file
39
常用SQL/系统相关/获取注释.sql
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
--SELECT ×Ö¶Î˵Ã÷=isnull(props.[value],'') FROM syscolumns cols inner join sysobjects objs on cols.id= objs.id and objs.xtype='U' and objs.name<>'dtproperties' left join sys.extended_properties props on cols.id=props.major_id and cols.colid=props.minor_id
|
||||
|
||||
SELECT
|
||||
obj.name AS table_name,
|
||||
ISNULL(ep.value,'') AS table_description
|
||||
FROM
|
||||
sys.objects AS obj
|
||||
LEFT JOIN
|
||||
sys.extended_properties AS ep
|
||||
ON
|
||||
ep.major_id = obj.object_id
|
||||
AND ep.minor_id = 0
|
||||
AND ep.class = 1
|
||||
WHERE
|
||||
obj.type = 'U'
|
||||
ORDER BY
|
||||
table_name ASC;
|
||||
|
||||
|
||||
SELECT
|
||||
obj.name AS table_name,
|
||||
col.name AS column_name,
|
||||
ISNULL(ep.value,'') AS column_description
|
||||
FROM
|
||||
sys.objects AS obj
|
||||
INNER JOIN
|
||||
sys.columns AS col
|
||||
ON
|
||||
col.object_id = obj.object_id
|
||||
LEFT JOIN
|
||||
sys.extended_properties AS ep
|
||||
ON
|
||||
ep.major_id = obj.object_id
|
||||
AND ep.minor_id = col.column_id
|
||||
AND ep.class = 1
|
||||
WHERE
|
||||
obj.type = 'U'
|
||||
ORDER BY
|
||||
table_name ASC, col.column_id ASC;
|
||||
33
常用SQL/系统相关/表详细信息2.sql
Normal file
33
常用SQL/系统相关/表详细信息2.sql
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
|
||||
SELECT
|
||||
|
||||
t.TABLE_NAME AS [TableName],
|
||||
c.COLUMN_NAME AS [ColumnName],
|
||||
c.ORDINAL_POSITION AS [ColumnIndex],
|
||||
CAST(ISNULL(ep.[value], '') AS NVARCHAR(MAX)) AS [ColumnDescription],
|
||||
c.DATA_TYPE AS [ColumnType],
|
||||
CAST(CASE WHEN c.CHARACTER_MAXIMUM_LENGTH IS NULL THEN c.NUMERIC_PRECISION ELSE c.CHARACTER_MAXIMUM_LENGTH END AS NVARCHAR(10)) AS [ColumnSize],
|
||||
CAST(CASE WHEN EXISTS (
|
||||
SELECT 1 FROM HissAI_Res.INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc
|
||||
INNER JOIN HissAI_Res.INFORMATION_SCHEMA.KEY_COLUMN_USAGE kcu ON tc.CONSTRAINT_NAME = kcu.CONSTRAINT_NAME AND tc.TABLE_SCHEMA = kcu.TABLE_SCHEMA AND tc.TABLE_NAME = kcu.TABLE_NAME
|
||||
WHERE tc.CONSTRAINT_TYPE = 'PRIMARY KEY'
|
||||
AND kcu.TABLE_SCHEMA = t.TABLE_SCHEMA
|
||||
AND kcu.TABLE_NAME = t.TABLE_NAME
|
||||
AND kcu.COLUMN_NAME = c.COLUMN_NAME
|
||||
) THEN 1 ELSE 0 END AS BIT) AS [ColumnIsPK],
|
||||
CAST(CASE WHEN c.IS_NULLABLE = 'YES' THEN 1 ELSE 0 END AS BIT) AS [ColumnIsNull],
|
||||
CAST(COLUMN_DEFAULT AS NVARCHAR(MAX)) AS [ColumnDefault]
|
||||
FROM
|
||||
HissAI_Res.INFORMATION_SCHEMA.TABLES t
|
||||
INNER JOIN
|
||||
HissAI_Res.INFORMATION_SCHEMA.COLUMNS c ON t.TABLE_SCHEMA = c.TABLE_SCHEMA AND t.TABLE_NAME = c.TABLE_NAME
|
||||
LEFT OUTER JOIN
|
||||
HissAI_Res.sys.columns sc ON t.TABLE_SCHEMA + '.' + t.TABLE_NAME = OBJECT_SCHEMA_NAME(sc.object_id) + '.' + OBJECT_NAME(sc.object_id) AND c.COLUMN_NAME = sc.name
|
||||
LEFT OUTER JOIN
|
||||
HissAI_Res.sys.extended_properties ep ON t.TABLE_SCHEMA + '.' + t.TABLE_NAME = OBJECT_SCHEMA_NAME(ep.major_id) + '.' + OBJECT_NAME(ep.major_id) AND sc.column_id = ep.minor_id AND ep.name = 'MS_Description'
|
||||
WHERE
|
||||
t.TABLE_NAME = 'T_App_Config' and (ep.class=1 or ep.class is null )
|
||||
ORDER BY
|
||||
c.ORDINAL_POSITION ASC;
|
||||
|
||||
|
||||
123
常用SQL/系统相关/表详细信息、.sql
Normal file
123
常用SQL/系统相关/表详细信息、.sql
Normal file
|
|
@ -0,0 +1,123 @@
|
|||
|
||||
SELECT
|
||||
col.object_id ,
|
||||
obj.name AS table_name,
|
||||
col.name AS column_name,
|
||||
ISNULL(ep.value,'') AS column_description,
|
||||
inf.DATA_TYPE as column_type,
|
||||
ISNULL(inf.CHARACTER_MAXIMUM_LENGTH ,0) as column_length,
|
||||
indx.name
|
||||
FROM
|
||||
sys.objects AS obj
|
||||
INNER JOIN
|
||||
sys.columns AS col
|
||||
ON
|
||||
col.object_id = obj.object_id
|
||||
LEFT JOIN
|
||||
sys.extended_properties AS ep--注释
|
||||
ON
|
||||
ep.major_id = obj.object_id
|
||||
AND ep.minor_id = col.column_id
|
||||
AND ep.class = 1
|
||||
left join
|
||||
INFORMATION_SCHEMA.COLUMNS inf
|
||||
on
|
||||
inf.TABLE_NAME=obj.name and
|
||||
inf.COLUMN_NAME=col.name
|
||||
left join sys.indexes indx
|
||||
on
|
||||
indx.object_id = obj.object_id
|
||||
WHERE
|
||||
obj.type = 'U' and obj.name='T_App_Config'
|
||||
ORDER BY
|
||||
table_name ASC, col.column_id ASC;
|
||||
|
||||
|
||||
SELECT
|
||||
T.TABLE_NAME AS 表名称,
|
||||
c.ORDINAL_POSITION as 字段顺序,
|
||||
C.COLUMN_NAME AS 字段名称,
|
||||
CASE
|
||||
WHEN PT.VALUE IS NULL THEN ''
|
||||
ELSE PT.VALUE
|
||||
END AS 字段注释,
|
||||
C.DATA_TYPE AS 字段类型,
|
||||
C.CHARACTER_MAXIMUM_LENGTH AS 字段大小,
|
||||
CASE
|
||||
WHEN KCU.COLUMN_NAME IS NULL THEN 0
|
||||
ELSE 1
|
||||
END AS 是否主键
|
||||
FROM INFORMATION_SCHEMA.TABLES T
|
||||
INNER JOIN INFORMATION_SCHEMA.COLUMNS C ON T.TABLE_NAME = C.TABLE_NAME
|
||||
LEFT JOIN sys.extended_properties PT ON PT.major_id = OBJECT_ID(T.TABLE_SCHEMA + '.' + T.TABLE_NAME) AND PT.minor_id = C.ORDINAL_POSITION AND PT.NAME ='MS_Description'
|
||||
LEFT JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE KCU ON KCU.TABLE_NAME = T.TABLE_NAME AND KCU.COLUMN_NAME = C.COLUMN_NAME AND EXISTS(SELECT 1 FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC WHERE TC.CONSTRAINT_TYPE = 'PRIMARY KEY' AND TC.CONSTRAINT_NAME = KCU.CONSTRAINT_NAME)
|
||||
WHERE T.TABLE_TYPE = 'BASE TABLE' AND T.TABLE_NAME ='T_App_Config'
|
||||
ORDER BY T.TABLE_NAME, C.ORDINAL_POSITION;
|
||||
|
||||
|
||||
|
||||
SELECT
|
||||
t.TABLE_NAME AS [表名],
|
||||
c.COLUMN_NAME AS [字段名],
|
||||
c.ORDINAL_POSITION AS [字段顺序],
|
||||
CAST(ISNULL(ep.[value], '') AS NVARCHAR(MAX)) AS [字段注释],
|
||||
c.DATA_TYPE AS [字段类型],
|
||||
CAST(CASE WHEN c.CHARACTER_MAXIMUM_LENGTH IS NULL THEN c.NUMERIC_PRECISION ELSE c.CHARACTER_MAXIMUM_LENGTH END AS NVARCHAR(10)) AS [字段大小],
|
||||
CAST(CASE WHEN EXISTS (
|
||||
SELECT 1 FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc
|
||||
INNER JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE kcu ON tc.CONSTRAINT_NAME = kcu.CONSTRAINT_NAME AND tc.TABLE_SCHEMA = kcu.TABLE_SCHEMA AND tc.TABLE_NAME = kcu.TABLE_NAME
|
||||
WHERE tc.CONSTRAINT_TYPE = 'PRIMARY KEY'
|
||||
AND kcu.TABLE_SCHEMA = t.TABLE_SCHEMA
|
||||
AND kcu.TABLE_NAME = t.TABLE_NAME
|
||||
AND kcu.COLUMN_NAME = c.COLUMN_NAME
|
||||
) THEN 1 ELSE 0 END AS BIT) AS [是否主键],
|
||||
CAST(CASE WHEN c.IS_NULLABLE = 'YES' THEN 1 ELSE 0 END AS BIT) AS [是否可空],
|
||||
CAST(COLUMN_DEFAULT AS NVARCHAR(MAX)) AS [默认值]
|
||||
FROM
|
||||
HissAI_Res.INFORMATION_SCHEMA.TABLES t
|
||||
INNER JOIN
|
||||
HissAI_Res.INFORMATION_SCHEMA.COLUMNS c ON t.TABLE_SCHEMA = c.TABLE_SCHEMA AND t.TABLE_NAME = c.TABLE_NAME
|
||||
LEFT OUTER JOIN
|
||||
HissAI_Res.sys.columns sc ON t.TABLE_SCHEMA + '.' + t.TABLE_NAME = OBJECT_SCHEMA_NAME(sc.object_id) + '.' + OBJECT_NAME(sc.object_id) AND c.COLUMN_NAME = sc.name
|
||||
LEFT OUTER JOIN
|
||||
HissAI_Res.sys.extended_properties ep ON t.TABLE_SCHEMA + '.' + t.TABLE_NAME = OBJECT_SCHEMA_NAME(ep.major_id) + '.' + OBJECT_NAME(ep.major_id) AND sc.column_id = ep.minor_id AND ep.name = 'MS_Description'
|
||||
WHERE
|
||||
t.TABLE_NAME = 'T_App_Config'
|
||||
ORDER BY
|
||||
c.ORDINAL_POSITION ASC;
|
||||
|
||||
|
||||
SELECT name FROM sys.databases where [name] like '%HissAI%' ;
|
||||
|
||||
|
||||
SELECT
|
||||
obj.name AS table_name,
|
||||
ISNULL(ep.value,'') AS table_description
|
||||
FROM
|
||||
HissAI_UserData.sys.objects AS obj
|
||||
LEFT JOIN
|
||||
HissAI_UserData.sys.extended_properties AS ep
|
||||
ON
|
||||
ep.major_id = obj.object_id
|
||||
AND ep.minor_id = 0
|
||||
AND ep.class = 1
|
||||
WHERE
|
||||
obj.type = 'U'
|
||||
ORDER BY
|
||||
table_name ASC;
|
||||
|
||||
SELECT
|
||||
obj.name AS TableName,
|
||||
ISNULL(ep.value,'') AS TableDescription
|
||||
FROM
|
||||
HissAI_UserData.sys.objects AS obj
|
||||
LEFT JOIN
|
||||
HissAI_UserData.sys.extended_properties AS ep
|
||||
ON
|
||||
ep.major_id = obj.object_id
|
||||
AND ep.minor_id = 0
|
||||
AND ep.class = 1
|
||||
WHERE
|
||||
obj.type = 'U'
|
||||
ORDER BY
|
||||
TableName ASC;
|
||||
3
常用SQL/菜单修改.sql
Normal file
3
常用SQL/菜单修改.sql
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
SELECT TOP 100 * FROM Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_Cfg where EpgCategory=1003
|
||||
alter table Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_Cfg add CountryName nvarchar(200);
|
||||
alter table Phone300_VL_UI_CBT.dbo.T_VL_UI_Epg_Cfg add Continent nvarchar(200);
|
||||
5
文档/.net/EfCode.md
Normal file
5
文档/.net/EfCode.md
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
|
||||
### 反向工程
|
||||
1. 安装 dotnet tool install --global dotnet-ef
|
||||
2. 安装包 Microsoft.EntityFrameworkCore.Design
|
||||
3. 执行命令 dotnet ef dbcontext scaffold "Server=172.27.27.12;Database=TextGenerationTest;User Id=zpc;Password=zpc;TrustServerCertificate=true;" Microsoft.EntityFrameworkCore.SqlServer -o Models --force
|
||||
46
文档/.net/grpc.md
Normal file
46
文档/.net/grpc.md
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
# gRPC服务
|
||||
|
||||
## 在已有.net code 中添加gRPC服务器
|
||||
### 1.按照包
|
||||
```C#
|
||||
dotnet add package Grpc
|
||||
dotnet add package Grpc.Tools
|
||||
dotnet add package Grpc.AspNetCore
|
||||
```
|
||||
|
||||
RegionStatisticsClientServer
|
||||
|
||||
### 2.添加 .proto 文件
|
||||
helloworld.proto
|
||||
```C#
|
||||
syntax = "proto3";
|
||||
|
||||
package HelloWorld;
|
||||
|
||||
service Greeter {
|
||||
rpc SayHello (HelloRequest) returns (HelloReply) {}
|
||||
}
|
||||
|
||||
message HelloRequest {
|
||||
string name = 1;
|
||||
}
|
||||
|
||||
message HelloReply {
|
||||
string message = 1;
|
||||
}
|
||||
```
|
||||
|
||||
### 3.配置 csproj 文件
|
||||
```C#
|
||||
<ItemGroup>
|
||||
<Protobuf Include="Protos\helloworld.proto" GrpcServices="Server" />
|
||||
</ItemGroup>
|
||||
```
|
||||
|
||||
### 4.生成代码
|
||||
|
||||
###
|
||||
```C#
|
||||
|
||||
```
|
||||
|
||||
107
文档/Git/git.md
Normal file
107
文档/Git/git.md
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
# git
|
||||
|
||||
# 常用命令
|
||||
|
||||
```sh
|
||||
# 拉取代码
|
||||
git clone [url]
|
||||
# git clone git@192.168.1.33:mogu_server/sunnysports.git
|
||||
|
||||
# 更新代码
|
||||
git pull
|
||||
|
||||
# 添加到暂存区
|
||||
git add .
|
||||
|
||||
# 提交代码
|
||||
git commit -m "提交内容"
|
||||
|
||||
# 推送代码
|
||||
git push
|
||||
|
||||
# 切换分支
|
||||
git checkout <分支名称>
|
||||
git checkout dev-sunny
|
||||
#查看提交历史记录。
|
||||
git log
|
||||
|
||||
#比较当前文件与暂存区或HEAD的差异。
|
||||
git diff
|
||||
|
||||
#将当前工作区的修改保存起来,以便稍后恢复。
|
||||
git stash
|
||||
|
||||
#恢复之前保存的修改,并删除对应的stash。
|
||||
git stash pop
|
||||
|
||||
#安装子模块
|
||||
git submodule init
|
||||
git submodule update
|
||||
|
||||
```
|
||||
|
||||
# 创建ssh证书
|
||||
## 1.启动Git Bash:
|
||||
## 2.生成新的SSH密钥
|
||||
```sh
|
||||
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
|
||||
|
||||
ssh-keygen -t rsa -b 4096 -C "zpc@pc"
|
||||
```
|
||||
## 3.设置SSH代理 在某些系统上,你可能需要在每次启动计算机时添加SSH密钥到SSH代理。可以使用以下命令:
|
||||
``` sh
|
||||
eval "$(ssh-agent -s)"
|
||||
ssh-add ~/.ssh/id_rsa
|
||||
```
|
||||
## 5.复制公钥:使用以下命令将公钥复制到剪贴板:
|
||||
```sh
|
||||
cat ~/.ssh/id_rsa.pub | clip
|
||||
```
|
||||
## 6.验证
|
||||
```sh
|
||||
|
||||
ssh -T git@192.168.1.33
|
||||
ssh -T git@github.com
|
||||
```
|
||||
ssh-copy-id -i ~/.ssh/id_rsa ubuntu@1.117.87.77
|
||||
|
||||
# Ubuntu 添加git
|
||||
``` sh
|
||||
sudo apt update
|
||||
sudo apt install git
|
||||
git --version
|
||||
```
|
||||
## 圣剑
|
||||
|
||||
|
||||
|
||||
cat ~/.ssh/id_rsa.pub
|
||||
|
||||
eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
|
||||
|
||||
ssh -T git@192.168.1.33
|
||||
|
||||
ssh-keygen -t rsa -b 4096 -C "zpc1131"
|
||||
ssh-keygen -t rsa -b 4096 -C "zpc1131@gmail.com"
|
||||
ssh -T git@github.com
|
||||
### 拉取
|
||||
``` sh
|
||||
git clone git@192.168.1.33:mogu_server/sunnysports.git
|
||||
|
||||
```
|
||||
ssh-copy-id -i D:/ssh/229.pub root@192.168.1.229
|
||||
|
||||
eval "$(ssh-agent -s)" ssh-add D:/ssh/229
|
||||
|
||||
eval "$(ssh-agent -s)" ssh-add ~/.ssh/229
|
||||
ssh root@192.168.1.229 -i ~/.ssh/229_rsa
|
||||
```sh
|
||||
ssh-keygen -t rsa -b 4096 -C "zhangzhe@wsl"
|
||||
/home/z/.ssh/229_rsa
|
||||
eval "$(ssh-agent -s)" ssh-add /home/z/.ssh/229_rsa
|
||||
ssh-copy-id -i /home/z/.ssh/229_rsa.pub root@192.168.1.229
|
||||
|
||||
git config --global user.email "zpc1131@wsl"
|
||||
git config --global user.name "zhangzhe"
|
||||
|
||||
```
|
||||
9
文档/SQL Server/设置sqlserver占用内存.sql
Normal file
9
文档/SQL Server/设置sqlserver占用内存.sql
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
EXEC sp_configure 'show advanced options', 1;
|
||||
RECONFIGURE;
|
||||
EXEC sp_configure 'max server memory (MB)';
|
||||
EXEC sp_configure 'min server memory (MB)';
|
||||
|
||||
|
||||
EXEC sp_configure 'max server memory (MB)', 10240; -- 10GB in MB
|
||||
EXEC sp_configure 'min server memory (MB)', 4096; -- 4GB in MB
|
||||
RECONFIGURE;
|
||||
25
文档/linux/.net 8.md
Normal file
25
文档/linux/.net 8.md
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
# [Ubuntu 22.04安装.net 8](https://learn.microsoft.com/zh-cn/dotnet/core/install/linux-ubuntu-2204)
|
||||
|
||||
```sh
|
||||
# 更新包
|
||||
sudo apt-get update
|
||||
# 安装.net 8
|
||||
sudo apt-get install -y dotnet-sdk-8.0
|
||||
|
||||
```
|
||||
|
||||
# 运行
|
||||
```sh
|
||||
#恢复依赖
|
||||
dotnet restore
|
||||
|
||||
|
||||
#编译项目
|
||||
dotnet build
|
||||
|
||||
# 查看版本列表
|
||||
dotnet --list-sdks
|
||||
|
||||
# 发布项目
|
||||
dotnet publish -c Release
|
||||
```
|
||||
28
文档/linux/BaGet.md
Normal file
28
文档/linux/BaGet.md
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# 安装BaGet
|
||||
## 注意事项
|
||||
1. 原生的BaGet使用的是.net code 3.1版本,如果使用更高的版本,需要拉取[源代码](https://github.com/loic-sharma/BaGet),切换.net版本,然后编译、发布即可。
|
||||
2. 本次安装使用的是.net8
|
||||
3. 修改配置项:appsettings.json
|
||||
```json
|
||||
{
|
||||
"ApiKey": "d50e3dbd66",
|
||||
"PackageDeletionBehavior": "Unlist",
|
||||
"AllowPackageOverwrites": false,
|
||||
"Database": {
|
||||
"Type": "Sqlite",
|
||||
"ConnectionString": "Data Source=./baget.db"
|
||||
},
|
||||
"Storage": {
|
||||
"Type": "FileSystem",
|
||||
"Path": "/disk/packages"
|
||||
},
|
||||
"Search": {
|
||||
"Type": "Database"
|
||||
},
|
||||
}
|
||||
```
|
||||
## 安装服务
|
||||
```sh
|
||||
|
||||
```
|
||||
##
|
||||
75
文档/linux/Gitea.md
Normal file
75
文档/linux/Gitea.md
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
# Gitea
|
||||
搭建私有Git服务器
|
||||
##
|
||||
```sh
|
||||
sudo apt update
|
||||
sudo apt install git wget -y
|
||||
# 创建git用户
|
||||
sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git
|
||||
# 下载代码
|
||||
wget -O /tmp/gitea https://dl.gitea.io/gitea/1.16.7/gitea-1.16.7-linux-amd64
|
||||
wget -O /tmp/gitea https://dl.gitea.com/gitea/1.22.0/gitea-1.22.0-linux-amd64
|
||||
# 将下载的文件移动到合适的位置并赋予执行权限
|
||||
sudo mv /tmp/gitea /usr/local/bin/gitea
|
||||
sudo chmod +x /usr/local/bin/gitea
|
||||
# 创建所需的目录:
|
||||
sudo mkdir -p /var/lib/gitea/{custom,data,log}
|
||||
sudo chown -R git:git /var/lib/gitea/
|
||||
sudo chmod -R 750 /var/lib/gitea/
|
||||
sudo mkdir /etc/gitea
|
||||
sudo chown root:git /etc/gitea
|
||||
sudo chmod 770 /etc/gitea
|
||||
# 创建服务文件:
|
||||
sudo nano /etc/systemd/system/gitea.service
|
||||
|
||||
# 添加内容
|
||||
[Unit]
|
||||
Description=Gitea
|
||||
After=syslog.target
|
||||
After=network.target
|
||||
[Service]
|
||||
RestartSec=2s
|
||||
Type=simple
|
||||
User=git
|
||||
Group=git
|
||||
WorkingDirectory=/var/lib/gitea/
|
||||
ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini
|
||||
Restart=always
|
||||
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea/
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
#重新加载systemd并启动Gitea:
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable gitea
|
||||
sudo systemctl start gitea
|
||||
sudo systemctl status gitea
|
||||
# 可选,放开防火墙
|
||||
sudo ufw allow 3000/tcp
|
||||
sudo ufw reload
|
||||
```
|
||||
|
||||
## 配置项 /data/gitea/conf/app.ini
|
||||
1. 数据库文件路径:/var/lib/gitea/data/gitea.db
|
||||
2. 仓库根目录:/var/lib/gitea/data/gitea-repositories
|
||||
3. LFS根目录:/var/lib/gitea/data/lfs
|
||||
4. 日志路径:/var/lib/gitea/log
|
||||
5. 管理员账号:huanmeng 9-9jYRqeywr!SA3 huanmeng@admin.com
|
||||
|
||||
|
||||
## 在Gitea 的配置文件中设置 webhook.ALLOWED_HOST_LIST 来允许特定的服务器。
|
||||
```sh
|
||||
#找到 Gitea 的配置文件:
|
||||
#Gitea 的配置文件通常是 app.ini,它通常位于 Gitea 的安装目录下,例如 /etc/gitea/app.ini 或 /var/lib/gitea/custom/conf/app.ini。
|
||||
sudo nano /etc/gitea/app.ini
|
||||
# 设置 ALLOWED_HOST_LIST:
|
||||
# 在 [webhook] 部分中添加或修改 ALLOWED_HOST_LIST 设置,将你的服务器 IP 地址加入到允许列表中。你可以添加多个地址,用逗号分隔。
|
||||
[webhook]
|
||||
ALLOWED_HOST_LIST = 192.168.195.30
|
||||
# 如果需要允许多个 IP 地址,可以这样:
|
||||
[webhook]
|
||||
ALLOWED_HOST_LIST = 192.168.195.30,192.168.195.31,example.com
|
||||
# 保存文件并关闭编辑器。
|
||||
sudo systemctl restart gitea
|
||||
|
||||
```
|
||||
194
文档/linux/Gitea/webhook.json
Normal file
194
文档/linux/Gitea/webhook.json
Normal file
|
|
@ -0,0 +1,194 @@
|
|||
{
|
||||
"ref": "refs/heads/main",
|
||||
"before": "dd420bcda9be2ff3dde9d65b4c30c0a08c9b043c",
|
||||
"after": "dd420bcda9be2ff3dde9d65b4c30c0a08c9b043c",
|
||||
"compare_url": "http://123.207.203.228:3000/server/CodeRelease/compare/dd420bcda9be2ff3dde9d65b4c30c0a08c9b043c...dd420bcda9be2ff3dde9d65b4c30c0a08c9b043c",
|
||||
"commits": [
|
||||
{
|
||||
"id": "dd420bcda9be2ff3dde9d65b4c30c0a08c9b043c",
|
||||
"message": "提交代码\n",
|
||||
"url": "http://123.207.203.228:3000/server/CodeRelease/commit/dd420bcda9be2ff3dde9d65b4c30c0a08c9b043c",
|
||||
"author": {
|
||||
"name": "zpc",
|
||||
"email": "zpc1131@gmail.com",
|
||||
"username": ""
|
||||
},
|
||||
"committer": {
|
||||
"name": "zpc",
|
||||
"email": "zpc1131@gmail.com",
|
||||
"username": ""
|
||||
},
|
||||
"verification": null,
|
||||
"timestamp": "0001-01-01T00:00:00Z",
|
||||
"added": null,
|
||||
"removed": null,
|
||||
"modified": null
|
||||
}
|
||||
],
|
||||
"total_commits": 1,
|
||||
"head_commit": {
|
||||
"id": "dd420bcda9be2ff3dde9d65b4c30c0a08c9b043c",
|
||||
"message": "提交代码\n",
|
||||
"url": "http://123.207.203.228:3000/server/CodeRelease/commit/dd420bcda9be2ff3dde9d65b4c30c0a08c9b043c",
|
||||
"author": {
|
||||
"name": "zpc",
|
||||
"email": "zpc1131@gmail.com",
|
||||
"username": ""
|
||||
},
|
||||
"committer": {
|
||||
"name": "zpc",
|
||||
"email": "zpc1131@gmail.com",
|
||||
"username": ""
|
||||
},
|
||||
"verification": null,
|
||||
"timestamp": "0001-01-01T00:00:00Z",
|
||||
"added": null,
|
||||
"removed": null,
|
||||
"modified": null
|
||||
},
|
||||
"repository": {
|
||||
"id": 6,
|
||||
"owner": {
|
||||
"id": 3,
|
||||
"login": "server",
|
||||
"login_name": "",
|
||||
"source_id": 0,
|
||||
"full_name": "",
|
||||
"email": "server@noreply.localhost",
|
||||
"avatar_url": "http://123.207.203.228:3000/avatars/cf1e8c14e54505f60aa10ceb8d5d8ab3",
|
||||
"html_url": "http://123.207.203.228:3000/server",
|
||||
"language": "",
|
||||
"is_admin": false,
|
||||
"last_login": "0001-01-01T00:00:00Z",
|
||||
"created": "2024-06-02T13:09:11+08:00",
|
||||
"restricted": false,
|
||||
"active": false,
|
||||
"prohibit_login": false,
|
||||
"location": "",
|
||||
"website": "",
|
||||
"description": "",
|
||||
"visibility": "public",
|
||||
"followers_count": 0,
|
||||
"following_count": 0,
|
||||
"starred_repos_count": 0,
|
||||
"username": "server"
|
||||
},
|
||||
"name": "CodeRelease",
|
||||
"full_name": "server/CodeRelease",
|
||||
"description": "代码发布",
|
||||
"empty": false,
|
||||
"private": false,
|
||||
"fork": false,
|
||||
"template": false,
|
||||
"parent": null,
|
||||
"mirror": false,
|
||||
"size": 39,
|
||||
"language": "",
|
||||
"languages_url": "http://123.207.203.228:3000/api/v1/repos/server/CodeRelease/languages",
|
||||
"html_url": "http://123.207.203.228:3000/server/CodeRelease",
|
||||
"url": "http://123.207.203.228:3000/api/v1/repos/server/CodeRelease",
|
||||
"link": "",
|
||||
"ssh_url": "git@123.207.203.228:server/CodeRelease.git",
|
||||
"clone_url": "http://123.207.203.228:3000/server/CodeRelease.git",
|
||||
"original_url": "",
|
||||
"website": "",
|
||||
"stars_count": 0,
|
||||
"forks_count": 0,
|
||||
"watchers_count": 1,
|
||||
"open_issues_count": 0,
|
||||
"open_pr_counter": 0,
|
||||
"release_counter": 0,
|
||||
"default_branch": "main",
|
||||
"archived": false,
|
||||
"created_at": "2024-06-25T11:48:41+08:00",
|
||||
"updated_at": "2024-06-25T14:11:25+08:00",
|
||||
"archived_at": "1970-01-01T08:00:00+08:00",
|
||||
"permissions": {
|
||||
"admin": false,
|
||||
"push": false,
|
||||
"pull": false
|
||||
},
|
||||
"has_issues": true,
|
||||
"internal_tracker": {
|
||||
"enable_time_tracker": true,
|
||||
"allow_only_contributors_to_track_time": true,
|
||||
"enable_issue_dependencies": true
|
||||
},
|
||||
"has_wiki": true,
|
||||
"has_pull_requests": true,
|
||||
"has_projects": true,
|
||||
"projects_mode": "all",
|
||||
"has_releases": true,
|
||||
"has_packages": true,
|
||||
"has_actions": true,
|
||||
"ignore_whitespace_conflicts": false,
|
||||
"allow_merge_commits": true,
|
||||
"allow_rebase": true,
|
||||
"allow_rebase_explicit": true,
|
||||
"allow_squash_merge": true,
|
||||
"allow_fast_forward_only_merge": true,
|
||||
"allow_rebase_update": true,
|
||||
"default_delete_branch_after_merge": false,
|
||||
"default_merge_style": "merge",
|
||||
"default_allow_maintainer_edit": false,
|
||||
"avatar_url": "http://123.207.203.228:3000/",
|
||||
"internal": false,
|
||||
"mirror_interval": "",
|
||||
"object_format_name": "",
|
||||
"mirror_updated": "0001-01-01T00:00:00Z",
|
||||
"repo_transfer": null
|
||||
},
|
||||
"pusher": {
|
||||
"id": 2,
|
||||
"login": "zhangzhe",
|
||||
"login_name": "",
|
||||
"source_id": 0,
|
||||
"full_name": "",
|
||||
"email": "zhangzhe@noreply.localhost",
|
||||
"avatar_url": "http://123.207.203.228:3000/avatars/a41a0dc924cc9424ef91104f38c3b30d",
|
||||
"html_url": "http://123.207.203.228:3000/zhangzhe",
|
||||
"language": "",
|
||||
"is_admin": false,
|
||||
"last_login": "0001-01-01T00:00:00Z",
|
||||
"created": "2024-05-31T17:08:51+08:00",
|
||||
"restricted": false,
|
||||
"active": false,
|
||||
"prohibit_login": false,
|
||||
"location": "",
|
||||
"website": "",
|
||||
"description": "",
|
||||
"visibility": "public",
|
||||
"followers_count": 0,
|
||||
"following_count": 0,
|
||||
"starred_repos_count": 0,
|
||||
"username": "zhangzhe"
|
||||
},
|
||||
"sender": {
|
||||
"id": 2,
|
||||
"login": "zhangzhe",
|
||||
"login_name": "",
|
||||
"source_id": 0,
|
||||
"full_name": "",
|
||||
"email": "zhangzhe@noreply.localhost",
|
||||
"avatar_url": "http://123.207.203.228:3000/avatars/a41a0dc924cc9424ef91104f38c3b30d",
|
||||
"html_url": "http://123.207.203.228:3000/zhangzhe",
|
||||
"language": "",
|
||||
"is_admin": false,
|
||||
"last_login": "0001-01-01T00:00:00Z",
|
||||
"created": "2024-05-31T17:08:51+08:00",
|
||||
"restricted": false,
|
||||
"active": false,
|
||||
"prohibit_login": false,
|
||||
"location": "",
|
||||
"website": "",
|
||||
"description": "",
|
||||
"visibility": "public",
|
||||
"followers_count": 0,
|
||||
"following_count": 0,
|
||||
"starred_repos_count": 0,
|
||||
"username": "zhangzhe"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
173
文档/linux/Gitea/webhook.发布.json
Normal file
173
文档/linux/Gitea/webhook.发布.json
Normal file
|
|
@ -0,0 +1,173 @@
|
|||
|
||||
{
|
||||
"action": "published",
|
||||
"release": {
|
||||
"id": 2,
|
||||
"tag_name": "0.0.2",
|
||||
"target_commitish": "main",
|
||||
"name": "测试",
|
||||
"body": "",
|
||||
"url": "http://123.207.203.228:3000/api/v1/repos/server/CodeRelease/releases/2",
|
||||
"html_url": "http://123.207.203.228:3000/server/CodeRelease/releases/tag/0.0.2",
|
||||
"tarball_url": "http://123.207.203.228:3000/server/CodeRelease/archive/0.0.2.tar.gz",
|
||||
"zipball_url": "http://123.207.203.228:3000/server/CodeRelease/archive/0.0.2.zip",
|
||||
"upload_url": "http://123.207.203.228:3000/api/v1/repos/server/CodeRelease/releases/2/assets",
|
||||
"draft": false,
|
||||
"prerelease": false,
|
||||
"created_at": "2024-06-25T14:57:42+08:00",
|
||||
"published_at": "2024-06-25T14:57:42+08:00",
|
||||
"author": {
|
||||
"id": 2,
|
||||
"login": "zhangzhe",
|
||||
"login_name": "",
|
||||
"source_id": 0,
|
||||
"full_name": "",
|
||||
"email": "zhangzhe@noreply.localhost",
|
||||
"avatar_url": "http://123.207.203.228:3000/avatars/a41a0dc924cc9424ef91104f38c3b30d",
|
||||
"html_url": "http://123.207.203.228:3000/zhangzhe",
|
||||
"language": "",
|
||||
"is_admin": false,
|
||||
"last_login": "0001-01-01T00:00:00Z",
|
||||
"created": "2024-05-31T17:08:51+08:00",
|
||||
"restricted": false,
|
||||
"active": false,
|
||||
"prohibit_login": false,
|
||||
"location": "",
|
||||
"website": "",
|
||||
"description": "",
|
||||
"visibility": "public",
|
||||
"followers_count": 0,
|
||||
"following_count": 0,
|
||||
"starred_repos_count": 0,
|
||||
"username": "zhangzhe"
|
||||
},
|
||||
"assets": [
|
||||
{
|
||||
"id": 5,
|
||||
"name": "CodeRelease.0.0.2.zip",
|
||||
"size": 1463907,
|
||||
"download_count": 0,
|
||||
"created_at": "2024-06-25T14:57:40+08:00",
|
||||
"uuid": "87d80f69-7083-46be-aa29-2bc50b782718",
|
||||
"browser_download_url": "http://123.207.203.228:3000/server/CodeRelease/releases/download/0.0.2/CodeRelease.0.0.2.zip"
|
||||
}
|
||||
]
|
||||
},
|
||||
"repository": {
|
||||
"id": 6,
|
||||
"owner": {
|
||||
"id": 3,
|
||||
"login": "server",
|
||||
"login_name": "",
|
||||
"source_id": 0,
|
||||
"full_name": "",
|
||||
"email": "",
|
||||
"avatar_url": "http://123.207.203.228:3000/avatars/cf1e8c14e54505f60aa10ceb8d5d8ab3",
|
||||
"html_url": "http://123.207.203.228:3000/server",
|
||||
"language": "",
|
||||
"is_admin": false,
|
||||
"last_login": "0001-01-01T00:00:00Z",
|
||||
"created": "2024-06-02T13:09:11+08:00",
|
||||
"restricted": false,
|
||||
"active": false,
|
||||
"prohibit_login": false,
|
||||
"location": "",
|
||||
"website": "",
|
||||
"description": "",
|
||||
"visibility": "public",
|
||||
"followers_count": 0,
|
||||
"following_count": 0,
|
||||
"starred_repos_count": 0,
|
||||
"username": "server"
|
||||
},
|
||||
"name": "CodeRelease",
|
||||
"full_name": "server/CodeRelease",
|
||||
"description": "代码发布",
|
||||
"empty": false,
|
||||
"private": false,
|
||||
"fork": false,
|
||||
"template": false,
|
||||
"parent": null,
|
||||
"mirror": false,
|
||||
"size": 39,
|
||||
"language": "",
|
||||
"languages_url": "http://123.207.203.228:3000/api/v1/repos/server/CodeRelease/languages",
|
||||
"html_url": "http://123.207.203.228:3000/server/CodeRelease",
|
||||
"url": "http://123.207.203.228:3000/api/v1/repos/server/CodeRelease",
|
||||
"link": "",
|
||||
"ssh_url": "git@123.207.203.228:server/CodeRelease.git",
|
||||
"clone_url": "http://123.207.203.228:3000/server/CodeRelease.git",
|
||||
"original_url": "",
|
||||
"website": "",
|
||||
"stars_count": 0,
|
||||
"forks_count": 0,
|
||||
"watchers_count": 1,
|
||||
"open_issues_count": 0,
|
||||
"open_pr_counter": 0,
|
||||
"release_counter": 2,
|
||||
"default_branch": "main",
|
||||
"archived": false,
|
||||
"created_at": "2024-06-25T11:48:41+08:00",
|
||||
"updated_at": "2024-06-25T14:11:25+08:00",
|
||||
"archived_at": "1970-01-01T08:00:00+08:00",
|
||||
"permissions": {
|
||||
"admin": true,
|
||||
"push": true,
|
||||
"pull": true
|
||||
},
|
||||
"has_issues": true,
|
||||
"internal_tracker": {
|
||||
"enable_time_tracker": true,
|
||||
"allow_only_contributors_to_track_time": true,
|
||||
"enable_issue_dependencies": true
|
||||
},
|
||||
"has_wiki": true,
|
||||
"has_pull_requests": true,
|
||||
"has_projects": true,
|
||||
"projects_mode": "all",
|
||||
"has_releases": true,
|
||||
"has_packages": true,
|
||||
"has_actions": true,
|
||||
"ignore_whitespace_conflicts": false,
|
||||
"allow_merge_commits": true,
|
||||
"allow_rebase": true,
|
||||
"allow_rebase_explicit": true,
|
||||
"allow_squash_merge": true,
|
||||
"allow_fast_forward_only_merge": true,
|
||||
"allow_rebase_update": true,
|
||||
"default_delete_branch_after_merge": false,
|
||||
"default_merge_style": "merge",
|
||||
"default_allow_maintainer_edit": false,
|
||||
"avatar_url": "http://123.207.203.228:3000/",
|
||||
"internal": false,
|
||||
"mirror_interval": "",
|
||||
"object_format_name": "",
|
||||
"mirror_updated": "0001-01-01T00:00:00Z",
|
||||
"repo_transfer": null
|
||||
},
|
||||
"sender": {
|
||||
"id": 2,
|
||||
"login": "zhangzhe",
|
||||
"login_name": "",
|
||||
"source_id": 0,
|
||||
"full_name": "",
|
||||
"email": "zhangzhe@noreply.localhost",
|
||||
"avatar_url": "http://123.207.203.228:3000/avatars/a41a0dc924cc9424ef91104f38c3b30d",
|
||||
"html_url": "http://123.207.203.228:3000/zhangzhe",
|
||||
"language": "",
|
||||
"is_admin": false,
|
||||
"last_login": "0001-01-01T00:00:00Z",
|
||||
"created": "2024-05-31T17:08:51+08:00",
|
||||
"restricted": false,
|
||||
"active": false,
|
||||
"prohibit_login": false,
|
||||
"location": "",
|
||||
"website": "",
|
||||
"description": "",
|
||||
"visibility": "public",
|
||||
"followers_count": 0,
|
||||
"following_count": 0,
|
||||
"starred_repos_count": 0,
|
||||
"username": "zhangzhe"
|
||||
}
|
||||
}
|
||||
75
文档/linux/MySql安装使用.md
Normal file
75
文档/linux/MySql安装使用.md
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
# <div style="text-align:center">mysql 安装记录</div>
|
||||
|
||||
## 操作环境 Ubuntu 22.04.2 LTS
|
||||
|
||||
### 使用 apt 方式安装
|
||||
|
||||
```sh
|
||||
#更新系统的软件包列表
|
||||
sudo apt update
|
||||
|
||||
#查看可用的mysql版本
|
||||
apt list -a mysql-server
|
||||
|
||||
#安装MySQL服务器
|
||||
sudo apt install mysql-server
|
||||
|
||||
#安装特定版本,将 <version> 替换为你想要安装的具体版本号
|
||||
sudo apt-get install mysql-server=<version>
|
||||
sudo apt-get install mysql-server=5.7.35-1ubuntu18.04
|
||||
|
||||
#锁定版本(可选)
|
||||
sudo apt-mark hold mysql-server
|
||||
|
||||
#安装完成后,可以运行以下命令来启动MySQL服务
|
||||
sudo service mysql start
|
||||
|
||||
#停止 MySQL 服务
|
||||
sudo service mysql stop
|
||||
|
||||
#检查MySQL服务状态
|
||||
sudo service mysql status
|
||||
|
||||
#(可选) 为了增加MySQL的安全性,你可以运行MySQL安全性脚本:
|
||||
sudo mysql_secure_installation
|
||||
|
||||
#使用 apt-get 删除 MySQL 软件包
|
||||
sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
|
||||
|
||||
#删除 MySQL 数据目录
|
||||
sudo rm -rf /etc/mysql /var/lib/mysql
|
||||
```
|
||||
|
||||
### MySQL 的二进制发行版,手动安装
|
||||
|
||||
## 常用语句
|
||||
|
||||
```sh
|
||||
#登录
|
||||
mysql -u 用户名 -p
|
||||
#刷新权限
|
||||
FLUSH PRIVILEGES;
|
||||
#退出mysql
|
||||
exit;
|
||||
```
|
||||
|
||||
### 常见问题
|
||||
|
||||
#### 安装完成后登录不上去
|
||||
|
||||
第一次登录时没有密码,造成无法登录这是由于 MYSQL 数据库一开始生成了一个随机密码
|
||||
解决方案:
|
||||
方案 1.使用命令查看随机密码,利用该文件中的 user 和 password 登录
|
||||
|
||||
```sh
|
||||
sudo cat /etc/mysql/debian.cnf
|
||||
|
||||
#mysql -u debian-sys-maint -p
|
||||
#mQxsCvggohEqn2rN
|
||||
```
|
||||
|
||||
方案 2.修改密码,修改的密码可能要和 mysql 的规则一直
|
||||
|
||||
```sh
|
||||
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "密码";
|
||||
```
|
||||
28
文档/linux/SQL Server安装记录.md
Normal file
28
文档/linux/SQL Server安装记录.md
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# <div style="text-align:center">SQL Server安装记录</div>
|
||||
|
||||
## 操作环境 Ubuntu 22.04.2 LTS
|
||||
|
||||
## [安装帮助文档](https://learn.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-ubuntu?view=sql-server-linux-ver15&preserve-view=true&tabs=ubuntu2004#install)
|
||||
|
||||
### 安装方法
|
||||
1.导入公共存储库 GPG 密钥
|
||||
```sh
|
||||
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
|
||||
```
|
||||
2.注册 SQL Server Ubuntu 存储库:
|
||||
```sh
|
||||
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
|
||||
```
|
||||
3.运行以下命令以安装 SQL Server:
|
||||
```sh
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y mssql-server
|
||||
```
|
||||
4.启动配置
|
||||
```sh
|
||||
sudo /opt/mssql/bin/mssql-conf setup
|
||||
```
|
||||
4.停止sqlserver
|
||||
```sh
|
||||
sudo systemctl stop mssql-server
|
||||
```
|
||||
41
文档/linux/Shadowsocks.md
Normal file
41
文档/linux/Shadowsocks.md
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
# 机场 Shadowsocks
|
||||
可以通过v2rayN进行代理连接,实现翻墙
|
||||
## Shadowsocks 安装
|
||||
```sh
|
||||
sudo apt update
|
||||
# 安装包
|
||||
sudo apt install shadowsocks-libev -y
|
||||
# 配置 Shadowsocks,创建并编辑 Shadowsocks 的配置文件。这个文件通常位于 /etc/shadowsocks-libev/config.json。
|
||||
sudo nano /etc/shadowsocks-libev/config.json
|
||||
# 配置项
|
||||
{
|
||||
"server":["::1", "127.0.0.1"],
|
||||
"mode":"tcp_and_udp",
|
||||
"server_port":8388,
|
||||
"local_port":1080,
|
||||
"password":"07RT9gL2zLZ2",
|
||||
"timeout":86400,
|
||||
"method":"chacha20-ietf-poly1305"
|
||||
}
|
||||
|
||||
# 启动和设置开机自启
|
||||
sudo systemctl start shadowsocks-libev
|
||||
sudo systemctl enable shadowsocks-libev
|
||||
# 配置防火墙
|
||||
sudo ufw allow 8388/tcp
|
||||
sudo ufw allow 8388/udp
|
||||
sudo ufw reload
|
||||
|
||||
# 检测服务状态
|
||||
sudo systemctl status shadowsocks-libev
|
||||
|
||||
|
||||
```
|
||||
### 配置项解释
|
||||
"server": ["::1", "127.0.0.1"]:定义服务器地址。::1 是 IPv6 的本地回环地址,127.0.0.1 是 IPv4 的本地回环地址。这意味着当前配置只会监听本地回环接口。
|
||||
"mode": "tcp_and_udp":定义 Shadowsocks 工作模式,这里配置为同时支持 TCP 和 UDP 协议。
|
||||
"server_port": 8388:定义服务器监听的端口,这里设置为 8388。
|
||||
"local_port": 1080:定义本地代理的端口,这里设置为 1080。
|
||||
"password": "07RT9gL2zLZ2":定义连接到代理服务器时需要使用的密码。
|
||||
"timeout": 86400:定义连接超时时间,单位为秒,这里设置为 86400 秒(即 24 小时)。
|
||||
"method": "chacha20-ietf-poly1305":定义加密方法,这里使用 chacha20-ietf-poly1305,这是一种安全性较高的加密算法。
|
||||
17
文档/linux/ZeroTierOne.md
Normal file
17
文档/linux/ZeroTierOne.md
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# 内网穿透
|
||||
|
||||
## 安装
|
||||
```sh
|
||||
# GPG 密钥和仓库:
|
||||
curl -s https://install.zerotier.com | sudo bash
|
||||
# 安装 ZeroTier
|
||||
sudo apt install zerotier-one
|
||||
# 启动并加入网络 sudo zerotier-cli join <network-id>
|
||||
sudo zerotier-cli join 48d6023c465446a4
|
||||
# 检查连接状态
|
||||
sudo zerotier-cli listnetworks
|
||||
# 开机自启
|
||||
sudo systemctl enable zerotier-one
|
||||
#
|
||||
|
||||
```
|
||||
40
文档/linux/baget/baget.service
Normal file
40
文档/linux/baget/baget.service
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
[Unit]
|
||||
Description=BaGet NuGet Server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/disk/BaGet/net8.0/
|
||||
ExecStart=/disk/BaGet/net8.0/BaGet
|
||||
Restart=always
|
||||
# 如果网络服务崩溃,请在10秒钟后重新启动服务:
|
||||
RestartSec=10
|
||||
SyslogIdentifier=baget
|
||||
User=root
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
|
||||
|
||||
[Unit]
|
||||
Description=sunny-sports-api
|
||||
After=network.target
|
||||
[Service]
|
||||
# 运行 设置环境变量
|
||||
#指定服务的工作目录
|
||||
WorkingDirectory=/disk/BaGet/net8.0
|
||||
# run
|
||||
ExecStart=/disk/BaGet/net8.0/BaGet
|
||||
SyslogIdentifier=baget
|
||||
User=root
|
||||
# 打开资源限制infinity 默认会到65535
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=infinity
|
||||
LimitCORE=infinity
|
||||
# 自动检查重启,10秒后重启
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
|
||||
25
文档/linux/baget/部署文档.md
Normal file
25
文档/linux/baget/部署文档.md
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
## 服务文件
|
||||
/etc/systemd/system/baget.service
|
||||
```sh
|
||||
sudo nano /etc/systemd/system/baget.service
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl start baget
|
||||
sudo systemctl enable baget
|
||||
sudo systemctl status baget
|
||||
sudo systemctl stop baget
|
||||
```
|
||||
## 发布命令
|
||||
```sh
|
||||
# /disk/BaGet/src/BaGet$
|
||||
dotnet publish -c Release -o /disk/BaGetApi/
|
||||
```
|
||||
|
||||
## 同步命令
|
||||
```sh
|
||||
rsync -avz /disk/BaGetApi/ ubuntu@123.207.203.228:/disk/BaGet/net8.0/
|
||||
```
|
||||
## 上传
|
||||
```sh
|
||||
dotnet nuget push XLib.NetCore.Utility.1.0.0.nupkg --source "http://123.207.203.228:91/v3/index.json" --api-key "066f010d59"
|
||||
|
||||
```
|
||||
10
文档/linux/ffmpeg.md
Normal file
10
文档/linux/ffmpeg.md
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
## 推取视频
|
||||
|
||||
```sh
|
||||
nohup ffmpeg -re -stream_loop -1 -i /disk/ai_sports/data/sunny_sports/6MM20240327161002.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/stream_sunny_6MM20240327161002 >/dev/null 2>&1 &
|
||||
|
||||
|
||||
```
|
||||
|
||||
rtsp://192.168.1.229:8554/stream_sunny_6MM20240327161002
|
||||
rtsp://192.168.1.229:8554/stream_sunny_8MM20240327160349
|
||||
100
文档/linux/liunx使用记录.md
Normal file
100
文档/linux/liunx使用记录.md
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
# <div style="text-align:center">liunx 使用记录</div>
|
||||
|
||||
## 基础命令
|
||||
|
||||
```sh
|
||||
#关机
|
||||
sudo shutdown now
|
||||
|
||||
#查看发行版信息
|
||||
lsb_release -a
|
||||
|
||||
#查看内核版本:
|
||||
uname -a
|
||||
|
||||
#查看系统信息
|
||||
hostnamectl
|
||||
# 删除指纹
|
||||
ssh-keygen -R 106.75.209.57
|
||||
|
||||
#安装ip查看工具
|
||||
sudo apt-get install net-tools
|
||||
|
||||
#查看IP
|
||||
ifconfig
|
||||
|
||||
#查看端口是否打开,有输出为开启,没有输出为关闭
|
||||
lsof -i:3306
|
||||
|
||||
#开发防火墙的3306端口
|
||||
sudo ufw allow 3306/tcp
|
||||
|
||||
# 创建文件夹(disk 文件夹名称)
|
||||
sudo mkdir /disk
|
||||
|
||||
# 获取权限
|
||||
sudo chmod -R 777 *
|
||||
sudo chmod 777 /disk
|
||||
|
||||
# 删除文件夹
|
||||
sudo rm -r /disk/sunnysports
|
||||
# 发送ssh密钥
|
||||
ssh-copy-id -i ~/.ssh/id_rsa.pub ubuntu@106.75.209.57
|
||||
```
|
||||
|
||||
### 常用命令
|
||||
|
||||
```sh
|
||||
#文件和目录操作:
|
||||
ls: 列出目录内容。
|
||||
cd: 切换目录。
|
||||
pwd: 显示当前工作目录的路径。
|
||||
cp: 复制文件或目录。
|
||||
mv: 移动或重命名文件或目录。
|
||||
rm: 删除文件或目录。
|
||||
mkdir: 创建目录。
|
||||
chmod: 修改文件或目录的权限。
|
||||
chown: 修改文件或目录的所有者。
|
||||
|
||||
#文件查看和编辑:
|
||||
cat: 显示文件内容。
|
||||
less: 分页查看文件内容。
|
||||
head: 显示文件的开头部分。
|
||||
tail: 显示文件的结尾部分。
|
||||
nano 或 vim: 文本编辑器。
|
||||
|
||||
#系统信息和管理:
|
||||
uname: 显示系统信息。
|
||||
df: 显示磁盘空间使用情况。
|
||||
du: 显示目录空间使用情况。
|
||||
top 或 htop: 显示系统资源使用情况。
|
||||
ps: 显示当前运行的进程。
|
||||
kill: 终止进程。
|
||||
shutdown 或 reboot: 关闭或重启系统。
|
||||
|
||||
#用户和权限管理:
|
||||
whoami: 显示当前登录的用户名。
|
||||
who: 显示当前登录用户的信息。
|
||||
sudo: 以超级用户权限执行命令。
|
||||
adduser 或 useradd: 添加新用户。
|
||||
passwd: 修改用户密码。
|
||||
groups: 显示用户所属的组。
|
||||
visudo: 编辑 sudoers 文件,配置用户权限。
|
||||
|
||||
#网络相关:
|
||||
ping: 测试网络连接。
|
||||
ifconfig: 或 ip: 显示网络接口信息。
|
||||
netstat: 显示网络状态。
|
||||
traceroute 或 mtr: 追踪网络路由。
|
||||
wget 或 curl: 下载文件。
|
||||
ssh: 远程登录。
|
||||
|
||||
#压缩和解压:
|
||||
tar: 打包和解压文件。
|
||||
gzip 或 gunzip: 压缩和解压 gzip 格式的文件。
|
||||
zip 或 unzip: 压缩和解压 zip 格式的文件。
|
||||
```
|
||||
|
||||
|
||||
### 服务
|
||||
1. 服务基础位置 /etc/systemd/system/
|
||||
9
文档/linux/make.md
Normal file
9
文档/linux/make.md
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
## make
|
||||
|
||||
```sh
|
||||
sudo apt update
|
||||
sudo apt install make
|
||||
make --version
|
||||
|
||||
|
||||
```
|
||||
35
文档/linux/nano.md
Normal file
35
文档/linux/nano.md
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
# nano文本编辑
|
||||
|
||||
## 安装
|
||||
```sh
|
||||
apt-get install -y nano
|
||||
```
|
||||
|
||||
## 使用语法
|
||||
```sh
|
||||
nano <文件名或文件绝对路径>
|
||||
# 使用示例
|
||||
nano vvhan.com.txt
|
||||
nano /root/vvhan.com.txt
|
||||
```
|
||||
当你打开一个不存在的文件,那么即为新建文件。打开文件后,就可以直接编辑了。
|
||||
## 使用教程
|
||||
```sh
|
||||
Ctrl+G,显示帮助文本
|
||||
Ctrl+O,保存当前文件
|
||||
Ctrl+R,读取其他文件并插入光标位置
|
||||
Ctrl+Y,跳至上一屏幕
|
||||
Ctrl+K,剪切当前一行
|
||||
Ctrl+C,显示光标位置
|
||||
Ctrl+X,退出编辑文本
|
||||
Ctrl+J,对其当前段落(以空格为分隔符)
|
||||
Ctrl+W,搜索文本位置
|
||||
Ctrl+V,跳至下一屏幕
|
||||
Ctrl+U,粘贴文本至光标处
|
||||
Ctrl+T,运行拼写检查
|
||||
Ctrl+_,跳转到某一行
|
||||
ALT+U,撤销
|
||||
ALT+E,重做
|
||||
ALT+Y, 语法高亮
|
||||
ALT+#,显示行号
|
||||
```
|
||||
231
文档/linux/nginx.md
Normal file
231
文档/linux/nginx.md
Normal file
|
|
@ -0,0 +1,231 @@
|
|||
# Nginx
|
||||
|
||||
## 常用命令
|
||||
```sh
|
||||
# 启动 Nginx 服务
|
||||
sudo systemctl start nginx
|
||||
# 关闭
|
||||
sudo systemctl stop nginx
|
||||
# 重启
|
||||
sudo systemctl restart nginx
|
||||
# 重新加载 Nginx 以应用更改
|
||||
sudo systemctl reload nginx
|
||||
|
||||
# 默认目录
|
||||
cd /var/www/
|
||||
# 配置文件
|
||||
cd /etc/nginx/
|
||||
/etc/nginx/nginx.conf
|
||||
|
||||
#测试 Nginx 配置是否正确
|
||||
sudo nginx -t
|
||||
|
||||
```
|
||||
|
||||
## 在 Ubuntu 22.04 上安装和配置 Nginx
|
||||
|
||||
### 安装
|
||||
```sh
|
||||
#首先,确保您的软件包索引是最新的:
|
||||
sudo apt update
|
||||
#步骤 2:安装 Nginx
|
||||
sudo apt install nginx
|
||||
#步骤 3:启动 Nginx 服务
|
||||
sudo systemctl start nginx
|
||||
#步骤 4:使 Nginx 服务开机自启
|
||||
sudo systemctl enable nginx
|
||||
#步骤 5:检查 Nginx 状态
|
||||
sudo systemctl status nginx
|
||||
#步骤 6:配置防火墙
|
||||
sudo ufw allow 'Nginx Full'
|
||||
|
||||
```
|
||||
|
||||
### 配置ssh
|
||||
常见的存放路径是 /etc/nginx/ssl/
|
||||
```sh
|
||||
sudo mkdir -p /etc/nginx/ssl
|
||||
sudo cp /path/to/your/example.com.crt /etc/nginx/ssl/
|
||||
sudo cp /path/to/your/example.com.key /etc/nginx/ssl/
|
||||
|
||||
```
|
||||
```sh
|
||||
server {
|
||||
listen 443 ssl;
|
||||
server_name api.zpc-xy.com;
|
||||
|
||||
ssl_certificate /etc/nginx/ssl/api.zpc-xy.com_nginx/api.zpc-xy.com_bundle.crt;
|
||||
ssl_certificate_key ssl/api.zpc-xy.com_nginx/api.zpc-xy.com.key;
|
||||
|
||||
# ssl_protocols TLSv1.2 TLSv1.3; # 仅使用 TLS 1.2 和 1.3
|
||||
# ssl_ciphers HIGH:!aNULL:!MD5; # 配置强密码套件
|
||||
|
||||
# location / {
|
||||
# proxy_pass http://localhost:3000; # 例如,如果你有一个后端应用运行在端口3000
|
||||
# proxy_set_header Host $host;
|
||||
# proxy_set_header X-Real-IP $remote_addr;
|
||||
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
# proxy_set_header X-Forwarded-Proto $scheme;
|
||||
# }
|
||||
}
|
||||
```
|
||||
### 配置文件
|
||||
```bash
|
||||
# 基础配置
|
||||
server {
|
||||
listen 80;
|
||||
server_name example.com www.example.com;
|
||||
|
||||
root /var/www/example.com/html;
|
||||
index index.html index.htm index.nginx-debian.html;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ =404;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
# 添加虚拟目录映射
|
||||
location /output/ {
|
||||
# alias /disk/ai_sports/DataGateway/output/;
|
||||
# 或者使用 root 指令(视具体情况而定)
|
||||
root /disk/ai_sports/DataGateway/output/;
|
||||
|
||||
# 可选配置:根据需要添加其他指令,如访问控制、缓存策略等
|
||||
autoindex on; # 如果希望列出目录内容
|
||||
# expires 30d; # 设置静态资源缓存过期时间
|
||||
# try_files $uri $uri/ =404; # 用于处理目录索引和文件不存在的情况
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# 代理转发
|
||||
server {
|
||||
listen 82 default_server;
|
||||
listen [::]:82 default_server;
|
||||
|
||||
#root /var/www/web;
|
||||
|
||||
# Add index.php to the list if you are using PHP
|
||||
#index index.html index.htm index.nginx-debian.html;
|
||||
|
||||
server_name _;
|
||||
|
||||
location / {
|
||||
proxy_pass http://192.168.195.32:8189;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
# 代理转发,允许websocket
|
||||
server {
|
||||
listen 82 default_server;
|
||||
listen [::]:82 default_server;
|
||||
|
||||
#root /var/www/web;
|
||||
|
||||
# Add index.php to the list if you are using PHP
|
||||
#index index.html index.htm index.nginx-debian.html;
|
||||
|
||||
server_name _;
|
||||
|
||||
|
||||
location / {
|
||||
proxy_pass http://192.168.195.32:8189;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
### 添加跨域
|
||||
server {
|
||||
listen 83 default_server;
|
||||
listen [::]:83 default_server;
|
||||
|
||||
#root /var/www/web;
|
||||
|
||||
# Add index.php to the list if you are using PHP
|
||||
#index index.html index.htm index.nginx-debian.html;
|
||||
|
||||
server_name _;
|
||||
|
||||
location / {
|
||||
proxy_pass http://192.168.195.32:9967;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
# 添加自定义标头
|
||||
|
||||
# 添加 CORS 标头
|
||||
add_header 'Access-Control-Allow-Origin' '*';
|
||||
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE, PUT';
|
||||
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization';
|
||||
|
||||
# 如果需要处理 OPTIONS 请求
|
||||
if ($request_method = 'OPTIONS') {
|
||||
add_header 'Access-Control-Allow-Origin' '*';
|
||||
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE, PUT';
|
||||
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization';
|
||||
add_header 'Access-Control-Max-Age' 1728000;
|
||||
add_header 'Content-Length' 0;
|
||||
add_header 'Content-Type' 'text/plain charset=UTF-8';
|
||||
return 204;
|
||||
}
|
||||
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
# 安装支持 ngx_stream 模块的 Nginx 版本:
|
||||
```sh
|
||||
sudo apt update
|
||||
sudo apt install nginx-full
|
||||
# 更新配置以启用 stream 模块: nginx.conf 文件中添加
|
||||
stream {
|
||||
upstream rdp_backend {
|
||||
server windows_server_ip:3389;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 3389; # 监听的端口,可以根据需要修改
|
||||
proxy_pass rdp_backend;
|
||||
}
|
||||
}
|
||||
|
||||
## 进阶选项 nginx.conf 文件中添加
|
||||
|
||||
stream {
|
||||
include /etc/nginx/stream.d/*.conf; # 确保 stream 块包含 conf.d 目录中的配置文件
|
||||
}
|
||||
#/etc/nginx/stream.d/rdp.conf
|
||||
upstream rdp_backend {
|
||||
server 192.168.195.4:3389; # 将此 IP 替换为你的 Windows 服务器 IP
|
||||
}
|
||||
|
||||
server {
|
||||
listen 89; # Nginx 监听的端口,可以根据需要修改
|
||||
proxy_pass rdp_backend;
|
||||
}
|
||||
|
||||
```
|
||||
14
文档/linux/node.js.md
Normal file
14
文档/linux/node.js.md
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
# Node.js
|
||||
[官网地址](https://nodejs.org/zh-cn/download/package-manager/all)
|
||||
### [安装](https://github.com/nodesource/distributions?tab=readme-ov-file#debian-and-ubuntu-based-distributions)
|
||||
```sh
|
||||
sudo apt-get install -y curl
|
||||
#下载Node.js安装脚本:
|
||||
curl -fsSL https://deb.nodesource.com/setup_22.x -o nodesource_setup.sh
|
||||
# 使用 sudo 运行Node.js设置脚本:
|
||||
sudo -E bash nodesource_setup.sh
|
||||
# 安装Node.js:
|
||||
sudo apt-get install -y nodejs
|
||||
#验证安装:
|
||||
node -v
|
||||
```
|
||||
26
文档/linux/rsync.md
Normal file
26
文档/linux/rsync.md
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
# rsync 服务器文件传输
|
||||
|
||||
## 安装
|
||||
```sh
|
||||
sudo apt-get install rsync
|
||||
```
|
||||
|
||||
## 常用命令
|
||||
```sh
|
||||
# 从本地同步到远程服务器
|
||||
rsync -avz /path/to/local/dir/ user@remote.server:/path/to/remote/dir/
|
||||
# 从远程服务器同步到本地
|
||||
rsync -avz user@remote.server:/path/to/remote/dir/ /path/to/local/dir/
|
||||
#显示传输进度
|
||||
rsync -avz --progress /home/user/project/ user@remote.server:/home/user/backup/
|
||||
# 排除某些文件或目录 同步时排除某些文件或目录,可以使用 --exclude 选项:
|
||||
rsync -avz --exclude 'node_modules' --exclude '*.log' /home/user/project/ user@remote.server:/home/user/backup/
|
||||
# 使用 rsync 同步删除文件 在源位置删除的文件,也在目标位置删除,可以使用 --delete 选项
|
||||
rsync -avz --delete /home/user/project/ user@remote.server:/home/user/backup/
|
||||
|
||||
```
|
||||
## 常用选项
|
||||
1. -a:归档模式,表示递归传输并保持所有文件属性。
|
||||
2. -v:详细模式,显示传输过程中的详细信息。
|
||||
3. -z:压缩文件数据,以减少传输量。
|
||||
4. -P:显示传输进度,并自动重启传输中断的部分
|
||||
69
文档/linux/ssh.md
Normal file
69
文档/linux/ssh.md
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
# windwos ssh 创建
|
||||
```sh
|
||||
ssh-keygen -t rsa -b 4096 -C "zhangzhe@pc"
|
||||
# 输入路径 /c/Users/admin/.ssh/229_rsa
|
||||
# 创建的路径不能有公共的读写权限
|
||||
eval "$(ssh-agent -s)" ssh-add ~/.ssh/229_rsa
|
||||
ssh-copy-id -i ~/.ssh/229_rsa.pub root@192.168.1.229
|
||||
# 远程的时候可以添加密钥文件地址cd
|
||||
ssh root@192.168.1.229 -i ~/.ssh/229_rsa
|
||||
```
|
||||
|
||||
# linux ssh 创建
|
||||
```sh
|
||||
ssh-keygen -t rsa -b 4096 -C "zhangzhe@wsl"
|
||||
# /home/z/.ssh/229_rsa
|
||||
eval "$(ssh-agent -s)" ssh-add /home/z/.ssh/229_rsa
|
||||
ssh-copy-id -i /home/z/.ssh/229_rsa.pub root@192.168.1.229
|
||||
# 远程的时候可以添加密钥文件地址
|
||||
ssh root@192.168.1.229 -i ~/.ssh/229_rsa
|
||||
|
||||
ssh root@192.168.1.229 -i ~/.ssh/229_rsa "cd /disk/work/sj_git/sunnysports/;make build-data"
|
||||
|
||||
```
|
||||
ssh-copy-id -i /root/.ssh/id_rsa.pub
|
||||
|
||||
# linux ssh 线上
|
||||
```sh
|
||||
ssh-keygen -t rsa -b 4096 -C "zhangzhe@wsl"
|
||||
# /home/z/.ssh/25_rsa
|
||||
eval "$(ssh-agent -s)" ssh-add /home/z/.ssh/25_rsa
|
||||
ssh-copy-id -i /home/z/.ssh/25_rsa.pub root@192.144.132.25
|
||||
# 远程的时候可以添加密钥文件地址
|
||||
ssh root@192.144.132.25 -i ~/.ssh/25_rsa
|
||||
|
||||
|
||||
```
|
||||
|
||||
```sh
|
||||
ssh-keygen -t rsa -b 4096 -C "zhangzhe@pc"
|
||||
# 输入路径 /c/Users/admin/.ssh/25_rsa
|
||||
# 创建的路径不能有公共的读写权限
|
||||
eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
|
||||
ssh-copy-id -i ~/.ssh/25_rsa.pub root@192.144.132.25
|
||||
|
||||
ssh root@106.75.209.57
|
||||
# 远程的时候可以添加密钥文件地址
|
||||
ssh root@192.144.132.25 -i ~/.ssh/25_rsa
|
||||
```
|
||||
ssh-copy-id -i ~/.ssh/id_rsa.pub ubuntu@1.117.87.77
|
||||
eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa
|
||||
1.117.87.77
|
||||
dbt@com@1234
|
||||
ssh ubuntu@1.117.87.77
|
||||
ssh root@1.117.87.77
|
||||
|
||||
|
||||
ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.144.132.25
|
||||
|
||||
ssh-copy-id -i ~/.ssh/id_rsa.pub ubuntu@123.207.203.228
|
||||
ssh-copy-id -i ~/.ssh/id_rsa.pub ubuntu@106.75.209.57
|
||||
|
||||
ssh root@192.168.1.229 -i ~/.ssh/229_rsa
|
||||
|
||||
123.207.203.228
|
||||
|
||||
|
||||
|
||||
ssh-copy-id -i ~/.ssh/id_rsa.pub ubuntu@123.207.203.228
|
||||
|
||||
22
文档/linux/服务文件/code-release.service
Normal file
22
文档/linux/服务文件/code-release.service
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
[Unit]
|
||||
Description=code-release
|
||||
After=network.target
|
||||
[Service]
|
||||
# 运行 设置环境变量
|
||||
#指定服务的工作目录
|
||||
WorkingDirectory=/disk/CodeRelease
|
||||
# run
|
||||
ExecStart=/disk/CodeRelease/CodeRelease
|
||||
SyslogIdentifier=CodeRelease
|
||||
User=root
|
||||
# 打开资源限制infinity 默认会到65535
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=infinity
|
||||
LimitCORE=infinity
|
||||
# 自动检查重启,10秒后重启
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
|
||||
33
文档/linux/服务文件/部署文档.md
Normal file
33
文档/linux/服务文件/部署文档.md
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
## 服务文件
|
||||
/etc/systemd/system/baget.service
|
||||
```sh
|
||||
sudo nano /etc/systemd/system/code-release.service
|
||||
sudo systemctl start code-release.service
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl start baget
|
||||
sudo systemctl enable baget
|
||||
sudo systemctl status baget
|
||||
sudo systemctl stop baget
|
||||
|
||||
|
||||
sudo systemctl restart code-release
|
||||
|
||||
```
|
||||
## 发布命令
|
||||
```sh
|
||||
# /disk/BaGet/src/BaGet$
|
||||
dotnet publish -c Release -o /disk/BaGetApi/
|
||||
dotnet publish -c Release -o /disk/CodeRelease/public/
|
||||
```
|
||||
|
||||
## 同步命令
|
||||
```sh
|
||||
rsync -avz /disk/BaGetApi/ ubuntu@123.207.203.228:/disk/BaGet/net8.0/
|
||||
rsync -avz /disk/CodeRelease/public/ ubuntu@123.207.203.228:/disk/CodeRelease/
|
||||
|
||||
```
|
||||
## 上传
|
||||
```sh
|
||||
dotnet nuget push XLib.NetCore.Utility.1.0.0.nupkg --source "http://123.207.203.228:91/v3/index.json" --api-key "066f010d59"
|
||||
|
||||
```
|
||||
16
文档/windwos/netsh 代理转发.md
Normal file
16
文档/windwos/netsh 代理转发.md
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
```sh
|
||||
# 查看所有转发
|
||||
netsh interface portproxy show all
|
||||
# 转发端口 listenaddress 转发地址 到 connectaddress
|
||||
netsh interface portproxy add v4tov4 listenport=7860 listenaddress=117.50.182.144 connectport=7860 connectaddress=127.0.0.1
|
||||
netsh advfirewall firewall add rule name="Allow Port 7860" protocol=TCP dir=in localport=7860 action=allow
|
||||
|
||||
|
||||
# interface portproxy add
|
||||
netsh interface portproxy add v4tov4 listenport=5000 listenaddress=117.50.182.144 connectport=5000 connectaddress=127.0.0.1
|
||||
# 删除转发
|
||||
netsh interface portproxy delete v4tov4 listenport=7860 listenaddress=117.50.182.144
|
||||
# 重启
|
||||
netsh interface portproxy reset
|
||||
|
||||
```
|
||||
214
文档/其它/.editorconfig
Normal file
214
文档/其它/.editorconfig
Normal file
|
|
@ -0,0 +1,214 @@
|
|||
###############################
|
||||
# 核心编辑器配置选项 #
|
||||
###############################
|
||||
root = true
|
||||
# All files
|
||||
[*]
|
||||
indent_style = space
|
||||
|
||||
# XML project files
|
||||
[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj}]
|
||||
indent_size = 2
|
||||
|
||||
# XML config files
|
||||
[*.{props,targets,ruleset,config,nuspec,resx,vsixmanifest,vsct}]
|
||||
indent_size = 2
|
||||
[*.cs]
|
||||
end_of_line = lf #指定换行符的类型,可以是lf(Unix/Linux)、crlf(Windows)或cr(老式的Mac OS)。
|
||||
# Code files
|
||||
[*.{cs,csx,vb,vbx}]
|
||||
indent_size = 4
|
||||
insert_final_newline = true
|
||||
charset = utf-8 #设置文件字符集为utf-8,在 Linux 系统中,通常推荐使用 UTF-8 而不是 UTF-8 with BOM。添加 BOM 可能会干扰那些不期望在文件开头出现非 ASCII 字节的软件对 UTF-8 的使用。
|
||||
###############################
|
||||
# .NET 编码约定 #
|
||||
###############################
|
||||
[*.{cs,vb}]
|
||||
|
||||
# 组织 using 指令,将系统引用放在前面
|
||||
dotnet_sort_system_directives_first = true
|
||||
|
||||
# this. 语法的偏好设置
|
||||
dotnet_style_qualification_for_field = false:silent # 对字段使用 this. 语法时,不强制要求
|
||||
dotnet_style_qualification_for_property = false:silent # 对属性使用 this. 语法时,不强制要求
|
||||
dotnet_style_qualification_for_method = false:silent # 对方法使用 this. 语法时,不强制要求
|
||||
dotnet_style_qualification_for_event = false:silent # 对事件使用 this. 语法时,不强制要求
|
||||
|
||||
# 语言关键字与 BCL(基类库)类型的偏好设置
|
||||
dotnet_style_predefined_type_for_locals_parameters_members = true:silent # 推荐在局部变量、参数和成员中使用语言关键字而不是 BCL 类型
|
||||
dotnet_style_predefined_type_for_member_access = true:silent # 推荐在成员访问中使用语言关键字而不是 BCL 类型
|
||||
|
||||
# 括号的偏好设置
|
||||
dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:silent # 推荐在算术二元运算符周围始终使用括号以增强清晰度
|
||||
dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:silent # 推荐在关系二元运算符周围始终使用括号以增强清晰度
|
||||
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:silent # 推荐在其他二元运算符周围始终使用括号以增强清晰度
|
||||
dotnet_style_parentheses_in_other_operators = never_if_unnecessary:silent # 在其他操作符周围使用括号时,只在必要时添加
|
||||
|
||||
# 修饰符的偏好设置
|
||||
dotnet_style_require_accessibility_modifiers = for_non_interface_members:silent # 针对非接口成员,推荐添加访问修饰符
|
||||
dotnet_style_readonly_field = true:suggestion # 推荐将字段声明为只读
|
||||
dotnet_style_object_initializer = true:suggestion # 推荐使用对象初始化器
|
||||
dotnet_style_collection_initializer = true:suggestion # 推荐使用集合初始化器
|
||||
dotnet_style_explicit_tuple_names = true:suggestion # 推荐使用显式的元组成员命名
|
||||
dotnet_style_null_propagation = true:suggestion # 推荐使用 null 条件运算符(?.)进行空引用检查
|
||||
dotnet_style_coalesce_expression = true:suggestion # 推荐使用空值合并运算符(??)
|
||||
dotnet_style_prefer_is_null_check_over_reference_equality_method = true:silent # 在检查是否为 null 时,推荐使用 is 运算符而不是引用相等方法
|
||||
dotnet_style_prefer_inferred_tuple_names = true:suggestion # 推荐使用推断的元组成员命名
|
||||
dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion # 推荐使用推断的匿名类型成员命名
|
||||
dotnet_style_prefer_auto_properties = true:silent # 推荐使用自动属性
|
||||
dotnet_style_prefer_conditional_expression_over_assignment = true:silent # 推荐使用条件表达式而不是赋值表达式
|
||||
dotnet_style_prefer_conditional_expression_over_return = true:silent # 推荐使用条件表达式而不是 return 语句
|
||||
|
||||
###############################
|
||||
# 命名约定 #
|
||||
###############################
|
||||
|
||||
# 样式定义
|
||||
dotnet_naming_style.pascal_case_style.capitalization = pascal_case # 使用 PascalCase 风格
|
||||
|
||||
# 命名规则:常量字段应使用 PascalCase 风格
|
||||
dotnet_naming_rule.constant_fields_should_be_pascal_case.severity = suggestion # 规则严重程度为建议
|
||||
dotnet_naming_rule.constant_fields_should_be_pascal_case.symbols = constant_fields # 适用于 constant_fields 符号
|
||||
dotnet_naming_rule.constant_fields_should_be_pascal_case.style = pascal_case_style # 风格为 PascalCase
|
||||
|
||||
# 常量字段的符号定义
|
||||
dotnet_naming_symbols.constant_fields.applicable_kinds = field # 适用于字段
|
||||
dotnet_naming_symbols.constant_fields.applicable_accessibilities = * # 适用于所有可见性(public、internal、private 等)
|
||||
dotnet_naming_symbols.constant_fields.required_modifiers = const # 必须具有 const 修饰符
|
||||
|
||||
###############################
|
||||
# C# 编码约定 #
|
||||
###############################
|
||||
[*.cs]
|
||||
|
||||
# var 的偏好设置
|
||||
csharp_style_var_for_built_in_types = true:silent # 当变量的类型是内置类型时,使用 var
|
||||
csharp_style_var_when_type_is_apparent = true:silent # 当变量类型明显时,使用 var
|
||||
csharp_style_var_elsewhere = true:silent # 在其他情况下,也使用 var
|
||||
|
||||
# 表达式主体成员的偏好设置
|
||||
csharp_style_expression_bodied_methods = false:silent # 不使用表达式主体的方法
|
||||
csharp_style_expression_bodied_constructors = false:silent # 不使用表达式主体的构造函数
|
||||
csharp_style_expression_bodied_operators = false:silent # 不使用表达式主体的运算符
|
||||
csharp_style_expression_bodied_properties = true:silent # 使用表达式主体的属性
|
||||
csharp_style_expression_bodied_indexers = true:silent # 使用表达式主体的索引器
|
||||
csharp_style_expression_bodied_accessors = true:silent # 使用表达式主体的访问器
|
||||
|
||||
# 模式匹配的偏好设置
|
||||
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion # 推荐使用模式匹配而非 is 与类型转换检查
|
||||
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion # 推荐使用模式匹配而非 as 与 null 检查
|
||||
|
||||
# 空检查的偏好设置
|
||||
csharp_style_throw_expression = true:suggestion # 推荐使用 throw 表达式
|
||||
csharp_style_conditional_delegate_call = true:suggestion # 推荐使用条件委托调用
|
||||
|
||||
# 修饰符的偏好设置
|
||||
csharp_preferred_modifier_order = public,private,protected,internal,file,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,required,volatile,async:suggestion # 修饰符的推荐顺序
|
||||
|
||||
# 表达式级别的偏好设置
|
||||
csharp_prefer_braces = true:silent # 推荐使用大括号,即使在可能省略的情况下
|
||||
csharp_style_deconstructed_variable_declaration = true:suggestion # 推荐使用解构变量声明
|
||||
csharp_prefer_simple_default_expression = true:suggestion # 推荐使用简化的默认值表达式
|
||||
csharp_style_prefer_local_over_anonymous_function = true:suggestion # 推荐使用本地函数而非匿名函数
|
||||
csharp_style_inlined_variable_declaration = true:suggestion # 推荐内联变量声明
|
||||
|
||||
###############################
|
||||
# C# 格式化规则 #
|
||||
###############################
|
||||
# 新行偏好设置
|
||||
|
||||
# 在大括号前添加新行(适用于所有情况)
|
||||
csharp_new_line_before_open_brace = all
|
||||
|
||||
# 在 "else" 关键字前添加新行
|
||||
csharp_new_line_before_else = true
|
||||
|
||||
# 在 "catch" 关键字前添加新行
|
||||
csharp_new_line_before_catch = true
|
||||
|
||||
# 在 "finally" 关键字前添加新行
|
||||
csharp_new_line_before_finally = true
|
||||
|
||||
# 在对象初始化器中的成员前添加新行
|
||||
csharp_new_line_before_members_in_object_initializers = true
|
||||
|
||||
# 在匿名类型初始化器中的成员前添加新行
|
||||
csharp_new_line_before_members_in_anonymous_types = true
|
||||
|
||||
# 在查询表达式的子句之间添加新行
|
||||
csharp_new_line_between_query_expression_clauses = true
|
||||
|
||||
# 缩进偏好设置
|
||||
|
||||
# 缩进 switch 语句的内容
|
||||
csharp_indent_case_contents = true
|
||||
|
||||
# 缩进 switch 语句的标签
|
||||
csharp_indent_switch_labels = true
|
||||
|
||||
# 缩进左对齐 switch 语句的标签
|
||||
csharp_indent_labels = flush_left
|
||||
|
||||
# 空间首选项
|
||||
# 禁止在强制类型转换后添加空格
|
||||
csharp_space_after_cast = false
|
||||
|
||||
# 在控制流语句(如 if、for、while)的关键字后添加空格
|
||||
csharp_space_after_keywords_in_control_flow_statements = true
|
||||
|
||||
# 在方法调用的参数列表的括号内禁止添加空格
|
||||
csharp_space_between_method_call_parameter_list_parentheses = false
|
||||
|
||||
# 在方法声明的参数列表的括号内禁止添加空格
|
||||
csharp_space_between_method_declaration_parameter_list_parentheses = false
|
||||
|
||||
# 在圆括号内禁止添加空格
|
||||
csharp_space_between_parentheses = false
|
||||
|
||||
# 在继承声明中的冒号前添加空格
|
||||
csharp_space_before_colon_in_inheritance_clause = true
|
||||
|
||||
# 在继承声明中的冒号后添加空格
|
||||
csharp_space_after_colon_in_inheritance_clause = true
|
||||
|
||||
# 在二元操作符周围的空格,前后都添加
|
||||
csharp_space_around_binary_operators = before_and_after
|
||||
|
||||
# 在方法声明的空参数列表的括号内禁止添加空格
|
||||
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
|
||||
|
||||
# 在方法调用的方法名和左括号之间禁止添加空格
|
||||
csharp_space_between_method_call_name_and_opening_parenthesis = false
|
||||
|
||||
# 在方法调用的空参数列表的括号内禁止添加空格
|
||||
csharp_space_between_method_call_empty_parameter_list_parentheses = false
|
||||
|
||||
# 包装偏好设置
|
||||
csharp_preserve_single_line_statements = true # 保留单行语句的换行风格
|
||||
csharp_preserve_single_line_blocks = true # 保留单行块的换行风格
|
||||
# C# using 指令的放置偏好设置
|
||||
csharp_using_directive_placement = outside_namespace:silent # 在命名空间外部放置 using 指令,不强制要求
|
||||
|
||||
# 表达式主体的 Lambda 表达式的偏好设置
|
||||
csharp_style_expression_bodied_lambdas = true:silent # 推荐使用表达式主体的 Lambda 表达式,不强制要求
|
||||
|
||||
# 表达式主体的本地函数的偏好设置
|
||||
csharp_style_expression_bodied_local_functions = false:silent # 不推荐使用表达式主体的本地函数,不强制要求
|
||||
|
||||
# 简化 using 语句的偏好设置
|
||||
csharp_prefer_simple_using_statement = true:suggestion # 推荐使用简化的 using 语句,建议使用
|
||||
|
||||
# 命名空间声明风格的偏好设置
|
||||
csharp_style_namespace_declarations = block_scoped:silent # 使用块级作用域的命名空间声明风格,不强制要求
|
||||
|
||||
# 方法组转换的偏好设置
|
||||
csharp_style_prefer_method_group_conversion = true:silent # 推荐使用方法组转换,不强制要求
|
||||
|
||||
# 首选顶层语句的偏好设置
|
||||
csharp_style_prefer_top_level_statements = true:silent # 推荐使用顶层语句,不强制要求
|
||||
|
||||
# 首选主构造函数的偏好设置
|
||||
csharp_style_prefer_primary_constructors = true:suggestion # 推荐使用主构造函数,建议使用
|
||||
|
||||
# 使用静态本地函数的偏好设置
|
||||
csharp_prefer_static_local_function = true:suggestion # 推荐使用静态本地函数,建议使用
|
||||
38
文档/其它/.editorconfig1
Normal file
38
文档/其它/.editorconfig1
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
|
||||
root = true
|
||||
|
||||
# 全部文件
|
||||
[*]
|
||||
indent_style = space #指定缩进风格,可以是tab(制表符)或space(空格)
|
||||
|
||||
# Xml files
|
||||
[*.xml]
|
||||
indent_size = 2 #定义一个缩进级别的大小。
|
||||
|
||||
[*.cs]
|
||||
end_of_line = lf #指定换行符的类型,可以是lf(Unix/Linux)、crlf(Windows)或cr(老式的Mac OS)。
|
||||
indent_style = space #指定缩进风格,可以是tab(制表符)或space(空格)
|
||||
charset = utf-8 #设置文件字符集为utf-8,在 Linux 系统中,通常推荐使用 UTF-8 而不是 UTF-8 with BOM。添加 BOM 可能会干扰那些不期望在文件开头出现非 ASCII 字节的软件对 UTF-8 的使用。
|
||||
trim_trailing_whitespace = true #指定是否删除行尾的空白字符。
|
||||
insert_final_newline = true #指定文件末尾是否应该插入一个空白行。
|
||||
indent_size = 4
|
||||
# 模式匹配的偏好设置
|
||||
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion # 推荐使用模式匹配而非 is 与类型转换检查
|
||||
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion # 推荐使用模式匹配而非 as 与 null 检查
|
||||
|
||||
# 空检查的偏好设置
|
||||
csharp_style_throw_expression = true:suggestion # 推荐使用 throw 表达式
|
||||
csharp_style_conditional_delegate_call = true:suggestion # 推荐使用条件委托调用
|
||||
|
||||
# 修饰符的偏好设置
|
||||
csharp_preferred_modifier_order = public,private,protected,internal,file,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,required,volatile,async:suggestion # 修饰符的推荐顺序
|
||||
|
||||
# 表达式级别的偏好设置
|
||||
csharp_prefer_braces = true:silent # 推荐使用大括号,即使在可能省略的情况下
|
||||
csharp_style_deconstructed_variable_declaration = true:suggestion # 推荐使用解构变量声明
|
||||
csharp_prefer_simple_default_expression = true:suggestion # 推荐使用简化的默认值表达式
|
||||
csharp_style_prefer_local_over_anonymous_function = true:suggestion # 推荐使用本地函数而非匿名函数
|
||||
csharp_style_inlined_variable_declaration = true:suggestion # 推荐内联变量声明
|
||||
# 首选顶层语句的偏好设置
|
||||
csharp_style_prefer_top_level_statements = true:silent # 推荐使用顶层语句,不强制要求
|
||||
|
||||
3
文档/其它/README.md
Normal file
3
文档/其它/README.md
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
# document
|
||||
|
||||
文档
|
||||
20
文档/其它/sunny-sports-api.service
Normal file
20
文档/其它/sunny-sports-api.service
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
[Unit]
|
||||
Description=sunny-sports-api
|
||||
After=network.target
|
||||
[Service]
|
||||
# 运行 设置环境变量
|
||||
#指定服务的工作目录
|
||||
WorkingDirectory=/disk/ai_sports/sunnysportsapi
|
||||
# run
|
||||
ExecStart=/disk/ai_sports/sunnysportsapi/SunnySports.Api
|
||||
SyslogIdentifier=SunnySportsApi
|
||||
User=root
|
||||
# 打开资源限制infinity 默认会到65535
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=infinity
|
||||
LimitCORE=infinity
|
||||
# 自动检查重启,10秒后重启
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
20
文档/其它/sunny-sports-api.service test
Normal file
20
文档/其它/sunny-sports-api.service test
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
[Unit]
|
||||
Description=sunny-sports-api
|
||||
After=network.target
|
||||
[Service]
|
||||
# 运行 设置环境变量
|
||||
#指定服务的工作目录
|
||||
WorkingDirectory=/disk/sunnysportsapi
|
||||
# run
|
||||
ExecStart=/disk/sunnysportsapi/SunnySports.Api
|
||||
SyslogIdentifier=SunnySportsApi
|
||||
User=root
|
||||
# 打开资源限制infinity 默认会到65535
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=infinity
|
||||
LimitCORE=infinity
|
||||
# 自动检查重启,10秒后重启
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
17
文档/其它/test.md
Normal file
17
文档/其它/test.md
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
后台管理
|
||||
需要管理数据库
|
||||
需要可以添加数据库
|
||||
需要可以删除数据库
|
||||
|
||||
学生数据库和系统库是否绑定
|
||||
|
||||
|
||||
dotnet ef dbcontext scaffold "Server=192.168.1.229;Database=SunnySport_StudentBase;User ID=chfl;Password=chfl;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;" Microsoft.EntityFrameworkCore.SqlServer --no-pluralize --force --output-dir Model/Db_Student/
|
||||
|
||||
项目中
|
||||
学生数据库是分库,系统数据库是TenantId隔离
|
||||
需要的配置
|
||||
1.学校名称
|
||||
2.系统数据库租户id
|
||||
3.系统数据库连接字符串
|
||||
4.学生数据库连接字符串
|
||||
117
文档/其它/工作文档.md
Normal file
117
文档/其它/工作文档.md
Normal file
|
|
@ -0,0 +1,117 @@
|
|||
# 工作文档
|
||||
|
||||
## 远程服务器
|
||||
|
||||
用户名:_sjgame_
|
||||
密 码:_Itvgame2020@!$#_
|
||||
默认端口号:_33389_
|
||||
|
||||
### 国内服务器地址
|
||||
|
||||
| 服务器名称 | 外网地址 | 内网地址 | 备注 |
|
||||
| ------------------ | ----------------- | ----------------- | -------------------- |
|
||||
| 蘑菇游戏-web-1 | 82.157.13.127 | 172.21.64.107 | 绘画接口也在服务器上 |
|
||||
| 蘑菇游戏-web-2 | 82.157.29.123 | 172.21.64.99 | |
|
||||
| 蘑菇游戏-web-3 | 82.157.14.24 | 172.21.64.69 | |
|
||||
| 蘑菇游戏-扩展服务 | 81.70.0.132 | 172.21.127.25 | |
|
||||
| 蘑菇游戏-PC | 101.42.136.223 | 172.21.64.80 | 官网服务器 |
|
||||
| ~~蘑菇游戏-web-1~~ | ~~82.157.20.213~~ | ~~172.21.112.18~~ | 已废弃 |
|
||||
| ~~蘑菇游戏-web-2~~ | ~~82.157.29.123~~ | ~~172.21.112.4~~ | 已废弃 |
|
||||
| ~~蘑菇游戏-web-3~~ | ~~82.157.14.24~~ | ~~172.21.112.25~~ | 已废弃 |
|
||||
|
||||
### 海外服务器地址
|
||||
|
||||
| 服务器名称 | 外网地址 | 内网地址 | 备注 |
|
||||
| ----------------- | ------------- | ------------ | ---------------------- |
|
||||
| 蘑菇游戏-web-1 | 101.32.15.216 | 172.19.0.12 | 绘画服务器 1 |
|
||||
| 蘑菇游戏-web-2 | 101.32.14.235 | 172.19.0.11 | 绘画服务器 2 |
|
||||
| 蘑菇游戏-web-3 | 43.135.25.193 | 172.19.0.95 | 绘画服务器 3 |
|
||||
| 蘑菇游戏-扩展服务 | 43.129.199 | 172.19.0.13 | |
|
||||
| 蘑菇游戏-PC | 43.129.195.20 | 172.19.0.149 | 官网服务器 |
|
||||
| DB | | 172.19.0.17 | 数据库服务器,没有外网 |
|
||||
|
||||
### 跳板机
|
||||
|
||||
| 服务器名称 | 外网地址 | 内网地址 | 账号 | 密码 | 备注 |
|
||||
| -------------- | -------------------- | -------- | -------- | ---------------- | -------------------------------------------------------------------------------------------------------- |
|
||||
| 测试环境跳板机 | 112.124.23.127:33389 | -------- | zhangzhe | CRPCXmdJV5IbK6kh | 测试环境绘画 vnc 地址:<br>_121.11.212.23:15903_<br>_tvgame@1_ |
|
||||
| 现网跳板机 | 112.124.23.127:33389 | -------- | yinming | nwA6QVatxEzIgEdw | 远程现网服务器地址:<br>_D:\Soft\mstsc-bat\无盘更新 server\601-games-国内-瑞云-华南-广东-cbd-2-(200 路)_ |
|
||||
|
||||
### 其他服务器
|
||||
|
||||
| 服务器名称 | 外网地址 | 内网地址 | 账号 | 密码 | 备注 |
|
||||
| ------------------------- | -------------------- | ------------------- | ------ | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| 测试环境服务器 | 121.5.26.77:33389 | | sjgame | Itvgame2020@!$# | 蘑菇和绘画测试服务器 |
|
||||
| vnc 绘画服务器 | | 121.11.212.23:15903 | | _tvgame@1_ | 需要使用 vnc 连接 |
|
||||
| 西南交大服务器-测试 | 43.143.246.189:33389 | | sjgame | _Itvgame2020@!$#_ | 测试环境 |
|
||||
| 西南交大正式服务器-跳板机 | 146.56.198.144:33389 | | sjgame | _Itvgame2020@!$#_ | 远程服务器后需要登录 vpn 才能连接校园服务器 |
|
||||
| 西南交大正式服务器 | 10.31.19.58 | | sjgame | _Itvgame2020@!$#_ | 如果连上面的服务器,需要有如下步骤<br />1)登录跳板机:146.56.198.144:33389 用户名:sjgame 密码:Itvgame2020@!$#<br />2)拨VPN,在跳板机的桌面上有一个vpn.txt,上面都有说明,短信手机号是赵亮的<br />3)在跳板机上面直接远程:10.31.19.58 即可,然后这台就是正式的WEB服务器 |
|
||||
|
||||
## 账号
|
||||
|
||||
| 名称 | 账号 | 密码 | 网址 | 备注 |
|
||||
| ---------------------------------------------------------------------------------------------------- | ---------------------- | ----------------- | ----------------------------------------------------------------------------------------- | ---------------------------------------------------------- |
|
||||
| [git](http://192.168.1.33/users/sign_in) | zhangzhe@holyblade.com | dbt@com@123 | _http://192.168.1.33/users/sign_in_ | git 项目管理地址 |
|
||||
| ~~[svn](http://192.168.1.19:82/svn/%e6%96%b0%e4%b8%9a%e5%8a%a1/98-%e9%a1%b9%e7%9b%ae/MoguExtCode/)~~ | zhangzhe | RG8orVOa | http://192.168.1.19:82/svn/%e6%96%b0%e4%b8%9a%e5%8a%a1/98-%e9%a1%b9%e7%9b%ae/MoguExtCode/ | 代码已经不再 svn 中管理,使用 git 管理 |
|
||||
| [禅道](https://moguyouxi.zentaopm.com/) | zhangzhe | zhangzhe0714 | _https://moguyouxi.zentaopm.com/_ | 管理项目进度 |
|
||||
| [神策](https://sj.cloud.sensorsdata.cn/login/index.html) | heyao@holyblade.com | heyao123!@# | https://sj.cloud.sensorsdata.cn/login/index.html | 用于统计app数据,没有自己的账号,注意:需要断开vpn才能访问 |
|
||||
| [蓝湖](https://lanhuapp.com/link/#/invite?sid=lx0c2ZfN) | 18761127117 | | | 手机号登录,如果没有权限,找美术开通权限 |
|
||||
| [百度统计](https://tongji.baidu.com/web/homepage/index) | 13162753112 | Mogu2022. | _https://tongji.baidu.com/web/homepage/index_ | 使用百度账号登录,如果需要发送验证码,找市场部(唐丹等人) |
|
||||
| ~~[网站监测](http://81.70.0.156:8001/)~~ | logadmin | tech@mogu2021 | http://81.70.0.156:8001/ | 现在访问不通 |
|
||||
| [友盟](https://www.umeng.com/) | 圣剑网络云游戏 | holyblade0306 | https://www.umeng.com/ | 验证手机(林宇):19521266946,类似神策 |
|
||||
| [国内鲸云](https://jyapi.moguyouxi.cn:4433/admin/login) | shengjian | sjManager@admin19 | https://jyapi.moguyouxi.cn:4433/admin/login | |
|
||||
| [海外鲸云](https://jyapihw.moguyouxi.cn:8400//admin/login) | shengjian | sjManager@admin19 | https://jyapihw.moguyouxi.cn:8400//admin/login | |
|
||||
|
||||
## 阿里云OSS
|
||||
阿里云cdn的客户端工具
|
||||
https://help.aliyun.com/document_detail/61872.html
|
||||
~~holyblade@aliyun.com/holyblade1812~~
|
||||
AccessKey ID:_2ZtnBc61LYwbUoAq_
|
||||
AccessKey Secret:_ec4UWI8pJ9staa40HGFKcf1WewU0R5_
|
||||
|
||||
|
||||
## 开发事项
|
||||
|
||||
### api接口地址
|
||||
|
||||
#### 测试环境
|
||||
|
||||
* 蘑菇api
|
||||
1. [app接口](https://test.moguyouxi.cn:8400/Phone300_Api/) _https://test.moguyouxi.cn:8400/Phone300_Api/_
|
||||
2. [游戏直播api](https://test.moguyouxi.cn:8400/GameLive/) _https://test.moguyouxi.cn:8400/GameLive/_
|
||||
3. [扩展api](https://test.moguyouxi.cn:8400/MoguExt/) _https://test.moguyouxi.cn:8400/MoguExt/_
|
||||
4. [游戏服务api](https://test.moguyouxi.cn:8400/GameApi/) _https://test.moguyouxi.cn:8400/GameApi/_
|
||||
5. [游戏对战api](https://test.moguyouxi.cn:8400/GameFight/) _https://test.moguyouxi.cn:8400/GameFight/_
|
||||
6. [支付api](https://test.moguyouxi.cn:8400/MoguExt.PaymentCenter/) _https://test.moguyouxi.cn:8400/MoguExt.PaymentCenter/_
|
||||
7. [蘑菇活动api](https://test.moguyouxi.cn:8400/MoguExt.HD/) _https://test.moguyouxi.cn:8400/MoguExt.HD/_
|
||||
* 绘画api
|
||||
1. [绘画api](https://test.moguyouxi.cn:8400/HissAi4.Api/) _https://test.moguyouxi.cn:8400/HissAi4.Api/_
|
||||
2. [绘画api_net6](https://test.moguyouxi.cn:8400/HissAi6.Api/) _https://test.moguyouxi.cn:8400/HissAi6.Api/_
|
||||
3. [支付api](https://test.moguyouxi.cn:8400/HissAi4.PayCenter/) _https://test.moguyouxi.cn:8400/HissAi4.PayCenter/_
|
||||
|
||||
#### 国内正式api
|
||||
|
||||
* 蘑菇api
|
||||
1. [app接口](https://sjapi.moguyouxi.cn:8400/Phone300_Api/) _https://sjapi.moguyouxi.cn:8400/Phone300_Api/_
|
||||
2. [游戏直播api](https://sjapi.moguyouxi.cn:8400/GameLive/) _https://sjapi.moguyouxi.cn:8400/GameLive/_
|
||||
3. [游戏服务api](https://sjapi.moguyouxi.cn:8400/Phone300_GameApi/) _https://sjapi.moguyouxi.cn:8400/Phone300_GameApi/_
|
||||
4. [游戏对战api](https://sjapi.moguyouxi.cn:8400/GameFight/) _https://sjapi.moguyouxi.cn:8400/GameFight/_
|
||||
5. [扩展api](https://moguext.moguyouxi.cn/MoguExt/) _https://moguext.moguyouxi.cn/MoguExt/_
|
||||
6. [支付api](https://moguext.moguyouxi.cn/MoguExt.PaymentCenter/) _https://moguext.moguyouxi.cn/MoguExt.PaymentCenter/_
|
||||
7. [蘑菇活动api](https://moguext.moguyouxi.cn/MoguExt.HD/) _https://moguext.moguyouxi.cn/MoguExt.HD/_
|
||||
* 绘画api
|
||||
1. [绘画api](https://api.hissai.com:8400/) _https://api.hissai.com:8400/_
|
||||
2. [绘画api_net6](https://api.hissai.com:8400/HissAi6.Api/) _https://api.hissai.com:8400/HissAi6.Api/_
|
||||
3. [支付api](https://api-pay.hissai.com/) _https://api-pay.hissai.com/_
|
||||
|
||||
|
||||
### 开发资料
|
||||
| 名称 | 地址 | 备注 |
|
||||
| -------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---- |
|
||||
| [抖音开发文档](https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/content-security/picture-detect-v2) | https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/server/content-security/picture-detect-v2 | |
|
||||
| [微信开发文档](https://developers.weixin.qq.com/miniprogram/dev/framework/runtime/skyline/introduction.html) | https://developers.weixin.qq.com/miniprogram/dev/framework/runtime/skyline/introduction.html | |
|
||||
| [微信公众平台](https://mp.weixin.qq.com/) | https://mp.weixin.qq.com/ | |
|
||||
| [SEO综合查询](https://seo.chinaz.com/www.moguyouxi.cn) | https://seo.chinaz.com/www.moguyouxi.cn | |
|
||||
|[云测试](https://www.testin.cn/account/login.htm)|https://www.testin.cn/account/login.htm||
|
||||
|[微软技术文档](https://learn.microsoft.com/zh-cn/docs/)|https://learn.microsoft.com/zh-cn/docs/||
|
||||
|[uni-app](https://uniapp.dcloud.net.cn/)|https://uniapp.dcloud.net.cn/||
|
||||
18
文档/其它/本地-阳光体育.md
Normal file
18
文档/其它/本地-阳光体育.md
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
远程方式
|
||||
```sh
|
||||
ssh -p 22 root@192.168.1.229
|
||||
# Itvgame2020@!$#
|
||||
```
|
||||
# 服务器静态文件目录
|
||||
```sh
|
||||
# /var/www/html/SunnySportsStudent
|
||||
```
|
||||
|
||||
测试环境
|
||||
[学生端首页](http://192.168.1.229/SunnySportsStudent/index.html)
|
||||
[教师端首页](http://192.168.1.229/SunnySportsTeacher/index.html)
|
||||
唐镇环境
|
||||
[学生端首页](https://test.moguyouxi.cn/SunnySportsStudent/index.html)
|
||||
[教师端首页](https://test.moguyouxi.cn/SunnySportsTeacher/index.html)
|
||||
|
||||
ssh -p 22 ubuntu@124.222.7.198
|
||||
63
文档/其它/点赞.txt
Normal file
63
文档/其它/点赞.txt
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
public BaseResponse<string> DownloadPng(int appId, long userId, long drawId)
|
||||
{
|
||||
//var photoAlbum = dao.daoUserData.context.T_User_PhotoAlbum.Where(t => t.Type == 0 && t.DrawId == drawId).FirstOrDefault();
|
||||
var photoAlbum = dao.daoUserData.context.T_User_Gallery.Where(t => t.Type == 0 && t.DrawId == drawId).FirstOrDefault();
|
||||
if (photoAlbum == null)
|
||||
{
|
||||
return new BaseResponse<string>(ResonseCode.Error, "未找到画廊数据");
|
||||
}
|
||||
var obj = dao.daoLog.context.T_Draw_Download_log.Where(t => t.UserId == userId && t.DrawId == drawId).FirstOrDefault();
|
||||
var imgUrl = string.Empty;
|
||||
if (obj != null)
|
||||
{
|
||||
imgUrl = dao.daoData.context.T_Draw_Log.Where(it => it.Id == drawId).Select(t => t.TaskResult).FirstOrDefault();
|
||||
return new BaseResponse<string>(ResonseCode.Success, "", imgUrl);
|
||||
}
|
||||
var user = dao.daoUserData.context.T_Users_Data.Where(t => t.UserId == userId).FirstOrDefault();
|
||||
if (user == null)
|
||||
{
|
||||
return new BaseResponse<string>(ResonseCode.Error, "用户不存在");
|
||||
}
|
||||
var like = dao.daoUserData.context.T_User_Like.FirstOrDefault(it => it.DrawId == drawId && it.UserId == userId);
|
||||
if (like != null)
|
||||
{
|
||||
if (string.IsNullOrEmpty(imgUrl))
|
||||
{
|
||||
imgUrl = dao.daoData.context.T_Draw_Log.Where(it => it.Id == drawId).Select(t => t.TaskResult).FirstOrDefault();
|
||||
}
|
||||
return new BaseResponse<string>(ResonseCode.Success, "", imgUrl);
|
||||
}
|
||||
var currency = user.Currency;
|
||||
if (currency <= 0)
|
||||
{
|
||||
return new BaseResponse<string>(ResonseCode.UserNotMoney, "用户金额不足");
|
||||
}
|
||||
if (obj == null)
|
||||
{
|
||||
var t_Draw_Download_Log = new T_Draw_Download_log
|
||||
{
|
||||
UserId = userId,
|
||||
DrawId = drawId,
|
||||
GalleryId = photoAlbum.Id,
|
||||
CreateDateTime = DateTime.Now,
|
||||
LastDownloadDateTime = DateTime.Now,
|
||||
DownloadCount = 1,
|
||||
DownloadConsume = 1
|
||||
};
|
||||
dao.daoLog.Add(t_Draw_Download_Log);
|
||||
}
|
||||
else
|
||||
{
|
||||
obj.DownloadConsume += 1;
|
||||
obj.DownloadCount += 1;
|
||||
obj.LastDownloadDateTime = DateTime.Now;
|
||||
dao.daoLog.Update(obj);
|
||||
}
|
||||
new AccountBLL(dao).UpUserCurrencyInfo(userId, currency: -1);
|
||||
dao.daoLog.context.SaveChanges();
|
||||
if (string.IsNullOrEmpty(imgUrl))
|
||||
{
|
||||
imgUrl = dao.daoData.context.T_Draw_Log.Where(it => it.Id == drawId).Select(t => t.TaskResult).FirstOrDefault();
|
||||
}
|
||||
return new BaseResponse<string>(ResonseCode.Success, "", imgUrl);
|
||||
}
|
||||
232
文档/其它/阳光体育部署文档.md
Normal file
232
文档/其它/阳光体育部署文档.md
Normal file
|
|
@ -0,0 +1,232 @@
|
|||
# 阳光体育部署文档
|
||||
|
||||
## 先决条件
|
||||
1.dotnet 8
|
||||
2.git
|
||||
|
||||
## 运行项目
|
||||
```sh
|
||||
# 假设项目文件在 /disk/ 目录下(disk为空目录)
|
||||
sudo mkdir /disk
|
||||
sudo chmod 777 /disk
|
||||
|
||||
# 拉取代码
|
||||
git clone git@192.168.1.33:mogu_server/sunnysports.git
|
||||
# 进入到拉取代码文件中
|
||||
cd /disk/sunnysports
|
||||
# 安装git子模块
|
||||
git submodule init
|
||||
# 拉去子模块代码,拉完需要检测下子模块文件夹中是否有文件(子模块路径:/disk/sunnysports/SunnySports/XLib)
|
||||
git submodule update
|
||||
# 切换子模块分支(先切换到主目录,在切换分支,然后拉去代码)
|
||||
cd /disk/sunnysports/SunnySports/XLib
|
||||
git checkout main
|
||||
git pull
|
||||
# 切换主项目分支(和上面一样)
|
||||
cd /disk/sunnysports
|
||||
git checkout main
|
||||
git pull
|
||||
# 还原包
|
||||
cd /disk/sunnysports/SunnySports
|
||||
dotnet restore
|
||||
# 编译项目
|
||||
cd /disk/sunnysports/SunnySports
|
||||
dotnet build
|
||||
#编译api项目
|
||||
cd /disk/sunnysports/SunnySports/1-api/SunnySports.Api
|
||||
dotnet build
|
||||
# 运行项目
|
||||
cd /disk/sunnysports/SunnySports/1-api/SunnySports.Api
|
||||
dotnet run
|
||||
```
|
||||
|
||||
## 发布项目
|
||||
```sh
|
||||
# 假设项目文件在 /disk/ 目录下(disk文件夹中已经有sunnysports项目文件夹)
|
||||
# 创建文件夹SunnySportsApi DataGateway
|
||||
cd /disk/
|
||||
mkdir sunnysportsapi
|
||||
sudo chmod 777 sunnysportsapi
|
||||
# 发布项目
|
||||
cd /disk/sunnysports/SunnySports/1-api/SunnySports.Api
|
||||
dotnet publish -c Release -o /disk/sunnysportsapi
|
||||
# 运行项目
|
||||
cd /disk/sunnysportsapi
|
||||
./SunnySports.Api
|
||||
```
|
||||
|
||||
## 发布项目
|
||||
```sh
|
||||
# 假设项目文件在 /disk/ 目录下(disk文件夹中已经有sunnysports项目文件夹)
|
||||
# 创建文件夹SunnySportsApi DataGateway
|
||||
cd /disk/
|
||||
mkdir DataGateway
|
||||
sudo chmod 777 DataGateway
|
||||
# 发布项目
|
||||
cd /disk/sunnysports/SunnySports/2-service/DataGateway
|
||||
dotnet publish -c Release -o /disk/DataGateway/
|
||||
rsync -avz /disk/DataGateway/ root@192.144.132.25:/disk/ai_sports/DataGateway/
|
||||
# 运行项目 /disk/DataGateway/NLog.config
|
||||
cd /disk/sunnysportsapi
|
||||
./SunnySports.Api
|
||||
```
|
||||
|
||||
|
||||
dotnet publish -c Release -o /disk/DataGateway
|
||||
|
||||
## 同步项目
|
||||
```sh
|
||||
# 安装文件同步工具
|
||||
sudo apt-get install rsync
|
||||
#同步文件
|
||||
rsync -avz /disk/sunnysportsapi/ root@192.168.1.229:/disk/ai_sports/sunnysportsapi
|
||||
rsync -avz /disk/sunnysportsapi/ root@192.144.132.25:/disk/ai_sports/sunnysportsapi
|
||||
# http://192.144.132.25/
|
||||
# ssh -p 22 root@192.144.132.25
|
||||
# 192.168.1.229,服务器密码:Itvgame2020@!$#
|
||||
```
|
||||
|
||||
sudo systemctl stop pray-api.service
|
||||
|
||||
rsync -avz /disk/PrayForBlessingsApi ubuntu@1.117.87.77:/disk/prayforblessingsapi
|
||||
dbt@com@1234
|
||||
## 创建linux 服务
|
||||
```sh
|
||||
# 你需要创建一个systemd服务单元文件。这个文件描述了如何启动、停止和重启你的程序。你可以在/etc/systemd/system/目录下创建一个新的.service文件,比如your_program.service
|
||||
cd /etc/systemd/system/
|
||||
# 创建文件
|
||||
sudo nano sunny-sports-api.service
|
||||
#粘贴内容
|
||||
[Unit]
|
||||
Description=sunny-sports-api
|
||||
After=network.target
|
||||
[Service]
|
||||
# 运行 设置环境变量
|
||||
#指定服务的工作目录
|
||||
WorkingDirectory=/disk/ai_sports/sunnysportsapi
|
||||
# run
|
||||
ExecStart=/disk/ai_sports/sunnysportsapi/SunnySports.Api
|
||||
SyslogIdentifier=SunnySportsApi
|
||||
User=root
|
||||
# 打开资源限制infinity 默认会到65535
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=infinity
|
||||
LimitCORE=infinity
|
||||
# 自动检查重启,10秒后重启
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
#刷新服务
|
||||
sudo systemctl daemon-reload
|
||||
# 启动服务
|
||||
sudo systemctl start sunny-sports-api.service
|
||||
sudo systemctl start data-gateway.service
|
||||
# 检测服务状态
|
||||
sudo systemctl status sunny-sports-api.service
|
||||
# 设置开机启动
|
||||
sudo systemctl enable sunny-sports-api.service
|
||||
sudo systemctl enable data-gateway.service
|
||||
# 关闭服务
|
||||
sudo systemctl stop sunny-sports-api.service
|
||||
sudo systemctl stop data-gateway.service
|
||||
# 关闭开机启动
|
||||
sudo systemctl disable sunny-sports-api.service
|
||||
# 重新启动服务
|
||||
sudo systemctl restart sunny-sports-api.service
|
||||
sudo systemctl restart data-gateway.service
|
||||
# 发布
|
||||
cd /disk/sunnysports/SunnySports/;make build-release-229
|
||||
cd /disk/sunnysports/SunnySports/;make build-release-25
|
||||
|
||||
```
|
||||
sudo systemctl restart data-gateway.service
|
||||
## 更新项目
|
||||
```sh
|
||||
# 先将检测服务状态,如果服务启动,先停止服务
|
||||
sudo systemctl status sunny-sports-api.service
|
||||
# 停止服务
|
||||
sudo systemctl stop sunny-sports-api.service
|
||||
sudo systemctl stop sunny-sports-api.service
|
||||
# 同步文件
|
||||
rsync -avz /disk/sunnysportsapi/ root@192.168.1.229:/disk/ai_sports/sunnysportsapi
|
||||
# 开启服务
|
||||
sudo systemctl start sunny-sports-api.service
|
||||
# 检测服务状态
|
||||
sudo systemctl status sunny-sports-api.service
|
||||
|
||||
sudo systemctl restart sunny-sports-api.service
|
||||
```
|
||||
|
||||
|
||||
## 配置项
|
||||
```sh
|
||||
# 配置学生人脸存放地址
|
||||
\\\\\\\\\\
|
||||
"StudentConfig":{
|
||||
# 存放学生人脸的路径
|
||||
"StudentFacePath": "./StudentFace/",
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## 接口乱码
|
||||
|
||||
```sh
|
||||
LANG=en_US.UTF-8
|
||||
LANGUAGE=
|
||||
LC_CTYPE="en_US.UTF-8"
|
||||
LC_NUMERIC="en_US.UTF-8"
|
||||
LC_TIME="en_US.UTF-8"
|
||||
LC_COLLATE="en_US.UTF-8"
|
||||
LC_MONETARY="en_US.UTF-8"
|
||||
LC_MESSAGES="en_US.UTF-8"
|
||||
LC_PAPER="en_US.UTF-8"
|
||||
LC_NAME="en_US.UTF-8"
|
||||
LC_ADDRESS="en_US.UTF-8"
|
||||
LC_TELEPHONE="en_US.UTF-8"
|
||||
LC_MEASUREMENT="en_US.UTF-8"
|
||||
LC_IDENTIFICATION="en_US.UTF-8"
|
||||
LC_ALL=
|
||||
|
||||
|
||||
LANG=zh_CN.UTF-8
|
||||
LANGUAGE=
|
||||
LC_CTYPE="zh_CN.UTF-8"
|
||||
LC_NUMERIC="zh_CN.UTF-8"
|
||||
LC_TIME="zh_CN.UTF-8"
|
||||
LC_COLLATE="zh_CN.UTF-8"
|
||||
LC_MONETARY="zh_CN.UTF-8"
|
||||
LC_MESSAGES="zh_CN.UTF-8"
|
||||
LC_PAPER="zh_CN.UTF-8"
|
||||
LC_NAME="zh_CN.UTF-8"
|
||||
LC_ADDRESS="zh_CN.UTF-8"
|
||||
LC_TELEPHONE="zh_CN.UTF-8"
|
||||
LC_MEASUREMENT="zh_CN.UTF-8"
|
||||
LC_IDENTIFICATION="zh_CN.UTF-8"
|
||||
LC_ALL=
|
||||
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
## make 发布命令
|
||||
```sh
|
||||
# 229服务器
|
||||
数据网关 ssh root@192.168.1.229 "cd /disk/work/sj_git/sunnysports/;make build-data-loca"
|
||||
api ssh root@192.168.1.229 "cd /disk/work/sj_git/sunnysports/;make build-api-loca"
|
||||
前端 ssh root@192.168.1.229 "cd /disk/work/sj_git/systemadmin/;make build-test"
|
||||
|
||||
# 25服务器
|
||||
数据网关 ssh root@192.168.1.229 "cd /disk/work/sj_git/sunnysports/;make build-data"
|
||||
api ssh root@192.168.1.229 "cd /disk/work/sj_git/sunnysports/;make build-api"
|
||||
前端 ssh root@192.168.1.229 "cd /disk/work/sj_git/systemadmin/;make build"
|
||||
ssh root@192.168.1.229 "cd /disk/work/sj_git/sunnysports/;make build-api-all"
|
||||
ssh root@192.168.1.229 "cd /disk/work/sj_git/systemadmin/;make build-r"
|
||||
|
||||
D:\办公软件\HBuilderX\cli.exe cli publish --platform h5 --project SunnySportsStudent
|
||||
|
||||
````
|
||||
|
||||
2
文档/服务器文档/api-1.md
Normal file
2
文档/服务器文档/api-1.md
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
1. [网络地址](https://api.zpc-xy.com/)
|
||||
2. IP: 101.43.1.207
|
||||
40
文档/部署/baget/baget.service
Normal file
40
文档/部署/baget/baget.service
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
[Unit]
|
||||
Description=BaGet NuGet Server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/disk/BaGet/net8.0/
|
||||
ExecStart=/disk/BaGet/net8.0/BaGet
|
||||
Restart=always
|
||||
# 如果网络服务崩溃,请在10秒钟后重新启动服务:
|
||||
RestartSec=10
|
||||
SyslogIdentifier=baget
|
||||
User=root
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
|
||||
|
||||
[Unit]
|
||||
Description=sunny-sports-api
|
||||
After=network.target
|
||||
[Service]
|
||||
# 运行 设置环境变量
|
||||
#指定服务的工作目录
|
||||
WorkingDirectory=/disk/BaGet/net8.0
|
||||
# run
|
||||
ExecStart=/disk/BaGet/net8.0/BaGet
|
||||
SyslogIdentifier=baget
|
||||
User=root
|
||||
# 打开资源限制infinity 默认会到65535
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=infinity
|
||||
LimitCORE=infinity
|
||||
# 自动检查重启,10秒后重启
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
|
||||
25
文档/部署/baget/部署文档.md
Normal file
25
文档/部署/baget/部署文档.md
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
## 服务文件
|
||||
/etc/systemd/system/baget.service
|
||||
```sh
|
||||
sudo nano /etc/systemd/system/baget.service
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl start baget
|
||||
sudo systemctl enable baget
|
||||
sudo systemctl status baget
|
||||
sudo systemctl stop baget
|
||||
```
|
||||
## 发布命令
|
||||
```sh
|
||||
# /disk/BaGet/src/BaGet$
|
||||
dotnet publish -c Release -o /disk/BaGetApi/
|
||||
```
|
||||
|
||||
## 同步命令
|
||||
```sh
|
||||
rsync -avz /disk/BaGetApi/ ubuntu@123.207.203.228:/disk/BaGet/net8.0/
|
||||
```
|
||||
## 上传
|
||||
```sh
|
||||
dotnet nuget push XLib.NetCore.Utility.1.0.0.nupkg --source "http://123.207.203.228:91/v3/index.json" --api-key "066f010d59"
|
||||
|
||||
```
|
||||
Loading…
Reference in New Issue
Block a user