Create & Init Project...
This commit is contained in:
201
app/interface/main/app-resource/model/const.go
Normal file
201
app/interface/main/app-resource/model/const.go
Normal file
@ -0,0 +1,201 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"go-common/app/interface/main/app-resource/model/tab"
|
||||
)
|
||||
|
||||
const (
|
||||
// PlatAndroid is int8 for android.
|
||||
PlatAndroid = int8(0)
|
||||
// PlatIPhone is int8 for iphone.
|
||||
PlatIPhone = int8(1)
|
||||
// PlatIPad is int8 for ipad.
|
||||
PlatIPad = int8(2)
|
||||
// PlatWPhone is int8 for wphone.
|
||||
PlatWPhone = int8(3)
|
||||
// PlatAndroidG is int8 for Android Global.
|
||||
PlatAndroidG = int8(4)
|
||||
// PlatIPhoneI is int8 for Iphone Global.
|
||||
PlatIPhoneI = int8(5)
|
||||
// PlatIPadI is int8 for IPAD Global.
|
||||
PlatIPadI = int8(6)
|
||||
// PlatAndroidTV is int8 for AndroidTV Global.
|
||||
PlatAndroidTV = int8(7)
|
||||
// PlatAndroidI is int8 for Android Global.
|
||||
PlatAndroidI = int8(8)
|
||||
// PlatAndroidB is int8 for Android Blue.
|
||||
PlatAndroidB = int8(9)
|
||||
// PlatIPhoneB is int8 for Ios Blue
|
||||
PlatIPhoneB = int8(10)
|
||||
// PlatBilistudio is int8 for bilistudio
|
||||
PlatBilistudio = int8(11)
|
||||
// PlatAndroidTVYST is int8 for AndroidTV_YST Global.
|
||||
PlatAndroidTVYST = int8(12)
|
||||
|
||||
GotoAv = "av"
|
||||
GotoWeb = "web"
|
||||
GotoBangumi = "bangumi"
|
||||
GotoSp = "sp"
|
||||
GotoLive = "live"
|
||||
GotoGame = "game"
|
||||
GotoPegasusTab = "pegasus"
|
||||
)
|
||||
|
||||
var (
|
||||
PegasusHandler = func(m *tab.Menu) func(uri string) string {
|
||||
return func(uri string) string {
|
||||
if m == nil {
|
||||
return uri
|
||||
}
|
||||
if m.Name != "" {
|
||||
return fmt.Sprintf("%s?name=%s", uri, m.Name)
|
||||
}
|
||||
return uri
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
// Plat return plat by platStr or mobiApp
|
||||
func Plat(mobiApp, device string) int8 {
|
||||
switch mobiApp {
|
||||
case "iphone":
|
||||
if device == "pad" {
|
||||
return PlatIPad
|
||||
}
|
||||
return PlatIPhone
|
||||
case "white":
|
||||
return PlatIPhone
|
||||
case "ipad":
|
||||
return PlatIPad
|
||||
case "android":
|
||||
return PlatAndroid
|
||||
case "win":
|
||||
return PlatWPhone
|
||||
case "android_G":
|
||||
return PlatAndroidG
|
||||
case "android_i":
|
||||
return PlatAndroidI
|
||||
case "android_b":
|
||||
return PlatAndroidB
|
||||
case "iphone_i":
|
||||
if device == "pad" {
|
||||
return PlatIPadI
|
||||
}
|
||||
return PlatIPhoneI
|
||||
case "ipad_i":
|
||||
return PlatIPadI
|
||||
case "iphone_b":
|
||||
return PlatIPhoneB
|
||||
case "android_tv":
|
||||
return PlatAndroidTV
|
||||
case "android_tv_yst":
|
||||
return PlatAndroidTVYST
|
||||
case "bilistudio":
|
||||
return PlatBilistudio
|
||||
case "biliLink":
|
||||
return PlatIPhone
|
||||
}
|
||||
return PlatIPhone
|
||||
}
|
||||
|
||||
// InvalidBuild check source build is not allow by config build and condition.
|
||||
// eg: when condition is gt, means srcBuild must gt cfgBuild, otherwise is invalid srcBuild.
|
||||
func InvalidBuild(srcBuild, cfgBuild int, cfgCond string) bool {
|
||||
if cfgBuild != 0 && cfgCond != "" {
|
||||
switch cfgCond {
|
||||
case "gt":
|
||||
if cfgBuild >= srcBuild {
|
||||
return true
|
||||
}
|
||||
case "lt":
|
||||
if cfgBuild <= srcBuild {
|
||||
return true
|
||||
}
|
||||
case "eq":
|
||||
if cfgBuild != srcBuild {
|
||||
return true
|
||||
}
|
||||
case "ne":
|
||||
if cfgBuild == srcBuild {
|
||||
return true
|
||||
}
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// IsAndroid check plat is android or ipad.
|
||||
func IsAndroid(plat int8) bool {
|
||||
return plat == PlatAndroid || plat == PlatAndroidG || plat == PlatAndroidB || plat == PlatAndroidI ||
|
||||
plat == PlatBilistudio || plat == PlatAndroidTV || plat == PlatAndroidTVYST
|
||||
}
|
||||
|
||||
// IsIOS check plat is iphone or ipad.
|
||||
func IsIOS(plat int8) bool {
|
||||
return plat == PlatIPad || plat == PlatIPhone || plat == PlatIPadI || plat == PlatIPhoneI || plat == PlatIPhoneB
|
||||
}
|
||||
|
||||
// FillURI deal app schema.
|
||||
func FillURI(gt, param string, f func(uri string) string) (uri string) {
|
||||
if param == "" {
|
||||
return
|
||||
}
|
||||
switch gt {
|
||||
case GotoAv, "":
|
||||
uri = "bilibili://video/" + param
|
||||
case GotoLive:
|
||||
uri = "bilibili://live/" + param
|
||||
case GotoBangumi:
|
||||
uri = "bilibili://bangumi/season/" + param
|
||||
case GotoGame:
|
||||
uri = "bilibili://game/" + param
|
||||
case GotoSp:
|
||||
uri = "bilibili://splist/" + param
|
||||
case GotoWeb:
|
||||
uri = param
|
||||
case GotoPegasusTab:
|
||||
uri = "bilibili://pegasus/op/" + param
|
||||
}
|
||||
if f != nil {
|
||||
uri = f(uri)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// MobiAPPBuleChange
|
||||
func MobiAPPBuleChange(mobiApp string) string {
|
||||
switch mobiApp {
|
||||
case "android_b":
|
||||
return "android"
|
||||
case "iphone_b":
|
||||
return "iphone"
|
||||
}
|
||||
return mobiApp
|
||||
}
|
||||
|
||||
func URLHTTPS(uri string) (url string) {
|
||||
if strings.HasPrefix(uri, "http://") {
|
||||
url = "https://" + uri[7:]
|
||||
} else {
|
||||
url = uri
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// IsOverseas is overseas
|
||||
func IsOverseas(plat int8) bool {
|
||||
return plat == PlatAndroidI || plat == PlatIPhoneI || plat == PlatIPadI
|
||||
}
|
||||
|
||||
func PlatAPPBuleChange(plat int8) int8 {
|
||||
switch plat {
|
||||
case PlatAndroidB:
|
||||
return PlatAndroid
|
||||
case PlatIPhoneB:
|
||||
return PlatIPhone
|
||||
}
|
||||
return plat
|
||||
}
|
Reference in New Issue
Block a user