|
@@ -4,6 +4,7 @@ import (
|
|
"encoding/json"
|
|
"encoding/json"
|
|
"hongze/hongze_cygx/models"
|
|
"hongze/hongze_cygx/models"
|
|
"hongze/hongze_cygx/utils"
|
|
"hongze/hongze_cygx/utils"
|
|
|
|
+ "strconv"
|
|
"time"
|
|
"time"
|
|
)
|
|
)
|
|
|
|
|
|
@@ -14,6 +15,7 @@ type QuestionnaireController struct {
|
|
|
|
|
|
// @Title 详情
|
|
// @Title 详情
|
|
// @Description 详情接口
|
|
// @Description 详情接口
|
|
|
|
+// @Param IsBestNew query bool false "是否获取最新的一条问卷消息"
|
|
// @Param QuestionnaireId query int true "问卷ID"
|
|
// @Param QuestionnaireId query int true "问卷ID"
|
|
// @Success Ret=200 {object} cygx.GetCygxTacticsTimeLineResp
|
|
// @Success Ret=200 {object} cygx.GetCygxTacticsTimeLineResp
|
|
// @router /detail [get]
|
|
// @router /detail [get]
|
|
@@ -32,12 +34,27 @@ func (this *QuestionnaireController) Detail() {
|
|
}
|
|
}
|
|
resp := new(models.GetCygxQuestionnaireDetailResp)
|
|
resp := new(models.GetCygxQuestionnaireDetailResp)
|
|
questionnaireId, _ := this.GetInt("QuestionnaireId")
|
|
questionnaireId, _ := this.GetInt("QuestionnaireId")
|
|
- detail, err := models.GetCygxQuestionnaireDetail(questionnaireId)
|
|
|
|
- if err != nil {
|
|
|
|
- br.Msg = "详情不存在"
|
|
|
|
- br.ErrMsg = "获取失败,GetCygxQuestionnaireDetail Err:" + err.Error()
|
|
|
|
- return
|
|
|
|
|
|
+ isBestNew, _ := this.GetBool("IsBestNew", false)
|
|
|
|
+ var err error
|
|
|
|
+ detail := new(models.CygxQuestionnaireResp)
|
|
|
|
+ //如果是最新的就获取最新的一套问卷信息
|
|
|
|
+ if isBestNew {
|
|
|
|
+ detail, err = models.GetCygxQuestionnaireDetailBestNew()
|
|
|
|
+ if err != nil {
|
|
|
|
+ br.Msg = "详情不存在"
|
|
|
|
+ br.ErrMsg = "获取失败,GetCygxQuestionnaireDetailBestNew Err:" + err.Error()
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ questionnaireId = detail.QuestionnaireId
|
|
|
|
+ } else {
|
|
|
|
+ detail, err = models.GetCygxQuestionnaireDetail(questionnaireId)
|
|
|
|
+ if err != nil {
|
|
|
|
+ br.Msg = "详情不存在"
|
|
|
|
+ br.ErrMsg = "获取失败,GetCygxQuestionnaireDetail Err:" + err.Error()
|
|
|
|
+ return
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+
|
|
ListTheme, err := models.GetCygxQuestionnaireThemeListByQuestionnaireId(questionnaireId)
|
|
ListTheme, err := models.GetCygxQuestionnaireThemeListByQuestionnaireId(questionnaireId)
|
|
if err != nil {
|
|
if err != nil {
|
|
br.Msg = "详情不存在"
|
|
br.Msg = "详情不存在"
|
|
@@ -91,6 +108,26 @@ func (this *QuestionnaireController) VoteAdd() {
|
|
br.Msg = "提交信息不能为空"
|
|
br.Msg = "提交信息不能为空"
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ detail, err := models.GetCygxQuestionnaireDetail(questionnaireId)
|
|
|
|
+ if err != nil {
|
|
|
|
+ br.Msg = "提交失败"
|
|
|
|
+ br.ErrMsg = "获取失败,GetCygxQuestionnaireDetail Err:" + err.Error()
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ endTime := utils.StrTimeToTime(detail.EndTime + " 23:59:59") //时间字符串格式转时间格式
|
|
|
|
+ if endTime.Before(time.Now()) {
|
|
|
|
+ br.Msg = "此次投票已截止"
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ lenCheck := len(questionnaireThemeIds)
|
|
|
|
+ if lenCheck > detail.MaxChooseTotal {
|
|
|
|
+ br.Msg = "最多可选择" + strconv.Itoa(detail.MaxChooseTotal) + "项"
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
sellerItem, err := models.GetSellerByCompanyIdCheckFicc(user.CompanyId, 2)
|
|
sellerItem, err := models.GetSellerByCompanyIdCheckFicc(user.CompanyId, 2)
|
|
if err != nil && err.Error() != utils.ErrNoRow() {
|
|
if err != nil && err.Error() != utils.ErrNoRow() {
|
|
return
|
|
return
|
|
@@ -98,7 +135,22 @@ func (this *QuestionnaireController) VoteAdd() {
|
|
|
|
|
|
var voteItems []*models.CygxQuestionnaireVote
|
|
var voteItems []*models.CygxQuestionnaireVote
|
|
//主题ID提交问卷需要写入的信息
|
|
//主题ID提交问卷需要写入的信息
|
|
- if len(questionnaireThemeIds) > 0 {
|
|
|
|
|
|
+ if lenCheck > 0 {
|
|
|
|
+ var condition string
|
|
|
|
+ var pars []interface{}
|
|
|
|
+ condition += " AND user_id = ? AND questionnaire_id = ? "
|
|
|
|
+ pars = append(pars, user.UserId, questionnaireId)
|
|
|
|
+
|
|
|
|
+ totalhistory, err := models.GetCygxQuestionnaireVoteCount(condition, pars)
|
|
|
|
+ if err != nil {
|
|
|
|
+ br.Msg = "提交失败"
|
|
|
|
+ br.ErrMsg = "获取失败,GetCygxQuestionnaireDetail Err:" + err.Error()
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ if totalhistory > 0 {
|
|
|
|
+ br.Msg = "您已投过票"
|
|
|
|
+ return
|
|
|
|
+ }
|
|
for _, v := range questionnaireThemeIds {
|
|
for _, v := range questionnaireThemeIds {
|
|
item := new(models.CygxQuestionnaireVote)
|
|
item := new(models.CygxQuestionnaireVote)
|
|
item.QuestionnaireId = questionnaireId
|
|
item.QuestionnaireId = questionnaireId
|