package allied_creation_cooperation import ( "fmt" "github.com/linmadan/egglib-go/utils/json" "strconv" "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/log" "gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway" ) // CooperationApplicationUpdaet 更新共创申请 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationUpdaet(param ReqCooperationApplicationUpdate) (*DataCooperationApplicationUpdate, error) { url := gateway.baseUrL + "/cooperation-applications/" + strconv.Itoa(param.CooperationApplicationId) method := "PUT" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:更新共创申请。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求更新共创申请失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取更新共创申请失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:更新共创申请。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析更新共创申请:%w", err) } var data DataCooperationApplicationUpdate err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationsBatchApproval 共创申请批量审核 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationsBatchApproval(param ReqCooperationApplicationBatchApproval) (*DataCooperationApplicationBatchApproval, error) { url := gateway.baseUrL + "/cooperation-applications/batch-approval" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:共创申请批量审核。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求共创申请批量审核失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取共创申请批量审核失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:共创申请批量审核。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析共创申请批量审核:%w", err) } var data DataCooperationApplicationBatchApproval err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationsBatchApproval 共创申请审核 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationsApproval(param ReqCooperationApplicationApproval) (*DataCooperationApplicationApproval, error) { url := gateway.baseUrL + "/cooperation-applications/approval-cooperation-application" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:共创申请批量审核。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求共创申请批量审核失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取共创申请批量审核失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:共创申请批量审核。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析共创申请批量审核:%w", err) } var data DataCooperationApplicationApproval err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationCancel 取消共创申请 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationCancel(param ReqCooperationApplicationCancel) (*DataCooperationApplicationCancel, error) { url := gateway.baseUrL + "/cooperation-applications/cancel-application" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:取消共创申请。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求取消共创申请失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取取消共创申请失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:取消共创申请。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析取消共创申请:%w", err) } var data DataCooperationApplicationCancel err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationsAgree 审核-同意共创申请 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationsAgree(param ReqCooperationApplicationAgree) (*DataCooperationApplicationAgree, error) { url := gateway.baseUrL + "/cooperation-applications/agree-cooperation-application" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:审核-同意共创申请。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求审核-同意共创申请失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取审核-同意共创申请失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:审核-同意共创申请。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析审核-同意共创申请:%w", err) } var data DataCooperationApplicationAgree err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationsReject审核-拒绝共创申请 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationReject(param ReqCooperationApplicationReject) (*DataCooperationApplicationReject, error) { url := gateway.baseUrL + "/cooperation-applications/reject-cooperation-application" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:审核-拒绝共创申请。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求审核-拒绝共创申请失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取审核-拒绝共创申请失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:审核-拒绝共创申请。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析审核-拒绝共创申请:%w", err) } var data DataCooperationApplicationReject err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationAdd 创建共创申请 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationAdd(param ReqCooperationApplicationAdd) (*DataCooperationApplicationAdd, error) { url := gateway.baseUrL + "/cooperation-applications" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:创建共创申请。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求创建共创申请失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取创建共创申请失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:创建共创申请。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析创建共创申请:%w", err) } var data DataCooperationApplicationAdd err = gateway.GetResponseData(result, &data) return &data, err } // Cooperation-applicationsSearch 查询共创申请 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationsSearch(param ReqCooperationApplicationSearch) (*DataCooperationApplicationSearch, error) { url := gateway.baseUrL + "/cooperation-applications/search" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:查询共创申请。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求查询共创申请失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取查询共创申请失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:查询共创申请。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析查询共创申请:%w", err) } var data DataCooperationApplicationSearch err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationsApply 申请共创 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationsApply(param ReqCooperationApplicationApply) (*DataCooperationApplicationApply, error) { url := gateway.baseUrL + "/cooperation-applications/apply-for-cooperation" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:申请共创。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求申请共创失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取申请共创失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:申请共创。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析申请共创:%w", err) } var data DataCooperationApplicationApply err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationRemove 移除共创申请 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationRemove(param ReqCooperationApplicationRemove) (*DataCooperationApplicationRemove, error) { url := gateway.baseUrL + "/cooperation-applications/" + strconv.Itoa(param.ApplicationId) method := "DELETE" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:移除共创申请。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求移除共创申请失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取移除共创申请失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:移除共创申请。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析移除共创申请:%w", err) } var data DataCooperationApplicationRemove err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationList 返回共创申请列表 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationList(param ReqCooperationApplicationList) (*DataCooperationApplicationList, error) { url := gateway.baseUrL + "/cooperation-applications" method := "GET" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:返回共创申请列表。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求返回共创申请列表失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取返回共创申请列表失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:返回共创申请列表。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析返回共创申请列表:%w", err) } var data DataCooperationApplicationList err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationGet 返回共创申请详情 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationGet(param ReqCooperationApplicationGet) (*DataCooperationApplicationGet, error) { url := gateway.baseUrL + "/cooperation-applications/" + strconv.Itoa(param.CooperationApplicationId) method := "GET" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:返回共创申请详情。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求返回共创申请详情失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取返回共创申请详情失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:返回共创申请详情。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析返回共创申请详情:%w", err) } var data DataCooperationApplicationGet err = gateway.GetResponseData(result, &data) return &data, err } // CooperationApplicationsBatchApproval 共创申请一键审核 func (gateway HttplibAlliedCreationCooperation) CooperationApplicationsOneclickApproval(param ReqCooperationApplicationOneclickApproval) (*DataCooperationApplicationOneclickApproval, error) { url := gateway.baseUrL + "/cooperation-applications/oneclick-approval" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:共创申请一键审核。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求共创申请一键审核失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取共创申请一键审核失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:共创申请一键审核。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析共创申请一键审核:%w", err) } var data DataCooperationApplicationOneclickApproval err = gateway.GetResponseData(result, &data) return &data, err } // ApplyForCooperation 申请共创项目 func (gateway HttplibAlliedCreationCooperation) ApplyForCooperation(param ReqApplyForCooperation) (*DataApplyForCooperation, error) { url := gateway.baseUrL + "/cooperation-applications/" + strconv.Itoa(param.CooperationProjectId) + "/apply-for-cooperation" method := "POST" req := gateway.CreateRequest(url, method) log.Logger.Debug("向业务模块请求数据:申请共创项目。", map[string]interface{}{ "api": method + ":" + url, "param": param, }) req, err := req.JSONBody(param) if err != nil { return nil, fmt.Errorf("请求申请共创项目失败:%w", err) } byteResult, err := req.Bytes() if err != nil { return nil, fmt.Errorf("获取申请共创项目失败:%w", err) } log.Logger.Debug("获取业务模块请求数据:申请共创项目。", map[string]interface{}{ "result": string(byteResult), }) var result service_gateway.GatewayResponse err = json.Unmarshal(byteResult, &result) if err != nil { return nil, fmt.Errorf("解析申请共创项目:%w", err) } var data DataApplyForCooperation err = gateway.GetResponseData(result, &data) return &data, err }