Forráskód Böngészése

添加parse time和调整流程控件解析工具

wangbo 1 napja
szülő
commit
2a3252cb3a
6 módosított fájl, 55 hozzáadás és 22 törlés
  1. 8 0
      controls/bank.go
  2. 2 22
      controls/controls.go
  3. 8 0
      controls/dept.go
  4. 11 0
      controls/id_name.go
  5. 7 0
      controls/project.go
  6. 19 0
      controls/time.go

+ 8 - 0
controls/bank.go

@@ -0,0 +1,8 @@
+package controls
+
+// 银行控件
+type BankInfo struct {
+	ID   string `json:"id"`
+	Name string `json:"name"`
+	Code string `json:"code"`
+}

+ 2 - 22
controls/controls.go

@@ -9,11 +9,8 @@ type InfoStruct interface {
 	BankInfo
 }
 
-// 银行控件
-type BankInfo struct {
-	ID   string `json:"id"`
-	Name string `json:"name"`
-	Code string `json:"code"`
+type InfosStruct interface {
+	ProjectInfo | DeptInfo | IDName | SubjectIDName
 }
 
 func ExtractInfo[T InfoStruct](infoStr string) (*T, error) {
@@ -29,23 +26,6 @@ func ExtractInfo[T InfoStruct](infoStr string) (*T, error) {
 	return info, nil
 }
 
-type InfosStruct interface {
-	ProjectInfo | DeptInfo
-}
-
-// 项目控件
-type ProjectInfo struct {
-	ID   string `json:"id"`
-	Name string `json:"name"`
-}
-
-// 部门控件
-type DeptInfo struct {
-	Type string `json:"type"`
-	ID   string `json:"subjectId"`
-	Name string `json:"name"`
-}
-
 func ExtractInfoFormInfos[T InfosStruct](infosStr string) (*T, error) {
 	infos, err := ExtractInfos[T](infosStr)
 	if err != nil {

+ 8 - 0
controls/dept.go

@@ -0,0 +1,8 @@
+package controls
+
+// 部门控件
+type DeptInfo struct {
+	Type string `json:"type"`
+	ID   string `json:"subjectId"`
+	Name string `json:"name"`
+}

+ 11 - 0
controls/id_name.go

@@ -0,0 +1,11 @@
+package controls
+
+type SubjectIDName struct {
+	ID   string `json:"subjectId"`
+	Name string `json:"name"`
+}
+
+type IDName struct {
+	ID   string `json:"id"`
+	Name string `json:"name"`
+}

+ 7 - 0
controls/project.go

@@ -0,0 +1,7 @@
+package controls
+
+// 项目控件
+type ProjectInfo struct {
+	ID   string `json:"id"`
+	Name string `json:"name"`
+}

+ 19 - 0
controls/time.go

@@ -0,0 +1,19 @@
+package controls
+
+import (
+	"git.sxidc.com/go-tools/utils/strutils"
+	"time"
+)
+
+func ParseTime(timeStr string) (*time.Time, error) {
+	if strutils.IsStringEmpty(timeStr) {
+		return &time.Time{}, nil
+	}
+
+	t, err := time.Parse(time.RFC3339Nano, timeStr)
+	if err != nil {
+		return nil, err
+	}
+
+	return &t, nil
+}