7 Star 18 Fork 13

易开元/TopskyHotelManagementSystem-WebApi

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

组织logo.png

TopskyHotelManagementSystem-WebApi

star fork

中文文档 | English Document

感谢以下开源项目:

  1. Autofac——An addictive .NET IoC container。Autofac, MIT开源协议
  2. SqlSugar——国内最受欢迎ORM框架。 SQLSugar,Apache-2.0开源协议
  3. Mailkit——A cross-platform .NET library for IMAP, POP3, and SMTP。Mailkit,MIT开源协议
  4. Swashbuckle.AspNetCore——Swagger tools for documenting API's built on ASP.NET Core。SwaggerUI,MIT开源协议
  5. Newtonsoft.Json——Json.NET is a popular high-performance JSON framework for .NET。Newtonsoft.Json,MIT开源协议

本项目介绍:

本项目是基于.Net8构建的TS酒店管理系统后端API项目,主要用于2.0升级所用,欢迎Start&Fork

1、一切开发请遵照MIT开源协议进行。

2、有bug欢迎提出issue!

3、本项目当前已支持多数据库以及一键建库建表,具体代码可以参考Startup.cs中的InitializeDatabase方法。

4、本项目已基于SQL Sugar框架支持多数据库(主流),以下是目前已通过测试的数据库表格:

数据库 版本 支持建库建表(Y/N) 通过(Y/N)
MariaDB 10.11.10-MariaDB Y Y
PostgreSQL 130020 Y Y
MySQL 5.7+ Y Y
SQL Server 2022 Y Y
Oracle Unknown N 请参照SQLSugar文档(果糖网)
SQLite Unknown N N

开发目的:

主要用于现有的C/S项目酒店管理系统升级2.0后实现前后端分离的WebAPI接口,本项目不包含任何UI界面。

系统开发环境:

操作系统:Windows 11(x64)

开发工具:Microsoft Visual Studio 2022(系统最新版本)

数据库:MariaDB/PostgreSQL/MySQL/SQL Server

数据库管理工具:DbGate

开发语言:C#语言、LINQ语言

开发平台:.Net

开发框架:.Net 8

开发技术:.NET 8 WebAPI

系统结构:

EOM.TSHotelManagement.Web
├─ .git
├─ .gitignore
├─ EOM.TSHotelManagement.Application
│    ├─ EOM.TSHotelManagement.Application.csproj
│    ├─ BaseDto
│    ├─ Business
│    ├─ Employee
│    ├─ Sys
│    ├─ SystemManagement
│    ├─ Util
├─ EOM.TSHotelManagement.Common.Contract
│    ├─ EOM.TSHotelManagement.Common.Contract.csproj
│    ├─ Business
│    ├─ Employee
│    ├─ Sys
│    ├─ SystemManagement
│    ├─ Util
├─ EOM.TSHotelManagement.Common.Core
│    ├─ EOM.TSHotelManagement.Core.csproj
│    ├─ BaseEntity.cs
│    ├─ Business
│    ├─ Employee
│    ├─ Sys
│    ├─ SystemManagement
│    ├─ Util
├─ EOM.TSHotelManagement.EntityFramework
│    ├─ EOM.TSHotelManagement.EntityFramework.csproj
│    ├─ Repository
│    │    └─ GenericRepository.cs
├─ EOM.TSHotelManagement.Migration
│    ├─ EOM.TSHotelManagement.Migration.csproj
│    ├─ EntityBuilder.cs
├─ EOM.TSHotelManagement.Web.sln
├─ EOM.TSHotelManagement.Share
│    ├─ EOM.TSHotelManagement.Share.csproj
│    ├─ Interface
├─ EOM.TSHotelManagement.WebApi
│    ├─ Controllers
│    │    ├─ Business
│    │    ├─ Sys
│    │    ├─ Employee
│    │    └─ SystemManagement
│    │    └─ Util
│    ├─ EOM.TSHotelManagement.WebApi.csproj
│    ├─ EOM.TSHotelManagement.WebApi.csproj.user
│    ├─ EOM.TSHotelManagement.WebApi.xml
│    ├─ Program.cs
│    ├─ Startup.cs
│    ├─ appsettings.Development.json
│    ├─ appsettings.json
├─ LICENSE
├─ README.en.md
└─ README.md

系统数据库关系图(由PDMAN软件生成)

数据库关系图

项目作者:

Jackson(即本账号,项目组长,核心代码编写和后期项目整合)

Benjamin(开发,项目代码编写)

