...
|
...
|
@@ -3,7 +3,9 @@ package service |
|
|
import (
|
|
|
"github.com/linmadan/egglib-go/core/application"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/application/mobile/cooperation/command"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/allied_creation_cooperation"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway/allied_creation_user"
|
|
|
"strconv"
|
|
|
)
|
|
|
|
|
|
// CooperationProjectService 共创项目服务
|
...
|
...
|
@@ -11,18 +13,31 @@ type CooperationProjectService struct { |
|
|
}
|
|
|
|
|
|
// CreateCooperationProject TODO:创建共创项目
|
|
|
func (srv CooperationProjectService) CreateCooperationProject(userMenusCommand *command.CreateCooperationProjectCommand) (interface{}, error) {
|
|
|
creationUserGateway := allied_creation_user.NewHttplibAlliedCreationUser(
|
|
|
userMenusCommand.Operator)
|
|
|
resultMenu, err := creationUserGateway.UserAccessMenus(allied_creation_user.ReqUserAccessMenus{
|
|
|
UserId: int(userMenusCommand.Operator.UserId),
|
|
|
func (srv CooperationProjectService) CreateCooperationProject(createCooperationProjectCommand *command.CreateCooperationProjectCommand) (interface{}, error) {
|
|
|
if err := createCooperationProjectCommand.ValidateCommand(); err != nil {
|
|
|
return nil, application.ThrowError(application.ARG_ERROR, err.Error())
|
|
|
}
|
|
|
creationCooperationGateway := allied_creation_cooperation.NewHttplibAlliedCreationCooperation(createCooperationProjectCommand.Operator)
|
|
|
result, err := creationCooperationGateway.CooperationProjectAdd(allied_creation_cooperation.ReqCooperationProjectAdd{
|
|
|
CooperationProjectDescription: createCooperationProjectCommand.CooperationProjectDescription,
|
|
|
CooperationProjectName: createCooperationProjectCommand.CooperationProjectName,
|
|
|
PublisherUid: strconv.Itoa(int(createCooperationProjectCommand.Operator.UserId)),
|
|
|
SponsorUid: createCooperationProjectCommand.CooperationProjectSponsor,
|
|
|
CooperationProjectUndertakerType: createCooperationProjectCommand.CooperationProjectUndertakerType,
|
|
|
Images: createCooperationProjectCommand.Images,
|
|
|
})
|
|
|
|
|
|
if err != nil {
|
|
|
return nil, application.ThrowError(application.BUSINESS_ERROR, err.Error())
|
|
|
return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
|
|
|
}
|
|
|
return map[string]interface{}{
|
|
|
"accessMenus": resultMenu.Menus,
|
|
|
}, nil
|
|
|
data := struct {
|
|
|
CooperationProjectId int `json:"cooperationProjectId"`
|
|
|
command.CreateCooperationProjectCommand
|
|
|
}{
|
|
|
CooperationProjectId: result.CooperationProjectId,
|
|
|
CreateCooperationProjectCommand: *createCooperationProjectCommand,
|
|
|
}
|
|
|
return data, nil
|
|
|
}
|
|
|
|
|
|
// GetCooperationProject TODO:返回共创项目明细
|
...
|
...
|
|