|
@@ -18,6 +18,9 @@ func ActivityCtlRegistRouters() {
|
18
|
18
|
beego.Router("/api/activity/submit", &ActivityAPIController{}, "post:ActivitySubmit")
|
19
|
19
|
beego.Router("/api/activity/detailview", &ActivityAPIController{}, "get:GetActivityDetailView")
|
20
|
20
|
beego.Router("/api/activity/signups", &ActivityAPIController{}, "get:SignupUsers")
|
|
21
|
+ beego.Router("/api/activity/delete", &ActivityAPIController{}, "post:DeleteActivity")
|
|
22
|
+ beego.Router("/api/activity/publish", &ActivityAPIController{}, "post:PublishActivity")
|
|
23
|
+ beego.Router("/api/activity/shareinfo", &ActivityAPIController{}, "get:GetActivityShareInfo")
|
21
|
24
|
}
|
22
|
25
|
|
23
|
26
|
type ActivityAPIController struct {
|
|
@@ -155,12 +158,17 @@ func (this *ActivityAPIController) GetActivity() {
|
155
|
158
|
paragraphContent = paragraph.Text
|
156
|
159
|
}
|
157
|
160
|
|
|
161
|
+ currentOrg := adminUserInfo.Orgs[adminUserInfo.CurrentOrgId]
|
158
|
162
|
this.ServeSuccessJSON(map[string]interface{}{
|
159
|
163
|
"activity": activity,
|
160
|
164
|
"paragraph": map[string]interface{}{
|
161
|
165
|
"title": paragraphTitle,
|
162
|
166
|
"content": paragraphContent,
|
163
|
167
|
},
|
|
168
|
+ "org": map[string]interface{}{
|
|
169
|
+ "logo": currentOrg.OrgLogo,
|
|
170
|
+ "name": currentOrg.OrgName,
|
|
171
|
+ },
|
164
|
172
|
})
|
165
|
173
|
}
|
166
|
174
|
|
|
@@ -209,14 +217,12 @@ func (this *ActivityAPIController) ActivitySubmit() {
|
209
|
217
|
} else if activity == nil || activity.Status == 9 {
|
210
|
218
|
this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeActivityNotExist)
|
211
|
219
|
return
|
|
220
|
+ } else if activity.Status == 1 {
|
|
221
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeActivityPublishedCannotModify)
|
|
222
|
+ return
|
212
|
223
|
}
|
213
|
224
|
}
|
214
|
225
|
|
215
|
|
- if activity.Status == 1 {
|
216
|
|
- this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeActivityPublishedCannotModify)
|
217
|
|
- return
|
218
|
|
- }
|
219
|
|
-
|
220
|
226
|
if len(activityForm.Title) == 0 || len(activityForm.Subtitle) == 0 || len(activityForm.PosterPhoto) == 0 || len(activityForm.Address) == 0 || len(activityForm.SignUpDeadline) == 0 || len(activityForm.StartTime) == 0 {
|
221
|
227
|
this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
|
222
|
228
|
return
|
|
@@ -413,3 +419,101 @@ func (this *ActivityAPIController) SignupUsers() {
|
413
|
419
|
"total": total,
|
414
|
420
|
})
|
415
|
421
|
}
|
|
422
|
+
|
|
423
|
+// /api/activity/delete [post]
|
|
424
|
+// @param id:int
|
|
425
|
+func (this *ActivityAPIController) DeleteActivity() {
|
|
426
|
+ activityID, _ := this.GetInt64("id")
|
|
427
|
+ if activityID <= 0 {
|
|
428
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
|
|
429
|
+ return
|
|
430
|
+ }
|
|
431
|
+
|
|
432
|
+ adminUserInfo := this.GetAdminUserInfo()
|
|
433
|
+ activity, getActivityErr := marketing_tool_service.GetActivityWithID(adminUserInfo.CurrentOrgId, activityID)
|
|
434
|
+ if getActivityErr != nil {
|
|
435
|
+ this.ErrorLog("获取活动失败:%v", getActivityErr)
|
|
436
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
437
|
+ return
|
|
438
|
+ } else if activity == nil || activity.Status == 9 {
|
|
439
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeActivityNotExist)
|
|
440
|
+ return
|
|
441
|
+ }
|
|
442
|
+
|
|
443
|
+ deleteErr := marketing_tool_service.DeleteActivity(adminUserInfo.CurrentOrgId, activityID)
|
|
444
|
+ if deleteErr != nil {
|
|
445
|
+ this.ErrorLog("删除活动失败:%v", deleteErr)
|
|
446
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
447
|
+ return
|
|
448
|
+ }
|
|
449
|
+
|
|
450
|
+ this.ServeSuccessJSON(nil)
|
|
451
|
+}
|
|
452
|
+
|
|
453
|
+// /api/activity/publish [post]
|
|
454
|
+// @param id:int
|
|
455
|
+func (this *ActivityAPIController) PublishActivity() {
|
|
456
|
+ activityID, _ := this.GetInt64("id")
|
|
457
|
+ if activityID <= 0 {
|
|
458
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
|
|
459
|
+ return
|
|
460
|
+ }
|
|
461
|
+
|
|
462
|
+ adminUserInfo := this.GetAdminUserInfo()
|
|
463
|
+ activity, getActivityErr := marketing_tool_service.GetActivityWithID(adminUserInfo.CurrentOrgId, activityID)
|
|
464
|
+ if getActivityErr != nil {
|
|
465
|
+ this.ErrorLog("获取活动失败:%v", getActivityErr)
|
|
466
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
467
|
+ return
|
|
468
|
+ } else if activity == nil || activity.Status == 9 {
|
|
469
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeActivityNotExist)
|
|
470
|
+ return
|
|
471
|
+ }
|
|
472
|
+
|
|
473
|
+ if activity.Status == 1 {
|
|
474
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeActivityPublishRepeat)
|
|
475
|
+ return
|
|
476
|
+ }
|
|
477
|
+
|
|
478
|
+ activity.Status = 1
|
|
479
|
+ activity.ModifyTime = time.Now().Unix()
|
|
480
|
+ updateErr := marketing_tool_service.SaveActivityAndParagraph(activity, nil)
|
|
481
|
+ if updateErr != nil {
|
|
482
|
+ this.ErrorLog("发布活动失败:%v", updateErr)
|
|
483
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
484
|
+ return
|
|
485
|
+ }
|
|
486
|
+ this.ServeSuccessJSON(nil)
|
|
487
|
+}
|
|
488
|
+
|
|
489
|
+// /api/activity/shareinfo [get]
|
|
490
|
+// @param id:int
|
|
491
|
+func (this *ActivityAPIController) GetActivityShareInfo() {
|
|
492
|
+ activityID, _ := this.GetInt64("id")
|
|
493
|
+ if activityID <= 0 {
|
|
494
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
|
|
495
|
+ return
|
|
496
|
+ }
|
|
497
|
+
|
|
498
|
+ adminUserInfo := this.GetAdminUserInfo()
|
|
499
|
+ activity, getActivityErr := marketing_tool_service.GetActivityWithID(adminUserInfo.CurrentOrgId, activityID)
|
|
500
|
+ if getActivityErr != nil {
|
|
501
|
+ this.ErrorLog("获取活动失败:%v", getActivityErr)
|
|
502
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
503
|
+ return
|
|
504
|
+ } else if activity == nil {
|
|
505
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeActivityNotExist)
|
|
506
|
+ return
|
|
507
|
+ }
|
|
508
|
+
|
|
509
|
+ wxShareModel, getWxShareErr := marketing_tool_service.GetActivityWxShareByActivityID(activity.Id)
|
|
510
|
+ if getWxShareErr != nil || wxShareModel == nil {
|
|
511
|
+ this.ErrorLog("获取活动微信分享信息失败:%v", getWxShareErr)
|
|
512
|
+ this.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
|
|
513
|
+ return
|
|
514
|
+ }
|
|
515
|
+
|
|
516
|
+ this.ServeSuccessJSON(map[string]interface{}{
|
|
517
|
+ "url": wxShareModel.ShortURL,
|
|
518
|
+ })
|
|
519
|
+}
|