v3
This commit is contained in:
@@ -2,9 +2,12 @@ package project
|
||||
|
||||
import (
|
||||
"context"
|
||||
"strconv"
|
||||
|
||||
db "management/internal/db/sqlc"
|
||||
"management/internal/erpserver/model/view"
|
||||
"management/internal/pkg/redis"
|
||||
"management/internal/pkg/tpl/html"
|
||||
)
|
||||
|
||||
type ProjectBiz interface {
|
||||
@@ -13,11 +16,17 @@ type ProjectBiz interface {
|
||||
List(ctx context.Context, q *db.ListProjectConditionParam) ([]*db.ProjectView, int64, error)
|
||||
Get(ctx context.Context, id int64) (*db.Project, error)
|
||||
|
||||
XmSelect(ctx context.Context) ([]*view.XmSelect, error)
|
||||
ListHtml(ctx context.Context) ([]*html.SelectDict, error)
|
||||
|
||||
ProjectExpansion
|
||||
}
|
||||
|
||||
type ProjectExpansion interface {
|
||||
ListProjectFiles(ctx context.Context, projectID int64) ([]*db.ProjectFile, error)
|
||||
|
||||
Statistics(ctx context.Context) ([]*db.StatisticsProjectsRow, error)
|
||||
StatisticsItem(ctx context.Context, id int64) (*db.StatisticsProjectItemRow, error)
|
||||
}
|
||||
|
||||
type projectBiz struct {
|
||||
@@ -91,3 +100,49 @@ func (b *projectBiz) Get(ctx context.Context, id int64) (*db.Project, error) {
|
||||
func (b *projectBiz) ListProjectFiles(ctx context.Context, projectID int64) ([]*db.ProjectFile, error) {
|
||||
return b.store.ListProjectFiles(ctx, projectID)
|
||||
}
|
||||
|
||||
func (b *projectBiz) XmSelect(ctx context.Context) ([]*view.XmSelect, error) {
|
||||
all, err := b.store.AllProjects(ctx)
|
||||
if err != nil || len(all) == 0 {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var res []*view.XmSelect
|
||||
for _, item := range all {
|
||||
res = append(res, &view.XmSelect{
|
||||
Name: item.Name,
|
||||
Value: strconv.FormatInt(item.ID, 10),
|
||||
})
|
||||
}
|
||||
return res, nil
|
||||
}
|
||||
|
||||
func (b *projectBiz) ListHtml(ctx context.Context) ([]*html.SelectDict, error) {
|
||||
all, err := b.store.AllProjects(ctx)
|
||||
if err != nil || len(all) == 0 {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var res []*html.SelectDict
|
||||
res = append(res, &html.SelectDict{
|
||||
Name: "请选择",
|
||||
Value: "0",
|
||||
})
|
||||
for _, v := range all {
|
||||
item := html.SelectDict{
|
||||
Name: v.Name,
|
||||
Value: strconv.Itoa(int(v.ID)),
|
||||
}
|
||||
res = append(res, &item)
|
||||
}
|
||||
|
||||
return res, nil
|
||||
}
|
||||
|
||||
func (b *projectBiz) Statistics(ctx context.Context) ([]*db.StatisticsProjectsRow, error) {
|
||||
return b.store.StatisticsProjects(ctx)
|
||||
}
|
||||
|
||||
func (b *projectBiz) StatisticsItem(ctx context.Context, id int64) (*db.StatisticsProjectItemRow, error) {
|
||||
return b.store.StatisticsProjectItem(ctx, id)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user