1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- package service
- import (
- "context"
- "time"
- "github.com/json-iterator/go"
- "go-common/app/interface/bbq/app-bbq/api/http/v1"
- "go-common/app/interface/bbq/app-bbq/conf"
- )
- // AppSetting .
- func (s *Service) AppSetting(c context.Context, arg *v1.AppSettingRequest) (resp *v1.AppSettingResponse, err error) {
- plat := 1
- if arg.Base.Client == "ios" {
- plat = 2
- }
- appVerison, err := s.dao.FetchNewAppVersion(c, plat, arg.VersionCode)
- newVersion := uint8(0)
- if err == nil && appVerison.ID > 0 {
- newVersion = uint8(1)
- }
- // TODO:暂时先这样,快速上线,以后改(也许。。)
- ver := 1
- if arg.Base.Client == "ios" && arg.VersionCode > 100000 {
- ver = 2
- } else if arg.Base.Client == "android" && arg.VersionCode > 101000 {
- ver = 2
- }
- appResource, err := s.dao.FetchAppResource(c, plat, ver)
- current := time.Now().Unix()
- pubSetting := make(map[string]interface{})
- b, _ := jsoniter.Marshal(conf.App)
- jsoniter.Unmarshal(b, &pubSetting)
- for _, v := range appResource {
- if v.StartTime.Time().Unix() < current && current < v.EndTime.Time().Unix() {
- pubSetting["dynamic_effect"] = v.ID
- }
- }
- resp = &v1.AppSettingResponse{
- Public: pubSetting,
- Update: &v1.AppUpdate{
- NewVersion: newVersion,
- Info: appVerison,
- },
- Resources: appResource,
- }
- return
- }
- // AppPackage .
- func (s *Service) AppPackage(c context.Context, lastest int) (resp []*v1.AppPackage, err error) {
- resp = make([]*v1.AppPackage, 0)
- if lastest > 0 {
- result, e := s.dao.FetchNewAppVersion(c, 1, 0)
- resp = append(resp, &v1.AppPackage{
- ID: int64(result.ID),
- Platform: uint8(result.Platform),
- VersionName: result.Name,
- VersionCode: uint32(result.Code),
- Title: result.Title,
- Content: result.Content,
- Download: result.Download,
- MD5: result.MD5,
- Size: int32(result.Size),
- Force: uint8(result.Force),
- Status: uint8(result.Status),
- })
- err = e
- } else {
- resp, err = s.dao.FetchAppPackage(c)
- }
- return
- }
|