utils

package
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 1, 2024 License: MulanPSL-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateTmpFile

func CreateTmpFile(pre string) (f *os.File, err error)

"tmp*xlsx"

func GenTmpFilename

func GenTmpFilename(pre string) string

func GetDatas

func GetDatas(reqParam *dto2.HttpRequestDto) (*resty.Response, error)

func MakeHeader

func MakeHeader(token string, req *resty.Request) *resty.Request

func PostDatas

func PostDatas(httpRequestDto *dto2.HttpRequestDto) (*resty.Response, error)
body := dto.QueryParam{
	Current: 1,
	PageSize: 12,
	OrderBys: "effect_time|desc",
	Param : map[string]interface{}{
		"card_id": "813231927293313025",
	},

www.ichub.com/nodeapi/common-strapi/sign/querySignQuota https://xuri.me/excelize/zh-hans/workbook.html#GetPageMargins

func TakeoutImageBase64

func TakeoutImageBase64(base64 string) string

src = "data:image/png;base64,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";

func WriteExcel2Tmp

func WriteExcel2Tmp(buf *bytes.Buffer) (string, error)

func WriteHtml2Tmp

func WriteHtml2Tmp(buf *bytes.Buffer) (string, error)

func WritePdf2Tmp

func WritePdf2Tmp(buf []byte) (string, error)

func WritePng2Tmp

func WritePng2Tmp(buf []byte) (string, error)

func WritePngTmpBy

func WritePngTmpBy(base64str string) string

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL