Skip to content

Commit 9763867

Browse files
committed
20220922 update : fix convert apis.
1 parent 5883315 commit 9763867

File tree

4 files changed

+303
-5
lines changed

4 files changed

+303
-5
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,3 @@ _testmain.go
2222
*.exe
2323
*.test
2424
*.prof
25-
TestData/roywang.pfx

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,11 @@
2020
- Fetch the required shape from worksheet.
2121
- Leverage the power of named ranges.
2222

23-
## Feature & Enhancements in Version 22.8
23+
## Feature & Enhancements in Version 22.9
2424

25-
- Support transposing Excel Rows to Columns.
25+
- Add api for converting workbook to png.
26+
- Add api for converting workbook to pdf.
27+
- Add api for converting workbook to docx.
2628

2729
## Read & Write Spreadsheet Formats
2830

api_cells.go

Lines changed: 234 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ import (
3333
)
3434

3535
func Version() {
36-
fmt.Println("---Version: 22.8---")
36+
fmt.Println("---Version: 22.9---")
3737
}
3838

3939
/* Create Instance of CellsApiService
@@ -23364,6 +23364,238 @@ func (a *CellsApiService) PostBatchConvert(localVarOptionals *PostBatchConvertOp
2336423364
return localVarReturnValue, localVarHttpResponse, err
2336523365
}
2336623366

23367+
/*
23368+
CellsApiService
23369+
* @param file File to upload
23370+
* @param optional nil or *PostConvertWorkbookToDocxOpts - Optional Parameters:
23371+
* @param "Password" (optional.String) -
23372+
* @param "CheckExcelRestriction" (optional.Bool) -
23373+
23374+
@return FileInfo
23375+
*/
23376+
23377+
type PostConvertWorkbookToDocxOpts struct {
23378+
Password string
23379+
CheckExcelRestriction bool
23380+
}
23381+
23382+
func (a *CellsApiService) PostConvertWorkbookToDocx(file string, localVarOptionals *PostConvertWorkbookToDocxOpts) (FileInfo, *http.Response, error) {
23383+
var (
23384+
localVarHttpMethod = strings.ToUpper("Post")
23385+
localVarPostBody interface{}
23386+
localVarFileName string
23387+
localVarFileBytes []byte
23388+
localVarReturnValue FileInfo
23389+
)
23390+
23391+
// create path and map variables
23392+
localVarPath := a.client.cfg.BasePath + "/" + a.client.cfg.Version + "/cells/convert/docx"
23393+
23394+
localVarHeaderParams := make(map[string]string)
23395+
localVarQueryParams := url.Values{}
23396+
localVarFormParams := url.Values{}
23397+
23398+
if localVarOptionals != nil {
23399+
localVarQueryParams.Add("password", parameterToString(localVarOptionals.Password, ""))
23400+
}
23401+
if localVarOptionals != nil {
23402+
localVarQueryParams.Add("checkExcelRestriction", parameterToString(localVarOptionals.CheckExcelRestriction, ""))
23403+
}
23404+
// to determine the Content-Type header
23405+
localVarHttpContentTypes := []string{"multipart/form-data"}
23406+
23407+
// set Content-Type header
23408+
localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
23409+
if localVarHttpContentType != "" {
23410+
localVarHeaderParams["Content-Type"] = localVarHttpContentType
23411+
}
23412+
23413+
// to determine the Accept header
23414+
localVarHttpHeaderAccepts := []string{"application/json"}
23415+
23416+
// set Accept header
23417+
localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
23418+
if localVarHttpHeaderAccept != "" {
23419+
localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
23420+
}
23421+
localVarFormParams["@file"] = []string{file}
23422+
// var localVarFile (*os.File) = file
23423+
// if localVarFile != nil {
23424+
// fbs, _ := ioutil.ReadAll(localVarFile)
23425+
// localVarFileBytes = fbs
23426+
// localVarFileName = localVarFile.Name()
23427+
// localVarFile.Close()
23428+
// }
23429+
r, err := a.client.prepareRequest(localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
23430+
if err != nil {
23431+
return localVarReturnValue, nil, err
23432+
}
23433+
23434+
localVarHttpResponse, err := a.client.callAPI(r)
23435+
if err != nil || localVarHttpResponse == nil {
23436+
return localVarReturnValue, localVarHttpResponse, err
23437+
}
23438+
defer localVarHttpResponse.Body.Close()
23439+
if localVarHttpResponse.StatusCode >= 300 {
23440+
bodyBytes, _ := ioutil.ReadAll(localVarHttpResponse.Body)
23441+
return localVarReturnValue, localVarHttpResponse, reportError("Status: %v, Body: %s", localVarHttpResponse.Status, bodyBytes)
23442+
}
23443+
if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&localVarReturnValue); err != nil {
23444+
return localVarReturnValue, localVarHttpResponse, err
23445+
}
23446+
return localVarReturnValue, localVarHttpResponse, err
23447+
}
23448+
23449+
/*
23450+
CellsApiService
23451+
* @param file File to upload
23452+
* @param optional nil or *PostConvertWorkbookToPDFOpts - Optional Parameters:
23453+
* @param "Password" (optional.String) -
23454+
* @param "CheckExcelRestriction" (optional.Bool) -
23455+
23456+
@return FileInfo
23457+
*/
23458+
23459+
type PostConvertWorkbookToPDFOpts struct {
23460+
Password string
23461+
CheckExcelRestriction bool
23462+
}
23463+
23464+
func (a *CellsApiService) PostConvertWorkbookToPDF(file string, localVarOptionals *PostConvertWorkbookToPDFOpts) (FileInfo, *http.Response, error) {
23465+
var (
23466+
localVarHttpMethod = strings.ToUpper("Post")
23467+
localVarPostBody interface{}
23468+
localVarFileName string
23469+
localVarFileBytes []byte
23470+
localVarReturnValue FileInfo
23471+
)
23472+
23473+
// create path and map variables
23474+
localVarPath := a.client.cfg.BasePath + "/" + a.client.cfg.Version + "/cells/convert/pdf"
23475+
23476+
localVarHeaderParams := make(map[string]string)
23477+
localVarQueryParams := url.Values{}
23478+
localVarFormParams := url.Values{}
23479+
23480+
if localVarOptionals != nil {
23481+
localVarQueryParams.Add("password", parameterToString(localVarOptionals.Password, ""))
23482+
}
23483+
if localVarOptionals != nil {
23484+
localVarQueryParams.Add("checkExcelRestriction", parameterToString(localVarOptionals.CheckExcelRestriction, ""))
23485+
}
23486+
// to determine the Content-Type header
23487+
localVarHttpContentTypes := []string{"multipart/form-data"}
23488+
23489+
// set Content-Type header
23490+
localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
23491+
if localVarHttpContentType != "" {
23492+
localVarHeaderParams["Content-Type"] = localVarHttpContentType
23493+
}
23494+
23495+
// to determine the Accept header
23496+
localVarHttpHeaderAccepts := []string{"application/json"}
23497+
23498+
// set Accept header
23499+
localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
23500+
if localVarHttpHeaderAccept != "" {
23501+
localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
23502+
}
23503+
localVarFormParams["@file"] = []string{file}
23504+
r, err := a.client.prepareRequest(localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
23505+
if err != nil {
23506+
return localVarReturnValue, nil, err
23507+
}
23508+
23509+
localVarHttpResponse, err := a.client.callAPI(r)
23510+
if err != nil || localVarHttpResponse == nil {
23511+
return localVarReturnValue, localVarHttpResponse, err
23512+
}
23513+
defer localVarHttpResponse.Body.Close()
23514+
if localVarHttpResponse.StatusCode >= 300 {
23515+
bodyBytes, _ := ioutil.ReadAll(localVarHttpResponse.Body)
23516+
return localVarReturnValue, localVarHttpResponse, reportError("Status: %v, Body: %s", localVarHttpResponse.Status, bodyBytes)
23517+
}
23518+
if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&localVarReturnValue); err != nil {
23519+
return localVarReturnValue, localVarHttpResponse, err
23520+
}
23521+
return localVarReturnValue, localVarHttpResponse, err
23522+
}
23523+
23524+
/*
23525+
CellsApiService
23526+
* @param file File to upload
23527+
* @param optional nil or *PostConvertWorkbookToPNGOpts - Optional Parameters:
23528+
* @param "Password" (optional.String) -
23529+
* @param "CheckExcelRestriction" (optional.Bool) -
23530+
23531+
@return FileInfo
23532+
*/
23533+
23534+
type PostConvertWorkbookToPNGOpts struct {
23535+
Password string
23536+
CheckExcelRestriction bool
23537+
}
23538+
23539+
func (a *CellsApiService) PostConvertWorkbookToPNG(file string, localVarOptionals *PostConvertWorkbookToPNGOpts) (FileInfo, *http.Response, error) {
23540+
var (
23541+
localVarHttpMethod = strings.ToUpper("Post")
23542+
localVarPostBody interface{}
23543+
localVarFileName string
23544+
localVarFileBytes []byte
23545+
localVarReturnValue FileInfo
23546+
)
23547+
23548+
// create path and map variables
23549+
localVarPath := a.client.cfg.BasePath + "/" + a.client.cfg.Version + "/cells/convert/png"
23550+
23551+
localVarHeaderParams := make(map[string]string)
23552+
localVarQueryParams := url.Values{}
23553+
localVarFormParams := url.Values{}
23554+
23555+
if localVarOptionals != nil {
23556+
localVarQueryParams.Add("password", parameterToString(localVarOptionals.Password, ""))
23557+
}
23558+
if localVarOptionals != nil {
23559+
localVarQueryParams.Add("checkExcelRestriction", parameterToString(localVarOptionals.CheckExcelRestriction, ""))
23560+
}
23561+
// to determine the Content-Type header
23562+
localVarHttpContentTypes := []string{"multipart/form-data"}
23563+
23564+
// set Content-Type header
23565+
localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
23566+
if localVarHttpContentType != "" {
23567+
localVarHeaderParams["Content-Type"] = localVarHttpContentType
23568+
}
23569+
23570+
// to determine the Accept header
23571+
localVarHttpHeaderAccepts := []string{"application/json"}
23572+
23573+
// set Accept header
23574+
localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
23575+
if localVarHttpHeaderAccept != "" {
23576+
localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
23577+
}
23578+
localVarFormParams["@file"] = []string{file}
23579+
r, err := a.client.prepareRequest(localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
23580+
if err != nil {
23581+
return localVarReturnValue, nil, err
23582+
}
23583+
23584+
localVarHttpResponse, err := a.client.callAPI(r)
23585+
if err != nil || localVarHttpResponse == nil {
23586+
return localVarReturnValue, localVarHttpResponse, err
23587+
}
23588+
defer localVarHttpResponse.Body.Close()
23589+
if localVarHttpResponse.StatusCode >= 300 {
23590+
bodyBytes, _ := ioutil.ReadAll(localVarHttpResponse.Body)
23591+
return localVarReturnValue, localVarHttpResponse, reportError("Status: %v, Body: %s", localVarHttpResponse.Status, bodyBytes)
23592+
}
23593+
if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&localVarReturnValue); err != nil {
23594+
return localVarReturnValue, localVarHttpResponse, err
23595+
}
23596+
return localVarReturnValue, localVarHttpResponse, err
23597+
}
23598+
2336723599
/*
2336823600
CellsApiService Check if storage exists
2336923601
* @param storageName Storage name
@@ -23466,7 +23698,7 @@ func (a *CellsApiService) UploadFile(file *os.File, localVarOptionals *UploadFil
2346623698
localVarQueryParams.Add("storageName", parameterToString(localVarOptionals.StorageName, ""))
2346723699
}
2346823700
// to determine the Content-Type header
23469-
localVarHttpContentTypes := []string{"multipart/form-data"}
23701+
localVarHttpContentTypes := []string{"application/octet-stream"}
2347023702

2347123703
// set Content-Type header
2347223704
localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)

api_cells_test.go

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6514,3 +6514,68 @@ func TestCellsPictureGetExtractBarcodes(t *testing.T) {
65146514
fmt.Printf("%d\tTestCellsSaveAsPostDocumentSaveAs - %d\n", GetBaseTest().GetTestNumber(), 200)
65156515
}
65166516
}
6517+
func TestCellsPutConvertWorkbookPDF(t *testing.T) {
6518+
6519+
args := new(CellsWorkbookPutConvertWorkbookOpts)
6520+
args.Format = "PDF"
6521+
// args.OutPath = "book1.xlsx.pdf"
6522+
file, err := os.Open("../TestData/" + GetBook1())
6523+
if err != nil {
6524+
return
6525+
}
6526+
localVarReturnValue, httpResponse, err := GetBaseTest().CellsAPI.CellsWorkbookPutConvertWorkbook(file, args)
6527+
if err != nil {
6528+
t.Error(err)
6529+
} else if httpResponse.StatusCode < 200 || httpResponse.StatusCode > 299 {
6530+
t.Fail()
6531+
} else {
6532+
fmt.Printf("%d\t TestCellsPutConvertWorkbook - %d\n", GetBaseTest().GetTestNumber(), httpResponse.StatusCode)
6533+
file1, err2 := os.Create("../Book1.pdf")
6534+
if err2 != nil {
6535+
return
6536+
}
6537+
if _, err3 := file1.Write(localVarReturnValue); err3 != nil {
6538+
fmt.Println(err3)
6539+
}
6540+
file1.Close()
6541+
}
6542+
}
6543+
func TestCellsPostConvertWorkbookToPNG(t *testing.T) {
6544+
6545+
args := new(PostConvertWorkbookToPNGOpts)
6546+
6547+
_, httpResponse, err := GetBaseTest().CellsAPI.PostConvertWorkbookToPNG("../TestData/"+GetBook1(), args)
6548+
if err != nil {
6549+
t.Error(err)
6550+
} else if httpResponse.StatusCode < 200 || httpResponse.StatusCode > 299 {
6551+
t.Fail()
6552+
} else {
6553+
fmt.Printf("%d\t func TestCells PostConvertWorkbookToPNG \n", GetBaseTest().GetTestNumber())
6554+
}
6555+
}
6556+
6557+
func TestCellsPostConvertWorkbookToPDF(t *testing.T) {
6558+
6559+
args := new(PostConvertWorkbookToPDFOpts)
6560+
6561+
_, httpResponse, err := GetBaseTest().CellsAPI.PostConvertWorkbookToPDF("../TestData/"+GetBook1(), args)
6562+
if err != nil {
6563+
t.Error(err)
6564+
} else if httpResponse.StatusCode < 200 || httpResponse.StatusCode > 299 {
6565+
t.Fail()
6566+
} else {
6567+
fmt.Printf("%d\t func TestCells PostConvertWorkbookToPDF \n", GetBaseTest().GetTestNumber())
6568+
}
6569+
}
6570+
func TestCellsPostConvertWorkbookToDocx(t *testing.T) {
6571+
6572+
args := new(PostConvertWorkbookToDocxOpts)
6573+
_, httpResponse, err := GetBaseTest().CellsAPI.PostConvertWorkbookToDocx("../TestData/"+GetBook1(), args)
6574+
if err != nil {
6575+
t.Error(err)
6576+
} else if httpResponse.StatusCode < 200 || httpResponse.StatusCode > 299 {
6577+
t.Fail()
6578+
} else {
6579+
fmt.Printf("%d\t func TestCells PostConvertWorkbookToDocx \n", GetBaseTest().GetTestNumber())
6580+
}
6581+
}

0 commit comments

Comments
 (0)