Skip to content

Commit 6b48d50

Browse files
committed
fix: convert swagger field type string to integer
1 parent 7828f22 commit 6b48d50

File tree

4 files changed

+15
-15
lines changed

4 files changed

+15
-15
lines changed

cmd/sponge/commands/generate/swagger.go

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ func HandleSwaggerJSONCommand() *cobra.Command {
2525
enableUniformResponse bool
2626
enableConvertToOpenAPI3 bool
2727
enableTransformIntegerToString bool
28+
enableStringToInteger bool
2829

2930
jsonFile string
3031
)
@@ -47,6 +48,13 @@ func HandleSwaggerJSONCommand() *cobra.Command {
4748
RunE: func(cmd *cobra.Command, args []string) error {
4849
var err error
4950

51+
if enableStringToInteger {
52+
if err = handleSwaggerFieldStringToInteger(jsonFile); err != nil {
53+
return err
54+
}
55+
fmt.Printf("Successfully transform 64-bit string to integer in %s fields\n", jsonFile)
56+
}
57+
5058
if enableUniformResponse {
5159
if err = handleStandardizeResponseAction(jsonFile); err != nil {
5260
return err
@@ -62,25 +70,15 @@ func HandleSwaggerJSONCommand() *cobra.Command {
6270
fmt.Printf("Successfully convert swagger2.0 to openapi3.0, output: %s, %s\n", outputJSONFile, outputYamlFile)
6371
}
6472

65-
if enableTransformIntegerToString {
66-
if err = handleSwaggerIntegerToStringAction(jsonFile); err != nil {
67-
return err
68-
}
69-
fmt.Printf("Successfully transform 64-bit integer to string in %s fields\n", jsonFile)
70-
}
71-
72-
if enableUniformResponse == false && enableConvertToOpenAPI3 == false && enableTransformIntegerToString == false { //nolint
73-
fmt.Println("No action specified, please use 'sponge web swagger -h' to see available options.")
74-
}
75-
7673
return nil
7774
},
7875
}
7976

8077
cmd.Flags().StringVarP(&jsonFile, "file", "f", "docs/apis.swagger.json", "input swagger json file")
8178
cmd.Flags().BoolVarP(&enableUniformResponse, "enable-standardize-response", "u", false, "standardize response format data in swagger json")
8279
cmd.Flags().BoolVarP(&enableConvertToOpenAPI3, "enable-to-openapi3", "o", false, "convert swagger2.0 to openapi3")
83-
cmd.Flags().BoolVarP(&enableTransformIntegerToString, "enable-integer-to-string", "s", true, "transform 64-bit integer into string in swagger.json fields")
80+
cmd.Flags().BoolVarP(&enableStringToInteger, "enable-string-to-integer", "t", true, "transform string into 64-bit integer in swagger.json fields")
81+
cmd.Flags().BoolVarP(&enableTransformIntegerToString, "enable-integer-to-string", "s", false, "Deprecated, instead use --enable-string-to-integer")
8482

8583
return cmd
8684
}
@@ -470,7 +468,7 @@ func getOutputFile(filePath string) (yamlFile string, jsonFile string) {
470468

471469
// -------------------------------------------------------------------------------------------
472470

473-
func handleSwaggerIntegerToStringAction(jsonFilePath string) error {
471+
func handleSwaggerFieldStringToInteger(jsonFilePath string) error {
474472
newData, err := convertStringToInteger(jsonFilePath)
475473
if err != nil {
476474
return err

scripts/protoc.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ function generateBySpecifiedProto(){
201201
checkResult $?
202202

203203
# handle apis.swagger.json
204-
sponge web swagger --enable-standardize-response --enable-to-openapi3 --enable-integer-to-string --file=docs/apis.swagger.json > /dev/null
204+
sponge web swagger --enable-standardize-response --enable-to-openapi3 --file=docs/apis.swagger.json > /dev/null
205205

206206
# A total of four files are generated: the registration route file *_router.pb.go (saved in the same directory as the protobuf file),
207207
# the injection route file *_router.go (saved in internal/routers by default), the logic code template file *.go (saved in internal/service by default),

scripts/run.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ sleep 0.2
2727
go build -o ${binaryFile} cmd/${serverName}/main.go
2828
checkResult $?
2929

30+
trap 'exit 0' SIGINT
31+
3032
# running server
3133
if test -f "$configFile"; then
3234
./${binaryFile} -c $configFile

scripts/swag-docs.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ checkResult $?
3030
sponge patch modify-dup-num --dir=internal/ecode
3131
sponge patch modify-dup-err-code --dir=internal/ecode
3232
# handle swagger.json
33-
sponge web swagger --enable-to-openapi3 --enable-integer-to-string --file=docs/swagger.json > /dev/null
33+
sponge web swagger --enable-to-openapi3 --file=docs/swagger.json > /dev/null
3434

3535
colorGreen='\033[1;32m'
3636
colorCyan='\033[1;36m'

0 commit comments

Comments
 (0)