正在显示
15 个修改的文件
包含
591 行增加
和
1 行删除
@@ -10,7 +10,7 @@ import ( | @@ -10,7 +10,7 @@ import ( | ||
10 | 10 | ||
11 | type UpdateCooperationProjectCommand struct { | 11 | type UpdateCooperationProjectCommand struct { |
12 | // 共创项目ID | 12 | // 共创项目ID |
13 | - CooperationProjectId int64 `cname:"共创项目ID" json:"cooperationProjectId,string" valid:"Required"` | 13 | + CooperationProjectId string `cname:"共创项目ID" json:"cooperationProjectId" valid:"Required"` |
14 | // 共创项目名称 | 14 | // 共创项目名称 |
15 | CooperationProjectName string `cname:"共创项目名称" json:"cooperationProjectName" valid:"Required"` | 15 | CooperationProjectName string `cname:"共创项目名称" json:"cooperationProjectName" valid:"Required"` |
16 | // 承接对象,1员工,2共创用户,3公开,可以多选 | 16 | // 承接对象,1员工,2共创用户,3公开,可以多选 |
@@ -4,10 +4,14 @@ import "os" | @@ -4,10 +4,14 @@ import "os" | ||
4 | 4 | ||
5 | const SERVICE_NAME = "allied-creation-cooperation" | 5 | const SERVICE_NAME = "allied-creation-cooperation" |
6 | 6 | ||
7 | +// 日志相关设置 | ||
7 | var LOG_LEVEL = "debug" | 8 | var LOG_LEVEL = "debug" |
8 | var LOG_FILE = "app.log" | 9 | var LOG_FILE = "app.log" |
9 | var LOG_PREFIX = "[allied-creation-cooperation]" | 10 | var LOG_PREFIX = "[allied-creation-cooperation]" |
10 | 11 | ||
12 | +// 用户信息模块地址 | ||
13 | +var USER_MODULE_HOST = "" | ||
14 | + | ||
11 | func init() { | 15 | func init() { |
12 | if os.Getenv("LOG_LEVEL") != "" { | 16 | if os.Getenv("LOG_LEVEL") != "" { |
13 | LOG_LEVEL = os.Getenv("LOG_LEVEL") | 17 | LOG_LEVEL = os.Getenv("LOG_LEVEL") |
@@ -18,4 +22,7 @@ func init() { | @@ -18,4 +22,7 @@ func init() { | ||
18 | if os.Getenv("LOG_PREFIX") != "" { | 22 | if os.Getenv("LOG_PREFIX") != "" { |
19 | LOG_PREFIX = os.Getenv("LOG_PREFIX") | 23 | LOG_PREFIX = os.Getenv("LOG_PREFIX") |
20 | } | 24 | } |
25 | + if os.Getenv("USER_MODULE_HOST") != "" { | ||
26 | + USER_MODULE_HOST = os.Getenv("USER_MODULE_HOST") | ||
27 | + } | ||
21 | } | 28 | } |
1 | +package service_gateway | ||
2 | + | ||
3 | +import ( | ||
4 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/constant" | ||
5 | + "strings" | ||
6 | + "time" | ||
7 | +) | ||
8 | + | ||
9 | +type HttplibUserServiceGateway struct { | ||
10 | + httplibBaseServiceGateway | ||
11 | +} | ||
12 | + | ||
13 | +func (serviceGateway *HttplibUserServiceGateway) GetUser(uid int64) (map[string]interface{}, error) { | ||
14 | + url := strings.Join([]string{serviceGateway.baseURL, ""}, "/") | ||
15 | + request := serviceGateway.createRequest(url, "post") | ||
16 | + options := make(map[string]interface{}) | ||
17 | + options["uid"] = uid | ||
18 | + request.JSONBody(options) | ||
19 | + response := make(map[string]interface{}) | ||
20 | + request.ToJSON(&response) | ||
21 | + data, err := serviceGateway.responseHandle(response) | ||
22 | + return data, err | ||
23 | +} | ||
24 | + | ||
25 | +func (serviceGateway *HttplibUserServiceGateway) GetCompany(companyId int64) (map[string]interface{}, error) { | ||
26 | + url := strings.Join([]string{serviceGateway.baseURL, ""}, "/") | ||
27 | + request := serviceGateway.createRequest(url, "post") | ||
28 | + options := make(map[string]interface{}) | ||
29 | + options["companyId"] = companyId | ||
30 | + request.JSONBody(options) | ||
31 | + response := make(map[string]interface{}) | ||
32 | + request.ToJSON(&response) | ||
33 | + data, err := serviceGateway.responseHandle(response) | ||
34 | + return data, err | ||
35 | +} | ||
36 | + | ||
37 | +func (serviceGateway *HttplibUserServiceGateway) GetOrganization(organizationId int64) (map[string]interface{}, error) { | ||
38 | + url := strings.Join([]string{serviceGateway.baseURL, ""}, "/") | ||
39 | + request := serviceGateway.createRequest(url, "post") | ||
40 | + options := make(map[string]interface{}) | ||
41 | + options["orgId"] = organizationId | ||
42 | + request.JSONBody(options) | ||
43 | + response := make(map[string]interface{}) | ||
44 | + request.ToJSON(&response) | ||
45 | + data, err := serviceGateway.responseHandle(response) | ||
46 | + return data, err | ||
47 | +} | ||
48 | + | ||
49 | +func NewHttplibUserServiceGateway() *HttplibUserServiceGateway { | ||
50 | + return &HttplibUserServiceGateway{ | ||
51 | + httplibBaseServiceGateway: httplibBaseServiceGateway{ | ||
52 | + baseURL: constant.USER_MODULE_HOST, | ||
53 | + connectTimeout: 100 * time.Second, | ||
54 | + readWriteTimeout: 30 * time.Second, | ||
55 | + }, | ||
56 | + } | ||
57 | +} |
1 | +package controllers | ||
2 | + | ||
3 | +import ( | ||
4 | + "github.com/linmadan/egglib-go/web/beego" | ||
5 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application/cooperationProject/command" | ||
6 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application/cooperationProject/query" | ||
7 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application/cooperationProject/service" | ||
8 | +) | ||
9 | + | ||
10 | +type CooperationProjectController struct { | ||
11 | + beego.BaseController | ||
12 | +} | ||
13 | + | ||
14 | +func (controller *CooperationProjectController) ReleaseCooperationProject() { | ||
15 | + cooperationProjectService := service.NewCooperationProjectService(nil) | ||
16 | + releaseCooperationProjectCommand := &command.ReleaseCooperationProjectCommand{} | ||
17 | + controller.Unmarshal(releaseCooperationProjectCommand) | ||
18 | + data, err := cooperationProjectService.ReleaseCooperationProject(releaseCooperationProjectCommand) | ||
19 | + controller.Response(data, err) | ||
20 | +} | ||
21 | + | ||
22 | +func (controller *CooperationProjectController) CreateCooperationProject() { | ||
23 | + cooperationProjectService := service.NewCooperationProjectService(nil) | ||
24 | + createCooperationProjectCommand := &command.CreateCooperationProjectCommand{} | ||
25 | + controller.Unmarshal(createCooperationProjectCommand) | ||
26 | + data, err := cooperationProjectService.CreateCooperationProject(createCooperationProjectCommand) | ||
27 | + controller.Response(data, err) | ||
28 | +} | ||
29 | + | ||
30 | +func (controller *CooperationProjectController) UpdateCooperationProject() { | ||
31 | + cooperationProjectService := service.NewCooperationProjectService(nil) | ||
32 | + updateCooperationProjectCommand := &command.UpdateCooperationProjectCommand{} | ||
33 | + controller.Unmarshal(updateCooperationProjectCommand) | ||
34 | + cooperationProjectId := controller.GetString(":cooperationProjectId") | ||
35 | + updateCooperationProjectCommand.CooperationProjectId = cooperationProjectId | ||
36 | + data, err := cooperationProjectService.UpdateCooperationProject(updateCooperationProjectCommand) | ||
37 | + controller.Response(data, err) | ||
38 | +} | ||
39 | + | ||
40 | +func (controller *CooperationProjectController) GetCooperationProject() { | ||
41 | + cooperationProjectService := service.NewCooperationProjectService(nil) | ||
42 | + getCooperationProjectQuery := &query.GetCooperationProjectQuery{} | ||
43 | + cooperationProjectId, _ := controller.GetInt64(":cooperationProjectId") | ||
44 | + getCooperationProjectQuery.CooperationProjectId = cooperationProjectId | ||
45 | + data, err := cooperationProjectService.GetCooperationProject(getCooperationProjectQuery) | ||
46 | + controller.Response(data, err) | ||
47 | +} | ||
48 | + | ||
49 | +func (controller *CooperationProjectController) RemoveCooperationProject() { | ||
50 | + cooperationProjectService := service.NewCooperationProjectService(nil) | ||
51 | + removeCooperationProjectCommand := &command.RemoveCooperationProjectCommand{} | ||
52 | + controller.Unmarshal(removeCooperationProjectCommand) | ||
53 | + cooperationProjectId, _ := controller.GetInt64(":cooperationProjectId") | ||
54 | + removeCooperationProjectCommand.CooperationProjectId = cooperationProjectId | ||
55 | + data, err := cooperationProjectService.RemoveCooperationProject(removeCooperationProjectCommand) | ||
56 | + controller.Response(data, err) | ||
57 | +} | ||
58 | + | ||
59 | +func (controller *CooperationProjectController) SearchCooperationProject() { | ||
60 | + cooperationProjectService := service.NewCooperationProjectService(nil) | ||
61 | + searchCooperationProjectQuery := &query.SearchCooperationProjectQuery{} | ||
62 | + data, err := cooperationProjectService.SearchCooperationProject(searchCooperationProjectQuery) | ||
63 | + controller.Response(data, err) | ||
64 | +} | ||
65 | + | ||
66 | +func (controller *CooperationProjectController) CheckUndertaker() { | ||
67 | + cooperationProjectService := service.NewCooperationProjectService(nil) | ||
68 | + checkUndertakerQuery := &query.CheckUndertakerQuery{} | ||
69 | + data, err := cooperationProjectService.CheckUndertaker(checkUndertakerQuery) | ||
70 | + controller.Response(data, err) | ||
71 | +} | ||
72 | + | ||
73 | +func (controller *CooperationProjectController) ListCooperationProject() { | ||
74 | + cooperationProjectService := service.NewCooperationProjectService(nil) | ||
75 | + listCooperationProjectQuery := &query.ListCooperationProjectQuery{} | ||
76 | + offset, _ := controller.GetInt("offset") | ||
77 | + listCooperationProjectQuery.Offset = offset | ||
78 | + limit, _ := controller.GetInt("limit") | ||
79 | + listCooperationProjectQuery.Limit = limit | ||
80 | + data, err := cooperationProjectService.ListCooperationProject(listCooperationProjectQuery) | ||
81 | + controller.Response(data, err) | ||
82 | +} |
1 | +package routers | ||
2 | + | ||
3 | +import ( | ||
4 | + "github.com/beego/beego/v2/server/web" | ||
5 | + "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/port/beego/controllers" | ||
6 | +) | ||
7 | + | ||
8 | +func init() { | ||
9 | + web.Router("/cooperation-projects/release-cooperation-project", &controllers.CooperationProjectController{}, "Post:ReleaseCooperationProject") | ||
10 | + web.Router("/cooperation-projects/", &controllers.CooperationProjectController{}, "Post:CreateCooperationProject") | ||
11 | + web.Router("/cooperation-projects/:cooperationProjectId", &controllers.CooperationProjectController{}, "Put:UpdateCooperationProject") | ||
12 | + web.Router("/cooperation-projects/:cooperationProjectId", &controllers.CooperationProjectController{}, "Get:GetCooperationProject") | ||
13 | + web.Router("/cooperation-projects/:cooperationProjectId", &controllers.CooperationProjectController{}, "Delete:RemoveCooperationProject") | ||
14 | + web.Router("/cooperation-projects/search", &controllers.CooperationProjectController{}, "Post:SearchCooperationProject") | ||
15 | + web.Router("/cooperation-projects/check", &controllers.CooperationProjectController{}, "Post:CheckUndertaker") | ||
16 | + web.Router("/cooperation-projects/", &controllers.CooperationProjectController{}, "Get:ListCooperationProject") | ||
17 | +} |
1 | +package cooperation_project | ||
2 | + | ||
3 | +import ( | ||
4 | + "github.com/go-pg/pg/v10" | ||
5 | + "net/http" | ||
6 | + | ||
7 | + "github.com/gavv/httpexpect" | ||
8 | + . "github.com/onsi/ginkgo" | ||
9 | + . "github.com/onsi/gomega" | ||
10 | + pG "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg" | ||
11 | +) | ||
12 | + | ||
13 | +var _ = Describe("判断当前勾选的承接对象是否存在用户", func() { | ||
14 | + var cooperationProjectId int64 | ||
15 | + BeforeEach(func() { | ||
16 | + _, err := pG.DB.QueryOne( | ||
17 | + pg.Scan(&cooperationProjectId), | ||
18 | + "INSERT INTO cooperation_projects (cooperation_project_id, cooperation_project_number, cooperation_project_description, cooperation_project_name, cooperation_project_publish_time, cooperation_project_publisher, cooperation_project_sponsor, cooperation_project_undertaker_type, org, company, operator, operate_time, status, updated_at, deleted_at, created_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) RETURNING cooperation_project_id", | ||
19 | + "testCooperationProjectId", "testCooperationProjectNumber", "testCooperationProjectDescription", "testCooperationProjectName", "testCooperationProjectPublishTime", "testCooperationProjectPublisher", "testCooperationProjectSponsor", "testCooperationProjectUndertakerType", "testOrg", "testCompany", "testOperator", "testOperateTime", "testStatus", "testUpdatedAt", "testDeletedAt", "testCreatedAt") | ||
20 | + Expect(err).NotTo(HaveOccurred()) | ||
21 | + }) | ||
22 | + Describe("判断当前勾选的承接对象是否存在用户", func() { | ||
23 | + Context("", func() { | ||
24 | + It("", func() { | ||
25 | + httpExpect := httpexpect.New(GinkgoT(), server.URL) | ||
26 | + body := map[string]interface{}{ | ||
27 | + "cooperationProjectUndertakerType": "array", | ||
28 | + "cooperationProjectId": "int64", | ||
29 | + } | ||
30 | + httpExpect.POST("/cooperation-projects/check"). | ||
31 | + WithJSON(body). | ||
32 | + Expect(). | ||
33 | + Status(http.StatusOK). | ||
34 | + JSON(). | ||
35 | + Object(). | ||
36 | + ContainsKey("code").ValueEqual("code", 0). | ||
37 | + ContainsKey("msg").ValueEqual("msg", "ok"). | ||
38 | + ContainsKey("data").Value("data").Object() | ||
39 | + }) | ||
40 | + }) | ||
41 | + }) | ||
42 | + AfterEach(func() { | ||
43 | + _, err := pG.DB.Exec("DELETE FROM cooperation_projects WHERE true") | ||
44 | + Expect(err).NotTo(HaveOccurred()) | ||
45 | + }) | ||
46 | +}) |
1 | +package cooperation_project | ||
2 | + | ||
3 | +import ( | ||
4 | + "net/http" | ||
5 | + "net/http/httptest" | ||
6 | + "testing" | ||
7 | + | ||
8 | + "github.com/beego/beego/v2/server/web" | ||
9 | + . "github.com/onsi/ginkgo" | ||
10 | + . "github.com/onsi/gomega" | ||
11 | + _ "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/application" | ||
12 | + _ "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg" | ||
13 | + _ "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/port/beego" | ||
14 | +) | ||
15 | + | ||
16 | +func TestCooperationProject(t *testing.T) { | ||
17 | + RegisterFailHandler(Fail) | ||
18 | + RunSpecs(t, "Beego Port CooperationProject Correlations Test Case Suite") | ||
19 | +} | ||
20 | + | ||
21 | +var handler http.Handler | ||
22 | +var server *httptest.Server | ||
23 | + | ||
24 | +var _ = BeforeSuite(func() { | ||
25 | + handler = web.BeeApp.Handlers | ||
26 | + server = httptest.NewServer(handler) | ||
27 | +}) | ||
28 | + | ||
29 | +var _ = AfterSuite(func() { | ||
30 | + server.Close() | ||
31 | +}) |
1 | +package cooperation_project | ||
2 | + | ||
3 | +import ( | ||
4 | + "net/http" | ||
5 | + | ||
6 | + "github.com/gavv/httpexpect" | ||
7 | + . "github.com/onsi/ginkgo" | ||
8 | + . "github.com/onsi/gomega" | ||
9 | + pG "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg" | ||
10 | +) | ||
11 | + | ||
12 | +var _ = Describe("创建共创项目服务", func() { | ||
13 | + Describe("提交数据创建共创项目服务", func() { | ||
14 | + Context("提交正确的新共创项目实体数据", func() { | ||
15 | + It("返回共创项目实体数据", func() { | ||
16 | + httpExpect := httpexpect.New(GinkgoT(), server.URL) | ||
17 | + body := map[string]interface{}{ | ||
18 | + "cooperationProjectName": "string", | ||
19 | + "cooperationProjectUndertakerType": "array", | ||
20 | + "sponsorUid": "string", | ||
21 | + "publisherUid": "string", | ||
22 | + "cooperationProjectDescription": "string", | ||
23 | + "companyId": "int64", | ||
24 | + "orgId": "int64", | ||
25 | + "userId": "int64", | ||
26 | + } | ||
27 | + httpExpect.POST("/cooperation-projects/"). | ||
28 | + WithJSON(body). | ||
29 | + Expect(). | ||
30 | + Status(http.StatusOK). | ||
31 | + JSON(). | ||
32 | + Object(). | ||
33 | + ContainsKey("code").ValueEqual("code", 0). | ||
34 | + ContainsKey("msg").ValueEqual("msg", "ok"). | ||
35 | + ContainsKey("data").Value("data").Object(). | ||
36 | + ContainsKey("cooperationProjectId").ValueNotEqual("cooperationProjectId", BeZero()) | ||
37 | + }) | ||
38 | + }) | ||
39 | + }) | ||
40 | + AfterEach(func() { | ||
41 | + _, err := pG.DB.Exec("DELETE FROM cooperation_projects WHERE true") | ||
42 | + Expect(err).NotTo(HaveOccurred()) | ||
43 | + }) | ||
44 | +}) |
1 | +package cooperation_project | ||
2 | + | ||
3 | +import ( | ||
4 | + "github.com/go-pg/pg/v10" | ||
5 | + "net/http" | ||
6 | + | ||
7 | + "github.com/gavv/httpexpect" | ||
8 | + . "github.com/onsi/ginkgo" | ||
9 | + . "github.com/onsi/gomega" | ||
10 | + pG "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg" | ||
11 | +) | ||
12 | + | ||
13 | +var _ = Describe("返回共创项目服务", func() { | ||
14 | + var cooperationProjectId int64 | ||
15 | + BeforeEach(func() { | ||
16 | + _, err := pG.DB.QueryOne( | ||
17 | + pg.Scan(&cooperationProjectId), | ||
18 | + "INSERT INTO cooperation_projects (cooperation_project_id, cooperation_project_number, cooperation_project_description, cooperation_project_name, cooperation_project_publish_time, cooperation_project_publisher, cooperation_project_sponsor, cooperation_project_undertaker_type, org, company, operator, operate_time, status, updated_at, deleted_at, created_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) RETURNING cooperation_project_id", | ||
19 | + "testCooperationProjectId", "testCooperationProjectNumber", "testCooperationProjectDescription", "testCooperationProjectName", "testCooperationProjectPublishTime", "testCooperationProjectPublisher", "testCooperationProjectSponsor", "testCooperationProjectUndertakerType", "testOrg", "testCompany", "testOperator", "testOperateTime", "testStatus", "testUpdatedAt", "testDeletedAt", "testCreatedAt") | ||
20 | + Expect(err).NotTo(HaveOccurred()) | ||
21 | + }) | ||
22 | + Describe("根据cooperationProjectId参数返回共创项目实体", func() { | ||
23 | + Context("传入有效的cooperationProjectId", func() { | ||
24 | + It("返回共创项目实体数据", func() { | ||
25 | + httpExpect := httpexpect.New(GinkgoT(), server.URL) | ||
26 | + httpExpect.GET("/cooperation-projects/{cooperationProjectId}"). | ||
27 | + Expect(). | ||
28 | + Status(http.StatusOK). | ||
29 | + JSON(). | ||
30 | + Object(). | ||
31 | + ContainsKey("code").ValueEqual("code", 0). | ||
32 | + ContainsKey("msg").ValueEqual("msg", "ok"). | ||
33 | + ContainsKey("data").Value("data").Object() | ||
34 | + }) | ||
35 | + }) | ||
36 | + }) | ||
37 | + AfterEach(func() { | ||
38 | + _, err := pG.DB.Exec("DELETE FROM cooperation_projects WHERE true") | ||
39 | + Expect(err).NotTo(HaveOccurred()) | ||
40 | + }) | ||
41 | +}) |
1 | +package cooperation_project | ||
2 | + | ||
3 | +import ( | ||
4 | + "github.com/go-pg/pg/v10" | ||
5 | + "net/http" | ||
6 | + | ||
7 | + "github.com/gavv/httpexpect" | ||
8 | + . "github.com/onsi/ginkgo" | ||
9 | + . "github.com/onsi/gomega" | ||
10 | + pG "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg" | ||
11 | +) | ||
12 | + | ||
13 | +var _ = Describe("返回共创项目服务列表", func() { | ||
14 | + var cooperationProjectId int64 | ||
15 | + BeforeEach(func() { | ||
16 | + _, err := pG.DB.QueryOne( | ||
17 | + pg.Scan(&cooperationProjectId), | ||
18 | + "INSERT INTO cooperation_projects (cooperation_project_id, cooperation_project_number, cooperation_project_description, cooperation_project_name, cooperation_project_publish_time, cooperation_project_publisher, cooperation_project_sponsor, cooperation_project_undertaker_type, org, company, operator, operate_time, status, updated_at, deleted_at, created_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) RETURNING cooperation_project_id", | ||
19 | + "testCooperationProjectId", "testCooperationProjectNumber", "testCooperationProjectDescription", "testCooperationProjectName", "testCooperationProjectPublishTime", "testCooperationProjectPublisher", "testCooperationProjectSponsor", "testCooperationProjectUndertakerType", "testOrg", "testCompany", "testOperator", "testOperateTime", "testStatus", "testUpdatedAt", "testDeletedAt", "testCreatedAt") | ||
20 | + Expect(err).NotTo(HaveOccurred()) | ||
21 | + }) | ||
22 | + Describe("根据参数返回共创项目实体列表", func() { | ||
23 | + Context("传入有效的参数", func() { | ||
24 | + It("返回共创项目实体数据列表", func() { | ||
25 | + httpExpect := httpexpect.New(GinkgoT(), server.URL) | ||
26 | + httpExpect.GET("/cooperation-projects/"). | ||
27 | + WithQuery("offset", "int"). | ||
28 | + WithQuery("limit", "int"). | ||
29 | + Expect(). | ||
30 | + Status(http.StatusOK). | ||
31 | + JSON(). | ||
32 | + Object(). | ||
33 | + ContainsKey("code").ValueEqual("code", 0). | ||
34 | + ContainsKey("msg").ValueEqual("msg", "ok"). | ||
35 | + ContainsKey("data").Value("data").Object(). | ||
36 | + ContainsKey("count").ValueEqual("count", 1). | ||
37 | + ContainsKey("cooperationProjects").Value("cooperationProjects").Array() | ||
38 | + }) | ||
39 | + }) | ||
40 | + }) | ||
41 | + AfterEach(func() { | ||
42 | + _, err := pG.DB.Exec("DELETE FROM cooperation_projects WHERE true") | ||
43 | + Expect(err).NotTo(HaveOccurred()) | ||
44 | + }) | ||
45 | +}) |
1 | +package cooperation_project | ||
2 | + | ||
3 | +import ( | ||
4 | + "github.com/go-pg/pg/v10" | ||
5 | + "net/http" | ||
6 | + | ||
7 | + "github.com/gavv/httpexpect" | ||
8 | + . "github.com/onsi/ginkgo" | ||
9 | + . "github.com/onsi/gomega" | ||
10 | + pG "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg" | ||
11 | +) | ||
12 | + | ||
13 | +var _ = Describe("发布共创项目", func() { | ||
14 | + var cooperationProjectId int64 | ||
15 | + BeforeEach(func() { | ||
16 | + _, err := pG.DB.QueryOne( | ||
17 | + pg.Scan(&cooperationProjectId), | ||
18 | + "INSERT INTO cooperation_projects (cooperation_project_id, cooperation_project_number, cooperation_project_description, cooperation_project_name, cooperation_project_publish_time, cooperation_project_publisher, cooperation_project_sponsor, cooperation_project_undertaker_type, org, company, operator, operate_time, status, updated_at, deleted_at, created_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) RETURNING cooperation_project_id", | ||
19 | + "testCooperationProjectId", "testCooperationProjectNumber", "testCooperationProjectDescription", "testCooperationProjectName", "testCooperationProjectPublishTime", "testCooperationProjectPublisher", "testCooperationProjectSponsor", "testCooperationProjectUndertakerType", "testOrg", "testCompany", "testOperator", "testOperateTime", "testStatus", "testUpdatedAt", "testDeletedAt", "testCreatedAt") | ||
20 | + Expect(err).NotTo(HaveOccurred()) | ||
21 | + }) | ||
22 | + Describe("发布共创项目", func() { | ||
23 | + Context("", func() { | ||
24 | + It("", func() { | ||
25 | + httpExpect := httpexpect.New(GinkgoT(), server.URL) | ||
26 | + body := map[string]interface{}{ | ||
27 | + "cooperationProjectName": "string", | ||
28 | + "cooperationModeId": "int64", | ||
29 | + "userId": "int64", | ||
30 | + "userBaseId": "int64", | ||
31 | + "orgId": "int64", | ||
32 | + "orgName": "string", | ||
33 | + "companyId": "int64", | ||
34 | + "companyLogo": "string", | ||
35 | + "companyName": "string", | ||
36 | + "orgs": "array", | ||
37 | + "departmentId": "int64", | ||
38 | + "departmentName": "string", | ||
39 | + "departmentNumber": "string", | ||
40 | + "isOrganization": "boolean", | ||
41 | + "roleId": "int64", | ||
42 | + "roleName": "string", | ||
43 | + "userAvatar": "string", | ||
44 | + "userEmail": "string", | ||
45 | + "userName": "string", | ||
46 | + "userPhone": "string", | ||
47 | + "userAccount": "string", | ||
48 | + "userType": "int32", | ||
49 | + "status": "int32", | ||
50 | + "cooperationProjectUndertakerType": "array", | ||
51 | + "cooperationProjectDescription": "string", | ||
52 | + } | ||
53 | + httpExpect.POST("/cooperation-projects/release-cooperation-project"). | ||
54 | + WithJSON(body). | ||
55 | + Expect(). | ||
56 | + Status(http.StatusOK). | ||
57 | + JSON(). | ||
58 | + Object(). | ||
59 | + ContainsKey("code").ValueEqual("code", 0). | ||
60 | + ContainsKey("msg").ValueEqual("msg", "ok"). | ||
61 | + ContainsKey("data").Value("data").Object() | ||
62 | + }) | ||
63 | + }) | ||
64 | + }) | ||
65 | + AfterEach(func() { | ||
66 | + _, err := pG.DB.Exec("DELETE FROM cooperation_projects WHERE true") | ||
67 | + Expect(err).NotTo(HaveOccurred()) | ||
68 | + }) | ||
69 | +}) |
1 | +package cooperation_project | ||
2 | + | ||
3 | +import ( | ||
4 | + "github.com/go-pg/pg/v10" | ||
5 | + "net/http" | ||
6 | + | ||
7 | + "github.com/gavv/httpexpect" | ||
8 | + . "github.com/onsi/ginkgo" | ||
9 | + . "github.com/onsi/gomega" | ||
10 | + pG "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg" | ||
11 | +) | ||
12 | + | ||
13 | +var _ = Describe("移除共创项目服务", func() { | ||
14 | + var cooperationProjectId int64 | ||
15 | + BeforeEach(func() { | ||
16 | + _, err := pG.DB.QueryOne( | ||
17 | + pg.Scan(&cooperationProjectId), | ||
18 | + "INSERT INTO cooperation_projects (cooperation_project_id, cooperation_project_number, cooperation_project_description, cooperation_project_name, cooperation_project_publish_time, cooperation_project_publisher, cooperation_project_sponsor, cooperation_project_undertaker_type, org, company, operator, operate_time, status, updated_at, deleted_at, created_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) RETURNING cooperation_project_id", | ||
19 | + "testCooperationProjectId", "testCooperationProjectNumber", "testCooperationProjectDescription", "testCooperationProjectName", "testCooperationProjectPublishTime", "testCooperationProjectPublisher", "testCooperationProjectSponsor", "testCooperationProjectUndertakerType", "testOrg", "testCompany", "testOperator", "testOperateTime", "testStatus", "testUpdatedAt", "testDeletedAt", "testCreatedAt") | ||
20 | + Expect(err).NotTo(HaveOccurred()) | ||
21 | + }) | ||
22 | + Describe("根据参数移除共创项目服务", func() { | ||
23 | + Context("传入有效的cooperationProjectId", func() { | ||
24 | + It("返回被移除共创项目实体的数据", func() { | ||
25 | + httpExpect := httpexpect.New(GinkgoT(), server.URL) | ||
26 | + httpExpect.DELETE("/cooperation-projects/{cooperationProjectId}"). | ||
27 | + Expect(). | ||
28 | + Status(http.StatusOK). | ||
29 | + JSON(). | ||
30 | + Object(). | ||
31 | + ContainsKey("code").ValueEqual("code", 0). | ||
32 | + ContainsKey("msg").ValueEqual("msg", "ok"). | ||
33 | + ContainsKey("data").Value("data").Object() | ||
34 | + }) | ||
35 | + }) | ||
36 | + }) | ||
37 | + AfterEach(func() { | ||
38 | + _, err := pG.DB.Exec("DELETE FROM cooperation_projects WHERE true") | ||
39 | + Expect(err).NotTo(HaveOccurred()) | ||
40 | + }) | ||
41 | +}) |
1 | +package cooperation_project | ||
2 | + | ||
3 | +import ( | ||
4 | + "github.com/go-pg/pg/v10" | ||
5 | + "net/http" | ||
6 | + | ||
7 | + "github.com/gavv/httpexpect" | ||
8 | + . "github.com/onsi/ginkgo" | ||
9 | + . "github.com/onsi/gomega" | ||
10 | + pG "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg" | ||
11 | +) | ||
12 | + | ||
13 | +var _ = Describe("查询共创项目", func() { | ||
14 | + var cooperationProjectId int64 | ||
15 | + BeforeEach(func() { | ||
16 | + _, err := pG.DB.QueryOne( | ||
17 | + pg.Scan(&cooperationProjectId), | ||
18 | + "INSERT INTO cooperation_projects (cooperation_project_id, cooperation_project_number, cooperation_project_description, cooperation_project_name, cooperation_project_publish_time, cooperation_project_publisher, cooperation_project_sponsor, cooperation_project_undertaker_type, org, company, operator, operate_time, status, updated_at, deleted_at, created_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) RETURNING cooperation_project_id", | ||
19 | + "testCooperationProjectId", "testCooperationProjectNumber", "testCooperationProjectDescription", "testCooperationProjectName", "testCooperationProjectPublishTime", "testCooperationProjectPublisher", "testCooperationProjectSponsor", "testCooperationProjectUndertakerType", "testOrg", "testCompany", "testOperator", "testOperateTime", "testStatus", "testUpdatedAt", "testDeletedAt", "testCreatedAt") | ||
20 | + Expect(err).NotTo(HaveOccurred()) | ||
21 | + }) | ||
22 | + Describe("查询共创项目", func() { | ||
23 | + Context("", func() { | ||
24 | + It("", func() { | ||
25 | + httpExpect := httpexpect.New(GinkgoT(), server.URL) | ||
26 | + body := map[string]interface{}{ | ||
27 | + "pageNumber": "int32", | ||
28 | + "pageSize": "int32", | ||
29 | + "cooperationProjectName": "string", | ||
30 | + "departmentName": "string", | ||
31 | + "status": "int32", | ||
32 | + "companyId": "int64", | ||
33 | + "orgId": "int64", | ||
34 | + "userId": "int64", | ||
35 | + } | ||
36 | + httpExpect.POST("/cooperation-projects/search"). | ||
37 | + WithJSON(body). | ||
38 | + Expect(). | ||
39 | + Status(http.StatusOK). | ||
40 | + JSON(). | ||
41 | + Object(). | ||
42 | + ContainsKey("code").ValueEqual("code", 0). | ||
43 | + ContainsKey("msg").ValueEqual("msg", "ok"). | ||
44 | + ContainsKey("data").Value("data").Object() | ||
45 | + }) | ||
46 | + }) | ||
47 | + }) | ||
48 | + AfterEach(func() { | ||
49 | + _, err := pG.DB.Exec("DELETE FROM cooperation_projects WHERE true") | ||
50 | + Expect(err).NotTo(HaveOccurred()) | ||
51 | + }) | ||
52 | +}) |
1 | +package cooperation_project | ||
2 | + | ||
3 | +import ( | ||
4 | + "github.com/go-pg/pg/v10" | ||
5 | + "net/http" | ||
6 | + | ||
7 | + "github.com/gavv/httpexpect" | ||
8 | + . "github.com/onsi/ginkgo" | ||
9 | + . "github.com/onsi/gomega" | ||
10 | + pG "gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/infrastructure/pg" | ||
11 | +) | ||
12 | + | ||
13 | +var _ = Describe("更新共创项目服务", func() { | ||
14 | + var cooperationProjectId int64 | ||
15 | + BeforeEach(func() { | ||
16 | + _, err := pG.DB.QueryOne( | ||
17 | + pg.Scan(&cooperationProjectId), | ||
18 | + "INSERT INTO cooperation_projects (cooperation_project_id, cooperation_project_number, cooperation_project_description, cooperation_project_name, cooperation_project_publish_time, cooperation_project_publisher, cooperation_project_sponsor, cooperation_project_undertaker_type, org, company, operator, operate_time, status, updated_at, deleted_at, created_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) RETURNING cooperation_project_id", | ||
19 | + "testCooperationProjectId", "testCooperationProjectNumber", "testCooperationProjectDescription", "testCooperationProjectName", "testCooperationProjectPublishTime", "testCooperationProjectPublisher", "testCooperationProjectSponsor", "testCooperationProjectUndertakerType", "testOrg", "testCompany", "testOperator", "testOperateTime", "testStatus", "testUpdatedAt", "testDeletedAt", "testCreatedAt") | ||
20 | + Expect(err).NotTo(HaveOccurred()) | ||
21 | + }) | ||
22 | + Describe("提交数据更新共创项目服务", func() { | ||
23 | + Context("提交正确的共创项目实体数据", func() { | ||
24 | + It("返回更新后的共创项目实体数据", func() { | ||
25 | + httpExpect := httpexpect.New(GinkgoT(), server.URL) | ||
26 | + body := map[string]interface{}{ | ||
27 | + "cooperationProjectName": "string", | ||
28 | + "cooperationProjectUndertakerType": "array", | ||
29 | + "sponsorUid": "string", | ||
30 | + "publisherUid": "string", | ||
31 | + "cooperationProjectDescription": "string", | ||
32 | + "companyId": "int64", | ||
33 | + "orgId": "int64", | ||
34 | + "userId": "int64", | ||
35 | + } | ||
36 | + httpExpect.PUT("/cooperation-projects/{cooperationProjectId}"). | ||
37 | + WithJSON(body). | ||
38 | + Expect(). | ||
39 | + Status(http.StatusOK). | ||
40 | + JSON(). | ||
41 | + Object(). | ||
42 | + ContainsKey("code").ValueEqual("code", 0). | ||
43 | + ContainsKey("msg").ValueEqual("msg", "ok"). | ||
44 | + ContainsKey("data").Value("data").Object(). | ||
45 | + ContainsKey("cooperationProjectId").ValueEqual("cooperationProjectId", cooperationProjectId) | ||
46 | + }) | ||
47 | + }) | ||
48 | + }) | ||
49 | + AfterEach(func() { | ||
50 | + _, err := pG.DB.Exec("DELETE FROM cooperation_projects WHERE true") | ||
51 | + Expect(err).NotTo(HaveOccurred()) | ||
52 | + }) | ||
53 | +}) |
-
请 注册 或 登录 后发表评论