作者 tangxvhui

更新

appname = partner
appname = partnermg
runmode = "${RUN_MODE||dev}"
httpport = "${HTTP_PORT||8080}"
... ...
... ... @@ -68,10 +68,6 @@ spec:
value: "1"
- name: ERROR_BASE_CODE_MULTIPLE
value: "1000"
- name: ABILITY_SERVICE_HOST
value: "https://suplus-worth-app-gateway-dev.fjmaimaimai.com"
- name: MMM_OPEN_API_SERVICE_HOST
value: "http://mmm-open-api-dev.fjmaimaimai.com"
volumes:
- name: accesslogs
emptyDir: {}
\ No newline at end of file
emptyDir: {}
... ...
... ... @@ -124,7 +124,7 @@ func (adminUserSrv AdminUserService) SaveAdminUser(saveUserCmd *command.SaveAdmi
Account: saveUserCmd.Account,
Password: defaultPwd,
AdminName: saveUserCmd.Name,
IsUsable: saveUserCmd.IsUsable,
IsUsable: true,
Permission: permissionBases,
}
}
... ...
package models
type AdminPermission struct {
tableName struct{} `pg:"admin_permisssion"`
tableName struct{} `pg:"admin_permission"`
//id
Id int `pg:",pk"`
//权限名称、菜单名称
... ...
... ... @@ -22,7 +22,7 @@ type AdminUser struct {
//是否是默认账号
IsDefault bool `pg:",use_zero"`
//账号是否可用
IsUsable bool
IsUsable bool `pg:",use_zero"`
//用户的权限
Permission []domain.AdminPermissionBase
... ...
... ... @@ -45,7 +45,7 @@ func (reponsitory AdminUserRepository) FindOne(queryOption domain.AdminUserFindO
query = query.Where("id=?", queryOption.AdminUserId)
}
if len(queryOption.AccountEqual) > 0 {
query = query.Where("admin_account=?", queryOption.AccountEqual)
query = query.Where("account=?", queryOption.AccountEqual)
}
err := query.First()
if err != nil {
... ...
... ... @@ -29,7 +29,7 @@ func (mytoken *MyToken) CreateJWTToken() (string, error) {
mytoken.StandardClaims = jwt.StandardClaims{
NotBefore: nowTime,
IssuedAt: nowTime,
ExpiresAt: JWtExpiresSecond,
ExpiresAt: nowTime + JWtExpiresSecond,
Issuer: "mmm_partnermg",
}
... ...
package log
import (
"github.com/astaxie/beego"
"github.com/astaxie/beego/logs"
"gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/constant"
)
func init() {
logs.SetLevel(logLevel(constant.LOG_LEVEL))
if beego.BConfig.RunMode == "prod" {
logs.SetLogFuncCall(false)
} else {
logs.SetLogFuncCallDepth(3)
}
logs.SetLogFuncCall(false)
logs.SetLogger("file", `{"filename":"log/partnermg.log"}`)
}
... ...
... ... @@ -8,7 +8,4 @@ import (
func init() {
beego.InsertFilter("/*", beego.BeforeRouter, middleware.AllowCors())
// beego.InsertFilter("/*", beego.BeforeExec, filters.CreateRequestBodyFilter())
// beego.InsertFilter("/*", beego.BeforeExec, log.CreateRequstLogFilter(Logger))
// beego.InsertFilter("/*", beego.AfterExec, log.CreateResponseLogFilter(Logger), false)
}
... ...
... ... @@ -6,10 +6,11 @@ import (
"fmt"
"io/ioutil"
"strconv"
"strings"
"github.com/astaxie/beego"
"github.com/astaxie/beego/logs"
"github.com/prometheus/common/log"
adminuserquery "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/adminUser/query"
adminuserservice "gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/application/adminUser/service"
"gitlab.fjmaimaimai.com/mmm-go/partnermg/pkg/lib"
... ... @@ -87,30 +88,37 @@ func (controller *BaseController) Finish() {
strByte, _ := json.Marshal(controller.Data["json"])
length := len(strByte)
if length > 1500 {
logs.Info("<====Send to client: RspBodyData: %s......", string(strByte[:1500]))
logs.Info("<====Send to client: RspBodyData: ", string(strByte[:1500]))
} else {
logs.Info("<====Send to client: RspBodyData: %s......", string(strByte))
logs.Info("<====Send to client: RspBodyData: ", string(strByte))
}
}
////Prepare 重写 beego.Controller 的Prepare方法
func (controller *BaseController) Prepare() {
log.Info("====>Recv Request:%s Method:%s", controller.Ctx.Input.URI(), controller.Ctx.Input.Method())
logs.Info("====>Recv Request:", controller.Ctx.Input.URI())
if controller.Ctx.Input.IsPost() || controller.Ctx.Input.IsPut() {
bodyByte, _ := ioutil.ReadAll(controller.Ctx.Request.Body)
controller.Ctx.Input.SetData("requestBody", bodyByte)
controller.Ctx.Request.Body.Close()
if len(bodyByte) > 1000 {
log.Info("====>Recv data from client: BodyData:\n %s ...", string(bodyByte[0:1000]))
logs.Info("====>Recv data from client: BodyData:\n ", string(bodyByte[0:1000]))
} else {
log.Info("====>Recv data from client: BodyData: \n %s", string(bodyByte))
logs.Info("====>Recv data from client: BodyData: \n ", string(bodyByte))
}
}
return
}
func (controller *BaseController) GetHeaderToken() string {
return controller.Ctx.Input.Header("Authorization")
authString := controller.Ctx.Input.Header("Authorization")
//解出需要的jwt串 例:头Authorization:Bearer 123token456
s := strings.Split(authString, "\u0020")
var tokenString string
if len(s) > 0 {
tokenString = s[len(s)-1]
}
return tokenString
}
func (controller *BaseController) ValidJWTToken() bool {
... ... @@ -118,6 +126,7 @@ func (controller *BaseController) ValidJWTToken() bool {
mytoken := new(lib.MyToken)
err := mytoken.ValidJWTToken(headerToken)
if err != nil {
logs.Error("校验token失败", err)
if mytoken.IsJwtErrorExpired(err) {
//token超时
controller.Data["json"] = protocol.ResponseData{
... ...