Ver código fonte

发起流程增加流程ID返回参数

张亚军 1 mês atrás
pai
commit
25172f86fc
2 arquivos alterados com 17 adições e 17 exclusões
  1. 16 16
      ng_cws_client/ng_cws_client.go
  2. 1 1
      utils/http_client/request.go

+ 16 - 16
ng_cws_client/ng_cws_client.go

@@ -30,14 +30,14 @@ func Destroy() {
 	http_client.Destroy(NGCwsClient)
 }
 
-func StartWorkFlowByBusinessType(reqParams *request.StartWorkFlowByBusinessTypeRequest) error {
+func StartWorkFlowByBusinessType(reqParams *request.StartWorkFlowByBusinessTypeRequest) (string, error) {
 	//根据业务类型获取流程模型ID
 	workflowTemplateId, err := getWorkTemplateInfoByBusinessType(reqParams.BusinessType, reqParams.TenantID)
 	if err != nil {
-		return err
+		return "", err
 	}
 	if utils.IsStringEmpty(workflowTemplateId) {
-		return errors.New("该业务类型未配置流程")
+		return "", errors.New("该业务类型未配置流程")
 	}
 
 	//发起流程前校验 获取人员组织信息
@@ -47,7 +47,7 @@ func StartWorkFlowByBusinessType(reqParams *request.StartWorkFlowByBusinessTypeR
 		TenantID:           reqParams.TenantID,
 	})
 	if err != nil {
-		return err
+		return "", err
 	}
 
 	//发起流程
@@ -57,11 +57,11 @@ func StartWorkFlowByBusinessType(reqParams *request.StartWorkFlowByBusinessTypeR
 	}
 	jsonBytes, err := json.Marshal(businessObject)
 	if err != nil {
-		return err
+		return "", err
 	}
 	businessObjectStr := string(jsonBytes)
 
-	err = StartWorkflow(&request.StartWorkflowRequest{
+	workflowId, err := StartWorkflow(&request.StartWorkflowRequest{
 		WorkflowTemplateID: workflowTemplateId,
 		LaunchUserName:     reqParams.LaunchUserName,
 		Matter:             reqParams.Matter,
@@ -71,37 +71,37 @@ func StartWorkFlowByBusinessType(reqParams *request.StartWorkFlowByBusinessTypeR
 		TenantID:           reqParams.TenantID,
 	})
 	if err != nil {
-		return err
+		return "", err
 	}
 
-	return nil
+	return workflowId, nil
 
 }
 
-func StartWorkflow(reqParams *request.StartWorkflowRequest) error {
+func StartWorkflow(reqParams *request.StartWorkflowRequest) (string, error) {
 	if utils.IsStringEmpty(cwsUrl) {
-		return errors.New("未配置CWS地址")
+		return "", errors.New("未配置CWS地址")
 	}
 	requestJson, err := json.Marshal(reqParams)
 	if err != nil {
-		return err
+		return "", err
 	}
 	postResponse, err := NGCwsClient.NewRequest(http_client.WithNewRequestTimeout(cwsTimeOut)).
 		Post(cwsUrl+service.StartWorkFlowMethodName, requestJson)
 	if err != nil {
-		return err
+		return "", err
 	}
 
-	resp := new(response.MsgResponse)
+	resp := new(response.InfoResponse[string])
 	err = postResponse.Json(resp)
 	if err != nil {
-		return err
+		return "", err
 	}
 	if !resp.Success {
-		return errors.New(resp.Msg)
+		return "", errors.New(resp.Msg)
 	}
 
-	return nil
+	return resp.Info, nil
 }
 
 func getWorkTemplateInfoByBusinessType(businessType string, tenantId string) (string, error) {

+ 1 - 1
utils/http_client/request.go

@@ -8,7 +8,7 @@ import (
 
 type RequestOption func(request *Request)
 
-func WithRequestHeaders(headers map[string]string) RequestOption {
+func WithRequestHeaders(headers [string]string) RequestOption {
 	return func(request *Request) {
 		request.SetHeaders(headers)
 	}