Bin(数据库,提供数据库管理支持)

易开元(后期维护和开发)

项目运行部署(执行下面步骤前需先安装.NET 8 SDK和Runtime):

下载并安装Microsoft Visual Studio Professional 2022及以上版本,并通过下载Zip包解压,打开.sln后缀格式文件运行。

Docker运行部署(以Ubuntu为例):

docker run -d \
  --name tshotel-api \
  -v /app/config:/app/config \
  -v /app/keys:/app/keys \
  -e DefaultDatabase=MariaDB \
  -e ASPNETCORE_ENVIRONMENT=docker \
  -e DOCKER_ENV=true \
  -e "MariaDBConnectStr=Server=host;User=tshoteldb;Password=password;Database=tshoteldb" \
  -e Jwt__Issuer=Easy-Open-Meta \
  -e Jwt__Audience=EOM.TSHotelManagement.WebApi \
  -e Jwt__Key=Easy-Open-Meta-EfH@u4poHh544a53Sq77T \
  -e Jwt__ExpiryMinutes=20 \
  -e Lsky__BaseAddress=https://lsky.demo.top/api/v1 \
  -e Lsky__Email=demo@demo.top \
  -e Lsky__Password=demo \
  -e Lsky__UploadApi=/upload \
  -e Lsky__GetTokenApi=/tokens \
  -e Mail__Host=smtp.demo.top \
  -e Mail__UserName=demo@demo.top \
  -e Mail__Password=demo \
  -e Mail__Port=465 \
  -e Mail__EnableSsl=true \
  -e Mail__DisplayName=TSHotel-Administrator \
  -p 63001:8080 \
  yjj6731/tshotel-management-system-api:latest
参数名称 参数说明 必填(Y/N) 默认值 可选值
name 容器名称 Y N/A N/A
DefaultDatabase 默认数据库 Y N/A MariaDB/MySql/SqlServer/PgSql
ASPNETCORE_ENVIRONMENT 系统环境(决定Dataprotection Key的生成位置) Y docker docker
DOCKER_ENV 是否为docker环境 Y true true
{默认数据库(e.g:MariaDB/MySql/SqlServer/PgSql)}ConnectStr 对应数据库链接字符串 Y N/A N/A
Jwt__Issuer 签发者标识 Y N/A N/A
Jwt__Audience 目标接收方标识 Y N/A N/A
Jwt__Key JWT Key Y N/A N/A
Jwt__ExpiryMinutes token有效时间/分钟 Y 20 N/A
Lsky__BaseAddress 兰空图床基础地址 Y N/A N/A
Lsky__Email 兰空图床账户邮箱 Y N/A N/A
Lsky__Password 兰空图床账户密码 Y N/A N/A
Lsky__UploadApi 兰空图床上传图片接口 Y N/A N/A
Lsky__GetTokenApi 兰空图床获取tokens接口 Y N/A N/A
Mail__Host 邮箱smtp协议地址 Y N/A N/A
Mail__UserName 邮箱smtp协议地址 Y N/A N/A
Mail__Port 邮箱smtp端口 Y 465 N/A
Mail__Password 邮箱密码 Y N/A N/A
Mail__EnableSsl 是否启用SSL Y true true/false
Mail__DisplayName 发送邮件人显示名称 Y N/A N/A

数据库运行部署(本地):

强烈推荐,以下第一种方式进行数据库部署

1.自动建库建表 在appsettings.json填写对应的DefaultDatabase参数和对应的数据库链接字符串,然后保存运行项目即可一键自动建表建库(前提本地安装了对应的数据库和开启服务)

2.手动建库建表(注意:文件夹内的数据库脚本可能非最新版本,因此推荐以上第一种方式!!!) 通过可视化管理工具打开/数据库脚本/xxx版本,依次执行tshotel-backstage-dbscript-table.sql文件进行数据库与数据表建立。 随后打开tshotel-backstage-dbscript-data.sql文件进行数据导入。

咖啡与网络/TopskyHotelManagementSystem-WebApi

空文件

简介

基于.Net8搭配SQLSugar框架构建的TS酒店管理系统后端API项目,主要服务于WinForm Client和Vue3 Web端,欢迎Start&Fork 展开 收起
取消

发行版 (9)

全部
2个月前

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/java-and-net/topsky-hotel-management-system-web-api.git
git@gitee.com:java-and-net/topsky-hotel-management-system-web-api.git
java-and-net
topsky-hotel-management-system-web-api
TopskyHotelManagementSystem-WebApi
master

搜索帮助