Эх сурвалжийг харах

fix:只返回未绑定的填报单

Roc 18 цаг өмнө
parent
commit
017018db8a

+ 12 - 3
controllers/xy/researcher_assessment.go

@@ -164,11 +164,11 @@ func (c *AssessmentFormController) Detail() {
 
 	resp := new(models.AssessmentFormViewResp)
 
-	// 根据单号获取填报单
+	// 根据单号获取填报单(只获取未关联的填报单)
 	formOb := new(models.AssessmentForm)
-	cond := fmt.Sprintf(` AND %s = ? AND %s = ? `, formOb.Cols().ResearcherAdminId, formOb.Cols().WeekTime)
+	cond := fmt.Sprintf(` AND %s = ? AND %s = ? AND %s = ? `, formOb.Cols().ResearcherAdminId, formOb.Cols().WeekTime, formOb.Cols().OutStatus)
 	pars := make([]interface{}, 0)
-	pars = append(pars, adminIfo.AdminId, startWeekTime)
+	pars = append(pars, adminIfo.AdminId, startWeekTime, 0)
 	list, e := formOb.GetItemsByCondition(cond, pars, []string{}, "")
 	if e != nil {
 		br.Msg = "获取失败"
@@ -269,6 +269,15 @@ func (c *AssessmentFormController) UpdateOutStatus() {
 		return
 	}
 
+	// 如果是绑定,那么需要校验该填报单的绑定状态,如果绑定状态是1,那么不能再次绑定
+	if status == 1 {
+		outStatus := list[0].OutStatus
+		if outStatus == 1 {
+			br.Msg = "单据状态有误,请刷新页面"
+			return
+		}
+	}
+
 	err = formOb.UpdateOutStatusByFormCode(req.DataId, req.ReportId, status)
 	if err != nil {
 		br.Msg = "更新失败"

+ 4 - 0
models/assessment_form.go

@@ -54,6 +54,8 @@ type AssessmentFormCols struct {
 	WeeklyUpForecast     string
 	WeeklyDownForecast   string
 	Status               string
+	OutNo                string
+	OutStatus            string
 	SubmitTime           string
 	CreateTime           string
 	ModifyTime           string
@@ -77,6 +79,8 @@ func (m *AssessmentForm) Cols() AssessmentFormCols {
 		WeeklyUpForecast:     "weekly_up_forecast",
 		WeeklyDownForecast:   "weekly_down_forecast",
 		Status:               "status",
+		OutNo:                "out_no",
+		OutStatus:            "out_status",
 		SubmitTime:           "submit_time",
 		CreateTime:           "create_time",
 		ModifyTime:           "modify_time",