package cast import ( "encoding/json" "errors" "fmt" "fonchain-fiee/cmd/config" "fonchain-fiee/pkg/e" "fonchain-fiee/pkg/utils" modelCast "fonchain-fiee/pkg/model/cast" ) type CastService struct { } func (c *CastService) ApprovalDetail(approvalIds []int) (data map[int]int, err error) { idsBytes, _ := json.Marshal(approvalIds) var respBody string url := fmt.Sprintf(config.AppConfig.System.ErpHost + "/approval/list/ex") respBody, err = utils.Post(url, string(idsBytes)) if err != nil { return } var respDetail modelCast.ApprovalDetailResponse if err = json.Unmarshal([]byte(respBody), &respDetail); err != nil { err = errors.New(e.GetMsg(e.JsonUnmarshal)) return } if respDetail.Status == 0 && len(respDetail.Data.Data) > 0 { data = make(map[int]int, len(respDetail.Data.Data)) for _, v := range respDetail.Data.Data { data[v.ID] = v.Status } } else { err = errors.New(e.GetMsg(e.ErrorHttp)) return } return }