httplib_basic_service_gateway.go 4.8 KB
package service_gateway

import (
	"gitlab.fjmaimaimai.com/allied-creation/allied-creation-cooperation/pkg/constant"
	"strings"
	"time"
)

type HttplibBasicServiceGateway struct {
	httplibBaseServiceGateway
}

// AgreeCooperationApplication 同意共创申请
func (serviceGateway *HttplibBasicServiceGateway) AgreeCooperationApplication() (map[string]interface{}, error) {
	url := strings.Join([]string{serviceGateway.baseURL, "notice-personal/agree-join-creation-project"}, "/")
	request := serviceGateway.createRequest(url, "post")
	request.Header("companyId", "")
	request.Header("userId", "")
	request.Header("orgId", "")
	request.Header("userBasic", "")
	options := map[string]interface{}{}
	_, err := request.JSONBody(options)
	if err != nil {
		return nil, err
	}
	response := make(map[string]interface{})
	err2 := request.ToJSON(&response)
	if err2 != nil {
		return nil, err2
	}
	data, err := serviceGateway.responseHandle(response)
	return data, err
}

// RejectCooperationApplication 拒绝共创申请
func (serviceGateway *HttplibBasicServiceGateway) RejectCooperationApplication() (map[string]interface{}, error) {
	url := strings.Join([]string{serviceGateway.baseURL, "notice-personal/refuse-join-creation-project"}, "/")
	request := serviceGateway.createRequest(url, "post")
	request.Header("companyId", "")
	request.Header("userId", "")
	request.Header("orgId", "")
	request.Header("userBasic", "")
	options := make(map[string]interface{})
	_, err2 := request.JSONBody(options)
	if err2 != nil {
		return nil, err2
	}
	response := make(map[string]interface{})
	err := request.ToJSON(&response)
	if err != nil {
		return nil, err
	}
	data, err := serviceGateway.responseHandle(response)
	return data, err
}

// InformExpectedDividends 分红预算消息
func (serviceGateway *HttplibBasicServiceGateway) InformExpectedDividends() (map[string]interface{}, error) {
	url := strings.Join([]string{serviceGateway.baseURL, "notice-personal/inform-expected-dividends"}, "/")
	request := serviceGateway.createRequest(url, "post")
	request.Header("companyId", "")
	request.Header("userId", "")
	request.Header("orgId", "")
	request.Header("userBasic", "")
	options := make(map[string]interface{})
	_, err2 := request.JSONBody(options)
	if err2 != nil {
		return nil, err2
	}
	response := make(map[string]interface{})
	err := request.ToJSON(&response)
	if err != nil {
		return nil, err
	}
	data, err := serviceGateway.responseHandle(response)
	return data, err
}

// InformJoinCreationContract 确认共创
func (serviceGateway *HttplibBasicServiceGateway) InformJoinCreationContract() (map[string]interface{}, error) {
	url := strings.Join([]string{serviceGateway.baseURL, "notice-personal/inform-join-creation-contract"}, "/")
	request := serviceGateway.createRequest(url, "post")
	options := make(map[string]interface{})
	_, err2 := request.JSONBody(options)
	if err2 != nil {
		return nil, err2
	}
	response := make(map[string]interface{})
	err := request.ToJSON(&response)
	if err != nil {
		return nil, err
	}
	data, err := serviceGateway.responseHandle(response)
	return data, err
}

// PayCreditAccount 账期支付
func (serviceGateway *HttplibBasicServiceGateway) PayCreditAccount() (map[string]interface{}, error) {
	url := strings.Join([]string{serviceGateway.baseURL, "notice-personal/notice-personal/credit-account/payment"}, "/")
	request := serviceGateway.createRequest(url, "post")
	request.Header("companyId", "")
	request.Header("userId", "")
	request.Header("orgId", "")
	request.Header("userBasic", "")
	options := make(map[string]interface{})
	_, err2 := request.JSONBody(options)
	if err2 != nil {
		return nil, err2
	}
	response := make(map[string]interface{})
	err := request.ToJSON(&response)
	if err != nil {
		return nil, err
	}
	data, err := serviceGateway.responseHandle(response)
	return data, err
}

// DividendsEstimate 分红预算
func (serviceGateway *HttplibBasicServiceGateway) DividendsEstimate() (map[string]interface{}, error) {
	url := strings.Join([]string{serviceGateway.baseURL, "notice-personal/credit-account/dividends-estimate"}, "/")
	request := serviceGateway.createRequest(url, "post")
	request.Header("companyId", "")
	request.Header("userId", "")
	request.Header("orgId", "")
	request.Header("userBasic", "")
	options := make(map[string]interface{})
	_, err2 := request.JSONBody(options)
	if err2 != nil {
		return nil, err2
	}
	response := make(map[string]interface{})
	err := request.ToJSON(&response)
	if err != nil {
		return nil, err
	}
	data, err := serviceGateway.responseHandle(response)
	return data, err
}

func NewHttplibMessageServiceGateway() *HttplibBasicServiceGateway {
	return &HttplibBasicServiceGateway{
		httplibBaseServiceGateway: httplibBaseServiceGateway{
			baseURL:          constant.BASIC_MODULE_HOST,
			connectTimeout:   100 * time.Second,
			readWriteTimeout: 30 * time.Second,
		},
	}
}