Ejemplo n.º 1
0
func ResponseError(c wine.Context, err ErrType) {
	msg := ""
	switch err {
	case ErrParm:
		msg = "parameter error"
	case ErrServer:
		msg = "server error"
	default:
		break
	}
	c.JSON(gox.M{"error": err, "msg": msg})
}
Ejemplo n.º 2
0
func HandlePostDailyReport(c wine.Context) {
	var req PostDailyReportRequest
	req.UserId = c.Params().GetInt64("user_id")
	req.Date = c.Params().GetStr("date")
	req.Work = c.Params().GetStr("work")
	req.Plan = c.Params().GetStr("plan")
	req.Remark = c.Params().GetStr("remark")
	if req.UserId < 0 || len(req.Date) == 0 {
		c.JSON(gox.M{"error": 1})
		return
	}

	values := url.Values{}
	values.Set("user_id", strconv.FormatInt(req.UserId, 10))
	values.Set("date", req.Date)
	values.Set("work", req.Work)
	values.Set("plan", req.Plan)
	values.Set("remark", req.Remark)
	resp, e := http.DefaultClient.PostForm("http://localhost:8001/daily-report", values)
	if e != nil {
		c.JSON(gox.M{"error": 2, "msg": "server error"})
		return
	}

	data, _ := ioutil.ReadAll(resp.Body)
	defer resp.Body.Close()

	var respMap map[string]interface{}
	if err := json.Unmarshal(data, &respMap); err == nil {

		if err, ok := respMap["error"].(float64); ok && int(err) == 0 {
			c.JSON(gox.M{"error": 0})
		} else {
			log.Println(respMap)
			c.JSON(gox.M{"error": 1, "msg": "failed to add report"})
		}
	} else {
		log.Println(respMap)
		c.JSON(gox.M{"error": 2, "msg": "server error"})
	}
}
Ejemplo n.º 3
0
func ResponseData(c wine.Context, data interface{}) {
	c.JSON(gox.M{"error": ErrNone, "msg": "", "data": data})
}