From e289c8d2c9ed86dddd95e8decba5e71fb20da966 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期三, 27 十二月 2023 17:40:39 +0800
Subject: [PATCH] 物料表增加虚拟件类型

---
 constvar/const.go |   65 +++++++++++++++++++++++++++++++-
 1 files changed, 62 insertions(+), 3 deletions(-)

diff --git a/constvar/const.go b/constvar/const.go
index cb12151..18a624a 100644
--- a/constvar/const.go
+++ b/constvar/const.go
@@ -53,14 +53,73 @@
 	StoredProduct                        // 鍙偍瀛樼殑浜у搧
 )
 
+// MaterialMode 鐗╂枡绫诲瀷(瀛楃涓诧級
 type MaterialMode string
 
 const (
-	MaterialModeRaw      MaterialMode = "鍘熸潗鏂�"
-	MaterialModeSemi     MaterialMode = "鍗婃垚鍝�"
-	MaterialModeFinished MaterialMode = "鎴愬搧"
+	MaterialModeRaw         MaterialMode = "鍘熸潗鏂�"
+	MaterialModeSemi        MaterialMode = "鍗婃垚鍝�"
+	MaterialModeFinished    MaterialMode = "鎴愬搧"
+	MaterialModeAuxiliary   MaterialMode = "杈呮枡"  //杈呮枡
+	MaterialModeConsumables MaterialMode = "鑰楁潗"  //鑰楁潗
+	MaterialModeOther       MaterialMode = "鍏朵粬"  //鍏朵粬
+	MaterialModeVirtual     MaterialMode = "铏氭嫙浠�" //铏氭嫙浠�, 涓嶈兘閿�鍞紝涓嶈兘鍑哄叆搴擄紝涓嶈兘閲囪喘
 )
 
+func (t MaterialMode) Valid() bool {
+	if t != MaterialModeRaw &&
+		t != MaterialModeSemi &&
+		t != MaterialModeAuxiliary &&
+		t != MaterialModeConsumables &&
+		t != MaterialModeOther &&
+		t != MaterialModeFinished &&
+		t != MaterialModeVirtual {
+		return false
+	}
+	return true
+}
+
+func (t MaterialMode) Type() MaterialType {
+	switch t {
+	case MaterialModeRaw:
+		return MaterialTypeRaw
+	case MaterialModeSemi:
+		return MaterialTypeSemi
+	case MaterialModeFinished:
+		return MaterialTypeFinished
+	case MaterialModeAuxiliary:
+		return MaterialTypeAuxiliary
+	case MaterialModeConsumables:
+		return MaterialTypeConsumables
+	case MaterialModeOther:
+		return MaterialTypeOther
+	case MaterialModeVirtual:
+		return MaterialTypeVirtual
+	}
+	return MaterialType(0)
+}
+
+// MaterialType 鐗╂枡绫诲瀷(鏁板瓧)
+type MaterialType int
+
+const (
+	MaterialTypeRaw         = iota + 1 // 鍘熸潗鏂�
+	MaterialTypeSemi                   // 鍗婃垚鍝�
+	MaterialTypeFinished               // 鎴愬搧
+	MaterialTypeAuxiliary              //杈呮枡
+	MaterialTypeConsumables            //鑰楁潗
+	MaterialTypeOther                  //鍏朵粬
+	MaterialTypeVirtual                //铏氭嫙浠�
+)
+
+func (t MaterialType) Valid() bool {
+	if t < MaterialTypeRaw ||
+		t > MaterialTypeVirtual {
+		return false
+	}
+	return true
+}
+
 type MaterialStatus int
 
 const (

--
Gitblit v1.8.0