Sfoglia il codice sorgente

Merge branch 'develop' of http://code.dashoo.cn/chengjian/opms_backend into feature/schedule_1.0

wangxingcheng 3 anni fa
parent
commit
8e7f67406a

+ 2 - 2
opms_parent/app/model/contract/ctr_contract.go

@@ -55,8 +55,8 @@ type CtrAddProduct struct {
 }
 
 type CtrContractAddReq struct {
-	ContractCode string `json:"contractCode"` // 合同编号
-	ContractName string `json:"contractName"` // 合同名称
+	ContractCode string `json:"contractCode"`                      // 合同编号
+	ContractName string `json:"contractName" v:"required#请输入合同名称"` // 合同名称
 	// CustId            int         `json:"custId"`            // 关联客户
 	// CustName          string      `json:"custName"`          // 客户名称
 	NboId int `json:"nboId"` // 关联项目

+ 17 - 0
opms_parent/swaggerui/swagger.go

@@ -152,6 +152,7 @@ type SwaggerModel struct {
 	Items       *SwaggerModel            `yaml:"items,omitempty"`
 	Ref         string                   `yaml:"ref,omitempty"`
 	Embedded    bool                     `yaml:"embedded,omitempty"`
+	Required    []string                 `yaml:"required,omitempty"`
 }
 
 func RangeSwaggerModel(node *SwaggerModel) []*SwaggerModel {
@@ -664,6 +665,7 @@ func buildFromStruct(declFile *ast.File, st *types.Struct, desc string) (error,
 	// 	}
 	// }
 
+	required := []string{}
 	properties := map[string]*SwaggerModel{}
 	for i := 0; i < st.NumFields(); i++ {
 		fld := st.Field(i)
@@ -716,6 +718,20 @@ func buildFromStruct(declFile *ast.File, st *types.Struct, desc string) (error,
 		if afld.Comment != nil {
 			commentText = afld.Comment.Text()
 		}
+
+		// if strings.Contains(commentText, "required") {
+		// 	required = append(required, name)
+		// }
+		if afld.Tag != nil {
+			tagstr := strings.Split(afld.Tag.Value, "v:")
+			if len(tagstr) > 1 {
+				if strings.Contains(tagstr[1], "required") {
+					required = append(required, name)
+				}
+			}
+			// debugLog("------------------------------%s", afld.Tag.Value)
+		}
+
 		err, ret := buildFromType(fld.Type(), declFile, commentText)
 		if err != nil {
 			return err, nil
@@ -739,6 +755,7 @@ func buildFromStruct(declFile *ast.File, st *types.Struct, desc string) (error,
 	return nil, &SwaggerModel{
 		Type:        "object",
 		Properties:  properties,
+		Required:    required,
 		Description: desc,
 	}
 }