command_create_project_module_files_request.go 1.5 KB
package command

import (
	"fmt"
	"github.com/astaxie/beego/validation"
	"strings"
)

type CreateProjectModuleFilesRequest struct {
	// 项目模块编号
	ProjectModuleId int64 `json:"projectModuleId,omitempty"`
	// 项目模块版本编号
	ProjectModuleVersionId int64 `json:"projectModuleVersionId,omitempty"`
	// 父节点编号
	ParentId int64 `json:"parentId,omitempty"`
	// 文件类型 1:文件夹 2:文件
	FileType int `json:"fileType,omitempty"`
	// 文件名称
	FileName string `json:"fileName,omitempty"`
	// 文件键值
	FileKey string `json:"fileKey,omitempty"`
	// 代码块
	CodeBlock string `json:"codeBlock,omitempty"`
	// 备注信息
	Remark string `json:"remark,omitempty"`
}

func (CreateProjectModuleFilesRequest *CreateProjectModuleFilesRequest) ValidateCommand() error {
	valid := validation.Validation{}
	b, err := valid.Valid(CreateProjectModuleFilesRequest)
	//  符号:/ \\ 在目录中有使用,需要替换为 -
	//if CreateProjectModuleFilesRequest.FileType==2{
	//	CreateProjectModuleFilesRequest.FileName = strings.Replace(CreateProjectModuleFilesRequest.FileName,"/","\\",-1)
	//}else if CreateProjectModuleFilesRequest.FileType==1{
	CreateProjectModuleFilesRequest.FileName = strings.Replace(CreateProjectModuleFilesRequest.FileName, "/", "-", -1)
	CreateProjectModuleFilesRequest.FileName = strings.Replace(CreateProjectModuleFilesRequest.FileName, "\\", "-", -1)
	//}
	if err != nil {
		return err
	}
	if !b {
		for _, validErr := range valid.Errors {
			return fmt.Errorf("%s  %s", validErr.Key, validErr.Message)
		}
	}
	return nil
}