修改devProject Internal
This commit is contained in:
@@ -0,0 +1,50 @@
|
|||||||
|
// 数据模型定义:对应表字段结构
|
||||||
|
type DevProject {
|
||||||
|
Id int64 `json:"id"` // 基地开放项目ID(主键)
|
||||||
|
BasicDevProjectManagementSystem string `json:"basic_dev_project_management_system"` // 基础开发项目管理制度(markdown)
|
||||||
|
BasicDevProjectInitiationResult string `json:"basic_dev_project_initiation_result"` // 基础开发项目立项结果(markdown)
|
||||||
|
BasicDevProjectMidtermInspection string `json:"basic_dev_project_midterm_inspection"` // 基础开发项目中期检查(markdown)
|
||||||
|
BasicDevProjectAchievements string `json:"basic_dev_project_achievements"` // 基础开发项目成果(markdown)
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增/修改请求参数(ID存在则更新,不存在则新增)
|
||||||
|
type SaveDevProjectReq {
|
||||||
|
Id int64 `json:"id,omitempty"` // 可选:更新时需传入ID
|
||||||
|
BasicDevProjectManagementSystem string `json:"basic_dev_project_management_system"` // 基础开发项目管理制度
|
||||||
|
BasicDevProjectInitiationResult string `json:"basic_dev_project_initiation_result"` // 基础开发项目立项结果
|
||||||
|
BasicDevProjectMidtermInspection string `json:"basic_dev_project_midterm_inspection"` // 基础开发项目中期检查
|
||||||
|
BasicDevProjectAchievements string `json:"basic_dev_project_achievements"` // 基础开发项目成果
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增/修改响应结果
|
||||||
|
type SaveDevProjectResp {
|
||||||
|
Success bool `json:"success"` // 操作是否成功
|
||||||
|
Msg string `json:"message"` // 提示信息
|
||||||
|
Id int64 `json:"id,omitempty"` // 新增时返回生成的ID
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询请求参数(按ID查询)
|
||||||
|
type GetDevProjectReq {
|
||||||
|
Id int64 `json:"id" form:"id" validate:"required"` // 基地开放项目ID(必传)
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询响应结果
|
||||||
|
type GetDevProjectResp {
|
||||||
|
DevProject DevProject `json:"dev_project"` // 项目详情
|
||||||
|
Msg string `json:"message"` // 提示信息
|
||||||
|
}
|
||||||
|
|
||||||
|
@server (
|
||||||
|
group: devproject // 接口分组:基地开放项目
|
||||||
|
prefix: /api/devproject
|
||||||
|
)
|
||||||
|
service devproject-api {
|
||||||
|
// 新增或修改项目(POST请求,支持新增和更新)
|
||||||
|
@handler SaveDevProjectHandler
|
||||||
|
post /devproject/save (SaveDevProjectReq) returns (SaveDevProjectResp)
|
||||||
|
|
||||||
|
// 查询项目详情(GET请求,按ID查询)
|
||||||
|
@handler GetDevProjectHandler
|
||||||
|
get /devproject/get (GetDevProjectReq) returns (GetDevProjectResp)
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,10 @@ require (
|
|||||||
github.com/go-sql-driver/mysql v1.9.0 // indirect
|
github.com/go-sql-driver/mysql v1.9.0 // indirect
|
||||||
github.com/goccy/go-json v0.10.5 // indirect
|
github.com/goccy/go-json v0.10.5 // indirect
|
||||||
github.com/goccy/go-yaml v1.18.0 // indirect
|
github.com/goccy/go-yaml v1.18.0 // indirect
|
||||||
|
github.com/golang-jwt/jwt/v4 v4.5.2 // indirect
|
||||||
|
github.com/google/uuid v1.6.0 // indirect
|
||||||
|
github.com/grafana/pyroscope-go v1.2.7 // indirect
|
||||||
|
github.com/grafana/pyroscope-go/godeltaprof v0.1.9 // indirect
|
||||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 // indirect
|
github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 // indirect
|
||||||
github.com/json-iterator/go v1.1.12 // indirect
|
github.com/json-iterator/go v1.1.12 // indirect
|
||||||
github.com/klauspost/compress v1.17.11 // indirect
|
github.com/klauspost/compress v1.17.11 // indirect
|
||||||
|
|||||||
@@ -48,11 +48,17 @@ github.com/goccy/go-json v0.10.5 h1:Fq85nIqj+gXn/S5ahsiTlK3TmC85qgirsdTP/+DeaC4=
|
|||||||
github.com/goccy/go-json v0.10.5/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M=
|
github.com/goccy/go-json v0.10.5/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M=
|
||||||
github.com/goccy/go-yaml v1.18.0 h1:8W7wMFS12Pcas7KU+VVkaiCng+kG8QiFeFwzFb+rwuw=
|
github.com/goccy/go-yaml v1.18.0 h1:8W7wMFS12Pcas7KU+VVkaiCng+kG8QiFeFwzFb+rwuw=
|
||||||
github.com/goccy/go-yaml v1.18.0/go.mod h1:XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7LkFRi1kA=
|
github.com/goccy/go-yaml v1.18.0/go.mod h1:XBurs7gK8ATbW4ZPGKgcbrY1Br56PdM69F7LkFRi1kA=
|
||||||
|
github.com/golang-jwt/jwt/v4 v4.5.2 h1:YtQM7lnr8iZ+j5q71MGKkNw9Mn7AjHM68uc9g5fXeUI=
|
||||||
|
github.com/golang-jwt/jwt/v4 v4.5.2/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0=
|
||||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||||
|
github.com/grafana/pyroscope-go v1.2.7 h1:VWBBlqxjyR0Cwk2W6UrE8CdcdD80GOFNutj0Kb1T8ac=
|
||||||
|
github.com/grafana/pyroscope-go v1.2.7/go.mod h1:o/bpSLiJYYP6HQtvcoVKiE9s5RiNgjYTj1DhiddP2Pc=
|
||||||
|
github.com/grafana/pyroscope-go/godeltaprof v0.1.9 h1:c1Us8i6eSmkW+Ez05d3co8kasnuOY813tbMN8i/a3Og=
|
||||||
|
github.com/grafana/pyroscope-go/godeltaprof v0.1.9/go.mod h1:2+l7K7twW49Ct4wFluZD3tZ6e0SjanjcUUBPVD/UuGU=
|
||||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 h1:bkypFPDjIYGfCYD5mRBvpqxfYX1YCS1PXdKYWi8FsN0=
|
github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 h1:bkypFPDjIYGfCYD5mRBvpqxfYX1YCS1PXdKYWi8FsN0=
|
||||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0/go.mod h1:P+Lt/0by1T8bfcF3z737NnSbmxQAppXMRziHUxPOC8k=
|
github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0/go.mod h1:P+Lt/0by1T8bfcF3z737NnSbmxQAppXMRziHUxPOC8k=
|
||||||
github.com/h2non/parth v0.0.0-20190131123155-b4df798d6542 h1:2VTzZjLZBgl62/EtslCrtky5vbi9dd7HrQPQIx6wqiw=
|
github.com/h2non/parth v0.0.0-20190131123155-b4df798d6542 h1:2VTzZjLZBgl62/EtslCrtky5vbi9dd7HrQPQIx6wqiw=
|
||||||
|
|||||||
3
server/internal/devproject/etc/devproject-api.yaml
Normal file
3
server/internal/devproject/etc/devproject-api.yaml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
Name: devproject-api
|
||||||
|
Host: 0.0.0.0
|
||||||
|
Port: 8888
|
||||||
10
server/internal/devproject/internal/config/config.go
Normal file
10
server/internal/devproject/internal/config/config.go
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
// Code scaffolded by goctl. Safe to edit.
|
||||||
|
// goctl 1.9.2
|
||||||
|
|
||||||
|
package config
|
||||||
|
|
||||||
|
import "github.com/zeromicro/go-zero/rest"
|
||||||
|
|
||||||
|
type Config struct {
|
||||||
|
rest.RestConf
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
// Code scaffolded by goctl. Safe to edit.
|
||||||
|
// goctl 1.9.2
|
||||||
|
|
||||||
|
package devproject
|
||||||
|
|
||||||
|
import (
|
||||||
|
"net/http"
|
||||||
|
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/logic/devproject"
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/svc"
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/types"
|
||||||
|
"github.com/zeromicro/go-zero/rest/httpx"
|
||||||
|
)
|
||||||
|
|
||||||
|
func GetDevProjectHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
|
||||||
|
return func(w http.ResponseWriter, r *http.Request) {
|
||||||
|
var req types.GetDevProjectReq
|
||||||
|
if err := httpx.Parse(r, &req); err != nil {
|
||||||
|
httpx.ErrorCtx(r.Context(), w, err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
l := devproject.NewGetDevProjectLogic(r.Context(), svcCtx)
|
||||||
|
resp, err := l.GetDevProject(&req)
|
||||||
|
if err != nil {
|
||||||
|
httpx.ErrorCtx(r.Context(), w, err)
|
||||||
|
} else {
|
||||||
|
httpx.OkJsonCtx(r.Context(), w, resp)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
// Code scaffolded by goctl. Safe to edit.
|
||||||
|
// goctl 1.9.2
|
||||||
|
|
||||||
|
package devproject
|
||||||
|
|
||||||
|
import (
|
||||||
|
"net/http"
|
||||||
|
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/logic/devproject"
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/svc"
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/types"
|
||||||
|
"github.com/zeromicro/go-zero/rest/httpx"
|
||||||
|
)
|
||||||
|
|
||||||
|
func SaveDevProjectHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
|
||||||
|
return func(w http.ResponseWriter, r *http.Request) {
|
||||||
|
var req types.SaveDevProjectReq
|
||||||
|
if err := httpx.Parse(r, &req); err != nil {
|
||||||
|
httpx.ErrorCtx(r.Context(), w, err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
l := devproject.NewSaveDevProjectLogic(r.Context(), svcCtx)
|
||||||
|
resp, err := l.SaveDevProject(&req)
|
||||||
|
if err != nil {
|
||||||
|
httpx.ErrorCtx(r.Context(), w, err)
|
||||||
|
} else {
|
||||||
|
httpx.OkJsonCtx(r.Context(), w, resp)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
31
server/internal/devproject/internal/handler/routes.go
Normal file
31
server/internal/devproject/internal/handler/routes.go
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
// Code generated by goctl. DO NOT EDIT.
|
||||||
|
// goctl 1.9.2
|
||||||
|
|
||||||
|
package handler
|
||||||
|
|
||||||
|
import (
|
||||||
|
"net/http"
|
||||||
|
|
||||||
|
devproject "github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/handler/devproject"
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/svc"
|
||||||
|
|
||||||
|
"github.com/zeromicro/go-zero/rest"
|
||||||
|
)
|
||||||
|
|
||||||
|
func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
|
||||||
|
server.AddRoutes(
|
||||||
|
[]rest.Route{
|
||||||
|
{
|
||||||
|
Method: http.MethodGet,
|
||||||
|
Path: "/devproject/get",
|
||||||
|
Handler: devproject.GetDevProjectHandler(serverCtx),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
Method: http.MethodPost,
|
||||||
|
Path: "/devproject/save",
|
||||||
|
Handler: devproject.SaveDevProjectHandler(serverCtx),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
rest.WithPrefix("/api/devproject"),
|
||||||
|
)
|
||||||
|
}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
// Code scaffolded by goctl. Safe to edit.
|
||||||
|
// goctl 1.9.2
|
||||||
|
|
||||||
|
package devproject
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/svc"
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/types"
|
||||||
|
|
||||||
|
"github.com/zeromicro/go-zero/core/logx"
|
||||||
|
)
|
||||||
|
|
||||||
|
type GetDevProjectLogic struct {
|
||||||
|
logx.Logger
|
||||||
|
ctx context.Context
|
||||||
|
svcCtx *svc.ServiceContext
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewGetDevProjectLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetDevProjectLogic {
|
||||||
|
return &GetDevProjectLogic{
|
||||||
|
Logger: logx.WithContext(ctx),
|
||||||
|
ctx: ctx,
|
||||||
|
svcCtx: svcCtx,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (l *GetDevProjectLogic) GetDevProject(req *types.GetDevProjectReq) (resp *types.GetDevProjectResp, err error) {
|
||||||
|
// todo: add your logic here and delete this line
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
// Code scaffolded by goctl. Safe to edit.
|
||||||
|
// goctl 1.9.2
|
||||||
|
|
||||||
|
package devproject
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/svc"
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/types"
|
||||||
|
|
||||||
|
"github.com/zeromicro/go-zero/core/logx"
|
||||||
|
)
|
||||||
|
|
||||||
|
type SaveDevProjectLogic struct {
|
||||||
|
logx.Logger
|
||||||
|
ctx context.Context
|
||||||
|
svcCtx *svc.ServiceContext
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewSaveDevProjectLogic(ctx context.Context, svcCtx *svc.ServiceContext) *SaveDevProjectLogic {
|
||||||
|
return &SaveDevProjectLogic{
|
||||||
|
Logger: logx.WithContext(ctx),
|
||||||
|
ctx: ctx,
|
||||||
|
svcCtx: svcCtx,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (l *SaveDevProjectLogic) SaveDevProject(req *types.SaveDevProjectReq) (resp *types.SaveDevProjectResp, err error) {
|
||||||
|
// todo: add your logic here and delete this line
|
||||||
|
|
||||||
|
return
|
||||||
|
}
|
||||||
18
server/internal/devproject/internal/svc/servicecontext.go
Normal file
18
server/internal/devproject/internal/svc/servicecontext.go
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
// Code scaffolded by goctl. Safe to edit.
|
||||||
|
// goctl 1.9.2
|
||||||
|
|
||||||
|
package svc
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/JACKYMYPERSON/hldrCenter/internal/devproject/internal/config"
|
||||||
|
)
|
||||||
|
|
||||||
|
type ServiceContext struct {
|
||||||
|
Config config.Config
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewServiceContext(c config.Config) *ServiceContext {
|
||||||
|
return &ServiceContext{
|
||||||
|
Config: c,
|
||||||
|
}
|
||||||
|
}
|
||||||
35
server/internal/devproject/internal/types/types.go
Normal file
35
server/internal/devproject/internal/types/types.go
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
// Code generated by goctl. DO NOT EDIT.
|
||||||
|
// goctl 1.9.2
|
||||||
|
|
||||||
|
package types
|
||||||
|
|
||||||
|
type DevProject struct {
|
||||||
|
Id int64 `json:"id"` // 基地开放项目ID(主键)
|
||||||
|
BasicDevProjectManagementSystem string `json:"basic_dev_project_management_system"` // 基础开发项目管理制度(markdown)
|
||||||
|
BasicDevProjectInitiationResult string `json:"basic_dev_project_initiation_result"` // 基础开发项目立项结果(markdown)
|
||||||
|
BasicDevProjectMidtermInspection string `json:"basic_dev_project_midterm_inspection"` // 基础开发项目中期检查(markdown)
|
||||||
|
BasicDevProjectAchievements string `json:"basic_dev_project_achievements"` // 基础开发项目成果(markdown)
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetDevProjectReq struct {
|
||||||
|
Id int64 `json:"id" form:"id" validate:"required"` // 基地开放项目ID(必传)
|
||||||
|
}
|
||||||
|
|
||||||
|
type GetDevProjectResp struct {
|
||||||
|
DevProject DevProject `json:"dev_project"` // 项目详情
|
||||||
|
Msg string `json:"message"` // 提示信息
|
||||||
|
}
|
||||||
|
|
||||||
|
type SaveDevProjectReq struct {
|
||||||
|
Id int64 `json:"id,omitempty"` // 可选:更新时需传入ID
|
||||||
|
BasicDevProjectManagementSystem string `json:"basic_dev_project_management_system"` // 基础开发项目管理制度
|
||||||
|
BasicDevProjectInitiationResult string `json:"basic_dev_project_initiation_result"` // 基础开发项目立项结果
|
||||||
|
BasicDevProjectMidtermInspection string `json:"basic_dev_project_midterm_inspection"` // 基础开发项目中期检查
|
||||||
|
BasicDevProjectAchievements string `json:"basic_dev_project_achievements"` // 基础开发项目成果
|
||||||
|
}
|
||||||
|
|
||||||
|
type SaveDevProjectResp struct {
|
||||||
|
Success bool `json:"success"` // 操作是否成功
|
||||||
|
Msg string `json:"message"` // 提示信息
|
||||||
|
Id int64 `json:"id,omitempty"` // 新增时返回生成的ID
|
||||||
|
}
|
||||||
0
server/sql/devproject.sql
Normal file
0
server/sql/devproject.sql
Normal file
Reference in New Issue
Block a user