feat:完善项目

This commit is contained in:
henry
2022-01-17 09:57:57 +08:00
parent 6d075dab4f
commit b50fdb0d44
30 changed files with 70 additions and 84 deletions

1
.gitignore vendored
View File

@ -3,6 +3,7 @@ doc/*
data/* data/*
main main
SciencesServer SciencesServer
dist/*
*.exe *.exe
*.test *.test
*.prof *.prof

View File

@ -23,10 +23,10 @@ func (a *Config) Index(c *gin.Context) {
func (a *Config) Add(c *gin.Context) { func (a *Config) Add(c *gin.Context) {
form := &struct { form := &struct {
Kind int `json:"kind" form:"kind" binding:"required"` Kind int `json:"kind" form:"kind" binding:"required"`
Name string `json:"name" form:"name" binding:"required"` Name string `json:"name" form:"name" binding:"required"`
Key string `json:"key" form:"key" binding:"required"` Key string `json:"key" form:"key" binding:"required"`
Value interface{} `json:"value" form:"value" binding:"required"` Value string `json:"value" form:"value" binding:"required"`
}{} }{}
if err := api.Bind(form)(c); err != nil { if err := api.Bind(form)(c); err != nil {
api.APIFailure(err.(error))(c) api.APIFailure(err.(error))(c)
@ -39,8 +39,8 @@ func (a *Config) Add(c *gin.Context) {
func (a *Config) Edit(c *gin.Context) { func (a *Config) Edit(c *gin.Context) {
form := &struct { form := &struct {
api.IDStringForm api.IDStringForm
Name string `json:"name" form:"name" binding:"required"` Name string `json:"name" form:"name" binding:"required"`
Value interface{} `json:"value" form:"value" binding:"required"` Value string `json:"value" form:"value" binding:"required"`
}{} }{}
if err := api.Bind(form)(c); err != nil { if err := api.Bind(form)(c); err != nil {
api.APIFailure(err.(error))(c) api.APIFailure(err.(error))(c)

View File

@ -102,12 +102,13 @@ func (c *Account) Login(mode int, params *AccountLoginParams, equipment, ip stri
_uid := data.UUIDString() _uid := data.UUIDString()
_session.Token = utils.JWTEncrypt(config.SettingInfo.TokenEffectTime, map[string]interface{}{config.TokenForUID: _uid}) _session.Token = utils.JWTEncrypt(utils.StringToInt(config.SystemConfig[config.SysTokenEffectTime]),
map[string]interface{}{config.TokenForUID: _uid})
service.Publish(config.EventForRedisHashProduce, config.RedisKeyForAccountAdmin, _uid, _session) service.Publish(config.EventForRedisHashProduce, config.RedisKeyForAccountAdmin, _uid, _session)
service.Publish(config.EventForAccountLoginProduce, data.TenantID, data.ID, equipment, ip) service.Publish(config.EventForAccountLoginProduce, data.TenantID, data.ID, equipment, ip)
return &AccountLoginResponse{Token: _session.Token, EffectTime: config.SettingInfo.TokenEffectTime}, nil return &AccountLoginResponse{Token: _session.Token, EffectTime: utils.StringToInt(config.SystemConfig[config.SysTokenEffectTime])}, nil
} }
// Logout 退出请求 // Logout 退出请求

View File

@ -63,7 +63,7 @@ func (c *Apply) Instance(tenantID uint64, title, contact string, page, pageSize
list := make([]*ApplyInfo, 0) list := make([]*ApplyInfo, 0)
for _, v := range out { for _, v := range out {
v.Image.Image = v.Analysis(config.SettingInfo.Domain) v.Image.Image = v.Analysis(config.SystemConfig[config.SysImageDomain])
list = append(list, &ApplyInfo{ list = append(list, &ApplyInfo{
ID: v.GetEncodeID(), ID: v.GetEncodeID(),
TenantID: v.GetEncodeTenantID(), TenantID: v.GetEncodeTenantID(),
@ -82,7 +82,7 @@ func (c *Apply) Detail(id uint64) (*ApplyDetailInfo, error) {
if err != nil { if err != nil {
return nil, err return nil, err
} }
out.Image.Image = out.Analysis(config.SettingInfo.Domain) out.Image.Image = out.Analysis(config.SystemConfig[config.SysImageDomain])
return &ApplyDetailInfo{ return &ApplyDetailInfo{
ID: out.GetEncodeID(), ID: out.GetEncodeID(),

View File

@ -27,6 +27,7 @@ func (c *Config) Config(kind, page, pageSize int) (*controller.ReturnPages, erro
mSysConfig := model.NewSysConfig() mSysConfig := model.NewSysConfig()
where := []*model2.ModelWhereOrder{ where := []*model2.ModelWhereOrder{
&model2.ModelWhereOrder{Order: model2.NewOrder("sort", model2.OrderModeToAsc)},
&model2.ModelWhereOrder{Order: model2.NewOrder("kind", model2.OrderModeToAsc)}, &model2.ModelWhereOrder{Order: model2.NewOrder("kind", model2.OrderModeToAsc)},
} }
if kind > 0 { if kind > 0 {
@ -50,7 +51,7 @@ func (c *Config) Config(kind, page, pageSize int) (*controller.ReturnPages, erro
return &controller.ReturnPages{Data: list, Count: count}, nil return &controller.ReturnPages{Data: list, Count: count}, nil
} }
func (c *Config) Add(kind int, name, key string, value interface{}) error { func (c *Config) Add(kind int, name, key, value string) error {
mSysConfig := model.NewSysConfig() mSysConfig := model.NewSysConfig()
var count int64 var count int64
@ -75,7 +76,7 @@ func (c *Config) Add(kind int, name, key string, value interface{}) error {
return nil return nil
} }
func (c *Config) Form(id uint64, name string, value interface{}) error { func (c *Config) Form(id uint64, name, value string) error {
mSysConfig := model.NewSysConfig() mSysConfig := model.NewSysConfig()
mSysConfig.ID = id mSysConfig.ID = id

View File

@ -85,7 +85,7 @@ func (c *SolutionCase) Instance(tenantID uint64, title string, kindID uint64, pa
list := make([]*SolutionCaseInfo, 0) list := make([]*SolutionCaseInfo, 0)
for _, v := range out { for _, v := range out {
v.Image.Image = v.Image.Analysis(config2.SettingInfo.Domain) v.Image.Image = v.Image.Analysis(config2.SystemConfig[config2.SysImageDomain])
list = append(list, &SolutionCaseInfo{ list = append(list, &SolutionCaseInfo{
ID: v.GetEncodeID(), ID: v.GetEncodeID(),
@ -108,7 +108,7 @@ func (c *SolutionCase) Detail(id uint64) (*SolutionCaseDetailInfo, error) {
} else if !isExist { } else if !isExist {
return nil, errors.New("操作错误,案例信息不存在或已被删除") return nil, errors.New("操作错误,案例信息不存在或已被删除")
} }
mServiceSolutionCase.Image.Image = mServiceSolutionCase.Image.Analysis(config2.SettingInfo.Domain) mServiceSolutionCase.Image.Image = mServiceSolutionCase.Image.Analysis(config2.SystemConfig[config2.SysImageDomain])
return &SolutionCaseDetailInfo{ return &SolutionCaseDetailInfo{
ID: mServiceSolutionCase.GetEncodeID(), ID: mServiceSolutionCase.GetEncodeID(),
@ -203,7 +203,7 @@ func (c *SolutionCase) Kind(tenantID uint64, mode int, title string, page, pageS
list := make([]*SolutionCaseKindInfo, 0) list := make([]*SolutionCaseKindInfo, 0)
for _, v := range out { for _, v := range out {
v.Image.Image = v.Image.Analysis(config2.SettingInfo.Domain) v.Image.Image = v.Image.Analysis(config2.SystemConfig[config2.SysImageDomain])
list = append(list, &SolutionCaseKindInfo{ list = append(list, &SolutionCaseKindInfo{
ID: v.GetEncodeID(), ID: v.GetEncodeID(),

View File

@ -130,7 +130,7 @@ func (c *Banner) Instance(tenantID uint64, title, local string, page, pageSize i
ID: v.GetEncodeID(), TenantID: v.GetEncodeTenantID(), ID: v.GetEncodeID(), TenantID: v.GetEncodeTenantID(),
SysBanner: v.SysBanner, SysBanner: v.SysBanner,
Area: v.FormatBasic(), Area: v.FormatBasic(),
Images: v.Images.AnalysisSlice(config.SettingInfo.Domain), Images: v.Images.AnalysisSlice(config.SystemConfig[config.SysImageDomain]),
}) })
} }
return &controller.ReturnPages{Data: list, Count: count}, nil return &controller.ReturnPages{Data: list, Count: count}, nil

View File

@ -132,7 +132,7 @@ type (
) )
func (a *instanceForm) FilterProveImages() string { func (a *instanceForm) FilterProveImages() string {
return strings.Replace(a.ProveImages, config2.SettingInfo.Domain, "", -1) return strings.Replace(a.ProveImages, config2.SystemConfig[config2.SysImageDomain], "", -1)
} }
func (a *productForm) FilterVideo() string { func (a *productForm) FilterVideo() string {

View File

@ -35,7 +35,7 @@ type (
func (c *Instance) Login() InstanceLoginCallback { func (c *Instance) Login() InstanceLoginCallback {
return func(params *InstanceLoginParams) *InstanceLoginReturn { return func(params *InstanceLoginParams) *InstanceLoginReturn {
token := utils.JWTEncrypt(config.SettingInfo.TokenEffectTime, map[string]interface{}{ token := utils.JWTEncrypt(utils.StringToInt(config.SystemConfig[config.SysTokenEffectTime]), map[string]interface{}{
config.TokenForUID: fmt.Sprintf("%d", params.UID), config.TokenForUID: fmt.Sprintf("%d", params.UID),
}) })
_session := session.NewEnterprise() _session := session.NewEnterprise()
@ -53,7 +53,7 @@ func (c *Instance) Login() InstanceLoginCallback {
service.Publish(config.EventForRedisHashProduce, config.RedisKeyForAccountEnterprise, _session.UIDToString(), _session) service.Publish(config.EventForRedisHashProduce, config.RedisKeyForAccountEnterprise, _session.UIDToString(), _session)
return &InstanceLoginReturn{Token: token, TokenEffectTime: config.SettingInfo.TokenEffectTime} return &InstanceLoginReturn{Token: token, TokenEffectTime: utils.StringToInt(config.SystemConfig[config.SysTokenEffectTime])}
} }
} }

View File

@ -99,7 +99,7 @@ func loginForSmsCaptcha(params *LoginParams, tenantID uint64) (*InstanceLoginPar
RETURNS: RETURNS:
return &InstanceLoginParams{ return &InstanceLoginParams{
UID: mUserInstance.UUID, UID: mUserInstance.UUID,
Avatar: mUserInstance.GetAvatarAttribute(config.SettingInfo.Domain), Name: mUserInstance.Name, Mobile: mUserInstance.Mobile, Avatar: mUserInstance.GetAvatarAttribute(config.SystemConfig[config.SysImageDomain]), Name: mUserInstance.Name, Mobile: mUserInstance.Mobile,
Vip: mUserInstance.Vip, VipStatus: mUserInstance.VipStatus(), VipDeadline: mUserInstance.VipDeadline, Vip: mUserInstance.Vip, VipStatus: mUserInstance.VipStatus(), VipDeadline: mUserInstance.VipDeadline,
Currency: mUserAssets.Currency, Identity: mUserInstance.Identity, SelectIdentity: mUserIdentity.Identity, Currency: mUserAssets.Currency, Identity: mUserInstance.Identity, SelectIdentity: mUserIdentity.Identity,
Status: mUserInstance.Status, Status: mUserInstance.Status,
@ -139,7 +139,7 @@ func loginForPassword(params *LoginParams, tenantID uint64) (*InstanceLoginParam
} }
return &InstanceLoginParams{ return &InstanceLoginParams{
UID: mUserInstance.UUID, UID: mUserInstance.UUID,
Avatar: mUserInstance.GetAvatarAttribute(config.SettingInfo.Domain), Name: mUserInstance.Name, Mobile: mUserInstance.Mobile, Avatar: mUserInstance.GetAvatarAttribute(config.SystemConfig[config.SysImageDomain]), Name: mUserInstance.Name, Mobile: mUserInstance.Mobile,
Vip: mUserInstance.Vip, VipStatus: mUserInstance.VipStatus(), VipDeadline: mUserInstance.VipDeadline, Vip: mUserInstance.Vip, VipStatus: mUserInstance.VipStatus(), VipDeadline: mUserInstance.VipDeadline,
Currency: mUserAssets.Currency, Identity: mUserInstance.Identity, SelectIdentity: mUserIdentity.Identity, Currency: mUserAssets.Currency, Identity: mUserInstance.Identity, SelectIdentity: mUserIdentity.Identity,
Status: mUserInstance.Status, Status: mUserInstance.Status,

View File

@ -140,7 +140,7 @@ func (c *Company) Match(title string, industrys, keywords []string) ([]*CompanyM
for _, v := range companys { for _, v := range companys {
list = append(list, &CompanyMatchInfo{ list = append(list, &CompanyMatchInfo{
ID: v.GetEncodeID(), Kind: v.Kind, Name: v.Name, ID: v.GetEncodeID(), Kind: v.Kind, Name: v.Name,
Image: v.Image.Analysis(config2.SettingInfo.Domain), Image: v.Image.Analysis(config2.SystemConfig[config2.SysImageDomain]),
Url: v.Url, Url: v.Url,
Keywords: v.GetKeywordAttribute(), Keywords: v.GetKeywordAttribute(),
}) })

View File

@ -39,8 +39,8 @@ func (c *Company) Get(code string) (*CompanyInfo, error) {
return nil, nil return nil, nil
} }
mManageCompany.Image.Image = mManageCompany.Image.Analysis(config2.SettingInfo.Domain) mManageCompany.Image.Image = mManageCompany.Image.Analysis(config2.SystemConfig[config2.SysImageDomain])
mManageCompany.License = (&model2.Image{Image: mManageCompany.License}).Analysis(config2.SettingInfo.Domain) mManageCompany.License = (&model2.Image{Image: mManageCompany.License}).Analysis(config2.SystemConfig[config2.SysImageDomain])
return &CompanyInfo{ return &CompanyInfo{
ID: mManageCompany.GetEncodeID(), ID: mManageCompany.GetEncodeID(),

View File

@ -157,7 +157,7 @@ func (c *Product) Visit(id uint64, page, pageSize int) (*controller.ReturnPages,
for _, v := range out { for _, v := range out {
mManageCompany.Keyword = v.CompanyKeyword mManageCompany.Keyword = v.CompanyKeyword
mManageCompany.Image.Image = v.CompanyImage mManageCompany.Image.Image = v.CompanyImage
v.CompanyImage = mManageCompany.Image.Analysis(config2.SettingInfo.Domain) v.CompanyImage = mManageCompany.Image.Analysis(config2.SystemConfig[config2.SysImageDomain])
list = append(list, &ProductVisitInfo{ list = append(list, &ProductVisitInfo{
ID: v.GetEncodeID(), ID: v.GetEncodeID(),

View File

@ -74,7 +74,7 @@ func (c *Withdrawal) Transfer(id uint64) (*WithdrawalTransferInfo, error) {
return nil, nil return nil, nil
} }
return &WithdrawalTransferInfo{ return &WithdrawalTransferInfo{
Images: mUserWithdrawalTransfer.Images.AnalysisSlice(config.SettingInfo.Domain), Images: mUserWithdrawalTransfer.Images.AnalysisSlice(config.SystemConfig[config.SysImageDomain]),
Remark: mUserWithdrawalTransfer.Remark, Remark: mUserWithdrawalTransfer.Remark,
}, nil }, nil
} }

View File

@ -69,7 +69,7 @@ func (c *Activity) Detail(id uint64) (*ActivityDetail, error) {
if err != nil { if err != nil {
return nil, err return nil, err
} }
mActivityInstance.Image.Image = mActivityInstance.Image.Analysis(config.SettingInfo.Domain) mActivityInstance.Image.Image = mActivityInstance.Image.Analysis(config.SystemConfig[config.SysImageDomain])
return &ActivityDetail{ return &ActivityDetail{
ID: out.GetEncodeID(), ID: out.GetEncodeID(),

View File

@ -55,7 +55,7 @@ func (c *Company) Instance(id uint64) (*CompanyInstanceInfo, error) {
return &CompanyInstanceInfo{ return &CompanyInstanceInfo{
CompanyBasicInfo: CompanyBasicInfo{ CompanyBasicInfo: CompanyBasicInfo{
ID: mManageCompany.GetEncodeID(), Kind: mManageCompany.Kind, Name: mManageCompany.Name, ID: mManageCompany.GetEncodeID(), Kind: mManageCompany.Kind, Name: mManageCompany.Name,
Image: mManageCompany.Image.Analysis(config2.SettingInfo.Domain), Image: mManageCompany.Image.Analysis(config2.SystemConfig[config2.SysImageDomain]),
Url: mManageCompany.Url, Url: mManageCompany.Url,
Keywords: mManageCompany.GetKeywordAttribute(), Keywords: mManageCompany.GetKeywordAttribute(),
}, },

View File

@ -46,7 +46,7 @@ func company(ids []uint64) (interface{}, error) {
for _, v := range out { for _, v := range out {
list = append(list, &CompanyBasicInfo{ list = append(list, &CompanyBasicInfo{
ID: v.GetEncodeID(), Kind: v.Kind, Name: v.Name, ID: v.GetEncodeID(), Kind: v.Kind, Name: v.Name,
Image: v.Image.Analysis(config2.SettingInfo.Domain), Image: v.Image.Analysis(config2.SystemConfig[config2.SysImageDomain]),
Url: v.Url, Url: v.Url,
Keywords: v.GetKeywordAttribute(), Keywords: v.GetKeywordAttribute(),
}) })
@ -65,7 +65,7 @@ func expert(ids []uint64) (interface{}, error) {
list := make([]*ExpertBasicInfo, 0) list := make([]*ExpertBasicInfo, 0)
for _, v := range out { for _, v := range out {
v.Image.Image = v.Image.Analysis(config2.SettingInfo.Domain) v.Image.Image = v.Image.Analysis(config2.SystemConfig[config2.SysImageDomain])
list = append(list, &ExpertBasicInfo{ list = append(list, &ExpertBasicInfo{
ID: v.GetEncodeID(), ID: v.GetEncodeID(),

View File

@ -20,10 +20,11 @@ type InnovateHandle func(session *session.Enterprise, tenantID uint64) *Innovate
type ( type (
// InnovateInfo 创新服务信息 // InnovateInfo 创新服务信息
InnovateInfo struct { InnovateInfo struct {
ID string `json:"id"` ID string `json:"id"`
Title string `json:"title"` Title string `json:"title"`
Tags []string `json:"tags"` Description string `json:"description"`
CreatedAt time.Time `json:"created_at"` Tags []string `json:"tags"`
CreatedAt time.Time `json:"created_at"`
} }
// InnovateKindInfo 创新服务分类信息 // InnovateKindInfo 创新服务分类信息
InnovateKindInfo struct { InnovateKindInfo struct {
@ -39,7 +40,7 @@ type (
) )
// Instance 首页信息 // Instance 首页信息
func (c *Innovate) Instance(kind uint64, title string, page, pageSize int) (*controller.ReturnPages, error) { func (c *Innovate) Instance(kindID uint64, title string, page, pageSize int) (*controller.ReturnPages, error) {
mServiceInnovate := model.NewServiceInnovate() mServiceInnovate := model.NewServiceInnovate()
out := make([]*model2.ServiceInnovate, 0) out := make([]*model2.ServiceInnovate, 0)
@ -48,14 +49,14 @@ func (c *Innovate) Instance(kind uint64, title string, page, pageSize int) (*con
where := []*model2.ModelWhereOrder{&model2.ModelWhereOrder{Order: model2.NewOrder("id", model2.OrderModeToDesc)}} where := []*model2.ModelWhereOrder{&model2.ModelWhereOrder{Order: model2.NewOrder("id", model2.OrderModeToDesc)}}
if kind > 0 { if kindID > 0 {
where = append(where, &model2.ModelWhereOrder{Where: model2.NewWhere("kind", kind)}) where = append(where, &model2.ModelWhereOrder{Where: model2.NewWhere("kind_id", kindID)})
} }
if title != "" { if title != "" {
where = append(where, &model2.ModelWhereOrder{Where: model2.NewWhereLike("title", title)}) where = append(where, &model2.ModelWhereOrder{Where: model2.NewWhereLike("title", title)})
} }
if err := model2.PagesFields(mServiceInnovate.ServiceInnovate, &out, []string{"id", "title", "tag", "created_at"}, page, pageSize, if err := model2.PagesFields(mServiceInnovate.ServiceInnovate, &out, []string{"id", "title", "description", "tag", "created_at"}, page, pageSize,
&count, where...); err != nil { &count, where...); err != nil {
return nil, err return nil, err
} }
@ -63,7 +64,8 @@ func (c *Innovate) Instance(kind uint64, title string, page, pageSize int) (*con
for _, v := range out { for _, v := range out {
list = append(list, &InnovateInfo{ list = append(list, &InnovateInfo{
ID: v.GetEncodeID(), Title: v.Title, Tags: v.GetTagAttribute(), CreatedAt: v.CreatedAt, ID: v.GetEncodeID(), Title: v.Title, Description: v.Description, Tags: v.GetTagAttribute(),
CreatedAt: v.CreatedAt,
}) })
} }
return &controller.ReturnPages{Data: list, Count: count}, nil return &controller.ReturnPages{Data: list, Count: count}, nil

View File

@ -64,7 +64,7 @@ func (c *SolutionCase) Instance(mode int) ([]*SolutionCaseInfo, error) {
detail := &SolutionCaseBasic{ detail := &SolutionCaseBasic{
ID: (&model2.Model{ID: v.DetailID}).GetEncodeID(), Title: v.DetailTitle, ID: (&model2.Model{ID: v.DetailID}).GetEncodeID(), Title: v.DetailTitle,
Image: (&model2.Image{Image: v.DetailImage}).Analysis(config.SettingInfo.Domain), Image: (&model2.Image{Image: v.DetailImage}).Analysis(config.SystemConfig[config.SysImageDomain]),
Description: v.DetailDescription, Description: v.DetailDescription,
} }
for _, val := range ret { for _, val := range ret {
@ -77,7 +77,7 @@ func (c *SolutionCase) Instance(mode int) ([]*SolutionCaseInfo, error) {
if !isExist { if !isExist {
ret = append(ret, &SolutionCaseInfo{ ret = append(ret, &SolutionCaseInfo{
ID: v.GetEncodeID(), MarkID: v.ID, Mode: v.Mode, Title: v.Title, ID: v.GetEncodeID(), MarkID: v.ID, Mode: v.Mode, Title: v.Title,
Image: v.Image.Analysis(config.SettingInfo.Domain), Image: v.Image.Analysis(config.SystemConfig[config.SysImageDomain]),
Description: v.Description, Description: v.Description,
Children: []*SolutionCaseBasic{detail}, Children: []*SolutionCaseBasic{detail},
}) })
@ -109,7 +109,7 @@ func (c *SolutionCase) List(kindID uint64, page, pageSize int) (*controller.Retu
for _, v := range out { for _, v := range out {
list = append(list, &SolutionCaseBasic{ list = append(list, &SolutionCaseBasic{
ID: v.GetEncodeID(), Title: v.Title, ID: v.GetEncodeID(), Title: v.Title,
Image: v.Image.Analysis(config.SettingInfo.Domain), Image: v.Image.Analysis(config.SystemConfig[config.SysImageDomain]),
Description: v.Description, Description: v.Description,
}) })
} }
@ -135,7 +135,7 @@ func (c *SolutionCase) Detail(id uint64) (*SolutionCaseDetail, error) {
SolutionCaseBasic: SolutionCaseBasic{ SolutionCaseBasic: SolutionCaseBasic{
ID: mServiceSolutionCase.GetEncodeID(), ID: mServiceSolutionCase.GetEncodeID(),
Title: mServiceSolutionCase.Title, Title: mServiceSolutionCase.Title,
Image: mServiceSolutionCase.Image.Analysis(config.SettingInfo.Domain), Image: mServiceSolutionCase.Image.Analysis(config.SystemConfig[config.SysImageDomain]),
Description: mServiceSolutionCase.Description, Description: mServiceSolutionCase.Description,
}, },
Visits: mServiceSolutionCase.Visits, Visits: mServiceSolutionCase.Visits,

View File

@ -29,7 +29,7 @@ func (c *Banner) Instance(key string) (*BannerInfo, error) {
ID: mSysBanner.GetEncodeID(), ID: mSysBanner.GetEncodeID(),
Title: mSysBanner.Title, Title: mSysBanner.Title,
IsMultiple: mSysBanner.IsMultiple, IsMultiple: mSysBanner.IsMultiple,
Images: mSysBanner.Images.AnalysisSlice(config.SettingInfo.Domain), Images: mSysBanner.Images.AnalysisSlice(config.SystemConfig[config.SysImageDomain]),
}, nil }, nil
} }

View File

@ -65,7 +65,7 @@ func (c *Achievement) Instance(title, industry string, page, pageSize int) (*con
list = append(list, &AchievementInfo{ list = append(list, &AchievementInfo{
ID: v.GetEncodeID(), ID: v.GetEncodeID(),
Title: v.Title, Title: v.Title,
Image: v.Image.Analysis(config.SettingInfo.Domain), Image: v.Image.Analysis(config.SystemConfig[config.SysImageDomain]),
Industrys: v.GetIndustryAttribute(), Industrys: v.GetIndustryAttribute(),
Customers: v.GetCustomerAttribute(), Customers: v.GetCustomerAttribute(),
Maturity: v.Maturity, Maturity: v.Maturity,
@ -107,7 +107,7 @@ func (c *Achievement) Detail(id uint64) (*AchievementDetailInfo, error) {
AchievementInfo: AchievementInfo{ AchievementInfo: AchievementInfo{
ID: out.GetEncodeID(), ID: out.GetEncodeID(),
Title: out.Title, Title: out.Title,
Image: out.Image.Analysis(config.SettingInfo.Domain), Image: out.Image.Analysis(config.SystemConfig[config.SysImageDomain]),
Industrys: out.GetIndustryAttribute(), Industrys: out.GetIndustryAttribute(),
Customers: out.GetCustomerAttribute(), Customers: out.GetCustomerAttribute(),
Maturity: out.Maturity, Maturity: out.Maturity,

View File

@ -45,7 +45,7 @@ type ImageForm struct {
} }
func (this *ImageForm) FilterImageURL() string { func (this *ImageForm) FilterImageURL() string {
return strings.Replace(this.Image, config.SettingInfo.Domain, "", -1) return strings.Replace(this.Image, config.SystemConfig[config.SysImageDomain], "", -1)
} }
type ImagesForm struct { type ImagesForm struct {
@ -56,7 +56,7 @@ func (this *ImagesForm) FilterImageURL() string {
out := make([]string, 0) out := make([]string, 0)
for _, v := range strings.Split(this.Images, ",") { for _, v := range strings.Split(this.Images, ",") {
out = append(out, strings.Replace(v, config.SettingInfo.Domain, "", -1)) out = append(out, strings.Replace(v, config.SystemConfig[config.SysImageDomain], "", -1))
} }
return strings.Join(out, ",") return strings.Join(out, ",")
} }
@ -66,7 +66,7 @@ type FileForm struct {
} }
func (this *FileForm) FilterURL() string { func (this *FileForm) FilterURL() string {
return strings.Replace(this.File, config.SettingInfo.Domain, "", -1) return strings.Replace(this.File, config.SystemConfig[config.SysImageDomain], "", -1)
} }
type PositionForm struct { type PositionForm struct {

View File

@ -53,10 +53,8 @@ func (a *Upload) Upload(c *gin.Context) {
} }
resp := new(lib.UploadHandle) resp := new(lib.UploadHandle)
if resp, err = lib.Upload(config.SystemConfig[config.UploadPath].(string), if resp, err = lib.Upload(config.SystemConfig[config.UploadPath], strings.Split(config.SystemConfig[config.UploadExt], ","),
strings.Split(config.SystemConfig[config.UploadExt].(string), ","), utils.StringToInt64(config.SystemConfig[config.UploadSize]), true).Handle()(file, config.SystemConfig[config.SysImageDomain]); err != nil {
utils.StringToInt64(config.SystemConfig[config.UploadSize].(string)),
true).Handle()(file, config.SettingInfo.Domain); err != nil {
APIFailure(err)(c) APIFailure(err)(c)
return return
} }

View File

@ -23,7 +23,7 @@ func (c *Config) Basic() {
} }
// Config 配置信息 // Config 配置信息
func (c *Config) Config() map[string]interface{} { func (c *Config) Config() map[string]string {
return config2.SystemConfig return config2.SystemConfig
} }

View File

@ -7,6 +7,7 @@ type SysConfig struct {
Name string `gorm:"column:name;type:varchar(30);default:'';comment:名称" json:"name"` Name string `gorm:"column:name;type:varchar(30);default:'';comment:名称" json:"name"`
Key string `gorm:"column:key;type:varchar(100);default:'';comment:标识" json:"key"` Key string `gorm:"column:key;type:varchar(100);default:'';comment:标识" json:"key"`
Value string `gorm:"column:value;type:text;comment:内容" json:"value"` Value string `gorm:"column:value;type:text;comment:内容" json:"value"`
Sort int `gorm:"column:sort;type:tinyint(3);default:0;comment:排序,数值越小,优先排序" json:"sort"`
ModelDeleted ModelDeleted
ModelAt ModelAt
} }

View File

@ -37,7 +37,8 @@ func (this *AuthToken) Auth(key string, session logic.ISession) error {
if err := json.Unmarshal([]byte(cache), session); err != nil { if err := json.Unmarshal([]byte(cache), session); err != nil {
return err return err
} }
if !config.SettingInfo.MultipleLogin && session.GetToken() != this.Token { if (config.SystemConfig[config.SysMultipleLogin] == "0" || config.SystemConfig[config.SysMultipleLogin] == "") &&
session.GetToken() != this.Token {
return errors.New("登陆错误,已在其他地方登录!") return errors.New("登陆错误,已在其他地方登录!")
} }
return nil return nil

View File

@ -44,11 +44,6 @@ type Redis struct {
// Setting 配置信息 // Setting 配置信息
type Setting struct { type Setting struct {
Domain string `json:"domain" yaml:"domain"`
Name string `yaml:"name"`
TokenEffectTime int `yaml:"token_effect_time"`
MultipleLogin bool `yaml:"multiple_login"`
// Server 配置 // Server 配置
Server struct { Server struct {
Port int `yaml:"port"` Port int `yaml:"port"`

View File

@ -1,15 +1,15 @@
package config package config
var SystemConfig = make(map[string]interface{}, 0) var SystemConfig = make(map[string]string, 0)
//png,jpg,csv,xls,xlsx,pcm,wav,amr,mp3,mp4,json //png,jpg,csv,xls,xlsx,pcm,wav,amr,mp3,mp4,json
// 基本配置 // 基本配置
const ( const (
Name string = "name" // 名 SysDomain string = "sys_domain" // 系统域
Domain string = "domain" // 域名 SysImageDomain string = "sys_image_domain" // 系统图片访问地址
TokenEffectTime string = "token_effect_time" // Token有效时间 SysTokenEffectTime string = "sys_token_effect_time" // Token有效时间
MultipleLogin string = "multiple_login" // 是否开启多地登录 SysMultipleLogin string = "sys_multiple_login" // 是否开启多地登录
) )
const ( const (

View File

@ -1,7 +1,6 @@
package router package router
import ( import (
"SciencesServer/config"
"SciencesServer/serve/logger" "SciencesServer/serve/logger"
"context" "context"
"net/http" "net/http"
@ -96,19 +95,3 @@ func RecoveryHandler() gin.HandlerFunc {
c.Next() c.Next()
} }
} }
// ContentAnalysisHandler 消息体解析
func ContentAnalysisHandler() gin.HandlerFunc {
return func(c *gin.Context) {
url := c.Request.URL
var data string
value, has := config.SystemConfig[url.String()]
if has {
data = value.(string)
}
c.Set(config.ContentForTenantID, data)
}
}

View File

@ -37,12 +37,15 @@ func (this *Router) Init() *gin.Engine {
if this.IsCors { if this.IsCors {
app.Use(Cors()) app.Use(Cors())
} }
app.NoRoute(NoRouteHandler()) app.LoadHTMLFiles("./dist/*") // 添加资源路径
app.StaticFS("/static", http.Dir("./dist/static"))
app.StaticFile("/", "dist/index.html") //前端接口
//app.NoRoute(NoRouteHandler())
app.NoMethod(NoMethodHandler()) app.NoMethod(NoMethodHandler())
app.Use(LoggerHandle("log/gin.log", 3)) app.Use(LoggerHandle("log/gin.log", 3))
app.Use(TimeoutHandle(time.Second * 30)) app.Use(TimeoutHandle(time.Second * 30))
//app.Use(RecoveryHandler()) //app.Use(RecoveryHandler())
app.Use(ContentAnalysisHandler())
if this.RateLimitConfig != nil { if this.RateLimitConfig != nil {
if this.RateLimitConfig.IsRate { if this.RateLimitConfig.IsRate {