123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- package ctrl_v1
- import (
- "gd_management_gateway/errors"
- "gd_management_gateway/params/param_base"
- "gd_management_gateway/params/param_v1_0"
- "gd_management_gateway/rpc_apis"
- "gd_management_gateway/rpc_apis/gd_management"
- "gd_management_gateway/rpc_apis/gd_service"
- "fmt"
- "time"
- "gd_management_gateway/common.in/httper"
- "gd_management_gateway/common.in/task"
- "gd_management_gateway/common.in/utils"
- "go.uber.org/zap"
- "github.com/astaxie/beego"
- )
- // Operations about base api
- type ServiceOrderController struct {
- metadata interface{} // 中继元数据
- beego.Controller
- LogID string
- }
- // @Title get service order list
- // @Description 获取服务订单
- // @Param token header string true "token"
- // @Param uid header string true "uid"
- // @Param page_number query string false ""
- // @Param order_status query int false "0 获取所有状态订单 1 待支付,2 进行中 3已完成 4 已取消"
- // @Param order_type query int false "0 所有服务类型 311上线年审,312 免检年审,314免检年审在线办理, 315 上线年审自行预约"
- // @Param start_time query string false "uid"
- // @Param end_time query string false "uid"
- // @Success 200 {object} params.param_v1_0.ServiceManagementOrderListResp "响应信息"
- // @Failure 500 服务器错误
- // @router /service_order_list [get]
- func (u *ServiceOrderController) ServiceManagementOrderList() {
- u.LogID = fmt.Sprintf("ServiceManagementOrderList[%d]", time.Now().UnixNano())
- req := ¶m_v1_0.ServiceManagementOrderListReq{}
- getParamsTask := func() error {
- httper.FillRequireParams(u.Ctx, req, u.LogID)
- return nil
- }
- handleDataTask := func() error {
- sreq := gd_service.ServiceManagementOrderListReq{}
- sreq.PageNumber = req.PageNumber
- sreq.StartTime = req.StartTime
- sreq.EndTime = req.EndTime
- sreq.OrderType = req.OrderType
- sreq.OrderStatus = req.OrderStatus
- reply, err := rpc_apis.Service.ServiceManagementOrderList(utils.NewContextFromBeegoCtx(u.Ctx), &sreq)
- if err != nil {
- l.Error("rpc",
- zap.String("call", "ServiceManagementOrderList"),
- zap.String("args", utils.MarshalJsonString(req)),
- zap.String("error", err.Error()))
- return errors.ErrorTransform(err)
- }
- appKeys := []string{}
- for _, v := range reply.Infos {
- appKeys = append(appKeys, v.AppKey)
- }
- mreq := gd_management.ManagementGetUserMerchantNameReq{}
- mreq.AppKeys = appKeys
- mreply, err := rpc_apis.Management.ManagementGetUserMerchantName(utils.NewContextFromBeegoCtx(u.Ctx), &mreq)
- if err != nil {
- return errors.ErrorTransform(err)
- }
- appKeyMap := map[string]gd_management.ManagementGetUserMerchantNameItem{}
- for _, v := range mreply.Infos {
- appKeyMap[v.AppKey] = v
- }
- for k, _ := range reply.Infos {
- reply.Infos[k].MerchantName = appKeyMap[reply.Infos[k].AppKey].MerchantName
- reply.Infos[k].UserName = appKeyMap[reply.Infos[k].AppKey].UserName
- }
- resp := param_v1_0.ServiceManagementOrderListResp{
- SimpleResp: param_base.SimpleResp{
- Code: 0,
- Msg: "SUCCESS",
- },
- }
- resp.Infos = reply.Infos
- httper.JSON(u.Ctx, resp, u.LogID)
- return nil
- }
- // 执行以上定义的任务
- task.Do(&task.PanicRecover{
- Ctx: u.Ctx,
- LogID: u.LogID}, u.Ctx,
- getParamsTask, handleDataTask,
- )
- }
|