|
|
|
package controller
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
"github.com/gogf/gf/v2/errors/gerror"
|
|
|
|
"github.com/gogf/gf/v2/os/gtime"
|
|
|
|
"github.com/gogf/gf/v2/util/gconv"
|
|
|
|
"vistor/api/v1"
|
|
|
|
"vistor/internal/service"
|
|
|
|
)
|
|
|
|
|
|
|
|
var (
|
|
|
|
Visitor = cVisitor{}
|
|
|
|
)
|
|
|
|
|
|
|
|
type cVisitor struct{}
|
|
|
|
|
|
|
|
func (c *cVisitor) VisitorAccess(ctx context.Context, req *v1.VisitorAccessReq) (res *v1.VisitorAccessRes, err error) {
|
|
|
|
err = service.Visitor.VisitorAccess(ctx, req)
|
|
|
|
if err != nil {
|
|
|
|
return nil, gerror.Newf("提交失败,请稍后再试")
|
|
|
|
}
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *cVisitor) VisitorStatistic(ctx context.Context, req *v1.VisitorStatisticReq) (res *v1.VisitorStatisticRes, err error) {
|
|
|
|
diff := service.Visitor.GetDiffDays(gtime.New(req.EndDate).Time, gtime.New(req.StartDate).Time)
|
|
|
|
duration := gconv.Int(diff) + 1
|
|
|
|
if duration > 30 {
|
|
|
|
return nil, gerror.Newf("请选择30天内日期进行查询")
|
|
|
|
}
|
|
|
|
|
|
|
|
res, err = service.Visitor.VisitorStatistic(ctx, req)
|
|
|
|
if err != nil {
|
|
|
|
return nil, gerror.Newf("系统繁忙,请稍后再试")
|
|
|
|
}
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *cVisitor) VisitorList(ctx context.Context, req *v1.VisitorListReq) (res *v1.VisitorListRes, err error) {
|
|
|
|
res, err = service.Visitor.VisitorList(ctx, req)
|
|
|
|
if err != nil {
|
|
|
|
return nil, gerror.Newf("系统繁忙,请稍后再试")
|
|
|
|
}
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *cVisitor) GetDepartmentList(ctx context.Context, req *v1.GetDepartmentListReq) (res *v1.GetDepartmentListRes, err error) {
|
|
|
|
res, err = service.Visitor.GetDingDepartmentList(ctx, req)
|
|
|
|
if err != nil {
|
|
|
|
return nil, gerror.Newf("系统繁忙,请稍后再试")
|
|
|
|
}
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
func (c *cVisitor) GetDingUserList(ctx context.Context, req *v1.GetDingUserReq) (res *v1.GetDingUserRes, err error) {
|
|
|
|
if req.PageNum == 0 {
|
|
|
|
req.PageNum = 1
|
|
|
|
}
|
|
|
|
|
|
|
|
if req.PageSize == 0 {
|
|
|
|
req.PageNum = 15
|
|
|
|
}
|
|
|
|
|
|
|
|
res, err = service.Visitor.GetDingUserList(ctx, req)
|
|
|
|
if err != nil {
|
|
|
|
return nil, gerror.Newf("系统繁忙,请稍后再试")
|
|
|
|
}
|
|
|
|
return
|
|
|
|
}
|