| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 | 
							- package pasture
 
- import (
 
- 	"kpt-pasture/http/middleware"
 
- 	"net/http"
 
- 	"strconv"
 
- 	"gitee.com/xuyiping_admin/pkg/xerr"
 
- 	pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
 
- 	operationPb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/operation"
 
- 	"gitee.com/xuyiping_admin/pkg/apierr"
 
- 	"gitee.com/xuyiping_admin/pkg/ginutil"
 
- 	"gitee.com/xuyiping_admin/pkg/valid"
 
- 	"github.com/gin-gonic/gin"
 
- )
 
- // SameTimeCreatedOrUpdate 同期策略添加或者更新
 
- func SameTimeCreatedOrUpdate(c *gin.Context) {
 
- 	var req pasturePb.SearchSameTimeList
 
- 	if err := ginutil.BindProto(c, &req); err != nil {
 
- 		apierr.AbortBadRequest(c, http.StatusBadRequest, err)
 
- 		return
 
- 	}
 
- 	if err := valid.ValidateStruct(&req,
 
- 		valid.Field(&req.Name, valid.Required),
 
- 		valid.Field(&req.CowType, valid.Required),
 
- 		valid.Field(&req.WeekType, valid.Required),
 
- 		valid.Field(&req.PostpartumDaysStart, valid.Required),
 
- 		valid.Field(&req.PostpartumDaysEnd, valid.Required),
 
- 		valid.Field(&req.CollateNodes, valid.Required),
 
- 	); err != nil {
 
- 		apierr.AbortBadRequest(c, http.StatusBadRequest, err)
 
- 		return
 
- 	}
 
- 	if req.PostpartumDaysStart > req.PostpartumDaysEnd {
 
- 		apierr.AbortBadRequest(c, http.StatusBadRequest, xerr.New("开始天数不能大于结束天数"))
 
- 		return
 
- 	}
 
- 	if len(req.CollateNodes) < 0 {
 
- 		apierr.AbortBadRequest(c, http.StatusBadRequest, xerr.New("错误的同期策略数据"))
 
- 		return
 
- 	}
 
- 	if err := middleware.BackendOperation(c).OpsService.CreateOrUpdateSameTime(c, &req); err != nil {
 
- 		apierr.ClassifiedAbort(c, err)
 
- 		return
 
- 	}
 
- 	ginutil.JSONResp(c, &operationPb.CommonOK{
 
- 		Code: http.StatusOK,
 
- 		Msg:  "ok",
 
- 		Data: &operationPb.Success{Success: true},
 
- 	})
 
- }
 
- // SameTimeList 同步策略列表
 
- func SameTimeList(c *gin.Context) {
 
- 	var req pasturePb.SearchNameRequest
 
- 	if err := ginutil.BindProto(c, &req); err != nil {
 
- 		apierr.AbortBadRequest(c, http.StatusBadRequest, err)
 
- 		return
 
- 	}
 
- 	pagination := &pasturePb.PaginationModel{
 
- 		Page:       int32(c.GetInt(middleware.Page)),
 
- 		PageSize:   int32(c.GetInt(middleware.PageSize)),
 
- 		PageOffset: int32(c.GetInt(middleware.PageOffset)),
 
- 	}
 
- 	res, err := middleware.BackendOperation(c).OpsService.SearchSameTimeList(c, &req, pagination)
 
- 	if err != nil {
 
- 		apierr.ClassifiedAbort(c, err)
 
- 		return
 
- 	}
 
- 	ginutil.JSONResp(c, res)
 
- }
 
- func SameTimeIsShow(c *gin.Context) {
 
- 	sameTimeIdStr := c.Param("id")
 
- 	sameTimeId, _ := strconv.Atoi(sameTimeIdStr)
 
- 	if err := valid.Validate(sameTimeId, valid.Required, valid.Min(1)); err != nil {
 
- 		apierr.ClassifiedAbort(c, err)
 
- 		return
 
- 	}
 
- 	if err := middleware.BackendOperation(c).OpsService.SameTimeIsShow(c, int64(sameTimeId)); err != nil {
 
- 		apierr.ClassifiedAbort(c, err)
 
- 		return
 
- 	}
 
- 	ginutil.JSONResp(c, &operationPb.CommonOK{
 
- 		Code: http.StatusOK,
 
- 		Msg:  "ok",
 
- 		Data: &operationPb.Success{Success: true},
 
- 	})
 
- }
 
 
  |