# go_webApp **Repository Path**: phonenix/go_web-app ## Basic Information - **Project Name**: go_webApp - **Description**: 通用web项目开发脚手架 - **Primary Language**: Go - **License**: MIT - **Default Branch**: master - **Homepage**: https://gitee.com/phonenix/go_web-app - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-05-06 - **Last Updated**: 2023-05-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # goWebApp English - 简体中文 - 繁體中文 (中國臺灣) - Español - 日本語 ## 项目介绍 [![codecov](https://codecov.io/gh/EDDYCJY/go-gin-example/branch/master/graph/badge.svg)](https://codecov.io/gh/EDDYCJY/go-gin-example) [![Go Report Card](https://goreportcard.com/badge/github.com/EDDYCJY/go-gin-example)](https://goreportcard.com/report/github.com/EDDYCJY/go-gin-example) [![GoDoc](https://godoc.org/github.com/EDDYCJY/go-gin-example?status.svg)](https://godoc.org/github.com/EDDYCJY/go-gin-example) 此项目用于快速开发通用脚手架,包含了常用的功能,如:日志、数据库、定时任务、接口限流、接口限速、接口鉴权、接口参数校验、接口文档等。 遵循 RESTful API 设计规范,结构清晰,非常适合学习和中小型项目使用。 如果对您有帮助,您可以点右上角 "Star" 支持一下 谢谢! --- ## 功能模块 项目提供了以下开箱即用的功能模块: - [x] restful api 设计 - [x] gin web框架 - [x] jwt-go 身份认证 - [x] gorm 数据库orm工具 - [ ] cron 定时任务 - [x] zap 日志 日志分割 - [x] viper 配置文件 - [ ] 接口 限流 限速 - [ ] 接口参数校验 - [ ] swagger 文档 - [ ] 优雅重启或停止 --- ## 项目结构: ```bash ├── api # 接口 │   ├── v1 # 接口版本1 │   │   ├── cronjob.go # 定时任务接口 ├── conf # 配置文件 │   ├── config.go │   └── config.ini ├── dao # 数据库操作 │   ├── cronjob.go # 定时任务数据库操作 │   ├── init.go # 数据库初始化 │   ├── migration # 数据库迁移 ├── middlerware # 中间件 │   ├── JWT.go # JWT token 验证 │   ├── LoggerToFile.go # 日志中间件 ├── model # 数据库模型 │   ├── base.go # 数据库基础模型 │   ├── cronjob.go # 定时任务数据库模型 │   ├── platformOrders.go # 平台订单模型 │   ├── reminder.go # 提醒模型 ├── pkg # │   ├── cronjob # 定时任务 │   │   ├── cronjob.go # 定时任务 │   │   ├── hcloud.go # 海典药事云审方 │   │   ├── hydeeOms.go # 海典omsB2C审单 │   │   ├── init.go # 初始化定时任务 │   │   ├── medicalInsuranceDataUpload.go # 威海医保采集数据上传 │   │   ├── oms.go # 海典oms库存比对 │   │   ├── saveMtEleSupportedCompensationOrder.go # 保存美团支持赔付订单 │   │   ├── saveO2oOrderRawInfo.go # 保存O2O订单原始信息 │   │   ├── struct.go # O2O订单原始数据结构体 │   ├── e # 错误码 常量 │   │   ├── code.go # 错误码 │   │   ├── eleStoreCode.go # 饿佰门店编码 │   │   ├── msg.go # 错误信息 │   │   ├── mtStoreCode.go # 美团门店编码 │   ├── util # 工具类 │   │   ├── callphone.go # 电话提醒 │   │   ├── clientOracle.go # oracle数据库链接 │   │   ├── eleClient.go # 饿佰接口 │   │   ├── enterpriseWeChatMessage.go # 企业微信消息提醒 │   │   ├── hydee.go # 获取海典token │   │   ├── logger.go # 日志 日志分割 │   │   ├── log # 日志工具 测试 │   │   ├── mtClient.go # 美团接口 │   │   ├── mtCode.go # 美团门店编码 │   │   ├── omsStruct.go # oms接口 │   │   ├── request.go # 请求工具 │   │   ├── sm4.go # sm4加密解密工具 │   │   ├── sysServerMonitor.go # 系统运行状态监控 │   │   ├── wechat.go # 微信提醒 废弃,使用企业微信enterpriseWeChatMessage.go 代替 ├── go.mod ├── go.sum ├── internal │   ├── dao │   │   ├── dao.go │   │   └── dao_test.go │   ├── model │   │   ├── model.go │   │   └── model_test.go │   ├── router ├── README.md # 说明文档 ``` ## docker 操作 ### 创建mysql数据库 ```sql CREATE DATABASE test; CREATE USER 'test'@'%' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON test.* TO 'test'@'%'; ``` ## swagger ```bash go install github.com/swaggo/swag/cmd/swag@latest swag init ```