diff --git a/legend/common/const.go b/legend/common/const.go deleted file mode 100644 index ff779ea..0000000 --- a/legend/common/const.go +++ /dev/null @@ -1,4 +0,0 @@ -package common - -const ACTIVE = "active" -const UNACTIVE = "unactive" diff --git a/legend/conf/app.conf b/legend/conf/app.conf deleted file mode 100644 index 7a807af..0000000 --- a/legend/conf/app.conf +++ /dev/null @@ -1,12 +0,0 @@ -appname = merchant -httpport = 8080 -runmode = dev - -dbtype = mysql - -[legend] -host = localhost -port = 3306 -username = root -password = Kyb^15273031604 -dbname = juhe_pay \ No newline at end of file diff --git a/legend/controllers/areaController.go b/legend/controllers/areaController.go deleted file mode 100644 index 44d77b1..0000000 --- a/legend/controllers/areaController.go +++ /dev/null @@ -1,75 +0,0 @@ -package controllers - -import ( - "legend/controllers/base" - "legend/request" - "legend/service" -) - -type AreaController struct { - base.BasicController -} - -func (c *AreaController) getRequestPrams() *request.AreaReq { - req := new(request.AreaReq) - req.AreaName = c.GetString("areaName") - req.GroupName = c.GetString("groupName") - req.TemplateName = c.GetString("templateName") - req.NotifyUrl = c.GetString("notifyUrl") - req.AttachParams = c.GetString("attachParams") - return req -} - -func (c *AreaController) AreaAdd() { - - req := c.getRequestPrams() - - se := new(service.AreaService) - area := se.AddArea(req) - - c.Data["json"] = area - _ = c.ServeJSON() -} - -func (c *AreaController) AreaEdit() { - req := c.getRequestPrams() - uid := c.GetString("uid") - - se := new(service.AreaService) - resp := se.EditArea(req, uid) - - c.Data["json"] = resp - - _ = c.ServeJSON() -} - -func (c *AreaController) AreaList() { - page, _ := c.GetInt("page") - limit, _ := c.GetInt("limit") - - se := new(service.AreaService) - list := se.AreaList(page, limit) - - c.Data["json"] = list - _ = c.ServeJSON() -} - -func (c *AreaController) AreaDelete() { - uid := c.GetString("uid") - - se := new(service.AreaService) - resp := se.DeleteArea(uid) - c.Data["json"] = resp - - _ = c.ServeJSON() -} - -func (c *AreaController) AreaGet() { - uid := c.GetString("uid") - - se := new(service.AreaService) - resp := se.GetArea(uid) - - c.Data["json"] = resp - _ = c.ServeJSON() -} diff --git a/legend/controllers/base/baseController.go b/legend/controllers/base/baseController.go deleted file mode 100644 index 90bfcd7..0000000 --- a/legend/controllers/base/baseController.go +++ /dev/null @@ -1,28 +0,0 @@ -package base - -import ( - "github.com/beego/beego/v2/core/logs" - "github.com/beego/beego/v2/server/web" - "legend/models/fast" -) - -/** -** 基础controller插件,重写一些公共的方法 - */ -type BasicController struct { - web.Controller -} - -func (c *BasicController) Prepare() { - - userName, ok := c.GetSession("userName").(string) - if ok { - logs.Info("该用户已经登录, userName:", userName) - userInfo := fast.GetMerchantInfoByUserName(userName) - if userInfo.LoginAccount != "" { - c.Data["nickName"] = userInfo.MerchantName - c.Data["merchantUid"] = userInfo.MerchantUid - } - } else { - } -} diff --git a/legend/controllers/default.go b/legend/controllers/default.go deleted file mode 100644 index c02a230..0000000 --- a/legend/controllers/default.go +++ /dev/null @@ -1,15 +0,0 @@ -package controllers - -import ( - beego "github.com/beego/beego/v2/server/web" -) - -type MainController struct { - beego.Controller -} - -func (c *MainController) Get() { - c.Data["Website"] = "beego.me" - c.Data["Email"] = "astaxie@gmail.com" - c.TplName = "index.tpl" -} diff --git a/legend/controllers/expection/expection.go b/legend/controllers/expection/expection.go deleted file mode 100644 index 426f549..0000000 --- a/legend/controllers/expection/expection.go +++ /dev/null @@ -1,19 +0,0 @@ -package expection - -import ( - "github.com/beego/beego/v2/server/web" - "html/template" - "net/http" -) - -func PageNotFind(rw http.ResponseWriter, r *http.Request) { - t, _ := template.New("404.html").ParseFiles(web.BConfig.WebConfig.ViewsPath + "/error/404.html") - data := make(map[string]interface{}) - t.Execute(rw, data) -} - -func SystemExpection(rw http.ResponseWriter, r *http.Request) { - t, _ := template.New("503.html").ParseFiles(web.BConfig.WebConfig.ViewsPath + "/error/503.html") - data := make(map[string]interface{}) - t.Execute(rw, data) -} diff --git a/legend/controllers/groupController.go b/legend/controllers/groupController.go deleted file mode 100644 index 4cbc871..0000000 --- a/legend/controllers/groupController.go +++ /dev/null @@ -1,53 +0,0 @@ -package controllers - -import ( - "legend/controllers/base" - "legend/service" -) - -type GroupController struct { - base.BasicController -} - -func (c *GroupController) AddGroup() { - groupName := c.GetString("groupName") - - se := new(service.GroupService) - resp := se.GroupAdd(groupName) - - c.Data["json"] = resp - _ = c.ServeJSON() -} - -func (c *GroupController) ListGroup() { - page, _ := c.GetInt("page") - limit, _ := c.GetInt("limit") - - se := new(service.GroupService) - list := se.GroupList(page, limit) - - c.Data["json"] = list - _ = c.ServeJSON() -} - -func (c *GroupController) DeleteGroup() { - uid := c.GetString("uid") - - se := new(service.GroupService) - resp := se.GroupDelete(uid) - - c.Data["json"] = resp - _ = c.ServeJSON() -} - -func (c *GroupController) EditGroup() { - - uid := c.GetString("uid") - groupName := c.GetString("groupName") - - se := new(service.GroupService) - resp := se.GroupEdit(uid, groupName) - - c.Data["json"] = resp - _ = c.ServeJSON() -} diff --git a/legend/controllers/indexController.go b/legend/controllers/indexController.go deleted file mode 100644 index 719576f..0000000 --- a/legend/controllers/indexController.go +++ /dev/null @@ -1,16 +0,0 @@ -package controllers - -import ( - "legend/controllers/base" -) - -type IndexController struct { - base.BasicController -} - -/** -** 用户登录后跳转的页面,也是后台的整个主题框架 - */ -func (c *IndexController) Index() { - c.TplName = "index.html" -} diff --git a/legend/controllers/loginController.go b/legend/controllers/loginController.go deleted file mode 100644 index 0f6c463..0000000 --- a/legend/controllers/loginController.go +++ /dev/null @@ -1,62 +0,0 @@ -package controllers - -import ( - "github.com/beego/beego/v2/core/logs" - "github.com/beego/beego/v2/server/web" - "legend/service" -) - -type LoginController struct { - web.Controller -} - -/** -**展示登录页面 - */ -func (c *LoginController) LoginPage() { - c.TplName = "login.html" -} - -/** -** 处理登录逻辑 - */ -func (c *LoginController) Login() { - - userName := c.GetString("username") - password := c.GetString("password") - - logs.Info("username:"+userName, ";password: "+password) - - loginService := new(service.LoginService) - - loginJsonData := loginService.Login(userName, password) - if loginJsonData.Code == 200 { - _ = c.SetSession("userName", userName) - } - - c.Data["json"] = loginJsonData - - err := c.ServeJSON() - if err != nil { - logs.Error("错误:", err) - } -} - -/** -** 更新登录密码 - */ -func (c *LoginController) PersonPassword() { - oldPassword := c.GetString("oldpass") - newPassword := c.GetString("newpass") - repeatPassword := c.GetString("repass") - - logs.Debug("用户跟换密码,旧密码:%s, 新密码:%s,确认密码:%s", oldPassword, newPassword, repeatPassword) - - userNname := c.GetSession("userName").(string) - - loginService := new(service.LoginService) - loginJsonData := loginService.PersonPassword(newPassword, oldPassword, repeatPassword, userNname) - - c.Data["json"] = loginJsonData - _ = c.ServeJSON() -} diff --git a/legend/controllers/logoutController.go b/legend/controllers/logoutController.go deleted file mode 100644 index 147dd6c..0000000 --- a/legend/controllers/logoutController.go +++ /dev/null @@ -1,29 +0,0 @@ -package controllers - -import ( - "github.com/beego/beego/v2/core/logs" - "github.com/beego/beego/v2/server/web" -) - -type LogoutController struct { - web.Controller -} - -func (c *LogoutController) Logout() { - if err := c.DelSession("username"); err != nil { - logs.Error("用户退出登录出错,错误信息:", err) - } - c.Redirect("/login.html", 302) -} - -/** -** 切换用户登录 - */ -func (c *LogoutController) SwitchLogin() { - err := c.DelSession("username") - if err != nil { - logs.Error("切换账号失败,错误信息:", err) - } - - c.Redirect("/login.html", 302) -} diff --git a/legend/controllers/showPageController.go b/legend/controllers/showPageController.go deleted file mode 100644 index 6a7c3d3..0000000 --- a/legend/controllers/showPageController.go +++ /dev/null @@ -1,164 +0,0 @@ -package controllers - -import ( - "fmt" - "github.com/beego/beego/v2/core/logs" - "legend/controllers/base" - "legend/service" - "legend/utils" -) - -type ShowPageController struct { - base.BasicController -} - -func (c *ShowPageController) FaviconPage() { - c.TplName = "favicon.png" -} - -/** -** 展示后台第一个页面 - */ -func (c *ShowPageController) WelcomePage() { - - userName := c.GetSession("userName").(string) - - fmt.Println(userName) - - accountService := new(service.AccountService) - accountInfo := accountService.GetAccountInfo(userName) - - logs.Debug("account信息:", accountInfo) - - c.Data["balance"] = accountInfo.Balance - c.Data["unBalance"] = accountInfo.FreezeAmount - c.Data["settleAmount"] = accountInfo.SettleAmount - // 获取今天充值金额 - todayIncome := accountService.GetTodayIncome() - logs.Debug("获取到当天充值金额:", todayIncome) - c.Data["todayAmount"] = todayIncome - - c.TplName = "welcome.html" -} - -/** -** 展示商户密钥 - */ -func (c *ShowPageController) MerchantKeyPage() { - userName := c.GetSession("userName").(string) - - merchantService := new(service.MerchantService) - userInfo, bankInfo := merchantService.GetMerchantBankInfo(userName) - - c.Data["currentTime"] = utils.GetNowTime() - c.Data["userName"] = userName - c.Data["userInfo"] = userInfo - c.Data["bankInfo"] = bankInfo - c.TplName = "merchant-key.html" -} - -/** -** 比例模板 - */ -func (c *ShowPageController) ScaleTemplatePage() { - c.TplName = "scale-template.html" -} - -/** -** 增加模板 - */ -func (c *ShowPageController) TemplateAdd() { - c.TplName = "template-add.html" -} - -func (c *ShowPageController) TemplateEdit() { - templateName := c.GetString("templateName") - fmt.Println(templateName) - c.Data["scaleTemplateName"] = templateName - c.TplName = "template-edit.html" -} - -/** -** 分组列表 - */ -func (c *ShowPageController) GroupListPage() { - c.TplName = "group-list.html" -} - -/** -** 分区列表 - */ -func (c *ShowPageController) AreaListPage() { - c.TplName = "area-list.html" -} - -func (c *ShowPageController) AreaEdit() { - uid := c.GetString("uid") - c.Data["uid"] = uid - c.TplName = "area-edit.html" -} - -/** -** 充值订单 - */ -func (c *ShowPageController) OrderListPage() { - c.TplName = "order-list.html" -} - -/** -** 模拟充值 - */ -func (c *ShowPageController) ImitateChargePage() { - c.TplName = "imitate-order.html" -} - -/** -** 结算管理 - */ -func (c *ShowPageController) SettleListPage() { - c.TplName = "settle-list.html" -} - -/** -**每日充值统计 - */ -func (c *ShowPageController) EverydayChargeCountPage() { - c.TplName = "everyday-charge-count.html" -} - -/** -** 分组充值统计 - */ -func (c *ShowPageController) GroupChargeCountPage() { - c.TplName = "group-charge-count.html" -} - -/** -** 分区充值统计 - */ -func (c *ShowPageController) AreaChargePage() { - c.TplName = "area-charge-count.html" -} - -/** -** 创建分区和编辑分区 - */ -func (c *ShowPageController) AreaAddOrEdit() { - c.TplName = "area-add.html" -} - -/** -** 个人页面 - */ -func (c *ShowPageController) PersonPage() { - userName, ok := c.GetSession("userName").(string) - if !ok { - c.Abort("404") - } else { - merchantService := new(service.MerchantService) - userInfo := merchantService.MerchantInfo(userName) - c.Data["userName"] = userInfo.MerchantName - } - - c.TplName = "person.html" -} diff --git a/legend/controllers/templeteController.go b/legend/controllers/templeteController.go deleted file mode 100644 index 19d0cec..0000000 --- a/legend/controllers/templeteController.go +++ /dev/null @@ -1,86 +0,0 @@ -package controllers - -import ( - "fmt" - "github.com/beego/beego/v2/core/logs" - "legend/controllers/base" - "legend/request" - "legend/service" - "legend/utils" - "strings" -) - -type TemplateController struct { - base.BasicController -} - -func (c *TemplateController) TemplateAdd() { - - addTemplate := new(request.AddTemplateReq) - if err := c.ParseForm(addTemplate); err != nil { - logs.Error("错误:", err) - } - - addTemplate.FixPrices = utils.StringToFloats(c.GetString("fixPrices")) - addTemplate.PresentFixMoneys = utils.StringToFloats(c.GetString("presentFixMoneys")) - addTemplate.PresentFixPresentMoneys = utils.StringToFloats(c.GetString("presentFixPresentMoneys")) - addTemplate.PresentScaleMoneys = utils.StringToFloats(c.GetString("presentScaleMoneys")) - addTemplate.PresentScales = utils.StringToFloats(c.GetString("presentScales")) - - addTemplate.FixUids = strings.Split(c.GetString("fixUids"), ",") - addTemplate.GoodsNames = strings.Split(c.GetString("goodsNames"), ",") - addTemplate.GoodsNos = strings.Split(c.GetString("goodsNos"), ",") - - addTemplate.PresentFixUids = strings.Split(c.GetString("presentFixUids"), ",") - addTemplate.PresentScaleUids = strings.Split(c.GetString("presentScaleUids"), ",") - addTemplate.Limits = utils.StringToInt(c.GetString("limits")) - - se := new(service.TemplateService) - merchantUid := c.Data["merchantUid"].(string) - t := c.GetString("type") - if t == "edit" { - c.Data["json"] = se.UpdateTemplate(addTemplate, merchantUid) - } else { - c.Data["json"] = se.AddTemplate(addTemplate, merchantUid) - } - - _ = c.ServeJSON() -} - -func (c *TemplateController) TemplateList() { - - page, _ := c.GetInt("page") - limit, _ := c.GetInt("limit") - - se := new(service.TemplateService) - list := se.GetTemplateList(page, limit) - - c.Data["json"] = list - _ = c.ServeJSON() -} - -func (c *TemplateController) TemplateDelete() { - templateName := c.GetString("TemplateName") - - logs.Debug("template TemplateName :", templateName) - - se := new(service.TemplateService) - baseResp := se.DeleteTemplate(templateName) - - c.Data["json"] = baseResp - _ = c.ServeJSON() -} - -func (c *TemplateController) TemplateAllInfo() { - templateName := c.GetString("scaleTemplateName") - logs.Debug("获取到的scaleTemplateName:", templateName) - - se := new(service.TemplateService) - allInfo := se.AllTemplateInfo(templateName) - - logs.Debug("scale template all info:", fmt.Sprintf("%+v", allInfo)) - - c.Data["json"] = allInfo - - _ = c.ServeJSON() -} diff --git a/legend/filter/loginFilter.go b/legend/filter/loginFilter.go deleted file mode 100644 index 8a31a0c..0000000 --- a/legend/filter/loginFilter.go +++ /dev/null @@ -1,28 +0,0 @@ -package filter - -import ( - "github.com/beego/beego/v2/adapter/logs" - "github.com/beego/beego/v2/server/web/context" - "strings" -) - -/** -** 对所有的用户请求进行登录判断,如果未登录跳转到登录页面 -** 但是对登录请求不进行过滤 - */ -var LoginFilter = func(ctx *context.Context) { - - _, ok := ctx.Input.Session("userName").(string) - if !ok { - if ctx.Request.RequestURI == "/login.html" { - return - } - - if !strings.Contains(ctx.Request.RequestURI, "/login") { - ctx.Redirect(302, "/login.html") - } else { - logs.Error("该用户没有登录.......") - } - } - -} diff --git a/legend/go.mod b/legend/go.mod deleted file mode 100644 index 1d2f570..0000000 --- a/legend/go.mod +++ /dev/null @@ -1,11 +0,0 @@ -module legend - -go 1.13 - -require github.com/beego/beego/v2 v2.0.1 - -require ( - github.com/go-sql-driver/mysql v1.5.0 - github.com/rs/xid v1.3.0 - github.com/smartystreets/goconvey v1.6.4 -) diff --git a/legend/go.sum b/legend/go.sum deleted file mode 100644 index 5830c7b..0000000 --- a/legend/go.sum +++ /dev/null @@ -1,285 +0,0 @@ -cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= -github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/Knetic/govaluate v3.0.0+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0= -github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= -github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= -github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/alicebob/gopher-json v0.0.0-20180125190556-5a6b3ba71ee6/go.mod h1:SGnFV6hVsYE877CKEZ6tDNTjaSXYUk6QqoIK6PrAtcc= -github.com/alicebob/miniredis v2.5.0+incompatible/go.mod h1:8HZjEj4yU0dwhYHky+DxYx+6BMjkBbe5ONFIF1MXffk= -github.com/astaxie/beego v1.12.3 h1:SAQkdD2ePye+v8Gn1r4X6IKZM1wd28EyUOVQ3PDSOOQ= -github.com/astaxie/beego v1.12.3/go.mod h1:p3qIm0Ryx7zeBHLljmd7omloyca1s4yu1a8kM1FkpIA= -github.com/beego/beego/v2 v2.0.1 h1:07a7Z0Ok5vbqyqh+q53sDPl9LdhKh0ZDy3gbyGrhFnE= -github.com/beego/beego/v2 v2.0.1/go.mod h1:8zyHi1FnWO1mZLwTn62aKRIZF/aIKvkCBB2JYs+eqQI= -github.com/beego/goyaml2 v0.0.0-20130207012346-5545475820dd/go.mod h1:1b+Y/CofkYwXMUU0OhQqGvsY2Bvgr4j6jfT699wyZKQ= -github.com/beego/x2j v0.0.0-20131220205130-a0352aadc542/go.mod h1:kSeGC/p1AbBiEp5kat81+DSQrZenVBZXklMLaELspWU= -github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= -github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= -github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= -github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= -github.com/bradfitz/gomemcache v0.0.0-20180710155616-bc664df96737/go.mod h1:PmM6Mmwb0LSuEubjR8N7PtNe1KxZLtOUHtbeikc5h60= -github.com/casbin/casbin v1.7.0/go.mod h1:c67qKN6Oum3UF5Q1+BByfFxkwKvhwW57ITjqwtzR1KE= -github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= -github.com/cespare/xxhash/v2 v2.1.1 h1:6MnRN8NT7+YBpUIWxHtefFZOKTAPgGjpQSxqLNn0+qY= -github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= -github.com/cloudflare/golz4 v0.0.0-20150217214814-ef862a3cdc58/go.mod h1:EOBUe0h4xcZ5GoxqC5SDxFQ8gwyZPKQoEzownBlhI80= -github.com/coreos/etcd v3.3.25+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= -github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= -github.com/coreos/go-systemd v0.0.0-20191104093116-d3cd4ed1dbcf/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= -github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= -github.com/couchbase/go-couchbase v0.0.0-20200519150804-63f3cdb75e0d/go.mod h1:TWI8EKQMs5u5jLKW/tsb9VwauIrMIxQG1r5fMsswK5U= -github.com/couchbase/gomemcached v0.0.0-20200526233749-ec430f949808/go.mod h1:srVSlQLB8iXBVXHgnqemxUXqN6FCvClgCMPCsjBDR7c= -github.com/couchbase/goutils v0.0.0-20180530154633-e865a1461c8a/go.mod h1:BQwMFlJzDjFDG3DJUdU0KORxn88UlsOULuxLExMh3Hs= -github.com/cupcake/rdb v0.0.0-20161107195141-43ba34106c76/go.mod h1:vYwsqCOLxGiisLwp9rITslkFNpZD5rz43tf41QFkTWY= -github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= -github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/edsrzf/mmap-go v0.0.0-20170320065105-0bce6a688712/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M= -github.com/elastic/go-elasticsearch/v6 v6.8.5/go.mod h1:UwaDJsD3rWLM5rKNFzv9hgox93HoX8utj1kxD9aFUcI= -github.com/elazarl/go-bindata-assetfs v1.0.0 h1:G/bYguwHIzWq9ZoyUQqrjTmJbbYn3j3CKKpKinvZLFk= -github.com/elazarl/go-bindata-assetfs v1.0.0/go.mod h1:v+YaWX3bdea5J/mo8dSETolEo7R71Vk1u8bnjau5yw4= -github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= -github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= -github.com/glendc/gopher-json v0.0.0-20170414221815-dc4743023d0c/go.mod h1:Gja1A+xZ9BoviGJNA2E9vFkPjjsl+CoJxSXiQM1UXtw= -github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= -github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= -github.com/go-redis/redis v6.14.2+incompatible/go.mod h1:NAIEuMOZ/fxfXJIrKDQDz8wamY7mA7PouImQ2Jvg6kA= -github.com/go-redis/redis/v7 v7.4.0/go.mod h1:JDNMw23GTyLNC4GZu9njt15ctBQVn7xjRfnwdHj/Dcg= -github.com/go-sql-driver/mysql v1.5.0 h1:ozyZYNQW3x3HtqT1jira07DN2PArx2v7/mN66gGcHOs= -github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= -github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= -github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= -github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= -github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= -github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= -github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= -github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= -github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= -github.com/golang/protobuf v1.4.2 h1:+Z5KGCizgyZCbGh1KZqA0fcLLkwbsjIzS4aV2v7wJX0= -github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= -github.com/golang/snappy v0.0.0-20170215233205-553a64147049/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/gomodule/redigo v2.0.0+incompatible/go.mod h1:B4C85qUVwatsJoIUNIfCRsp7qO0iAmpGFZ4EELWSbC4= -github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= -github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.0 h1:/QaMHBdZ26BB3SSst0Iwl10Epc+xhTquomWX0oZEB6w= -github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= -github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1 h1:EGx4pi6eqNxGaHF6qqu48+N2wcFQ5qg5FXgOdqsJ5d8= -github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= -github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= -github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= -github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= -github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/jtolds/gls v4.20.0+incompatible h1:xdiiI2gbIgH/gLH7ADydsJ1uDOEzR8yvV7C0MuV77Wo= -github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= -github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= -github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= -github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= -github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= -github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= -github.com/ledisdb/ledisdb v0.0.0-20200510135210-d35789ec47e6/go.mod h1:n931TsDuKuq+uX4v1fulaMbA/7ZLLhjc85h7chZGBCQ= -github.com/lib/pq v1.0.0 h1:X5PMW56eZitiTeO7tKzZxFCSpbFZJtkMMooicw2us9A= -github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= -github.com/mattn/go-sqlite3 v2.0.3+incompatible h1:gXHsfypPkaMZrKbD5209QV9jbUTJKjyR5WD3HYQSd+U= -github.com/mattn/go-sqlite3 v2.0.3+incompatible/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= -github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0jegS5sx/RkqARlsWZ6pIwiU= -github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/mitchellh/mapstructure v1.3.3 h1:SzB1nHZ2Xi+17FP0zVQBHIZqvwRN9408fJO8h+eeNA8= -github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= -github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= -github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= -github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg= -github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= -github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= -github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= -github.com/pelletier/go-toml v1.0.1/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= -github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= -github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrapLU/GW4pbc= -github.com/peterh/liner v1.0.1-0.20171122030339-3681c2a91233/go.mod h1:xIteQHvHuaLYG9IFj6mSxM0fCKrs34IrEQUhOYuGPHc= -github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= -github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= -github.com/prometheus/client_golang v1.7.0 h1:wCi7urQOGBsYcQROHqpUUX4ct84xp40t9R9JX0FuA/U= -github.com/prometheus/client_golang v1.7.0/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= -github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= -github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.2.0 h1:uq5h0d+GuxiXLJLNABMgp2qUWDPiLvgCzz2dUR+/W/M= -github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= -github.com/prometheus/common v0.10.0 h1:RyRA7RzGXQZiW+tGMr7sxa85G1z0yOpM1qq5c8lNawc= -github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= -github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.1.3 h1:F0+tqvhOksq22sc6iCHF5WGlWjdwj92p0udFh1VFBS8= -github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= -github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rs/xid v1.3.0 h1:6NjYksEUlhurdVehpc7S7dk6DAmcKv8V9gG0FsVN2U4= -github.com/rs/xid v1.3.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg= -github.com/shiena/ansicolor v0.0.0-20151119151921-a422bbe96644 h1:X+yvsM2yrEktyI+b2qND5gpH8YhURn0k8OCaeRnkINo= -github.com/shiena/ansicolor v0.0.0-20151119151921-a422bbe96644/go.mod h1:nkxAfR/5quYxwPZhyDxgasBMnRtBZd0FCEpawpjMUFg= -github.com/siddontang/go v0.0.0-20170517070808-cb568a3e5cc0/go.mod h1:3yhqj7WBBfRhbBlzyOC3gUxftwsU0u8gqevxwIHQpMw= -github.com/siddontang/goredis v0.0.0-20150324035039-760763f78400/go.mod h1:DDcKzU3qCuvj/tPnimWSsZZzvk9qvkvrIL5naVBPh5s= -github.com/siddontang/rdb v0.0.0-20150307021120-fc89ed2e418d/go.mod h1:AMEsy7v5z92TR1JKMkLLoaOQk++LVnOKL3ScbJ8GNGA= -github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= -github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d h1:zE9ykElWQ6/NYmHa3jpm/yHnI4xSofP+UP6SpjHcSeM= -github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= -github.com/smartystreets/goconvey v1.6.4 h1:fv0U8FUIMPNf1L9lnHLvLhgicrIVChEkdzIKYqbNC9s= -github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= -github.com/ssdb/gossdb v0.0.0-20180723034631-88f6b59b84ec/go.mod h1:QBvMkMya+gXctz3kmljlUCu/yB3GZ6oee+dUozsezQE= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= -github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk= -github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= -github.com/syndtr/goleveldb v0.0.0-20160425020131-cfa635847112/go.mod h1:Z4AUp2Km+PwemOoO/VB5AOx9XSsIItzFjoJlOSiYmn0= -github.com/syndtr/goleveldb v0.0.0-20181127023241-353a9fca669c/go.mod h1:Z4AUp2Km+PwemOoO/VB5AOx9XSsIItzFjoJlOSiYmn0= -github.com/ugorji/go v0.0.0-20171122102828-84cb69a8af83/go.mod h1:hnLbHMwcvSihnDhEfx2/BzKp2xb0Y+ErdfYcrs9tkJQ= -github.com/wendal/errors v0.0.0-20130201093226-f66c77a7882b/go.mod h1:Q12BUT7DqIlHRmgv3RskH+UCM/4eqVMgI0EMmlSpAXc= -github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/gopher-lua v0.0.0-20171031051903-609c9cd26973/go.mod h1:aEV29XrmTYFr3CiRxZeGHpkvbwq+prZduBqMaascyCU= -go.etcd.io/etcd v3.3.25+incompatible/go.mod h1:yaeTdrJi5lOmYerz05bd8+V7KubZs8YSFZfzsF9A6aI= -go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= -go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= -go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= -go.uber.org/zap v1.15.0/go.mod h1:Mb2vm2krFEG5DV0W9qcHBYFtp/Wku1cvYaqPsS/WYfc= -golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9 h1:psW17arqaxU48Z5kZ0CQnkZWQJsqcURM6tKiBApRjXI= -golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= -golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= -golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= -golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= -golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= -golang.org/x/mod v0.3.0 h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4= -golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20201021035429-f5854403a974 h1:IX6qOQeG5uLjB/hjjwjedwfjND0hgjPMMyO1RoIXQNI= -golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= -golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191010194322-b09406accb47/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f h1:+Nyd8tzPX9R7BWHguqsrbFdRx3WQ/1ib8I44HXV5yTA= -golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= -golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k= -golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= -golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= -golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20201211185031-d93e913c1a58 h1:1Bs6RVeBFtLZ8Yi1Hk07DiOqzvwLD/4hln4iahvFlag= -golang.org/x/tools v0.0.0-20201211185031-d93e913c1a58/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= -google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= -google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= -google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= -google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= -google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= -google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= -google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= -google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= -google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= -google.golang.org/protobuf v1.23.0 h1:4MY060fB1DLGMB/7MBTLnwQUY6+F09GEiz6SsrNqyzM= -google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= -gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU= -gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= -gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= -gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22/go.mod h1:yeKp02qBN3iKW1OzL3MGk2IdtZzaj7SFntXj72NppTA= -gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= -gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10= -gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= -honnef.co/go/tools v0.0.1-2020.1.5/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= diff --git a/legend/main.go b/legend/main.go deleted file mode 100644 index aeb5a50..0000000 --- a/legend/main.go +++ /dev/null @@ -1,48 +0,0 @@ -package main - -import ( - "github.com/beego/beego/v2/core/logs" - beego "github.com/beego/beego/v2/server/web" - "legend/controllers/expection" - _ "legend/models" - _ "legend/routers" -) - -func main() { - beego.BConfig.WebConfig.Session.SessionOn = true - RegisterLogs() - RegisterErrorHandler() - beego.Run() -} - -/** -**注册错误页面 - */ -func RegisterErrorHandler() { - beego.ErrorHandler("404", expection.PageNotFind) - beego.ErrorHandler("503", expection.SystemExpection) -} - -/** -** 注册日志信息 - */ -func RegisterLogs() { - logs.SetLogger(logs.AdapterFile, - `{ - "filename":"../../logs/legend.log", - "level":4, - "maxlines":0, - "maxsize":0, - "daily":true, - "maxdays":10, - "color":true - }`) - - f := &logs.PatternLogFormatter{ - Pattern: "%F:%n|%w%t>> %m", - WhenFormat: "2006-01-02", - } - - logs.RegisterFormatter("pattern", f) - _ = logs.SetGlobalFormatter("pattern") -} diff --git a/legend/models/fast/accountInfoDao.go b/legend/models/fast/accountInfoDao.go deleted file mode 100644 index 5046512..0000000 --- a/legend/models/fast/accountInfoDao.go +++ /dev/null @@ -1,38 +0,0 @@ -package fast - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type AccountInfo struct { - Id string `orm:"pk;column(id)"` - Status string - AccountUid string - AccountName string - Balance float64 - SettleAmount float64 - LoanAmount float64 - WaitAmount float64 - FreezeAmount float64 - PayforAmount float64 - UpdateTime string - CreateTime string -} - -const ACCOUNTINFO = "account_info" - -func (c *AccountInfo) TableName() string { - return "account_info" -} - -func GetAccountInfo(accountUid string) *AccountInfo { - o := orm.NewOrm() - - account := new(AccountInfo) - if _, err := o.QueryTable(ACCOUNTINFO).Filter("account_uid", accountUid).All(account); err != nil { - logs.Error("获取account信息失败:", err) - } - - return account -} diff --git a/legend/models/fast/bankCardInfoDao.go b/legend/models/fast/bankCardInfoDao.go deleted file mode 100644 index 7d6d6b8..0000000 --- a/legend/models/fast/bankCardInfoDao.go +++ /dev/null @@ -1,39 +0,0 @@ -package fast - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type BankCardInfo struct { - Id string `orm:"pk;column(id)"` - Uid string - UserName string - BankName string - BankCode string - BankAccountType string - AccountName string - BankNo string - IdentifyCard string - CertificateNo string - PhoneNo string - BankAddress string - CreateTime string - UpdateTime string -} - -const BANKCARDINFO = "bank_card_info" - -func (c *BankCardInfo) TableName() string { - return BANKCARDINFO -} - -func GetBankCardInfoByUserNo(merchantNo string) *BankCardInfo { - o := orm.NewOrm() - bankCardInfo := new(BankCardInfo) - if _, err := o.QueryTable(BANKCARDINFO).Filter("user_name", merchantNo).Limit(1).All(bankCardInfo); err != nil { - - logs.Error("获取用户银行卡信息失败:", err) - } - return bankCardInfo -} diff --git a/legend/models/fast/merchantDeployInfo.go b/legend/models/fast/merchantDeployInfo.go deleted file mode 100644 index 9894e0f..0000000 --- a/legend/models/fast/merchantDeployInfo.go +++ /dev/null @@ -1,32 +0,0 @@ -package fast - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type MerchantDeployInfo struct { - Id string `orm:"pk;column(id)"` - Status string - MerchantUid string - PayType string - SingleRoadUid string - SingleRoadName string -} - -const MERCHANTDEPLOYINFO = "merchant_deploy_info" - -func (c *MerchantDeployInfo) TableName() string { - return MERCHANTDEPLOYINFO -} - -func GetUserPayConfigByUserNo(userNo string) *MerchantDeployInfo { - o := orm.NewOrm() - userPayConfig := new(MerchantDeployInfo) - _, err := o.QueryTable(MERCHANTDEPLOYINFO).Filter("user_no", userNo).All(userPayConfig) - if err != nil { - logs.Error("获取用户支付配置错误:", err) - } - - return userPayConfig -} diff --git a/legend/models/fast/merchantInfoDao.go b/legend/models/fast/merchantInfoDao.go deleted file mode 100644 index 005100f..0000000 --- a/legend/models/fast/merchantInfoDao.go +++ /dev/null @@ -1,67 +0,0 @@ -package fast - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type MerchantInfo struct { - Id string `orm:"pk;column(id)"` - Status string - BelongAgentUid string - BelongAgentName string - MerchantName string - MerchantUid string - MerchantKey string - MerchantSecret string - LoginAccount string - LoginPassword string - AutoSettle string - AutoPayFor string - WhiteIps string - Remark string - SinglePayForRoadUid string - SinglePayForRoadName string - RollPayForRoadCode string - RollPayForRoadName string - PayforFee string - CreateTime string - UpdateTime string -} - -func (c *MerchantInfo) TableName() string { - return "merchant_info" - -} - -func tableName() string { - return "merchant_info" -} - -func GetMerchantInfoByUserName(userName string) *MerchantInfo { - - o := orm.NewOrm() - userInfo := new(MerchantInfo) - - _, err := o.QueryTable(tableName()).Filter("login_account", userName).All(userInfo) - - if err != nil { - logs.Error("根据用户名从数据获取用户信息失败:", err) - } - - return userInfo -} - -/** -** 更新用户信息 - */ -func UpdateMerchantInfo(merchantInfo *MerchantInfo) bool { - o := orm.NewOrm() - - if _, err := o.Update(merchantInfo); err != nil { - logs.Error("更新用户信息失败,错误:%s", err) - return false - } - - return true -} diff --git a/legend/models/fast/orderInfoDao.go b/legend/models/fast/orderInfoDao.go deleted file mode 100644 index 925ba8c..0000000 --- a/legend/models/fast/orderInfoDao.go +++ /dev/null @@ -1,63 +0,0 @@ -package fast - -import ( - "github.com/beego/beego/v2/adapter/orm" - "github.com/beego/beego/v2/core/logs" -) - -type OrderInfo struct { - Id string `orm:"pk;column(id)"` - MerchantOrderId string - ShopName string - OrderPeriod string - BankOrderId string - BankTransId string - OrderAmount float64 - ShowAmount float64 - FactAmount float64 - RollPoolCode string - RollPoolName string - RoadUid string - RoadName string - PayProductCode string - PayProductName string - PayTypeCode string - PayTypeName string - OsType string - Status string - Refund string - RefundTime string - Freeze string - FreezeTime string - Unfreeze string - UnfreezeTime string - ReturnUrl string - NotifyUrl string - MerchantUid string - MerchantName string - AgentUid string - AgentName string - Response string - UpdateTime string - CreateTime string -} - -const ORDERINFO = "order_info" - -func (c *OrderInfo) TableName() string { - return ORDERINFO -} - -/** -** 获取短时间内的充值金额 - */ -func GetRangeDateIncome(startTime, endTime string) float64 { - o := orm.NewOrm() - sum := 0.00 - err := o.Raw("select sum(order_amount) from order_info where status = ? and create_time >= ? and create_time <= ?", "success", startTime, endTime).QueryRow(&sum) - if err != nil { - logs.Error("获取短时间内金额失败,err:", err) - } - - return sum -} diff --git a/legend/models/init.go b/legend/models/init.go deleted file mode 100644 index c966edf..0000000 --- a/legend/models/init.go +++ /dev/null @@ -1,62 +0,0 @@ -package models - -import ( - "fmt" - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" - "github.com/beego/beego/v2/server/web" - _ "github.com/go-sql-driver/mysql" - "legend/models/fast" - "legend/models/legend" - "os" -) - -/** -** 链接数据库,注册已经存在的数据表,进行orm映射操作 - */ -func init() { - initLegend() -} - -/** -** 初始化传奇支付系统的mysql数据库 - */ -func initLegend() { - dbType, _ := web.AppConfig.String("dbtype") - mysqlHost, _ := web.AppConfig.String("legend::host") - mysqlPort, _ := web.AppConfig.String("legend::port") - mysqlUserName, _ := web.AppConfig.String("legend::username") - mysqlPassword, _ := web.AppConfig.String("legend::password") - mysqlDbName, _ := web.AppConfig.String("legend::dbname") - - logs.Info("host:%s, port:%s, usreName:%s, password:%s, dbname:%s", mysqlHost, mysqlPort, - mysqlUserName, mysqlPassword, mysqlDbName) - - pStr := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8&loc=Local", - mysqlUserName, mysqlPassword, mysqlHost, mysqlPort, mysqlDbName) - - if err := orm.RegisterDataBase("default", dbType, pStr); err != nil { - logs.Error("init legend fail:%s", err) - os.Exit(1) - } - - orm.SetMaxIdleConns("default", 30) - orm.SetMaxIdleConns("default", 30) - - orm.RegisterModel(new(fast.MerchantInfo)) - orm.RegisterModel(new(fast.MerchantDeployInfo)) - orm.RegisterModel(new(fast.BankCardInfo)) - orm.RegisterModel(new(fast.AccountInfo)) - orm.RegisterModel(new(fast.OrderInfo)) - - orm.RegisterModel(new(legend.AnyMoney)) - orm.RegisterModel(new(legend.FixMoney)) - orm.RegisterModel(new(legend.FixPresent)) - orm.RegisterModel(new(legend.ScalePresent)) - orm.RegisterModel(new(legend.ScaleTemplate)) - orm.RegisterModel(new(legend.Group)) - orm.RegisterModel(new(legend.Area)) - - logs.Info("init legend success ......") - -} diff --git a/legend/models/legend/legendAnyMoneyDao.go b/legend/models/legend/legendAnyMoneyDao.go deleted file mode 100644 index 06e1943..0000000 --- a/legend/models/legend/legendAnyMoneyDao.go +++ /dev/null @@ -1,61 +0,0 @@ -package legend - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type AnyMoney struct { - Id int `orm:"pk;column(id)"` - TemplateName string - GameMoneyName string - GameMoneyScale int - LimitLow float64 - BaseDao -} - -const ANYMONEY = "legend_any_money" - -func (c *AnyMoney) TableName() string { - return ANYMONEY -} - -func InsertAnyMoney(anyMoney *AnyMoney) bool { - o := orm.NewOrm() - if _, err := o.Insert(anyMoney); err != nil { - logs.Error("insert any money info err: ", err) - return false - } - - return true -} - -func GetAnyMoneyByName(name string) *AnyMoney { - o := orm.NewOrm() - anyMoney := new(AnyMoney) - if _, err := o.QueryTable(ANYMONEY).Filter("template_name", name).Limit(1).All(anyMoney); err != nil { - logs.Error("get any money err:", err) - } - return anyMoney -} - -func DeleteAnyMoney(templateName string) bool { - o := orm.NewOrm() - _, err := o.QueryTable(ANYMONEY).Filter("template_name", templateName).Delete() - if err != nil { - logs.Error("delete any money err:", err) - return false - } - - return true -} - -func UpdateAnyMoney(anyMoney *AnyMoney) bool { - o := orm.NewOrm() - if _, err := o.Update(anyMoney); err != nil { - logs.Error("update any money err: ", err) - return false - } - - return true -} diff --git a/legend/models/legend/legendAreaDao.go b/legend/models/legend/legendAreaDao.go deleted file mode 100644 index 8c684fa..0000000 --- a/legend/models/legend/legendAreaDao.go +++ /dev/null @@ -1,92 +0,0 @@ -package legend - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type Area struct { - Id int `orm:"pk;column(id)"` - AreaName string - Uid string - GroupName string - TemplateName string - NotifyUrl string - AttachParams string - BaseDao -} - -const AREA = "legend_area" - -func (c *Area) TableName() string { - return AREA -} - -func InsertArea(area *Area) bool { - o := orm.NewOrm() - if _, err := o.Insert(area); err != nil { - logs.Error("insert area err: ", err) - return false - } - return true -} - -func GetAreaByName(name string) *Area { - o := orm.NewOrm() - area := new(Area) - if _, err := o.QueryTable(AREA).Filter("area_name", name).Limit(1).All(area); err != nil { - logs.Error("get area by name err:", err) - } - - return area -} - -func GetAreaAllCount() int { - o := orm.NewOrm() - count, err := o.QueryTable(AREA).Count() - if err != nil { - logs.Error("get area all count err:", err) - } - - return int(count) -} - -func GetAreaList(offset, limit int) []Area { - o := orm.NewOrm() - var areas []Area - if _, err := o.QueryTable(AREA).Limit(limit, offset).OrderBy("-create_time").All(&areas); err != nil { - logs.Error(" get area list err:", err) - } - - return areas -} - -func GetAreaByUid(uid string) *Area { - o := orm.NewOrm() - area := new(Area) - if _, err := o.QueryTable(AREA).Filter("uid", uid).Limit(1).All(area); err != nil { - logs.Error(" get area by uid err : ", err) - } - - return area -} - -func UpdateArea(area *Area) bool { - o := orm.NewOrm() - if _, err := o.Update(area); err != nil { - logs.Error("update area err:", err) - return false - } - - return true -} - -func DeleteAreaByUid(uid string) bool { - o := orm.NewOrm() - if _, err := o.QueryTable(AREA).Filter("uid", uid).Delete(); err != nil { - logs.Error(" delete area by uid err:", err) - return false - } - - return true -} diff --git a/legend/models/legend/legendBaseDao.go b/legend/models/legend/legendBaseDao.go deleted file mode 100644 index 7a72f65..0000000 --- a/legend/models/legend/legendBaseDao.go +++ /dev/null @@ -1,6 +0,0 @@ -package legend - -type BaseDao struct { - UpdateTime string - CreateTime string -} diff --git a/legend/models/legend/legendFixMoneyDao.go b/legend/models/legend/legendFixMoneyDao.go deleted file mode 100644 index 2e7d313..0000000 --- a/legend/models/legend/legendFixMoneyDao.go +++ /dev/null @@ -1,83 +0,0 @@ -package legend - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type FixMoney struct { - Id int `orm:"pk;column(id)"` - Uid string - TemplateName string - Price float64 - GoodsName string - GoodsNo string - BuyTimes int - BaseDao -} - -const FIXMONEY = "legend_fix_money" - -func (c *FixMoney) TableName() string { - return FIXMONEY -} - -func InsertFixMoney(fixMoney *FixMoney) bool { - o := orm.NewOrm() - if _, err := o.Insert(fixMoney); err != nil { - logs.Error("insert fix money err: ", err) - return false - } - - return true -} - -func GetFixMoneyByName(name string) []FixMoney { - o := orm.NewOrm() - var fixMoneys []FixMoney - if _, err := o.QueryTable(FIXMONEY).Filter("template_name", name).Limit(-1).All(&fixMoneys); err != nil { - logs.Error("get fix money err:", err) - } - - return fixMoneys -} - -func GetFixMoneyByUid(uid string) *FixMoney { - o := orm.NewOrm() - fixMoney := new(FixMoney) - if _, err := o.QueryTable(FIXMONEY).Filter("uid", uid).Limit(1).All(fixMoney); err != nil { - logs.Error("get fix Money by uid err:", err) - } - - return fixMoney -} - -func DeleteFixMoney(templateName string) bool { - o := orm.NewOrm() - if _, err := o.QueryTable(FIXMONEY).Filter("template_name", templateName).Delete(); err != nil { - logs.Error("delete fix money err:", err) - return false - } - - return true -} - -func DeleteFixMoneyByUid(uid string) bool { - o := orm.NewOrm() - if _, err := o.QueryTable(FIXMONEY).Filter("uid", uid).Delete(); err != nil { - logs.Error("delete fix money err:", err) - return false - } - - return true -} - -func UpdateFixMoney(fixMoney *FixMoney) bool { - o := orm.NewOrm() - if _, err := o.Update(fixMoney); err != nil { - logs.Error("update fix money err: ", err) - return false - } - - return true -} diff --git a/legend/models/legend/legendFixPresentDao.go b/legend/models/legend/legendFixPresentDao.go deleted file mode 100644 index dbfa4ce..0000000 --- a/legend/models/legend/legendFixPresentDao.go +++ /dev/null @@ -1,81 +0,0 @@ -package legend - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type FixPresent struct { - Id int `orm:"pk;column(id)"` - Uid string - TemplateName string - Money float64 - PresentMoney float64 - BaseDao -} - -const FIXPRESENT = "legend_fix_present" - -func (c *FixPresent) TableName() string { - return FIXPRESENT -} - -func InsertFixPresent(fixPresnet *FixPresent) bool { - o := orm.NewOrm() - if _, err := o.Insert(fixPresnet); err != nil { - logs.Error("insert fix present err:", err) - return false - } - - return true -} - -func GetFixPresentsByName(name string) []FixPresent { - o := orm.NewOrm() - var fixPresents []FixPresent - if _, err := o.QueryTable(FIXPRESENT).Filter("template_name", name).Limit(-1).All(&fixPresents); err != nil { - logs.Error("get fix presents err:", err) - } - - return fixPresents -} - -func GetFixPresentByUid(uid string) *FixPresent { - o := orm.NewOrm() - fixPresent := new(FixPresent) - if _, err := o.QueryTable(FIXPRESENT).Filter("uid", uid).Limit(1).All(fixPresent); err != nil { - logs.Error("get fix present err:", err) - } - - return fixPresent -} - -func DeleteFixPresent(templateName string) bool { - o := orm.NewOrm() - if _, err := o.QueryTable(FIXPRESENT).Filter("template_name", templateName).Delete(); err != nil { - logs.Error("delete fix present err: ", err) - return false - } - - return true -} - -func DeleteFixPresentByUid(uid string) bool { - o := orm.NewOrm() - if _, err := o.QueryTable(FIXPRESENT).Filter("uid", uid).Delete(); err != nil { - logs.Error("delete fix present by uid err:", err) - return false - } - - return true -} - -func UpdatePresentFixMoney(present *FixPresent) bool { - o := orm.NewOrm() - if _, err := o.Update(present); err != nil { - logs.Error("update fix present err: ", err) - return false - } - - return true -} diff --git a/legend/models/legend/legendGroupDao.go b/legend/models/legend/legendGroupDao.go deleted file mode 100644 index 0dd69bd..0000000 --- a/legend/models/legend/legendGroupDao.go +++ /dev/null @@ -1,90 +0,0 @@ -package legend - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type Group struct { - Id int `orm:"pk;column(id)"` - GroupName string - Uid string - BaseDao -} - -const GROUP = "legend_group" - -func (c *Group) TableName() string { - return GROUP -} - -func InsertGroup(group *Group) bool { - o := orm.NewOrm() - if _, err := o.Insert(group); err != nil { - logs.Error("insert group err:", err) - return false - } - - return true -} - -func GetGroupAllCont() int { - o := orm.NewOrm() - count, err := o.QueryTable(GROUP).Limit(-1).Count() - if err != nil { - logs.Error(" get group all count err: ", err) - } - - return int(count) -} - -func GetGroupList(offset, limit int) []Group { - o := orm.NewOrm() - - var groups []Group - if _, err := o.QueryTable(GROUP).Limit(limit, offset).OrderBy("-create_time").All(&groups); err != nil { - logs.Error("get scale template list err : ", err) - } - - return groups -} - -func GetGroupByName(name string) *Group { - o := orm.NewOrm() - group := new(Group) - if _, err := o.QueryTable(GROUP).Filter("group_name", name).Limit(1).All(group); err != nil { - logs.Error(" get group by name err:", err) - } - - return group -} - -func GetGroupByUid(uid string) *Group { - o := orm.NewOrm() - group := new(Group) - if _, err := o.QueryTable(GROUP).Filter("uid", uid).Limit(1).All(group); err != nil { - logs.Error("get group by uid err: ", err) - } - - return group -} - -func DeleteGroupByUid(uid string) bool { - o := orm.NewOrm() - if _, err := o.QueryTable(GROUP).Filter("uid", uid).Delete(); err != nil { - logs.Error("delete group by uid err: ", err) - return false - } - - return true -} - -func UpdateGroup(group *Group) bool { - o := orm.NewOrm() - if _, err := o.Update(group); err != nil { - logs.Error("update group err:", err) - return false - } - - return true -} diff --git a/legend/models/legend/legendScalePresentDao.go b/legend/models/legend/legendScalePresentDao.go deleted file mode 100644 index f4c79a7..0000000 --- a/legend/models/legend/legendScalePresentDao.go +++ /dev/null @@ -1,81 +0,0 @@ -package legend - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type ScalePresent struct { - Id int `orm:"pk;column(id)"` - Uid string - TemplateName string - Money float64 - PresentScale float64 - BaseDao -} - -const SCALEPRESENT = "legend_scale_present" - -func (c *ScalePresent) TableName() string { - return SCALEPRESENT -} - -func InsertScalePresent(scalePresent *ScalePresent) bool { - o := orm.NewOrm() - if _, err := o.Insert(scalePresent); err != nil { - logs.Error("insert scale present err:", err) - return false - } - - return true -} - -func GetScalePresentsByName(name string) []ScalePresent { - o := orm.NewOrm() - var scalePresents []ScalePresent - if _, err := o.QueryTable(SCALEPRESENT).Filter("template_name", name).Limit(-1).All(&scalePresents); err != nil { - logs.Error("get scale present err:", err) - } - - return scalePresents -} - -func GetScalePresentByUid(uid string) *ScalePresent { - o := orm.NewOrm() - scalePresent := new(ScalePresent) - if _, err := o.QueryTable(SCALEPRESENT).Filter("uid", uid).Limit(1).All(scalePresent); err != nil { - logs.Error("get scale present err:", err) - } - - return scalePresent -} - -func DeleteScalePresent(templateName string) bool { - o := orm.NewOrm() - if _, err := o.QueryTable(SCALEPRESENT).Filter("template_name", templateName).Delete(); err != nil { - logs.Error("delete scale present err:", err) - return false - } - - return true -} - -func DeleteScalePresentByUid(uid string) bool { - o := orm.NewOrm() - if _, err := o.QueryTable(SCALEPRESENT).Filter("uid", uid).Delete(); err != nil { - logs.Error("delete scale present by uid err:", err) - return false - } - - return true -} - -func UpdateScalePresent(present *ScalePresent) bool { - o := orm.NewOrm() - if _, err := o.Update(present); err != nil { - logs.Error("update scale present err: ", err) - return false - } - - return true -} diff --git a/legend/models/legend/legendScaleTempleteDao.go b/legend/models/legend/legendScaleTempleteDao.go deleted file mode 100644 index 2b944e3..0000000 --- a/legend/models/legend/legendScaleTempleteDao.go +++ /dev/null @@ -1,100 +0,0 @@ -package legend - -import ( - "github.com/beego/beego/v2/client/orm" - "github.com/beego/beego/v2/core/logs" -) - -type ScaleTemplate struct { - Id int `orm:"pk;column(id)"` - MerchantUid string - TemplateName string - UserUid string - UserWarn string - MoneyType string - PresentType string - BaseDao -} - -const SCALETMPLETE = "legend_scale_template" - -func (c *ScaleTemplate) TableName() string { - return SCALETMPLETE -} - -func InsertScaleTemplate(scaleTemplate *ScaleTemplate) bool { - o := orm.NewOrm() - - if _, err := o.Insert(scaleTemplate); err != nil { - logs.Error("insert scale template err: ", err) - return false - } - - return true -} - -func IsExistsScaleTemplateByName(name string) bool { - o := orm.NewOrm() - return o.QueryTable(SCALETMPLETE).Filter("template_name", name).Exist() -} - -func GetScaleTemplateList(offset, limit int) []ScaleTemplate { - o := orm.NewOrm() - - var scaleTemplates []ScaleTemplate - if _, err := o.QueryTable(SCALETMPLETE).Limit(limit, offset).OrderBy("-create_time").All(&scaleTemplates); err != nil { - logs.Error("get scale template list err : ", err) - } - - return scaleTemplates -} - -func GetScaleTemplateAll() int { - o := orm.NewOrm() - count, err := o.QueryTable(SCALETMPLETE).Count() - if err != nil { - logs.Error("get scale template all err:", err) - } - return int(count) -} - -func GetScaleTemplateByName(name string) *ScaleTemplate { - o := orm.NewOrm() - scaleTemplate := new(ScaleTemplate) - if _, err := o.QueryTable(SCALETMPLETE).Filter("template_name", name).Limit(1).All(scaleTemplate); err != nil { - logs.Error("get scale template by name err:", err) - } - - return scaleTemplate -} - -func GetScaleTemplateByNameAndMerchantUid(name, merchantUid string) *ScaleTemplate { - o := orm.NewOrm() - scaleTemplate := new(ScaleTemplate) - if _, err := o.QueryTable(SCALETMPLETE).Filter("template_name", name). - Filter("merchant_uid", merchantUid).Limit(1).All(scaleTemplate); err != nil { - logs.Error("get scale template by name and merchantUid err:", err) - } - - return scaleTemplate -} - -func DeleteScaleTemplate(templateName string) bool { - o := orm.NewOrm() - if _, err := o.QueryTable(SCALETMPLETE).Filter("template_name", templateName).Delete(); err != nil { - logs.Error("delete template err:", err) - return false - } - - return true -} - -func UpdateScaleTemplate(template *ScaleTemplate) bool { - o := orm.NewOrm() - if _, err := o.Update(template); err != nil { - logs.Error("update scale template err: ", err) - return false - } - - return true -} diff --git a/legend/request/areaReq.go b/legend/request/areaReq.go deleted file mode 100644 index 32f038a..0000000 --- a/legend/request/areaReq.go +++ /dev/null @@ -1,9 +0,0 @@ -package request - -type AreaReq struct { - AreaName string - GroupName string - TemplateName string - NotifyUrl string - AttachParams string -} diff --git a/legend/request/templateReq.go b/legend/request/templateReq.go deleted file mode 100644 index 5a9b162..0000000 --- a/legend/request/templateReq.go +++ /dev/null @@ -1,23 +0,0 @@ -package request - -type AddTemplateReq struct { - ScaleTemplateName string `form:"scaleTemplateName"` - ScaleUserName string `form:"scaleUserName"` - ScaleUserNamePoint string `form:"scaleUserNamePoint"` - MoneyType string `form:"moneyType"` - GameMoneyName string `form:"gameMoneyName"` - GameMoneyScale int `form:"gameMoneyScale"` - LimitLowMoney float64 `form:"limitLowMoney"` - PresentType string `form:"presentType"` - FixPrices []float64 `form:"fixPrices"` - GoodsNames []string `form:"goodsNames"` - GoodsNos []string `form:"goodsNos"` - Limits []int `form:"limits"` - PresentFixMoneys []float64 `form:"presentFixMoneys"` - PresentFixPresentMoneys []float64 `form:"presentFixPresentMoneys"` - PresentScaleMoneys []float64 `form:"presentScaleMoneys"` - PresentScales []float64 `form:"presentScales"` - FixUids []string `form:"fixUids"` - PresentScaleUids []string `form:"presentScaleUids"` - PresentFixUids []string `form:"presentFixUids"` -} diff --git a/legend/response/areaResp.go b/legend/response/areaResp.go deleted file mode 100644 index aefa301..0000000 --- a/legend/response/areaResp.go +++ /dev/null @@ -1,16 +0,0 @@ -package response - -import "legend/models/legend" - -type AreaListResp struct { - Code int `json:"code"` - Msg string `json:"msg"` - Count int `json:"count"` - Data []legend.Area `json:"data"` -} - -type AreaInfoResp struct { - Code int - Msg string - Area *legend.Area -} diff --git a/legend/response/baseResp.go b/legend/response/baseResp.go deleted file mode 100644 index dc29124..0000000 --- a/legend/response/baseResp.go +++ /dev/null @@ -1,6 +0,0 @@ -package response - -type BaseResp struct { - Code int - Msg string -} diff --git a/legend/response/groupResp.go b/legend/response/groupResp.go deleted file mode 100644 index e820c19..0000000 --- a/legend/response/groupResp.go +++ /dev/null @@ -1,10 +0,0 @@ -package response - -import "legend/models/legend" - -type GroupListResp struct { - Code int `json:"code"` - Msg string `json:"msg"` - Count int `json:"count"` - Data []legend.Group `json:"data"` -} diff --git a/legend/response/templateResp.go b/legend/response/templateResp.go deleted file mode 100644 index 3eabe18..0000000 --- a/legend/response/templateResp.go +++ /dev/null @@ -1,24 +0,0 @@ -package response - -import "legend/models/legend" - -type AddTemplateResp struct { - Code int - Msg string -} - -type TemplateListResp struct { - Code int `json:"code"` - Msg string `json:"msg"` - Count int `json:"count"` - Data []legend.ScaleTemplate `json:"data"` -} - -type TemplateAllInfoResp struct { - AddTemplateResp - TemplateInfo *legend.ScaleTemplate - AnyMoneyInfo *legend.AnyMoney - FixMoneyInfos []legend.FixMoney - PresentFixMoneyInfos []legend.FixPresent - PresentScaleMoneyInfos []legend.ScalePresent -} diff --git a/legend/routers/router.go b/legend/routers/router.go deleted file mode 100644 index 29632fe..0000000 --- a/legend/routers/router.go +++ /dev/null @@ -1,64 +0,0 @@ -package routers - -import ( - "github.com/beego/beego/v2/server/web" - "legend/controllers" - "legend/filter" -) - -func init() { - pageInit() - logicInit() -} - -/** -** 初始化展示页面路由器 - */ -func pageInit() { - - //web.Router("/favicon.ico", &controllers.ShowPageController{}, "*:FaviconPage") - web.Router("/", &controllers.IndexController{}, "*:Index") - web.Router("/index.html", &controllers.IndexController{}, "*:Index") - web.Router("/login.html", &controllers.LoginController{}, "*:LoginPage") - web.Router("/welcome.html", &controllers.ShowPageController{}, "*:WelcomePage") - web.Router("/merchantKey.html", &controllers.ShowPageController{}, "*:MerchantKeyPage") - web.Router("/orderList.html", &controllers.ShowPageController{}, "*:OrderListPage") - web.Router("/scaleTemplate.html", &controllers.ShowPageController{}, "*:ScaleTemplatePage") - web.Router("/templateAdd.html", &controllers.ShowPageController{}, "*:TemplateAdd") - web.Router("/templateEdit.html", &controllers.ShowPageController{}, "*:TemplateEdit") - web.Router("/groupList.html", &controllers.ShowPageController{}, "*:GroupListPage") - web.Router("/areaList.html", &controllers.ShowPageController{}, "*:AreaListPage") - web.Router("/imitateOrder.html", &controllers.ShowPageController{}, "*:ImitateChargePage") - web.Router("/settleList.html", &controllers.ShowPageController{}, "*:SettleListPage") - web.Router("/everydayChargeCount.html", &controllers.ShowPageController{}, "*:EverydayChargeCountPage") - web.Router("/groupChargeCount.html", &controllers.ShowPageController{}, "*:GroupChargeCountPage") - web.Router("/areaChargeCount.html", &controllers.ShowPageController{}, "*:AreaChargePage") - web.Router("/person.html", &controllers.ShowPageController{}, "*:PersonPage") - web.Router("areaAddOrEdit.html", &controllers.ShowPageController{}, "*:AreaAddOrEdit") - web.Router("/areaEdit.html", &controllers.ShowPageController{}, "*:AreaEdit") -} - -/** -** 业务逻辑路由 - */ -func logicInit() { - web.Router("/login", &controllers.LoginController{}, "*:Login") - web.Router("/logout.html", &controllers.LogoutController{}, "*:Logout") - web.Router("/switch/login", &controllers.LogoutController{}, "*:SwitchLogin") - web.Router("/person/password", &controllers.LoginController{}, "*:PersonPassword") - web.Router("/add/template", &controllers.TemplateController{}, "*:TemplateAdd") - web.Router("/template/list", &controllers.TemplateController{}, "*:TemplateList") - web.Router("/delete/template", &controllers.TemplateController{}, "*:TemplateDelete") - web.Router("/template/info", &controllers.TemplateController{}, "*:TemplateAllInfo") - web.Router("/group/list", &controllers.GroupController{}, "*:ListGroup") - web.Router("/add/group", &controllers.GroupController{}, "*:AddGroup") - web.Router("/delete/group", &controllers.GroupController{}, "*:DeleteGroup") - web.Router("/edit/group", &controllers.GroupController{}, "*:EditGroup") - web.Router("/add/area", &controllers.AreaController{}, "*:AreaAdd") - web.Router("/area/list", &controllers.AreaController{}, "*:AreaList") - web.Router("/delete/area", &controllers.AreaController{}, "*:AreaDelete") - web.Router("/get/area", &controllers.AreaController{}, "*:AreaGet") - web.Router("/edit/area", &controllers.AreaController{}, "*:AreaEdit") - - web.InsertFilter("/*", web.BeforeRouter, filter.LoginFilter) -} diff --git a/legend/service/accountService.go b/legend/service/accountService.go deleted file mode 100644 index fd6a876..0000000 --- a/legend/service/accountService.go +++ /dev/null @@ -1,31 +0,0 @@ -package service - -import ( - "legend/models/fast" - "legend/utils" -) - -type AccountService struct { - BaseService -} - -func (c *AccountService) GetAccountInfo(userName string) *fast.AccountInfo { - - merchantInfo := fast.GetMerchantInfoByUserName(userName) - - accountInfo := fast.GetAccountInfo(merchantInfo.MerchantUid) - - return accountInfo -} - -/** -** 获取当天的充值金额 - */ -func (c *AccountService) GetTodayIncome() float64 { - startTime := utils.GetNowDate() + " 00:00:00" - endTime := utils.GetNowDate() + " 23:59:59" - - todayIncome := fast.GetRangeDateIncome(startTime, endTime) - - return todayIncome -} diff --git a/legend/service/areaService.go b/legend/service/areaService.go deleted file mode 100644 index 3e5d015..0000000 --- a/legend/service/areaService.go +++ /dev/null @@ -1,98 +0,0 @@ -package service - -import ( - "github.com/rs/xid" - "legend/models/legend" - "legend/request" - "legend/response" - "legend/utils" -) - -type AreaService struct { - BaseService -} - -func (c *AreaService) AddArea(req *request.AreaReq) *response.BaseResp { - resp := new(response.BaseResp) - - area := new(legend.Area) - area.AreaName = req.AreaName - area.GroupName = req.GroupName - area.TemplateName = req.TemplateName - area.NotifyUrl = req.NotifyUrl - area.AttachParams = req.AttachParams - area.UpdateTime = utils.GetNowTime() - area.CreateTime = utils.GetNowTime() - area.Uid = xid.New().String() - - if legend.InsertArea(area) { - resp.Code = 0 - } else { - resp.Code = -1 - resp.Msg = "添加分区失败" - } - - return resp -} - -func (c *AreaService) AreaList(page, limit int) *response.AreaListResp { - offset := utils.CountOffset(page, limit) - count := legend.GetAreaAllCount() - areas := legend.GetAreaList(offset, limit) - - for i, _ := range areas { - areas[i].Id = offset + i + 1 - } - - areaResp := new(response.AreaListResp) - areaResp.Code = 0 - areaResp.Count = count - areaResp.Data = areas - - return areaResp -} - -func (c *AreaService) DeleteArea(uid string) *response.BaseResp { - resp := new(response.BaseResp) - - if legend.DeleteAreaByUid(uid) { - resp.Code = 0 - } else { - resp.Code = -1 - resp.Msg = "删除分区失败" - } - return resp -} - -func (c *AreaService) GetArea(uid string) *response.AreaInfoResp { - resp := new(response.AreaInfoResp) - resp.Code = 0 - resp.Msg = "请求成功" - - area := legend.GetAreaByUid(uid) - resp.Area = area - - return resp -} - -func (c *AreaService) EditArea(req *request.AreaReq, uid string) *response.BaseResp { - resp := new(response.BaseResp) - resp.Code = -1 - - area := legend.GetAreaByUid(uid) - if area == nil || area.AreaName == "" { - resp.Msg = "更新失败" - } else { - area.UpdateTime = utils.GetNowTime() - area.GroupName = req.GroupName - area.TemplateName = req.TemplateName - area.NotifyUrl = req.NotifyUrl - area.AttachParams = req.AttachParams - - if legend.UpdateArea(area) { - resp.Msg = "更新失败" - } - } - - return resp -} diff --git a/legend/service/baseService.go b/legend/service/baseService.go deleted file mode 100644 index 36a3e13..0000000 --- a/legend/service/baseService.go +++ /dev/null @@ -1,4 +0,0 @@ -package service - -type BaseService struct { -} diff --git a/legend/service/groupService.go b/legend/service/groupService.go deleted file mode 100644 index 6ab1b46..0000000 --- a/legend/service/groupService.go +++ /dev/null @@ -1,87 +0,0 @@ -package service - -import ( - "github.com/rs/xid" - "legend/models/legend" - "legend/response" - "legend/utils" -) - -type GroupService struct { - BaseService -} - -func (c *GroupService) GroupAdd(groupName string) *response.BaseResp { - - resp := new(response.BaseResp) - resp.Code = -1 - - group := new(legend.Group) - - uid := xid.New().String() - group.GroupName = groupName - group.Uid = uid - group.CreateTime = utils.GetNowTime() - group.UpdateTime = utils.GetNowTime() - - if legend.InsertGroup(group) { - resp.Code = 0 - resp.Msg = "添加分组成功" - } else { - resp.Msg = "添加分组失败" - } - - return resp -} - -func (c *GroupService) GroupList(page, limit int) *response.GroupListResp { - - offset := utils.CountOffset(page, limit) - count := legend.GetGroupAllCont() - groups := legend.GetGroupList(offset, limit) - - for i, _ := range groups { - groups[i].Id = offset + i + 1 - } - - groupListResp := new(response.GroupListResp) - groupListResp.Count = count - groupListResp.Code = 0 - groupListResp.Data = groups - - return groupListResp -} - -func (c *GroupService) GroupDelete(uid string) *response.BaseResp { - resp := new(response.BaseResp) - resp.Code = 0 - if legend.DeleteGroupByUid(uid) { - resp.Msg = "删除成功" - } else { - resp.Msg = "删除分组信息失败" - resp.Code = -1 - } - - return resp -} - -func (c *GroupService) GroupEdit(uid, groupName string) *response.BaseResp { - resp := new(response.BaseResp) - resp.Code = -1 - - group := legend.GetGroupByUid(uid) - if group == nil || group.Uid == "" { - resp.Msg = "不存在这样的分组信息" - } else { - group.UpdateTime = utils.GetNowTime() - group.GroupName = groupName - if legend.UpdateGroup(group) { - resp.Code = 0 - resp.Msg = "更新成功" - } else { - resp.Msg = "更新失败" - } - } - - return resp -} diff --git a/legend/service/loginService.go b/legend/service/loginService.go deleted file mode 100644 index cd52189..0000000 --- a/legend/service/loginService.go +++ /dev/null @@ -1,78 +0,0 @@ -package service - -import ( - "fmt" - "github.com/beego/beego/v2/adapter/logs" - "legend/common" - "legend/models/fast" - "legend/utils" - "strings" -) - -type LoginService struct { - BaseService -} - -type LoginJsonData struct { - Code int - Msg string -} - -func (c *LoginService) Login(userName, password string) *LoginJsonData { - - loginJsonData := new(LoginJsonData) - loginJsonData.Code = 200 - - userInfo := fast.GetMerchantInfoByUserName(userName) - logs.Info("登录账户信息:", fmt.Sprintf("%+v", userInfo)) - if nil == userInfo || userInfo.LoginAccount == "" { - logs.Error("用户不存在,账户:", userName) - loginJsonData.Code = 404 - loginJsonData.Msg = "用户不存在" - } else { - if strings.ToLower(userInfo.Status) == strings.ToLower(common.UNACTIVE) { - logs.Warn("账号异常,请联系管理员,账号:", userName) - loginJsonData.Code = 503 - loginJsonData.Msg = "账户已经被冻结" - } else { - md5Password := utils.EncodeMd5(password) - logs.Info("账户密码md5后:", md5Password, ";数据库保存的为:", userInfo.LoginPassword) - if strings.ToLower(utils.EncodeMd5(password)) != strings.ToLower(userInfo.LoginPassword) { - logs.Error("密码错误,账户:", userName) - loginJsonData.Code = -1 - loginJsonData.Msg = "密码错误" - } else { - logs.Info("登录成功") - } - } - } - - return loginJsonData -} - -/** -** 更新用户的登录密码 - */ -func (c *LoginService) PersonPassword(newPassword, oldPassword, repeatPassword, userName string) *LoginJsonData { - - logoutJsonData := new(LoginJsonData) - logoutJsonData.Code = -1 - - userInfo := fast.GetMerchantInfoByUserName(userName) - if userInfo.LoginPassword != utils.EncodeMd5(oldPassword) { - logoutJsonData.Msg = "旧密码输入不正确" - } else if newPassword != repeatPassword { - logoutJsonData.Msg = "2次密码不一致" - } else { - passwordMd5 := utils.EncodeMd5(newPassword) - userInfo.LoginPassword = passwordMd5 - if !fast.UpdateMerchantInfo(userInfo) { - logoutJsonData.Msg = "密码更新失败" - } else { - - logoutJsonData.Code = 200 - } - } - - return logoutJsonData -} diff --git a/legend/service/logoutService.go b/legend/service/logoutService.go deleted file mode 100644 index 213bdae..0000000 --- a/legend/service/logoutService.go +++ /dev/null @@ -1,5 +0,0 @@ -package service - -type LogoutService struct { - BaseService -} diff --git a/legend/service/merchantService.go b/legend/service/merchantService.go deleted file mode 100644 index cc12b3c..0000000 --- a/legend/service/merchantService.go +++ /dev/null @@ -1,54 +0,0 @@ -package service - -import ( - "github.com/beego/beego/v2/core/logs" - "legend/models/fast" -) - -type MerchantService struct { - BaseService -} - -func (c *MerchantService) GetMerchantBankInfo(mobile string) (*fast.MerchantInfo, *fast.BankCardInfo) { - - merchantInfo := fast.GetMerchantInfoByUserName(mobile) - bankInfo := fast.GetBankCardInfoByUserNo(merchantInfo.MerchantUid) - - return merchantInfo, bankInfo -} - -/** -** 获取商户的密钥等信息 - */ -/*func (c *MerchantService) UserPayConfig(userName string) map[string]string { - - merchantMapData := make(map[string]string) - - userInfo := fast.GetMerchantInfoByUserName(userName) - - if userInfo == nil || userInfo.LoginAccount == "" { - return merchantMapData - } - - userNo := userInfo.LoginAccount - - userPayConfig := fast.GetUserPayConfigByUserNo(userNo) - if nil == userPayConfig || userPayConfig.UserNo == "" { - return merchantMapData - } - - return merchantMapData -}*/ - -/** -** 获取商户信息 - */ -func (c *MerchantService) MerchantInfo(mobile string) *fast.MerchantInfo { - userInfo := fast.GetMerchantInfoByUserName(mobile) - if nil == userInfo || userInfo.LoginAccount == "" { - logs.Error("获取用户信息失败") - } - - //logs.Debug("用户信息:", userInfo) - return userInfo -} diff --git a/legend/service/templeteService.go b/legend/service/templeteService.go deleted file mode 100644 index ca9deab..0000000 --- a/legend/service/templeteService.go +++ /dev/null @@ -1,516 +0,0 @@ -package service - -import ( - "fmt" - "github.com/beego/beego/v2/core/logs" - "legend/models/legend" - "legend/request" - "legend/response" - "legend/utils" -) - -type TemplateService struct { - BaseService -} - -/** -** 添加比例模板 - */ -func (c *TemplateService) AddTemplate(req *request.AddTemplateReq, merchantUid string) *response.AddTemplateResp { - - template := new(legend.ScaleTemplate) - template.MerchantUid = merchantUid - template.TemplateName = req.ScaleTemplateName - template.UserUid = req.ScaleUserName - template.UserWarn = req.ScaleUserNamePoint - template.MoneyType = req.MoneyType - template.PresentType = req.PresentType - template.UpdateTime = utils.GetNowTime() - template.CreateTime = utils.GetNowTime() - - addTemplateResp := new(response.AddTemplateResp) - addTemplateResp.Code = -1 - - if template.TemplateName == "" { - addTemplateResp.Msg = "模板名称不能为空" - return addTemplateResp - } - - if legend.IsExistsScaleTemplateByName(template.TemplateName) { - addTemplateResp.Msg = "模板名称重复,请换一个名称!" - return addTemplateResp - } - - if legend.InsertScaleTemplate(template) { - addTemplateResp.Code = 0 - addTemplateResp.Msg = "添加比例模板成功" - if !c.AddRandMoney(req) { - addTemplateResp.Code = -1 - addTemplateResp.Msg = "随机金额添加失败,请检查参数是否合理" - } - if !c.AddFixMoney(req) { - addTemplateResp.Code = -1 - addTemplateResp.Msg = "添加固定金额失败,请检查参数是否合理" - } - if !c.AddPresentFixMoney(req) { - addTemplateResp.Code = -1 - addTemplateResp.Msg = "添加固定金额赠送失败,请检查参数是否合理" - } - if !c.AddPresentScaleMoney(req) { - addTemplateResp.Code = -1 - addTemplateResp.Msg = "添加金额比例赠送失败,请检查参数是否合理" - } - - // 只要有一个添加失败,全部删除 - if addTemplateResp.Code == -1 { - legend.DeleteScaleTemplate(template.TemplateName) - legend.DeleteAnyMoney(template.TemplateName) - legend.DeleteFixMoney(template.TemplateName) - legend.DeleteFixPresent(template.TemplateName) - legend.DeleteScalePresent(template.TemplateName) - } - } else { - addTemplateResp.Msg = "添加比例模板失败" - } - - return addTemplateResp -} - -/** -** 编辑比例模板逻辑 - */ -func (c *TemplateService) UpdateTemplate(req *request.AddTemplateReq, merchantUid string) *response.BaseResp { - resp := new(response.BaseResp) - resp.Code = -1 - resp.Msg = "更新失败" - - template := legend.GetScaleTemplateByNameAndMerchantUid(req.ScaleTemplateName, merchantUid) - template.UserUid = req.ScaleUserName - template.UserWarn = req.ScaleUserNamePoint - template.MoneyType = req.MoneyType - template.PresentType = req.PresentType - template.UpdateTime = utils.GetNowTime() - - if !legend.UpdateScaleTemplate(template) { - logs.Error("更新比例模板基础数据失败") - return resp - } - - if !c.updateAnyMoney(req) { - logs.Error("更新任意金额数据失败") - return resp - } - - if !c.updateFixMoney(req) { - logs.Error("更新固定金额数据失败") - return resp - } - - if !c.updateFixPresent(req) { - logs.Error("更新赠送固定金额失败") - return resp - } - - if !c.updateScalePresent(req) { - logs.Error("更新赠送比例数据失败") - return resp - } - - resp.Code = 0 - resp.Msg = "更新成功" - - return resp - -} - -/** -** 更新任意金额 - */ -func (c *TemplateService) updateAnyMoney(req *request.AddTemplateReq) bool { - if req.GameMoneyScale <= 0 && req.LimitLowMoney <= 0 { - logs.Debug("任意金额的2个关键参数均小于等于0") - anyMoney := legend.GetAnyMoneyByName(req.ScaleTemplateName) - if anyMoney != nil && anyMoney.TemplateName != "" { - return legend.DeleteAnyMoney(req.ScaleTemplateName) - } else { - logs.Error("不存在这样的任意金额") - return false - } - } else { - anyMoney := legend.GetAnyMoneyByName(req.ScaleTemplateName) - anyMoney.GameMoneyScale = req.GameMoneyScale - anyMoney.GameMoneyName = req.GameMoneyName - anyMoney.LimitLow = req.LimitLowMoney - anyMoney.UpdateTime = utils.GetNowTime() - anyMoney.CreateTime = utils.GetNowTime() - - return legend.UpdateAnyMoney(anyMoney) - } - -} - -/** -** 更新固定金额 - */ -func (c *TemplateService) updateFixMoney(req *request.AddTemplateReq) bool { - - for _, fixMoney := range legend.GetFixMoneyByName(req.ScaleTemplateName) { - if !c.isExist(fixMoney.Uid, req.FixUids) { - // 假如不存在了,那么需要删除这条记录 - legend.DeleteFixMoneyByUid(fixMoney.Uid) - } - } - - for i, _ := range req.FixUids { - if req.FixUids[i] == "" { - continue - } - - fixMoney := legend.GetFixMoneyByUid(req.FixUids[i]) - - fixMoney.UpdateTime = utils.GetNowTime() - fixMoney.Uid = req.FixUids[i] - fixMoney.Price = req.FixPrices[i] - fixMoney.GoodsName = req.GoodsNames[i] - fixMoney.GoodsNo = req.GoodsNos[i] - fixMoney.BuyTimes = req.Limits[i] - - if fixMoney.TemplateName == "" { - fixMoney.CreateTime = utils.GetNowTime() - fixMoney.TemplateName = req.ScaleTemplateName - legend.InsertFixMoney(fixMoney) - } else { - legend.UpdateFixMoney(fixMoney) - } - - } - - return true -} - -/** -** 更新固定金额赠送参数 - */ -func (c *TemplateService) updateFixPresent(req *request.AddTemplateReq) bool { - - for _, fixPresentMoney := range legend.GetFixPresentsByName(req.ScaleTemplateName) { - if !c.isExist(fixPresentMoney.Uid, req.PresentFixUids) { - legend.DeleteFixPresentByUid(fixPresentMoney.Uid) - } - } - - for i, _ := range req.PresentFixUids { - if req.PresentFixUids[i] == "" { - continue - } - - fixPresent := legend.GetFixPresentByUid(req.PresentFixUids[i]) - - fixPresent.UpdateTime = utils.GetNowTime() - fixPresent.Uid = req.PresentFixUids[i] - fixPresent.Money = req.PresentFixMoneys[i] - fixPresent.PresentMoney = req.PresentFixPresentMoneys[i] - - if fixPresent.TemplateName == "" { - fixPresent.CreateTime = utils.GetNowTime() - fixPresent.TemplateName = req.ScaleTemplateName - legend.InsertFixPresent(fixPresent) - } else { - legend.UpdatePresentFixMoney(fixPresent) - } - } - - return true -} - -/** -** 更新比例赠送参数 - */ -func (c *TemplateService) updateScalePresent(req *request.AddTemplateReq) bool { - - for _, scalePresent := range legend.GetScalePresentsByName(req.ScaleTemplateName) { - if !c.isExist(scalePresent.Uid, req.PresentScaleUids) { - legend.DeleteScalePresentByUid(scalePresent.Uid) - } - } - - for i, _ := range req.PresentScaleUids { - if req.PresentScaleUids[i] == "" { - continue - } - - scalePresent := legend.GetScalePresentByUid(req.PresentScaleUids[i]) - - scalePresent.UpdateTime = utils.GetNowTime() - scalePresent.Uid = req.PresentScaleUids[i] - scalePresent.Money = req.PresentScaleMoneys[i] - scalePresent.PresentScale = req.PresentScales[i] - - if scalePresent.TemplateName == "" { - scalePresent.TemplateName = req.ScaleTemplateName - scalePresent.CreateTime = utils.GetNowTime() - legend.InsertScalePresent(scalePresent) - } else { - legend.UpdateScalePresent(scalePresent) - } - } - return true -} - -func (c *TemplateService) isExist(j string, ss []string) bool { - for _, s := range ss { - if s == j { - return true - } - } - - return false -} - -/** -** 添加随机金额 - */ -func (c *TemplateService) AddRandMoney(req *request.AddTemplateReq) bool { - - if req.LimitLowMoney < 0 { - logs.Error("随机金额中的最低充值金额不能小于0") - return false - } - if req.GameMoneyName == "" && req.GameMoneyScale <= 0 { - logs.Info("不需要添加随机金额选项") - return true - } - - anyMoney := new(legend.AnyMoney) - anyMoney.TemplateName = req.ScaleTemplateName - anyMoney.GameMoneyName = req.GameMoneyName - anyMoney.GameMoneyScale = req.GameMoneyScale - anyMoney.LimitLow = req.LimitLowMoney - anyMoney.UpdateTime = utils.GetNowTime() - anyMoney.CreateTime = utils.GetNowTime() - - if legend.InsertAnyMoney(anyMoney) { - logs.Info("添加随机金额成功!") - } else { - return false - } - return true -} - -/** -**添加固定金额 - */ -func (c *TemplateService) AddFixMoney(req *request.AddTemplateReq) bool { - - l := len(req.FixUids) - - if l == 0 || (l == 1 && req.FixUids[0] == "") { - logs.Error("该模板没有添加固定金额选项") - return true - } - - if l != len(req.GoodsNames) || l != len(req.FixPrices) || l != len(req.GoodsNos) || l != len(req.Limits) { - logs.Error("固定金额参数有误,长度不一致") - return false - } - - for i := 0; i < l; i++ { - fixUid := req.FixUids[i] - fixPrice := req.FixPrices[i] - goodName := req.GoodsNames[i] - goodNo := req.GoodsNos[i] - limit := req.Limits[i] - - if fixUid == "0" && fixPrice <= 0 && goodName == "0" && goodNo == "0" && limit <= 0 { - logs.Error("固定金额4个参数都为空!") - continue - } - - if fixUid == "0" || fixPrice <= 0 || goodName == "0" || goodNo == "0" || limit <= 0 { - logs.Error("固定金额参数中有一个缺失: ", fmt.Sprintf("fixUid = %s, fixPrice = %f, goodName = %s, goodNo = %s, limit = %d", - fixUid, fixPrice, goodName, goodNo, limit)) - return false - } - - fixMoney := new(legend.FixMoney) - fixMoney.Uid = fixUid - fixMoney.TemplateName = req.ScaleTemplateName - fixMoney.Price = fixPrice - fixMoney.GoodsName = goodName - fixMoney.GoodsNo = goodNo - fixMoney.BuyTimes = limit - fixMoney.UpdateTime = utils.GetNowTime() - fixMoney.CreateTime = utils.GetNowTime() - - if !legend.InsertFixMoney(fixMoney) { - logs.Error("该次固定金额插入数据库失败") - } - - } - return true -} - -/** -** 添加赠送固定金额赠送 - */ -func (c *TemplateService) AddPresentFixMoney(req *request.AddTemplateReq) bool { - - l := len(req.PresentFixUids) - if l == 0 || (l == 1 && req.PresentScaleUids[0] == "") { - logs.Error("该模板没有添加固定金额赠送选项") - return true - } - - if l != len(req.PresentFixMoneys) || l != len(req.PresentFixPresentMoneys) { - logs.Error("固定金额赠送选项参数个数不一致") - return false - } - - for i := 0; i < l; i++ { - uid := req.PresentFixUids[i] - fixMoney := req.PresentFixMoneys[i] - presentMoney := req.PresentFixPresentMoneys[i] - - if uid == "0" && fixMoney <= 0 && presentMoney <= 0 { - continue - - } - - if uid == "0" || fixMoney <= 0 || presentMoney <= 0 { - logs.Error("固定金额参数中有一个缺失: ", fmt.Sprintf("fixUid = %s, fixPrice = %f, presentMoney = %f", - uid, fixMoney, presentMoney)) - return false - - } - - fixPresent := new(legend.FixPresent) - fixPresent.Uid = uid - fixPresent.TemplateName = req.ScaleTemplateName - fixPresent.Money = fixMoney - fixPresent.PresentMoney = presentMoney - fixPresent.UpdateTime = utils.GetNowTime() - fixPresent.CreateTime = utils.GetNowTime() - - if !legend.InsertFixPresent(fixPresent) { - logs.Error("该次固定金额赠送插入数据库失败") - } - } - return true -} - -/** -** 添加赠送金额比例 - */ -func (c *TemplateService) AddPresentScaleMoney(req *request.AddTemplateReq) bool { - l := len(req.PresentScaleUids) - if l == 0 || (l == 1 && req.PresentScaleUids[0] == "") { - logs.Error("该模板没有添加按百分比赠送") - return true - } - - if l != len(req.PresentScaleMoneys) || l != len(req.PresentScales) { - logs.Error("按百分比赠送选项参数个数不一致") - return false - } - - for i := 0; i < l; i++ { - uid := req.PresentScaleUids[i] - money := req.PresentScaleMoneys[i] - scale := req.PresentScales[i] - - if money <= 0 { - logs.Error("金额不能等于0") - return false - } - - if uid == "0" && money <= 0 && scale <= 0 { - continue - } - - if uid == "0" || money <= 0 || scale <= 0 { - logs.Error("百分比赠送缺失参数: ", fmt.Sprintf("uid = %s, money = %f, scale = %f", - uid, money, scale)) - - return false - - } - - scalePresent := new(legend.ScalePresent) - scalePresent.Uid = uid - scalePresent.TemplateName = req.ScaleTemplateName - scalePresent.Money = money - scalePresent.PresentScale = scale - scalePresent.UpdateTime = utils.GetNowTime() - scalePresent.CreateTime = utils.GetNowTime() - - if !legend.InsertScalePresent(scalePresent) { - logs.Error("该次固定金额赠送插入数据库失败") - } - } - return true -} - -func (c *TemplateService) GetTemplateList(page, limit int) *response.TemplateListResp { - - offset := utils.CountOffset(page, limit) - count := legend.GetScaleTemplateAll() - scaleTemplates := legend.GetScaleTemplateList(offset, limit) - - for i, _ := range scaleTemplates { - scaleTemplates[i].Id = offset + i + 1 - } - - templateListResp := new(response.TemplateListResp) - templateListResp.Count = count - templateListResp.Code = 0 - templateListResp.Data = scaleTemplates - - return templateListResp -} - -/** -** 删除比例模板的所有内容 - */ -func (c *TemplateService) DeleteTemplate(templateName string) *response.BaseResp { - - baseResp := new(response.BaseResp) - baseResp.Code = -1 - - b := true - if !legend.DeleteScaleTemplate(templateName) { - b = false - } - if !legend.DeleteAnyMoney(templateName) { - b = false - } - if !legend.DeleteFixMoney(templateName) { - b = false - } - if !legend.DeleteFixPresent(templateName) { - b = false - } - if !legend.DeleteFixPresent(templateName) { - b = false - } - - if b { - baseResp.Msg = "删除成功" - baseResp.Code = 0 - } else { - baseResp.Msg = "删除失败" - } - - return baseResp -} - -func (c *TemplateService) AllTemplateInfo(templateName string) *response.TemplateAllInfoResp { - - templateAllInfo := new(response.TemplateAllInfoResp) - templateAllInfo.TemplateInfo = legend.GetScaleTemplateByName(templateName) - templateAllInfo.AnyMoneyInfo = legend.GetAnyMoneyByName(templateName) - templateAllInfo.FixMoneyInfos = legend.GetFixMoneyByName(templateName) - templateAllInfo.PresentFixMoneyInfos = legend.GetFixPresentsByName(templateName) - templateAllInfo.PresentScaleMoneyInfos = legend.GetScalePresentsByName(templateName) - - return templateAllInfo -} diff --git a/legend/static/data/area-list.json b/legend/static/data/area-list.json deleted file mode 100644 index 0a81af3..0000000 --- a/legend/static/data/area-list.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "code": 0, - "msg": "", - "count": 10, - "data": [ - { - "id": 11, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - },{ - "id": 11, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - },{ - "id": 12, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - },{ - "id": 1, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - },{ - "id": 123, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - },{ - "id": 12222, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - },{ - "id": 134, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - },{ - "id": 156, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - },{ - "id": 134, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - },{ - "id": 156, - "areaname": "星沙二区", - "rechargecount": 123, - "rechargemoney": "100", - "scale": "20%" - } - ] -} \ No newline at end of file diff --git a/legend/static/data/area.json b/legend/static/data/area.json deleted file mode 100644 index c7d378f..0000000 --- a/legend/static/data/area.json +++ /dev/null @@ -1,97 +0,0 @@ -{ - "code":0, - "msg":"", - "count":10, - "data":[ - { - "id": 1, - "areaname": "狗日的1-2区", - "usetemplate": "狗日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - }, - { - "id": 2, - "areaname": "猪日1-2区", - "usetemplate": "猪日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - }, - { - "id": 3, - "areaname": "牛日1-2区", - "usetemplate": "牛日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - }, - { - "id": 4, - "areaname": "鸡日1-2区", - "usetemplate": "鸡日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - }, - { - "id": 5, - "areaname": "鸭日1-2区", - "usetemplate": "鸭日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - }, - { - "id": 6, - "areaname": "蚯蚓1-2区", - "usetemplate": "蚯蚓日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - }, - { - "id": 7, - "areaname": "蛇日1-2区", - "usetemplate": "蛇日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - }, - { - "id": 8, - "areaname": "人日1-2区", - "usetemplate": "人日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - }, - { - "id": 9, - "areaname": "苍蝇1-2区", - "usetemplate": "苍蝇日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - }, - { - "id": 10, - "areaname": "蚊子1-2区", - "usetemplate": "蚊子日", - "currencyname": "元宝", - "rechargescale": 10, - "areastatus": "开放", - "createtime": "2021-4-6" - } - ] -} \ No newline at end of file diff --git a/legend/static/data/everyday.json b/legend/static/data/everyday.json deleted file mode 100644 index 530926a..0000000 --- a/legend/static/data/everyday.json +++ /dev/null @@ -1,82 +0,0 @@ -{ - "code": 0, - "msg": "", - "count": 10, - "data": [ - { - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "currencyname": "元宝", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "currencyname": "元宝", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "currencyname": "元宝", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "currencyname": "元宝", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "currencyname": "元宝", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "currencyname": "元宝", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "currencyname": "元宝", - "income": 100000, - "date": "2021-4-6" - },{ - "id": 1, - "rechargecount": 123, - "rechargemoney": "100", - "currencyname": "元宝", - "income": 100000, - "date": "2021-4-6" - } - ] -} \ No newline at end of file diff --git a/legend/static/data/group-list.json b/legend/static/data/group-list.json deleted file mode 100644 index 8900fa0..0000000 --- a/legend/static/data/group-list.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "code": 0, - "msg": "", - "count": 10, - "data": [ - { - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - },{ - "id": 1, - "groupname": "星沙组", - "rechargecount": 123, - "rechargemoney": "100", - "income": 100000 - } - ] -} \ No newline at end of file diff --git a/legend/static/data/group.json b/legend/static/data/group.json deleted file mode 100644 index db8b0bc..0000000 --- a/legend/static/data/group.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "code":0,"msg":"", - "count":20, - "data":[ - { - "id": 1, - "groupname": "狗日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "猪日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "牛日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "鸡日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "鸭日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "蚯蚓日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "蛇日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "人日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "苍蝇日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "蚊子的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - }, - { - "id": 1, - "groupname": "熊日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - },{ - "id": 1, - "groupname": "星沙日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - },{ - "id": 1, - "groupname": "长沙日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - },{ - "id": 1, - "groupname": "岳麓区日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - },{ - "id": 1, - "groupname": "开福区日的传奇", - "createtime": "2021-4-6", - "updatetime": "2021-4-6" - } - ] -} \ No newline at end of file diff --git a/legend/static/data/imitate.json b/legend/static/data/imitate.json deleted file mode 100644 index ad9bdfd..0000000 --- a/legend/static/data/imitate.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "code":0, - "msg":"", - "count":10, - "data":[ - { - "id": 1, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 2, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 3, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 4, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 5, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 6, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 7, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 8, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 9, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 10, - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "money": "100", - "googs": "钻石", - "ip": "127.32.12.1", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - } - ] -} diff --git a/legend/static/data/json.json b/legend/static/data/json.json deleted file mode 100644 index 080bb8c..0000000 --- a/legend/static/data/json.json +++ /dev/null @@ -1 +0,0 @@ -{"code":0,"msg":"","count":100,"data":[{"id":10000,"username":"user-0","sex":"女","city":"城市-0","sign":"签名-0","experience":255,"logins":24,"wealth":82830700,"classify":"作家","score":57},{"id":10001,"username":"user-1","sex":"男","city":"城市-1","sign":"签名-1","experience":884,"logins":58,"wealth":64928690,"classify":"词人","score":27},{"id":10002,"username":"user-2","sex":"女","city":"城市-2","sign":"签名-2","experience":650,"logins":77,"wealth":6298078,"classify":"酱油","score":31},{"id":10003,"username":"user-3","sex":"女","city":"城市-3","sign":"签名-3","experience":362,"logins":157,"wealth":37117017,"classify":"诗人","score":68},{"id":10004,"username":"user-4","sex":"男","city":"城市-4","sign":"签名-4","experience":807,"logins":51,"wealth":76263262,"classify":"作家","score":6},{"id":10005,"username":"user-5","sex":"女","city":"城市-5","sign":"签名-5","experience":173,"logins":68,"wealth":60344147,"classify":"作家","score":87},{"id":10006,"username":"user-6","sex":"女","city":"城市-6","sign":"签名-6","experience":982,"logins":37,"wealth":57768166,"classify":"作家","score":34},{"id":10007,"username":"user-7","sex":"男","city":"城市-7","sign":"签名-7","experience":727,"logins":150,"wealth":82030578,"classify":"作家","score":28},{"id":10008,"username":"user-8","sex":"男","city":"城市-8","sign":"签名-8","experience":951,"logins":133,"wealth":16503371,"classify":"词人","score":14},{"id":10009,"username":"user-9","sex":"女","city":"城市-9","sign":"签名-9","experience":484,"logins":25,"wealth":86801934,"classify":"词人","score":75},{"id":10010,"username":"user-10","sex":"女","city":"城市-10","sign":"签名-10","experience":1016,"logins":182,"wealth":71294671,"classify":"诗人","score":34},{"id":10011,"username":"user-11","sex":"女","city":"城市-11","sign":"签名-11","experience":492,"logins":107,"wealth":8062783,"classify":"诗人","score":6},{"id":10012,"username":"user-12","sex":"女","city":"城市-12","sign":"签名-12","experience":106,"logins":176,"wealth":42622704,"classify":"词人","score":54},{"id":10013,"username":"user-13","sex":"男","city":"城市-13","sign":"签名-13","experience":1047,"logins":94,"wealth":59508583,"classify":"诗人","score":63},{"id":10014,"username":"user-14","sex":"男","city":"城市-14","sign":"签名-14","experience":873,"logins":116,"wealth":72549912,"classify":"词人","score":8},{"id":10015,"username":"user-15","sex":"女","city":"城市-15","sign":"签名-15","experience":1068,"logins":27,"wealth":52737025,"classify":"作家","score":28},{"id":10016,"username":"user-16","sex":"女","city":"城市-16","sign":"签名-16","experience":862,"logins":168,"wealth":37069775,"classify":"酱油","score":86},{"id":10017,"username":"user-17","sex":"女","city":"城市-17","sign":"签名-17","experience":1060,"logins":187,"wealth":66099525,"classify":"作家","score":69},{"id":10018,"username":"user-18","sex":"女","city":"城市-18","sign":"签名-18","experience":866,"logins":88,"wealth":81722326,"classify":"词人","score":74},{"id":10019,"username":"user-19","sex":"女","city":"城市-19","sign":"签名-19","experience":682,"logins":106,"wealth":68647362,"classify":"词人","score":51},{"id":10020,"username":"user-20","sex":"男","city":"城市-20","sign":"签名-20","experience":770,"logins":24,"wealth":92420248,"classify":"诗人","score":87},{"id":10021,"username":"user-21","sex":"男","city":"城市-21","sign":"签名-21","experience":184,"logins":131,"wealth":71566045,"classify":"词人","score":99},{"id":10022,"username":"user-22","sex":"男","city":"城市-22","sign":"签名-22","experience":739,"logins":152,"wealth":60907929,"classify":"作家","score":18},{"id":10023,"username":"user-23","sex":"女","city":"城市-23","sign":"签名-23","experience":127,"logins":82,"wealth":14765943,"classify":"作家","score":30},{"id":10024,"username":"user-24","sex":"女","city":"城市-24","sign":"签名-24","experience":212,"logins":133,"wealth":59011052,"classify":"词人","score":76},{"id":10025,"username":"user-25","sex":"女","city":"城市-25","sign":"签名-25","experience":938,"logins":182,"wealth":91183097,"classify":"作家","score":69},{"id":10026,"username":"user-26","sex":"男","city":"城市-26","sign":"签名-26","experience":978,"logins":7,"wealth":48008413,"classify":"作家","score":65},{"id":10027,"username":"user-27","sex":"女","city":"城市-27","sign":"签名-27","experience":371,"logins":44,"wealth":64419691,"classify":"诗人","score":60},{"id":10028,"username":"user-28","sex":"女","city":"城市-28","sign":"签名-28","experience":977,"logins":21,"wealth":75935022,"classify":"作家","score":37},{"id":10029,"username":"user-29","sex":"男","city":"城市-29","sign":"签名-29","experience":647,"logins":107,"wealth":97450636,"classify":"酱油","score":27},{"id":10030,"username":"user-30","sex":"女","city":"城市-30","sign":"签名-30","experience":1059,"logins":133,"wealth":51997920,"classify":"酱油","score":32},{"id":10031,"username":"user-31","sex":"男","city":"城市-31","sign":"签名-31","experience":781,"logins":118,"wealth":78891524,"classify":"诗人","score":71},{"id":10032,"username":"user-32","sex":"男","city":"城市-32","sign":"签名-32","experience":268,"logins":106,"wealth":69795269,"classify":"酱油","score":69},{"id":10033,"username":"user-33","sex":"女","city":"城市-33","sign":"签名-33","experience":870,"logins":112,"wealth":9068282,"classify":"作家","score":28},{"id":10034,"username":"user-34","sex":"男","city":"城市-34","sign":"签名-34","experience":809,"logins":45,"wealth":71737208,"classify":"酱油","score":87},{"id":10035,"username":"user-35","sex":"女","city":"城市-35","sign":"签名-35","experience":1074,"logins":191,"wealth":65277624,"classify":"酱油","score":18},{"id":10036,"username":"user-36","sex":"女","city":"城市-36","sign":"签名-36","experience":868,"logins":118,"wealth":72021170,"classify":"酱油","score":43},{"id":10037,"username":"user-37","sex":"男","city":"城市-37","sign":"签名-37","experience":695,"logins":73,"wealth":40285551,"classify":"酱油","score":10},{"id":10038,"username":"user-38","sex":"女","city":"城市-38","sign":"签名-38","experience":221,"logins":11,"wealth":99070607,"classify":"作家","score":90},{"id":10039,"username":"user-39","sex":"男","city":"城市-39","sign":"签名-39","experience":1020,"logins":48,"wealth":69258898,"classify":"酱油","score":52},{"id":10040,"username":"user-40","sex":"女","city":"城市-40","sign":"签名-40","experience":335,"logins":73,"wealth":62101952,"classify":"酱油","score":38},{"id":10041,"username":"user-41","sex":"女","city":"城市-41","sign":"签名-41","experience":448,"logins":129,"wealth":63383512,"classify":"词人","score":78},{"id":10042,"username":"user-42","sex":"男","city":"城市-42","sign":"签名-42","experience":460,"logins":74,"wealth":7339859,"classify":"诗人","score":10},{"id":10043,"username":"user-43","sex":"女","city":"城市-43","sign":"签名-43","experience":430,"logins":159,"wealth":54420618,"classify":"诗人","score":54},{"id":10044,"username":"user-44","sex":"男","city":"城市-44","sign":"签名-44","experience":559,"logins":82,"wealth":826431,"classify":"酱油","score":80},{"id":10045,"username":"user-45","sex":"男","city":"城市-45","sign":"签名-45","experience":239,"logins":45,"wealth":14367095,"classify":"酱油","score":19},{"id":10046,"username":"user-46","sex":"女","city":"城市-46","sign":"签名-46","experience":933,"logins":121,"wealth":654550,"classify":"诗人","score":53},{"id":10047,"username":"user-47","sex":"女","city":"城市-47","sign":"签名-47","experience":426,"logins":68,"wealth":96294496,"classify":"作家","score":9},{"id":10048,"username":"user-48","sex":"男","city":"城市-48","sign":"签名-48","experience":208,"logins":100,"wealth":19384992,"classify":"诗人","score":61},{"id":10049,"username":"user-49","sex":"女","city":"城市-49","sign":"签名-49","experience":615,"logins":142,"wealth":57287276,"classify":"词人","score":69},{"id":10050,"username":"user-50","sex":"男","city":"城市-50","sign":"签名-50","experience":1018,"logins":172,"wealth":46800355,"classify":"词人","score":80},{"id":10051,"username":"user-51","sex":"女","city":"城市-51","sign":"签名-51","experience":803,"logins":36,"wealth":27838200,"classify":"词人","score":64},{"id":10052,"username":"user-52","sex":"女","city":"城市-52","sign":"签名-52","experience":1057,"logins":150,"wealth":72591768,"classify":"酱油","score":50},{"id":10053,"username":"user-53","sex":"男","city":"城市-53","sign":"签名-53","experience":917,"logins":117,"wealth":6647761,"classify":"作家","score":64},{"id":10054,"username":"user-54","sex":"男","city":"城市-54","sign":"签名-54","experience":411,"logins":160,"wealth":10879712,"classify":"酱油","score":5},{"id":10055,"username":"user-55","sex":"男","city":"城市-55","sign":"签名-55","experience":226,"logins":87,"wealth":65794302,"classify":"词人","score":42},{"id":10056,"username":"user-56","sex":"男","city":"城市-56","sign":"签名-56","experience":872,"logins":119,"wealth":96925956,"classify":"词人","score":46},{"id":10057,"username":"user-57","sex":"男","city":"城市-57","sign":"签名-57","experience":328,"logins":10,"wealth":84821519,"classify":"诗人","score":59},{"id":10058,"username":"user-58","sex":"女","city":"城市-58","sign":"签名-58","experience":293,"logins":119,"wealth":58668875,"classify":"诗人","score":49},{"id":10059,"username":"user-59","sex":"男","city":"城市-59","sign":"签名-59","experience":824,"logins":189,"wealth":99894924,"classify":"词人","score":6},{"id":10060,"username":"user-60","sex":"男","city":"城市-60","sign":"签名-60","experience":259,"logins":135,"wealth":93176845,"classify":"作家","score":21},{"id":10061,"username":"user-61","sex":"男","city":"城市-61","sign":"签名-61","experience":632,"logins":21,"wealth":20696842,"classify":"酱油","score":51},{"id":10062,"username":"user-62","sex":"男","city":"城市-62","sign":"签名-62","experience":748,"logins":61,"wealth":25171658,"classify":"作家","score":66},{"id":10063,"username":"user-63","sex":"男","city":"城市-63","sign":"签名-63","experience":303,"logins":21,"wealth":95246194,"classify":"酱油","score":94},{"id":10064,"username":"user-64","sex":"男","city":"城市-64","sign":"签名-64","experience":336,"logins":56,"wealth":42545726,"classify":"酱油","score":68},{"id":10065,"username":"user-65","sex":"男","city":"城市-65","sign":"签名-65","experience":623,"logins":183,"wealth":62547311,"classify":"酱油","score":5},{"id":10066,"username":"user-66","sex":"男","city":"城市-66","sign":"签名-66","experience":493,"logins":148,"wealth":29140549,"classify":"作家","score":89},{"id":10067,"username":"user-67","sex":"男","city":"城市-67","sign":"签名-67","experience":1057,"logins":171,"wealth":18015695,"classify":"作家","score":45},{"id":10068,"username":"user-68","sex":"男","city":"城市-68","sign":"签名-68","experience":605,"logins":132,"wealth":85332856,"classify":"诗人","score":56},{"id":10069,"username":"user-69","sex":"女","city":"城市-69","sign":"签名-69","experience":805,"logins":116,"wealth":5561207,"classify":"作家","score":81},{"id":10070,"username":"user-70","sex":"女","city":"城市-70","sign":"签名-70","experience":842,"logins":17,"wealth":19467936,"classify":"酱油","score":53},{"id":10071,"username":"user-71","sex":"女","city":"城市-71","sign":"签名-71","experience":461,"logins":163,"wealth":39700624,"classify":"诗人","score":88},{"id":10072,"username":"user-72","sex":"女","city":"城市-72","sign":"签名-72","experience":556,"logins":25,"wealth":95312752,"classify":"词人","score":42},{"id":10073,"username":"user-73","sex":"男","city":"城市-73","sign":"签名-73","experience":329,"logins":112,"wealth":27679369,"classify":"词人","score":21},{"id":10074,"username":"user-74","sex":"女","city":"城市-74","sign":"签名-74","experience":958,"logins":148,"wealth":37494604,"classify":"词人","score":22},{"id":10075,"username":"user-75","sex":"男","city":"城市-75","sign":"签名-75","experience":730,"logins":31,"wealth":12860757,"classify":"词人","score":5},{"id":10076,"username":"user-76","sex":"男","city":"城市-76","sign":"签名-76","experience":756,"logins":177,"wealth":21938870,"classify":"诗人","score":88},{"id":10077,"username":"user-77","sex":"男","city":"城市-77","sign":"签名-77","experience":291,"logins":72,"wealth":39597349,"classify":"作家","score":52},{"id":10078,"username":"user-78","sex":"女","city":"城市-78","sign":"签名-78","experience":899,"logins":38,"wealth":41681274,"classify":"酱油","score":85},{"id":10079,"username":"user-79","sex":"女","city":"城市-79","sign":"签名-79","experience":833,"logins":161,"wealth":27133036,"classify":"酱油","score":88},{"id":10080,"username":"user-80","sex":"男","city":"城市-80","sign":"签名-80","experience":281,"logins":23,"wealth":73048386,"classify":"词人","score":77},{"id":10081,"username":"user-81","sex":"男","city":"城市-81","sign":"签名-81","experience":1070,"logins":69,"wealth":7800097,"classify":"作家","score":51},{"id":10082,"username":"user-82","sex":"女","city":"城市-82","sign":"签名-82","experience":799,"logins":6,"wealth":19675120,"classify":"酱油","score":32},{"id":10083,"username":"user-83","sex":"女","city":"城市-83","sign":"签名-83","experience":360,"logins":95,"wealth":71020536,"classify":"词人","score":75},{"id":10084,"username":"user-84","sex":"女","city":"城市-84","sign":"签名-84","experience":468,"logins":78,"wealth":62217169,"classify":"词人","score":84},{"id":10085,"username":"user-85","sex":"男","city":"城市-85","sign":"签名-85","experience":230,"logins":137,"wealth":23270792,"classify":"诗人","score":96},{"id":10086,"username":"user-86","sex":"女","city":"城市-86","sign":"签名-86","experience":540,"logins":105,"wealth":83534754,"classify":"诗人","score":45},{"id":10087,"username":"user-87","sex":"男","city":"城市-87","sign":"签名-87","experience":110,"logins":14,"wealth":13882502,"classify":"作家","score":67},{"id":10088,"username":"user-88","sex":"男","city":"城市-88","sign":"签名-88","experience":587,"logins":159,"wealth":97498052,"classify":"诗人","score":82},{"id":10089,"username":"user-89","sex":"女","city":"城市-89","sign":"签名-89","experience":924,"logins":194,"wealth":14829539,"classify":"酱油","score":45},{"id":10090,"username":"user-90","sex":"女","city":"城市-90","sign":"签名-90","experience":1075,"logins":108,"wealth":46182525,"classify":"词人","score":79},{"id":10091,"username":"user-91","sex":"男","city":"城市-91","sign":"签名-91","experience":763,"logins":70,"wealth":34136545,"classify":"酱油","score":53},{"id":10092,"username":"user-92","sex":"男","city":"城市-92","sign":"签名-92","experience":584,"logins":60,"wealth":70978432,"classify":"作家","score":61},{"id":10093,"username":"user-93","sex":"男","city":"城市-93","sign":"签名-93","experience":808,"logins":131,"wealth":10485113,"classify":"作家","score":29},{"id":10094,"username":"user-94","sex":"男","city":"城市-94","sign":"签名-94","experience":930,"logins":162,"wealth":8996441,"classify":"诗人","score":99},{"id":10095,"username":"user-95","sex":"女","city":"城市-95","sign":"签名-95","experience":690,"logins":165,"wealth":94442356,"classify":"词人","score":74},{"id":10096,"username":"user-96","sex":"女","city":"城市-96","sign":"签名-96","experience":591,"logins":126,"wealth":32909109,"classify":"酱油","score":13},{"id":10097,"username":"user-97","sex":"女","city":"城市-97","sign":"签名-97","experience":685,"logins":101,"wealth":19039650,"classify":"作家","score":47},{"id":10098,"username":"user-98","sex":"女","city":"城市-98","sign":"签名-98","experience":547,"logins":24,"wealth":85588442,"classify":"诗人","score":16},{"id":10099,"username":"user-99","sex":"男","city":"城市-99","sign":"签名-99","experience":173,"logins":133,"wealth":69548830,"classify":"酱油","score":71}]} \ No newline at end of file diff --git a/legend/static/data/order.json b/legend/static/data/order.json deleted file mode 100644 index d3eae24..0000000 --- a/legend/static/data/order.json +++ /dev/null @@ -1,118 +0,0 @@ -{ - "code":0, - "msg":"", - "count":10, - "data":[ - { - "id": 1, - "notify":"已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 1, - "notify":"已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 1, - "notify":"已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 1, - "notify":"已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 1, - "notify":"已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 1, - "notify":"已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 1, - "notify":"已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 1, - "notify":"已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - },{ - "id": 1, - "notify":"已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - }, { - "id": 1, - "notify": "已通知", - "orderno": "8360127282183213", - "area": "星沙二区", - "rechargeaccount": "枫林晚月", - "playerqq": "1090789947", - "money": "100", - "googs": "钻石", - "paytype": "微信扫码", - "createtime": "2021-04-06 21:30:00" - } - ] -} diff --git a/legend/static/data/settle.json b/legend/static/data/settle.json deleted file mode 100644 index 5a4832d..0000000 --- a/legend/static/data/settle.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "code": 0, - "msg": "", - "count": 10, - "data": [ - { - "id": 12323, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - },{ - "id": 112323, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - },{ - "id": 112323, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - },{ - "id": 123231, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - },{ - "id": 123231, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - },{ - "id": 112323, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - },{ - "id": 112323, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - },{ - "id": 112323, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - },{ - "id": 112323, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - },{ - "id": 123231, - "settleno": "JS21030523595541164", - "bankname": "中国工商银行", - "accountname": "汤鸡巴剑", - "money": 10, - "googs": "元宝", - "ip": "123.9.233.1", - "paytype": "支付宝扫码", - "createtime": "2021-4-6" - } - ] -} diff --git a/legend/static/js/html5.min.js b/legend/static/js/html5.min.js deleted file mode 100644 index 1bb7e80..0000000 --- a/legend/static/js/html5.min.js +++ /dev/null @@ -1 +0,0 @@ -(function(e,t){function n(e,t){var n=e.createElement("p"),i=e.getElementsByTagName("head")[0]||e.documentElement;return n.innerHTML="x",i.insertBefore(n.lastChild,i.firstChild)}function i(){var e=m.elements;return"string"==typeof e?e.split(" "):e}function r(e){var t={},n=e.createElement,r=e.createDocumentFragment,o=r();e.createElement=function(e){m.shivMethods||n(e);var i;return i=t[e]?t[e].cloneNode():g.test(e)?(t[e]=n(e)).cloneNode():n(e),i.canHaveChildren&&!f.test(e)?o.appendChild(i):i},e.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+i().join().replace(/\w+/g,function(e){return t[e]=n(e),o.createElement(e),'c("'+e+'")'})+");return n}")(m,o)}function o(e){var t;return e.documentShived?e:(m.shivCSS&&!d&&(t=!!n(e,"article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio{display:none}canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden]{display:none}audio[controls]{display:inline-block;*display:inline;*zoom:1}mark{background:#FF0;color:#000}")),h||(t=!r(e)),t&&(e.documentShived=t),e)}function a(e){for(var t,n=e.getElementsByTagName("*"),r=n.length,o=RegExp("^(?:"+i().join("|")+")$","i"),a=[];r--;)t=n[r],o.test(t.nodeName)&&a.push(t.applyElement(s(t)));return a}function s(e){for(var t,n=e.attributes,i=n.length,r=e.ownerDocument.createElement(b+":"+e.nodeName);i--;)t=n[i],t.specified&&r.setAttribute(t.nodeName,t.nodeValue);return r.style.cssText=e.style.cssText,r}function l(e){for(var t,n=e.split("{"),r=n.length,o=RegExp("(^|[\\s,>+~])("+i().join("|")+")(?=[[\\s,>+~#.:]|$)","gi"),a="$1"+b+"\\:$2";r--;)t=n[r]=n[r].split("}"),t[t.length-1]=t[t.length-1].replace(o,a),n[r]=t.join("}");return n.join("{")}function c(e){for(var t=e.length;t--;)e[t].removeNode()}function u(e){var t,i,r=e.namespaces,o=e.parentWindow;return!y||e.printShived?e:(r[b]===void 0&&r.add(b),o.attachEvent("onbeforeprint",function(){for(var r,o,s,c=e.styleSheets,u=[],d=c.length,h=Array(d);d--;)h[d]=c[d];for(;s=h.pop();)if(!s.disabled&&v.test(s.media)){for(r=s.imports,d=0,o=r.length;o>d;d++)h.push(r[d]);try{u.push(s.cssText)}catch(p){}}u=l(u.reverse().join("")),i=a(e),t=n(e,u)}),o.attachEvent("onafterprint",function(){c(i),t.removeNode(!0)}),e.printShived=!0,e)}var d,h,p=e.html5||{},f=/^<|^(?:button|form|map|select|textarea|object|iframe)$/i,g=/^<|^(?:a|b|button|code|div|fieldset|form|h1|h2|h3|h4|h5|h6|i|iframe|img|input|label|li|link|ol|option|p|param|q|script|select|span|strong|style|table|tbody|td|textarea|tfoot|th|thead|tr|ul)$/i;(function(){var n=t.createElement("a");n.innerHTML="",d="hidden"in n,d&&"function"==typeof injectElementWithStyles&&injectElementWithStyles("#modernizr{}",function(t){t.hidden=!0,d="none"==(e.getComputedStyle?getComputedStyle(t,null):t.currentStyle).display}),h=1==n.childNodes.length||function(){try{t.createElement("a")}catch(e){return!0}var n=t.createDocumentFragment();return n.cloneNode===void 0||n.createDocumentFragment===void 0||n.createElement===void 0}()})();var m={elements:p.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:p.shivCSS!==!1,shivMethods:p.shivMethods!==!1,type:"default",shivDocument:o};e.html5=m,o(t);var v=/^$|\b(?:all|print)\b/,b="html5shiv",y=!h&&function(){var n=t.documentElement;return t.namespaces!==void 0&&t.parentWindow!==void 0&&n.applyElement!==void 0&&n.removeNode!==void 0&&e.attachEvent!==void 0}();m.type+=" print",m.shivPrint=u,u(t)})(this,document); \ No newline at end of file diff --git a/legend/static/js/jquery-3.5.1.min.js b/legend/static/js/jquery-3.5.1.min.js deleted file mode 100644 index 015256d..0000000 --- a/legend/static/js/jquery-3.5.1.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0 #mq-test-1 { width: 42px; }',c.insertBefore(e,d),b=42===f.offsetWidth,c.removeChild(e),{matches:b,media:a}}}(a.document)}(this),function(a){"use strict";function b(){u(!0)}var c={};a.respond=c,c.update=function(){};var d=[],e=function(){var b=!1;try{b=new a.XMLHttpRequest}catch(c){b=new a.ActiveXObject("Microsoft.XMLHTTP")}return function(){return b}}(),f=function(a,b){var c=e();c&&(c.open("GET",a,!0),c.onreadystatechange=function(){4!==c.readyState||200!==c.status&&304!==c.status||b(c.responseText)},4!==c.readyState&&c.send(null))};if(c.ajax=f,c.queue=d,c.regex={media:/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi,keyframes:/@(?:\-(?:o|moz|webkit)\-)?keyframes[^\{]+\{(?:[^\{\}]*\{[^\}\{]*\})+[^\}]*\}/gi,urls:/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,findStyles:/@media *([^\{]+)\{([\S\s]+?)$/,only:/(only\s+)?([a-zA-Z]+)\s?/,minw:/\([\s]*min\-width\s*:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/,maxw:/\([\s]*max\-width\s*:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/},c.mediaQueriesSupported=a.matchMedia&&null!==a.matchMedia("only all")&&a.matchMedia("only all").matches,!c.mediaQueriesSupported){var g,h,i,j=a.document,k=j.documentElement,l=[],m=[],n=[],o={},p=30,q=j.getElementsByTagName("head")[0]||k,r=j.getElementsByTagName("base")[0],s=q.getElementsByTagName("link"),t=function(){var a,b=j.createElement("div"),c=j.body,d=k.style.fontSize,e=c&&c.style.fontSize,f=!1;return b.style.cssText="position:absolute;font-size:1em;width:1em",c||(c=f=j.createElement("body"),c.style.background="none"),k.style.fontSize="100%",c.style.fontSize="100%",c.appendChild(b),f&&k.insertBefore(c,k.firstChild),a=b.offsetWidth,f?k.removeChild(c):c.removeChild(b),k.style.fontSize=d,e&&(c.style.fontSize=e),a=i=parseFloat(a)},u=function(b){var c="clientWidth",d=k[c],e="CSS1Compat"===j.compatMode&&d||j.body[c]||d,f={},o=s[s.length-1],r=(new Date).getTime();if(b&&g&&p>r-g)return a.clearTimeout(h),h=a.setTimeout(u,p),void 0;g=r;for(var v in l)if(l.hasOwnProperty(v)){var w=l[v],x=w.minw,y=w.maxw,z=null===x,A=null===y,B="em";x&&(x=parseFloat(x)*(x.indexOf(B)>-1?i||t():1)),y&&(y=parseFloat(y)*(y.indexOf(B)>-1?i||t():1)),w.hasquery&&(z&&A||!(z||e>=x)||!(A||y>=e))||(f[w.media]||(f[w.media]=[]),f[w.media].push(m[w.rules]))}for(var C in n)n.hasOwnProperty(C)&&n[C]&&n[C].parentNode===q&&q.removeChild(n[C]);n.length=0;for(var D in f)if(f.hasOwnProperty(D)){var E=j.createElement("style"),F=f[D].join("\n");E.type="text/css",E.media=D,q.insertBefore(E,o.nextSibling),E.styleSheet?E.styleSheet.cssText=F:E.appendChild(j.createTextNode(F)),n.push(E)}},v=function(a,b,d){var e=a.replace(c.regex.keyframes,"").match(c.regex.media),f=e&&e.length||0;b=b.substring(0,b.lastIndexOf("/"));var g=function(a){return a.replace(c.regex.urls,"$1"+b+"$2$3")},h=!f&&d;b.length&&(b+="/"),h&&(f=1);for(var i=0;f>i;i++){var j,k,n,o;h?(j=d,m.push(g(a))):(j=e[i].match(c.regex.findStyles)&&RegExp.$1,m.push(RegExp.$2&&g(RegExp.$2))),n=j.split(","),o=n.length;for(var p=0;o>p;p++)k=n[p],l.push({media:k.split("(")[0].match(c.regex.only)&&RegExp.$2||"all",rules:m.length-1,hasquery:k.indexOf("(")>-1,minw:k.match(c.regex.minw)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:k.match(c.regex.maxw)&&parseFloat(RegExp.$1)+(RegExp.$2||"")})}u()},w=function(){if(d.length){var b=d.shift();f(b.href,function(c){v(c,b.href,b.media),o[b.href]=!0,a.setTimeout(function(){w()},0)})}},x=function(){for(var b=0;b a{ - /*color: blue;*/ -} -.left-nav #nav .current{ - background-color: rgba(0, 0, 0, 0.3); -} -.left-nav #nav li a{ - font-size: 14px; - padding: 10px 15px 10px 15px; - display: block; - cursor: pointer; - border-left: 4px solid transparent; - transition: all 0.3s; -} -.left-nav a:hover{ - background: #009688 !important; - color: #fff; - border-color: #04564e !important; -} -.left-nav a.active{ - background: #009688 !important; - color: #fff; - border-color: #04564e !important; -} -.left-nav #nav li a cite{ - font-size: 14px; -} - -.left-nav #nav li .sub-menu{ - display: none; -} -.left-nav #nav li .opened{ - display: block; -} -.left-nav #nav li .opened:hover{ - /*background: #fff ;*/ -} -.left-nav #nav li .opened .current{ - -} -.left-nav #nav li .sub-menu li:hover{ - /*color: blue;*/ - /*background: #fff ;*/ -} -.left-nav #nav li .sub-menu li a{ - padding: 12px 15px 12px 30px; - font-size: 14px; - cursor: pointer; -} -.left-nav #nav li .sub-menu li .sub-menu li a{ - padding-left: 45px; -} -/*.left-nav #nav li .sub-menu li a:hover{ - color: #148cf1; -}*/ -.left-nav #nav li .sub-menu li a i{ - font-size: 12px; -} -.left-nav #nav li a i{ - padding-right: 10px; - line-height: 14px; -} -.left-nav #nav li .nav_right{ - float: right; - font-size: 16px; -} -.x-slide_left { - width: 17px; - height: 61px; - background: url(../images/icon.png) 0 0 no-repeat; - position: absolute; - top: 200px; - left: 220px; - cursor: pointer; - z-index: 3; -} -.page-content{ - position: absolute; - top: 45px; - right: 0; - /*bottom: 42px;*/ - bottom: 0px; - left: 220px; - overflow: hidden; - z-index: 1; -} -.page-content-bg{ - position: absolute; - top: 45px; - right: 0; - /*bottom: 42px;*/ - bottom: 0px; - left: 220px; - background: rgba(0,0,0,0.5); - overflow: hidden; - z-index: 100; - display: none; -} - -.page-content .tab{ - height: 100%; - width: 100%; - /*background: #EFEEF0;*/ - margin: 0px; -} -.page-content .layui-tab-title{ - /*padding-top: 5px;*/ - height: 35px; - background: #EFEEF0 ; - position: relative; - z-index: 100; -} -.page-content .layui-tab-title li.home i{ - padding-right: 5px; -} -.page-content .layui-tab-title li.home .layui-tab-close{ - display: none; -} -.page-content .layui-tab-title li{ - line-height: 35px; -} -.page-content .layui-tab-title .layui-this:after{ - height: 36px; -} -.page-content .layui-tab-title li .layui-tab-close{ - border-radius: 50%; -} -.page-content .layui-tab-title .layui-this{ - background: #fff ; -} -.page-content .layui-tab-bar{ - height:34px; - line-height: 35px; -} -.page-content .layui-tab-content{ - position: absolute; - top: 36px; - bottom: 0px; - width: 100%; - padding: 0px; - overflow: hidden; -} -.page-content .layui-tab-content .layui-tab-item{ - width: 100%; - height: 100%; - -} -.page-content .layui-tab-content .layui-tab-item iframe{ - width: 100%; - height: 100%; - -} -.x-admin-carousel,.layui-carousel,.x-admin-carousel>[carousel-item]>* { - background-color:#fff -} - -.x-admin-backlog .x-admin-backlog-body { - display:block; - padding:10px 15px; - background-color:#f8f8f8; - color:#999; - border-radius:2px; - transition:all .3s; - -webkit-transition:all .3s -} -.x-admin-backlog-body h3 { - padding-bottom:10px; - font-size:12px -} -.x-admin-backlog-body p cite { - font-style:normal; - font-size:30px; - font-weight:300; - color:#009688 -} -.x-admin-backlog-body:hover { - background-color:#CFCFCF; - color:#888 -} - -.layui-table td, .layui-table th{ - min-width: 80px; -} - -table th, table td { - word-break: break-all; -} - -/*404页面样式*/ -.fly-panel { - margin-bottom: 15px; - border-radius: 2px; - /*background-color: #fff;*/ - box-shadow: 0 1px 2px 0 rgba(0,0,0,.05); -} -.fly-none { - min-height: 600px; - text-align: center; - padding-top: 50px; - color: #999; -} -.fly-none .layui-icon { - line-height: 300px; - font-size: 300px; - color: #393D49; -} -.fly-none p { - margin-top: 50px; - padding: 0 15px; - font-size: 20px; - color: #999; - font-weight: 300; -} -#tab_right{ - display: none; - width: 80px; - position: absolute; - top: 35px; - left: 0px; -} -#tab_right dl{ - top: 0px; -} -#tab_show{ - position: absolute; - top: 36px; - bottom: 0px; - width: 100%; - background:rgb(255, 255, 255,0); - padding: 0px; - overflow: hidden; - display: none; -} - - -@media screen and (max-width: 768px){ - .fast-add{ - display: none; - } - .layui-nav .to-index{ - display: none; - } - .container .logo a{ - width: 140px; - } - .container .left_open { - /*float: right;*/ - } - .left-nav{ - width: 60px; - } - .left-nav #nav li a i{ - font-size: 18px; - } - .left-nav cite,.left-nav .nav_right{ - display: none; - } - .page-content{ - left: 60px; - } - .page-content .layui-tab-content .layui-tab-item{ - -webkit-overflow-scrolling: touch; - overflow-y: scroll; - } - .x-so input.layui-input{ - width: 100%; - margin: 10px; - } -} - -/*精细版样式*/ - -.x-admin-sm{ - font-size: 12px; -} -.x-admin-sm body{ - font-size: 12px; -} -/*登录页面样式*/ -.x-admin-sm .login input[type=submit],.x-admin-sm .login input[type=button]{ - font-size: 14px; -} -.x-admin-sm .login input[type=text], -.x-admin-sm .login input[type=file], -.x-admin-sm .login input[type=password], -.x-admin-sm .login input[type=email], .x-admin-sm select { - font-size: 12px; -} -.x-admin-sm .login .message{ - font-size: 14px; -} - -.x-admin-sm .layui-table td, .x-admin-sm .layui-table th{ - font-size: 12px; -} -.x-admin-sm .layui-elem-field legend{ - font-size: 18px; -} - -.x-admin-sm .x-admin-backlog-body p cite{ - font-size: 24px; -} -.x-admin-sm .left-nav #nav li a cite{ - font-size: 12px; -} -.x-admin-sm .iconfont{ - font-size: 14px; -} -.x-admin-sm .layui-tab-title li{ - font-size: 12px; -} -.x-admin-sm .layui-icon{ - font-size: 14px; -} -.x-admin-sm .layui-nav *{ - font-size: 12px; -} -.x-admin-sm .layui-breadcrumb>*{ - font-size: 12px; -} -.x-admin-sm .layui-btn,.x-admin-sm .layui-btn-xs,.x-admin-sm .layui-btn-sm{ - font-size: 12px; -} - -.x-admin-sm .layui-laydate{ - font-size: 12px; -} -.x-admin-sm .layui-btn{ - height: 30px; - line-height: 30px; - padding: 0 10px; -} - -.x-admin-sm .layui-btn-lg{ - height: 38px; - line-height: 38px; - padding: 0 18px; - font-size: 14px; -} -.x-admin-sm .layui-layer-title,.x-admin-sm .layui-layer-dialog .layui-layer-content{ - font-size: 12px; -} -.x-admin-sm .layui-input,.x-admin-sm .layui-select,.x-admin-sm .layui-textarea{ - height: 30px; -} - -.x-admin-sm .layui-form-pane .layui-form-label{ - height: 30px; - line-height: 14px; -} -.x-admin-sm .layui-form-checkbox span{ - font-size: 12px; -} -.x-admin-sm .fly-none .layui-icon { - line-height: 300px; - font-size: 300px; - color: #393D49; -} - diff --git a/legend/static/x-admin/fonts/iconfont.eot b/legend/static/x-admin/fonts/iconfont.eot deleted file mode 100644 index df5334a..0000000 Binary files a/legend/static/x-admin/fonts/iconfont.eot and /dev/null differ diff --git a/legend/static/x-admin/fonts/iconfont.svg b/legend/static/x-admin/fonts/iconfont.svg deleted file mode 100644 index f6f082e..0000000 --- a/legend/static/x-admin/fonts/iconfont.svg +++ /dev/null @@ -1,477 +0,0 @@ - - - - - -Created by iconfont - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/legend/static/x-admin/fonts/iconfont.ttf b/legend/static/x-admin/fonts/iconfont.ttf deleted file mode 100644 index ccf533e..0000000 Binary files a/legend/static/x-admin/fonts/iconfont.ttf and /dev/null differ diff --git a/legend/static/x-admin/fonts/iconfont.woff b/legend/static/x-admin/fonts/iconfont.woff deleted file mode 100644 index d06756c..0000000 Binary files a/legend/static/x-admin/fonts/iconfont.woff and /dev/null differ diff --git a/legend/static/x-admin/images/aiwrap.png b/legend/static/x-admin/images/aiwrap.png deleted file mode 100644 index 36fd481..0000000 Binary files a/legend/static/x-admin/images/aiwrap.png and /dev/null differ diff --git a/legend/static/x-admin/images/bg.png b/legend/static/x-admin/images/bg.png deleted file mode 100644 index c518e9d..0000000 Binary files a/legend/static/x-admin/images/bg.png and /dev/null differ diff --git a/legend/static/x-admin/js/jquery.min.js b/legend/static/x-admin/js/jquery.min.js deleted file mode 100644 index 644d35e..0000000 --- a/legend/static/x-admin/js/jquery.min.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! jQuery v3.2.1 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(a,b){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){"use strict";var c=[],d=a.document,e=Object.getPrototypeOf,f=c.slice,g=c.concat,h=c.push,i=c.indexOf,j={},k=j.toString,l=j.hasOwnProperty,m=l.toString,n=m.call(Object),o={};function p(a,b){b=b||d;var c=b.createElement("script");c.text=a,b.head.appendChild(c).parentNode.removeChild(c)}var q="3.2.1",r=function(a,b){return new r.fn.init(a,b)},s=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,t=/^-ms-/,u=/-([a-z])/g,v=function(a,b){return b.toUpperCase()};r.fn=r.prototype={jquery:q,constructor:r,length:0,toArray:function(){return f.call(this)},get:function(a){return null==a?f.call(this):a<0?this[a+this.length]:this[a]},pushStack:function(a){var b=r.merge(this.constructor(),a);return b.prevObject=this,b},each:function(a){return r.each(this,a)},map:function(a){return this.pushStack(r.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(f.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(a<0?b:0);return this.pushStack(c>=0&&c0&&b-1 in a)}var x=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C={}.hasOwnProperty,D=[],E=D.pop,F=D.push,G=D.push,H=D.slice,I=function(a,b){for(var c=0,d=a.length;c+~]|"+K+")"+K+"*"),S=new RegExp("="+K+"*([^\\]'\"]*?)"+K+"*\\]","g"),T=new RegExp(N),U=new RegExp("^"+L+"$"),V={ID:new RegExp("^#("+L+")"),CLASS:new RegExp("^\\.("+L+")"),TAG:new RegExp("^("+L+"|[*])"),ATTR:new RegExp("^"+M),PSEUDO:new RegExp("^"+N),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+K+"*(even|odd|(([+-]|)(\\d*)n|)"+K+"*(?:([+-]|)"+K+"*(\\d+)|))"+K+"*\\)|)","i"),bool:new RegExp("^(?:"+J+")$","i"),needsContext:new RegExp("^"+K+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+K+"*((?:-\\d)?\\d*)"+K+"*\\)|)(?=[^-]|$)","i")},W=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,$=/[+~]/,_=new RegExp("\\\\([\\da-f]{1,6}"+K+"?|("+K+")|.)","ig"),aa=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:d<0?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ba=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ca=function(a,b){return b?"\0"===a?"\ufffd":a.slice(0,-1)+"\\"+a.charCodeAt(a.length-1).toString(16)+" ":"\\"+a},da=function(){m()},ea=ta(function(a){return a.disabled===!0&&("form"in a||"label"in a)},{dir:"parentNode",next:"legend"});try{G.apply(D=H.call(v.childNodes),v.childNodes),D[v.childNodes.length].nodeType}catch(fa){G={apply:D.length?function(a,b){F.apply(a,H.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s=b&&b.ownerDocument,w=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==w&&9!==w&&11!==w)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==w&&(l=Z.exec(a)))if(f=l[1]){if(9===w){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(s&&(j=s.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(l[2])return G.apply(d,b.getElementsByTagName(a)),d;if((f=l[3])&&c.getElementsByClassName&&b.getElementsByClassName)return G.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==w)s=b,r=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(ba,ca):b.setAttribute("id",k=u),o=g(a),h=o.length;while(h--)o[h]="#"+k+" "+sa(o[h]);r=o.join(","),s=$.test(a)&&qa(b.parentNode)||b}if(r)try{return G.apply(d,s.querySelectorAll(r)),d}catch(x){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(P,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("fieldset");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&a.sourceIndex-b.sourceIndex;if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return function(b){return"form"in b?b.parentNode&&b.disabled===!1?"label"in b?"label"in b.parentNode?b.parentNode.disabled===a:b.disabled===a:b.isDisabled===a||b.isDisabled!==!a&&ea(b)===a:b.disabled===a:"label"in b&&b.disabled===a}}function pa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function qa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return!!b&&"HTML"!==b.nodeName},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),v!==n&&(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Y.test(n.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){return a.getAttribute("id")===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}}):(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c,d,e,f=b.getElementById(a);if(f){if(c=f.getAttributeNode("id"),c&&c.value===a)return[f];e=b.getElementsByName(a),d=0;while(f=e[d++])if(c=f.getAttributeNode("id"),c&&c.value===a)return[f]}return[]}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){if("undefined"!=typeof b.getElementsByClassName&&p)return b.getElementsByClassName(a)},r=[],q=[],(c.qsa=Y.test(n.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+K+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+K+"*(?:value|"+J+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){a.innerHTML="";var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+K+"*[*^$|!~]?="),2!==a.querySelectorAll(":enabled").length&&q.push(":enabled",":disabled"),o.appendChild(a).disabled=!0,2!==a.querySelectorAll(":disabled").length&&q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Y.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"*"),s.call(a,"[s!='']:x"),r.push("!=",N)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Y.test(o.compareDocumentPosition),t=b||Y.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?I(k,a)-I(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?I(k,a)-I(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?la(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(S,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&C.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.escape=function(a){return(a+"").replace(ba,ca)},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(_,aa),a[3]=(a[3]||a[4]||a[5]||"").replace(_,aa),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return V.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&T.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(_,aa).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+K+")"+a+"("+K+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:!b||(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(O," ")+" ").indexOf(c)>-1:"|="===b&&(e===c||e.slice(0,c.length+1)===c+"-"))}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=I(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(P,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(_,aa),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return U.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(_,aa).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:oa(!1),disabled:oa(!0),checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return X.test(a.nodeName)},input:function(a){return W.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:pa(function(){return[0]}),last:pa(function(a,b){return[b-1]}),eq:pa(function(a,b,c){return[c<0?c+b:c]}),even:pa(function(a,b){for(var c=0;c=0;)a.push(d);return a}),gt:pa(function(a,b,c){for(var d=c<0?c+b:c;++d1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function va(a,b,c){for(var d=0,e=b.length;d-1&&(f[j]=!(g[j]=l))}}else r=wa(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):G.apply(g,r)})}function ya(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ta(function(a){return a===b},h,!0),l=ta(function(a){return I(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];i1&&ua(m),i>1&&sa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(P,"$1"),c,i0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=E.call(i));u=wa(u)}G.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&ga.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=ya(b[c]),f[u]?d.push(f):e.push(f);f=A(a,za(e,d)),f.selector=a}return f},i=ga.select=function(a,b,c,e){var f,i,j,k,l,m="function"==typeof a&&a,n=!e&&g(a=m.selector||a);if(c=c||[],1===n.length){if(i=n[0]=n[0].slice(0),i.length>2&&"ID"===(j=i[0]).type&&9===b.nodeType&&p&&d.relative[i[1].type]){if(b=(d.find.ID(j.matches[0].replace(_,aa),b)||[])[0],!b)return c;m&&(b=b.parentNode),a=a.slice(i.shift().value.length)}f=V.needsContext.test(a)?0:i.length;while(f--){if(j=i[f],d.relative[k=j.type])break;if((l=d.find[k])&&(e=l(j.matches[0].replace(_,aa),$.test(i[0].type)&&qa(b.parentNode)||b))){if(i.splice(f,1),a=e.length&&sa(i),!a)return G.apply(c,e),c;break}}}return(m||h(a,n))(e,b,!p,c,!b||$.test(a)&&qa(b.parentNode)||b),c},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("fieldset"))}),ja(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){if(!c)return a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){if(!c&&"input"===a.nodeName.toLowerCase())return a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(J,function(a,b,c){var d;if(!c)return a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);r.find=x,r.expr=x.selectors,r.expr[":"]=r.expr.pseudos,r.uniqueSort=r.unique=x.uniqueSort,r.text=x.getText,r.isXMLDoc=x.isXML,r.contains=x.contains,r.escapeSelector=x.escape;var y=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&r(a).is(c))break;d.push(a)}return d},z=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},A=r.expr.match.needsContext;function B(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()}var C=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,D=/^.[^:#\[\.,]*$/;function E(a,b,c){return r.isFunction(b)?r.grep(a,function(a,d){return!!b.call(a,d,a)!==c}):b.nodeType?r.grep(a,function(a){return a===b!==c}):"string"!=typeof b?r.grep(a,function(a){return i.call(b,a)>-1!==c}):D.test(b)?r.filter(b,a,c):(b=r.filter(b,a),r.grep(a,function(a){return i.call(b,a)>-1!==c&&1===a.nodeType}))}r.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?r.find.matchesSelector(d,a)?[d]:[]:r.find.matches(a,r.grep(b,function(a){return 1===a.nodeType}))},r.fn.extend({find:function(a){var b,c,d=this.length,e=this;if("string"!=typeof a)return this.pushStack(r(a).filter(function(){for(b=0;b1?r.uniqueSort(c):c},filter:function(a){return this.pushStack(E(this,a||[],!1))},not:function(a){return this.pushStack(E(this,a||[],!0))},is:function(a){return!!E(this,"string"==typeof a&&A.test(a)?r(a):a||[],!1).length}});var F,G=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,H=r.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||F,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:G.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof r?b[0]:b,r.merge(this,r.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),C.test(e[1])&&r.isPlainObject(b))for(e in b)r.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&(this[0]=f,this.length=1),this}return a.nodeType?(this[0]=a,this.length=1,this):r.isFunction(a)?void 0!==c.ready?c.ready(a):a(r):r.makeArray(a,this)};H.prototype=r.fn,F=r(d);var I=/^(?:parents|prev(?:Until|All))/,J={children:!0,contents:!0,next:!0,prev:!0};r.fn.extend({has:function(a){var b=r(a,this),c=b.length;return this.filter(function(){for(var a=0;a-1:1===c.nodeType&&r.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?r.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?i.call(r(a),this[0]):i.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(r.uniqueSort(r.merge(this.get(),r(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function K(a,b){while((a=a[b])&&1!==a.nodeType);return a}r.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return y(a,"parentNode")},parentsUntil:function(a,b,c){return y(a,"parentNode",c)},next:function(a){return K(a,"nextSibling")},prev:function(a){return K(a,"previousSibling")},nextAll:function(a){return y(a,"nextSibling")},prevAll:function(a){return y(a,"previousSibling")},nextUntil:function(a,b,c){return y(a,"nextSibling",c)},prevUntil:function(a,b,c){return y(a,"previousSibling",c)},siblings:function(a){return z((a.parentNode||{}).firstChild,a)},children:function(a){return z(a.firstChild)},contents:function(a){return B(a,"iframe")?a.contentDocument:(B(a,"template")&&(a=a.content||a),r.merge([],a.childNodes))}},function(a,b){r.fn[a]=function(c,d){var e=r.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=r.filter(d,e)),this.length>1&&(J[a]||r.uniqueSort(e),I.test(a)&&e.reverse()),this.pushStack(e)}});var L=/[^\x20\t\r\n\f]+/g;function M(a){var b={};return r.each(a.match(L)||[],function(a,c){b[c]=!0}),b}r.Callbacks=function(a){a="string"==typeof a?M(a):r.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=e||a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h-1)f.splice(c,1),c<=h&&h--}),this},has:function(a){return a?r.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||b||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j};function N(a){return a}function O(a){throw a}function P(a,b,c,d){var e;try{a&&r.isFunction(e=a.promise)?e.call(a).done(b).fail(c):a&&r.isFunction(e=a.then)?e.call(a,b,c):b.apply(void 0,[a].slice(d))}catch(a){c.apply(void 0,[a])}}r.extend({Deferred:function(b){var c=[["notify","progress",r.Callbacks("memory"),r.Callbacks("memory"),2],["resolve","done",r.Callbacks("once memory"),r.Callbacks("once memory"),0,"resolved"],["reject","fail",r.Callbacks("once memory"),r.Callbacks("once memory"),1,"rejected"]],d="pending",e={state:function(){return d},always:function(){return f.done(arguments).fail(arguments),this},"catch":function(a){return e.then(null,a)},pipe:function(){var a=arguments;return r.Deferred(function(b){r.each(c,function(c,d){var e=r.isFunction(a[d[4]])&&a[d[4]];f[d[1]](function(){var a=e&&e.apply(this,arguments);a&&r.isFunction(a.promise)?a.promise().progress(b.notify).done(b.resolve).fail(b.reject):b[d[0]+"With"](this,e?[a]:arguments)})}),a=null}).promise()},then:function(b,d,e){var f=0;function g(b,c,d,e){return function(){var h=this,i=arguments,j=function(){var a,j;if(!(b=f&&(d!==O&&(h=void 0,i=[a]),c.rejectWith(h,i))}};b?k():(r.Deferred.getStackHook&&(k.stackTrace=r.Deferred.getStackHook()),a.setTimeout(k))}}return r.Deferred(function(a){c[0][3].add(g(0,a,r.isFunction(e)?e:N,a.notifyWith)),c[1][3].add(g(0,a,r.isFunction(b)?b:N)),c[2][3].add(g(0,a,r.isFunction(d)?d:O))}).promise()},promise:function(a){return null!=a?r.extend(a,e):e}},f={};return r.each(c,function(a,b){var g=b[2],h=b[5];e[b[1]]=g.add,h&&g.add(function(){d=h},c[3-a][2].disable,c[0][2].lock),g.add(b[3].fire),f[b[0]]=function(){return f[b[0]+"With"](this===f?void 0:this,arguments),this},f[b[0]+"With"]=g.fireWith}),e.promise(f),b&&b.call(f,f),f},when:function(a){var b=arguments.length,c=b,d=Array(c),e=f.call(arguments),g=r.Deferred(),h=function(a){return function(c){d[a]=this,e[a]=arguments.length>1?f.call(arguments):c,--b||g.resolveWith(d,e)}};if(b<=1&&(P(a,g.done(h(c)).resolve,g.reject,!b),"pending"===g.state()||r.isFunction(e[c]&&e[c].then)))return g.then();while(c--)P(e[c],h(c),g.reject);return g.promise()}});var Q=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;r.Deferred.exceptionHook=function(b,c){a.console&&a.console.warn&&b&&Q.test(b.name)&&a.console.warn("jQuery.Deferred exception: "+b.message,b.stack,c)},r.readyException=function(b){a.setTimeout(function(){throw b})};var R=r.Deferred();r.fn.ready=function(a){return R.then(a)["catch"](function(a){r.readyException(a)}),this},r.extend({isReady:!1,readyWait:1,ready:function(a){(a===!0?--r.readyWait:r.isReady)||(r.isReady=!0,a!==!0&&--r.readyWait>0||R.resolveWith(d,[r]))}}),r.ready.then=R.then;function S(){d.removeEventListener("DOMContentLoaded",S), -a.removeEventListener("load",S),r.ready()}"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(r.ready):(d.addEventListener("DOMContentLoaded",S),a.addEventListener("load",S));var T=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===r.type(c)){e=!0;for(h in c)T(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,r.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(r(a),c)})),b))for(;h1,null,!0)},removeData:function(a){return this.each(function(){X.remove(this,a)})}}),r.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=W.get(a,b),c&&(!d||Array.isArray(c)?d=W.access(a,b,r.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=r.queue(a,b),d=c.length,e=c.shift(),f=r._queueHooks(a,b),g=function(){r.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return W.get(a,c)||W.access(a,c,{empty:r.Callbacks("once memory").add(function(){W.remove(a,[b+"queue",c])})})}}),r.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length\x20\t\r\n\f]+)/i,la=/^$|\/(?:java|ecma)script/i,ma={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ma.optgroup=ma.option,ma.tbody=ma.tfoot=ma.colgroup=ma.caption=ma.thead,ma.th=ma.td;function na(a,b){var c;return c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[],void 0===b||b&&B(a,b)?r.merge([a],c):c}function oa(a,b){for(var c=0,d=a.length;c-1)e&&e.push(f);else if(j=r.contains(f.ownerDocument,f),g=na(l.appendChild(f),"script"),j&&oa(g),c){k=0;while(f=g[k++])la.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),o.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="",o.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var ra=d.documentElement,sa=/^key/,ta=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,ua=/^([^.]*)(?:\.(.+)|)/;function va(){return!0}function wa(){return!1}function xa(){try{return d.activeElement}catch(a){}}function ya(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)ya(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=wa;else if(!e)return a;return 1===f&&(g=e,e=function(a){return r().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=r.guid++)),a.each(function(){r.event.add(this,b,e,d,c)})}r.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=W.get(a);if(q){c.handler&&(f=c,c=f.handler,e=f.selector),e&&r.find.matchesSelector(ra,e),c.guid||(c.guid=r.guid++),(i=q.events)||(i=q.events={}),(g=q.handle)||(g=q.handle=function(b){return"undefined"!=typeof r&&r.event.triggered!==b.type?r.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(L)||[""],j=b.length;while(j--)h=ua.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n&&(l=r.event.special[n]||{},n=(e?l.delegateType:l.bindType)||n,l=r.event.special[n]||{},k=r.extend({type:n,origType:p,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&r.expr.match.needsContext.test(e),namespace:o.join(".")},f),(m=i[n])||(m=i[n]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,o,g)!==!1||a.addEventListener&&a.addEventListener(n,g)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),r.event.global[n]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=W.hasData(a)&&W.get(a);if(q&&(i=q.events)){b=(b||"").match(L)||[""],j=b.length;while(j--)if(h=ua.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n){l=r.event.special[n]||{},n=(d?l.delegateType:l.bindType)||n,m=i[n]||[],h=h[2]&&new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&p!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,o,q.handle)!==!1||r.removeEvent(a,n,q.handle),delete i[n])}else for(n in i)r.event.remove(a,n+b[j],c,d,!0);r.isEmptyObject(i)&&W.remove(a,"handle events")}},dispatch:function(a){var b=r.event.fix(a),c,d,e,f,g,h,i=new Array(arguments.length),j=(W.get(this,"events")||{})[b.type]||[],k=r.event.special[b.type]||{};for(i[0]=b,c=1;c=1))for(;j!==this;j=j.parentNode||this)if(1===j.nodeType&&("click"!==a.type||j.disabled!==!0)){for(f=[],g={},c=0;c-1:r.find(e,this,null,[j]).length),g[e]&&f.push(d);f.length&&h.push({elem:j,handlers:f})}return j=this,i\x20\t\r\n\f]*)[^>]*)\/>/gi,Aa=/\s*$/g;function Ea(a,b){return B(a,"table")&&B(11!==b.nodeType?b:b.firstChild,"tr")?r(">tbody",a)[0]||a:a}function Fa(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function Ga(a){var b=Ca.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Ha(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(W.hasData(a)&&(f=W.access(a),g=W.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;c1&&"string"==typeof q&&!o.checkClone&&Ba.test(q))return a.each(function(e){var f=a.eq(e);s&&(b[0]=q.call(this,e,f.html())),Ja(f,b,c,d)});if(m&&(e=qa(b,a[0].ownerDocument,!1,a,d),f=e.firstChild,1===e.childNodes.length&&(e=f),f||d)){for(h=r.map(na(e,"script"),Fa),i=h.length;l")},clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=r.contains(a.ownerDocument,a);if(!(o.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||r.isXMLDoc(a)))for(g=na(h),f=na(a),d=0,e=f.length;d0&&oa(g,!i&&na(a,"script")),h},cleanData:function(a){for(var b,c,d,e=r.event.special,f=0;void 0!==(c=a[f]);f++)if(U(c)){if(b=c[W.expando]){if(b.events)for(d in b.events)e[d]?r.event.remove(c,d):r.removeEvent(c,d,b.handle);c[W.expando]=void 0}c[X.expando]&&(c[X.expando]=void 0)}}}),r.fn.extend({detach:function(a){return Ka(this,a,!0)},remove:function(a){return Ka(this,a)},text:function(a){return T(this,function(a){return void 0===a?r.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=a)})},null,a,arguments.length)},append:function(){return Ja(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ea(this,a);b.appendChild(a)}})},prepend:function(){return Ja(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ea(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return Ja(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return Ja(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(r.cleanData(na(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null!=a&&a,b=null==b?a:b,this.map(function(){return r.clone(this,a,b)})},html:function(a){return T(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!Aa.test(a)&&!ma[(ka.exec(a)||["",""])[1].toLowerCase()]){a=r.htmlPrefilter(a);try{for(;c1)}});function _a(a,b,c,d,e){return new _a.prototype.init(a,b,c,d,e)}r.Tween=_a,_a.prototype={constructor:_a,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||r.easing._default,this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(r.cssNumber[c]?"":"px")},cur:function(){var a=_a.propHooks[this.prop];return a&&a.get?a.get(this):_a.propHooks._default.get(this)},run:function(a){var b,c=_a.propHooks[this.prop];return this.options.duration?this.pos=b=r.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):_a.propHooks._default.set(this),this}},_a.prototype.init.prototype=_a.prototype,_a.propHooks={_default:{get:function(a){var b;return 1!==a.elem.nodeType||null!=a.elem[a.prop]&&null==a.elem.style[a.prop]?a.elem[a.prop]:(b=r.css(a.elem,a.prop,""),b&&"auto"!==b?b:0)},set:function(a){r.fx.step[a.prop]?r.fx.step[a.prop](a):1!==a.elem.nodeType||null==a.elem.style[r.cssProps[a.prop]]&&!r.cssHooks[a.prop]?a.elem[a.prop]=a.now:r.style(a.elem,a.prop,a.now+a.unit)}}},_a.propHooks.scrollTop=_a.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},r.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},_default:"swing"},r.fx=_a.prototype.init,r.fx.step={};var ab,bb,cb=/^(?:toggle|show|hide)$/,db=/queueHooks$/;function eb(){bb&&(d.hidden===!1&&a.requestAnimationFrame?a.requestAnimationFrame(eb):a.setTimeout(eb,r.fx.interval),r.fx.tick())}function fb(){return a.setTimeout(function(){ab=void 0}),ab=r.now()}function gb(a,b){var c,d=0,e={height:a};for(b=b?1:0;d<4;d+=2-b)c=ca[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function hb(a,b,c){for(var d,e=(kb.tweeners[b]||[]).concat(kb.tweeners["*"]),f=0,g=e.length;f1)},removeAttr:function(a){return this.each(function(){r.removeAttr(this,a)})}}),r.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return"undefined"==typeof a.getAttribute?r.prop(a,b,c):(1===f&&r.isXMLDoc(a)||(e=r.attrHooks[b.toLowerCase()]||(r.expr.match.bool.test(b)?lb:void 0)),void 0!==c?null===c?void r.removeAttr(a,b):e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:(a.setAttribute(b,c+""),c):e&&"get"in e&&null!==(d=e.get(a,b))?d:(d=r.find.attr(a,b), -null==d?void 0:d))},attrHooks:{type:{set:function(a,b){if(!o.radioValue&&"radio"===b&&B(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}},removeAttr:function(a,b){var c,d=0,e=b&&b.match(L);if(e&&1===a.nodeType)while(c=e[d++])a.removeAttribute(c)}}),lb={set:function(a,b,c){return b===!1?r.removeAttr(a,c):a.setAttribute(c,c),c}},r.each(r.expr.match.bool.source.match(/\w+/g),function(a,b){var c=mb[b]||r.find.attr;mb[b]=function(a,b,d){var e,f,g=b.toLowerCase();return d||(f=mb[g],mb[g]=e,e=null!=c(a,b,d)?g:null,mb[g]=f),e}});var nb=/^(?:input|select|textarea|button)$/i,ob=/^(?:a|area)$/i;r.fn.extend({prop:function(a,b){return T(this,r.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[r.propFix[a]||a]})}}),r.extend({prop:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return 1===f&&r.isXMLDoc(a)||(b=r.propFix[b]||b,e=r.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=r.find.attr(a,"tabindex");return b?parseInt(b,10):nb.test(a.nodeName)||ob.test(a.nodeName)&&a.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),o.optSelected||(r.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null},set:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}}),r.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){r.propFix[this.toLowerCase()]=this});function pb(a){var b=a.match(L)||[];return b.join(" ")}function qb(a){return a.getAttribute&&a.getAttribute("class")||""}r.fn.extend({addClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).addClass(a.call(this,b,qb(this)))});if("string"==typeof a&&a){b=a.match(L)||[];while(c=this[i++])if(e=qb(c),d=1===c.nodeType&&" "+pb(e)+" "){g=0;while(f=b[g++])d.indexOf(" "+f+" ")<0&&(d+=f+" ");h=pb(d),e!==h&&c.setAttribute("class",h)}}return this},removeClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).removeClass(a.call(this,b,qb(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof a&&a){b=a.match(L)||[];while(c=this[i++])if(e=qb(c),d=1===c.nodeType&&" "+pb(e)+" "){g=0;while(f=b[g++])while(d.indexOf(" "+f+" ")>-1)d=d.replace(" "+f+" "," ");h=pb(d),e!==h&&c.setAttribute("class",h)}}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):r.isFunction(a)?this.each(function(c){r(this).toggleClass(a.call(this,c,qb(this),b),b)}):this.each(function(){var b,d,e,f;if("string"===c){d=0,e=r(this),f=a.match(L)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else void 0!==a&&"boolean"!==c||(b=qb(this),b&&W.set(this,"__className__",b),this.setAttribute&&this.setAttribute("class",b||a===!1?"":W.get(this,"__className__")||""))})},hasClass:function(a){var b,c,d=0;b=" "+a+" ";while(c=this[d++])if(1===c.nodeType&&(" "+pb(qb(c))+" ").indexOf(b)>-1)return!0;return!1}});var rb=/\r/g;r.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=r.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,r(this).val()):a,null==e?e="":"number"==typeof e?e+="":Array.isArray(e)&&(e=r.map(e,function(a){return null==a?"":a+""})),b=r.valHooks[this.type]||r.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=r.valHooks[e.type]||r.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(rb,""):null==c?"":c)}}}),r.extend({valHooks:{option:{get:function(a){var b=r.find.attr(a,"value");return null!=b?b:pb(r.text(a))}},select:{get:function(a){var b,c,d,e=a.options,f=a.selectedIndex,g="select-one"===a.type,h=g?null:[],i=g?f+1:e.length;for(d=f<0?i:g?f:0;d-1)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),r.each(["radio","checkbox"],function(){r.valHooks[this]={set:function(a,b){if(Array.isArray(b))return a.checked=r.inArray(r(a).val(),b)>-1}},o.checkOn||(r.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var sb=/^(?:focusinfocus|focusoutblur)$/;r.extend(r.event,{trigger:function(b,c,e,f){var g,h,i,j,k,m,n,o=[e||d],p=l.call(b,"type")?b.type:b,q=l.call(b,"namespace")?b.namespace.split("."):[];if(h=i=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!sb.test(p+r.event.triggered)&&(p.indexOf(".")>-1&&(q=p.split("."),p=q.shift(),q.sort()),k=p.indexOf(":")<0&&"on"+p,b=b[r.expando]?b:new r.Event(p,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=q.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:r.makeArray(c,[b]),n=r.event.special[p]||{},f||!n.trigger||n.trigger.apply(e,c)!==!1)){if(!f&&!n.noBubble&&!r.isWindow(e)){for(j=n.delegateType||p,sb.test(j+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),i=h;i===(e.ownerDocument||d)&&o.push(i.defaultView||i.parentWindow||a)}g=0;while((h=o[g++])&&!b.isPropagationStopped())b.type=g>1?j:n.bindType||p,m=(W.get(h,"events")||{})[b.type]&&W.get(h,"handle"),m&&m.apply(h,c),m=k&&h[k],m&&m.apply&&U(h)&&(b.result=m.apply(h,c),b.result===!1&&b.preventDefault());return b.type=p,f||b.isDefaultPrevented()||n._default&&n._default.apply(o.pop(),c)!==!1||!U(e)||k&&r.isFunction(e[p])&&!r.isWindow(e)&&(i=e[k],i&&(e[k]=null),r.event.triggered=p,e[p](),r.event.triggered=void 0,i&&(e[k]=i)),b.result}},simulate:function(a,b,c){var d=r.extend(new r.Event,c,{type:a,isSimulated:!0});r.event.trigger(d,null,b)}}),r.fn.extend({trigger:function(a,b){return this.each(function(){r.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];if(c)return r.event.trigger(a,b,c,!0)}}),r.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(a,b){r.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),r.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),o.focusin="onfocusin"in a,o.focusin||r.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){r.event.simulate(b,a.target,r.event.fix(a))};r.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=W.access(d,b);e||d.addEventListener(a,c,!0),W.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=W.access(d,b)-1;e?W.access(d,b,e):(d.removeEventListener(a,c,!0),W.remove(d,b))}}});var tb=a.location,ub=r.now(),vb=/\?/;r.parseXML=function(b){var c;if(!b||"string"!=typeof b)return null;try{c=(new a.DOMParser).parseFromString(b,"text/xml")}catch(d){c=void 0}return c&&!c.getElementsByTagName("parsererror").length||r.error("Invalid XML: "+b),c};var wb=/\[\]$/,xb=/\r?\n/g,yb=/^(?:submit|button|image|reset|file)$/i,zb=/^(?:input|select|textarea|keygen)/i;function Ab(a,b,c,d){var e;if(Array.isArray(b))r.each(b,function(b,e){c||wb.test(a)?d(a,e):Ab(a+"["+("object"==typeof e&&null!=e?b:"")+"]",e,c,d)});else if(c||"object"!==r.type(b))d(a,b);else for(e in b)Ab(a+"["+e+"]",b[e],c,d)}r.param=function(a,b){var c,d=[],e=function(a,b){var c=r.isFunction(b)?b():b;d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(null==c?"":c)};if(Array.isArray(a)||a.jquery&&!r.isPlainObject(a))r.each(a,function(){e(this.name,this.value)});else for(c in a)Ab(c,a[c],b,e);return d.join("&")},r.fn.extend({serialize:function(){return r.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=r.prop(this,"elements");return a?r.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!r(this).is(":disabled")&&zb.test(this.nodeName)&&!yb.test(a)&&(this.checked||!ja.test(a))}).map(function(a,b){var c=r(this).val();return null==c?null:Array.isArray(c)?r.map(c,function(a){return{name:b.name,value:a.replace(xb,"\r\n")}}):{name:b.name,value:c.replace(xb,"\r\n")}}).get()}});var Bb=/%20/g,Cb=/#.*$/,Db=/([?&])_=[^&]*/,Eb=/^(.*?):[ \t]*([^\r\n]*)$/gm,Fb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Gb=/^(?:GET|HEAD)$/,Hb=/^\/\//,Ib={},Jb={},Kb="*/".concat("*"),Lb=d.createElement("a");Lb.href=tb.href;function Mb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(L)||[];if(r.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function Nb(a,b,c,d){var e={},f=a===Jb;function g(h){var i;return e[h]=!0,r.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function Ob(a,b){var c,d,e=r.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&r.extend(!0,a,d),a}function Pb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}if(f)return f!==i[0]&&i.unshift(f),c[f]}function Qb(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}r.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:tb.href,type:"GET",isLocal:Fb.test(tb.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Kb,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":r.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?Ob(Ob(a,r.ajaxSettings),b):Ob(r.ajaxSettings,a)},ajaxPrefilter:Mb(Ib),ajaxTransport:Mb(Jb),ajax:function(b,c){"object"==typeof b&&(c=b,b=void 0),c=c||{};var e,f,g,h,i,j,k,l,m,n,o=r.ajaxSetup({},c),p=o.context||o,q=o.context&&(p.nodeType||p.jquery)?r(p):r.event,s=r.Deferred(),t=r.Callbacks("once memory"),u=o.statusCode||{},v={},w={},x="canceled",y={readyState:0,getResponseHeader:function(a){var b;if(k){if(!h){h={};while(b=Eb.exec(g))h[b[1].toLowerCase()]=b[2]}b=h[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return k?g:null},setRequestHeader:function(a,b){return null==k&&(a=w[a.toLowerCase()]=w[a.toLowerCase()]||a,v[a]=b),this},overrideMimeType:function(a){return null==k&&(o.mimeType=a),this},statusCode:function(a){var b;if(a)if(k)y.always(a[y.status]);else for(b in a)u[b]=[u[b],a[b]];return this},abort:function(a){var b=a||x;return e&&e.abort(b),A(0,b),this}};if(s.promise(y),o.url=((b||o.url||tb.href)+"").replace(Hb,tb.protocol+"//"),o.type=c.method||c.type||o.method||o.type,o.dataTypes=(o.dataType||"*").toLowerCase().match(L)||[""],null==o.crossDomain){j=d.createElement("a");try{j.href=o.url,j.href=j.href,o.crossDomain=Lb.protocol+"//"+Lb.host!=j.protocol+"//"+j.host}catch(z){o.crossDomain=!0}}if(o.data&&o.processData&&"string"!=typeof o.data&&(o.data=r.param(o.data,o.traditional)),Nb(Ib,o,c,y),k)return y;l=r.event&&o.global,l&&0===r.active++&&r.event.trigger("ajaxStart"),o.type=o.type.toUpperCase(),o.hasContent=!Gb.test(o.type),f=o.url.replace(Cb,""),o.hasContent?o.data&&o.processData&&0===(o.contentType||"").indexOf("application/x-www-form-urlencoded")&&(o.data=o.data.replace(Bb,"+")):(n=o.url.slice(f.length),o.data&&(f+=(vb.test(f)?"&":"?")+o.data,delete o.data),o.cache===!1&&(f=f.replace(Db,"$1"),n=(vb.test(f)?"&":"?")+"_="+ub++ +n),o.url=f+n),o.ifModified&&(r.lastModified[f]&&y.setRequestHeader("If-Modified-Since",r.lastModified[f]),r.etag[f]&&y.setRequestHeader("If-None-Match",r.etag[f])),(o.data&&o.hasContent&&o.contentType!==!1||c.contentType)&&y.setRequestHeader("Content-Type",o.contentType),y.setRequestHeader("Accept",o.dataTypes[0]&&o.accepts[o.dataTypes[0]]?o.accepts[o.dataTypes[0]]+("*"!==o.dataTypes[0]?", "+Kb+"; q=0.01":""):o.accepts["*"]);for(m in o.headers)y.setRequestHeader(m,o.headers[m]);if(o.beforeSend&&(o.beforeSend.call(p,y,o)===!1||k))return y.abort();if(x="abort",t.add(o.complete),y.done(o.success),y.fail(o.error),e=Nb(Jb,o,c,y)){if(y.readyState=1,l&&q.trigger("ajaxSend",[y,o]),k)return y;o.async&&o.timeout>0&&(i=a.setTimeout(function(){y.abort("timeout")},o.timeout));try{k=!1,e.send(v,A)}catch(z){if(k)throw z;A(-1,z)}}else A(-1,"No Transport");function A(b,c,d,h){var j,m,n,v,w,x=c;k||(k=!0,i&&a.clearTimeout(i),e=void 0,g=h||"",y.readyState=b>0?4:0,j=b>=200&&b<300||304===b,d&&(v=Pb(o,y,d)),v=Qb(o,v,y,j),j?(o.ifModified&&(w=y.getResponseHeader("Last-Modified"),w&&(r.lastModified[f]=w),w=y.getResponseHeader("etag"),w&&(r.etag[f]=w)),204===b||"HEAD"===o.type?x="nocontent":304===b?x="notmodified":(x=v.state,m=v.data,n=v.error,j=!n)):(n=x,!b&&x||(x="error",b<0&&(b=0))),y.status=b,y.statusText=(c||x)+"",j?s.resolveWith(p,[m,x,y]):s.rejectWith(p,[y,x,n]),y.statusCode(u),u=void 0,l&&q.trigger(j?"ajaxSuccess":"ajaxError",[y,o,j?m:n]),t.fireWith(p,[y,x]),l&&(q.trigger("ajaxComplete",[y,o]),--r.active||r.event.trigger("ajaxStop")))}return y},getJSON:function(a,b,c){return r.get(a,b,c,"json")},getScript:function(a,b){return r.get(a,void 0,b,"script")}}),r.each(["get","post"],function(a,b){r[b]=function(a,c,d,e){return r.isFunction(c)&&(e=e||d,d=c,c=void 0),r.ajax(r.extend({url:a,type:b,dataType:e,data:c,success:d},r.isPlainObject(a)&&a))}}),r._evalUrl=function(a){return r.ajax({url:a,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},r.fn.extend({wrapAll:function(a){var b;return this[0]&&(r.isFunction(a)&&(a=a.call(this[0])),b=r(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this},wrapInner:function(a){return r.isFunction(a)?this.each(function(b){r(this).wrapInner(a.call(this,b))}):this.each(function(){var b=r(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=r.isFunction(a);return this.each(function(c){r(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(a){return this.parent(a).not("body").each(function(){r(this).replaceWith(this.childNodes)}),this}}),r.expr.pseudos.hidden=function(a){return!r.expr.pseudos.visible(a)},r.expr.pseudos.visible=function(a){return!!(a.offsetWidth||a.offsetHeight||a.getClientRects().length)},r.ajaxSettings.xhr=function(){try{return new a.XMLHttpRequest}catch(b){}};var Rb={0:200,1223:204},Sb=r.ajaxSettings.xhr();o.cors=!!Sb&&"withCredentials"in Sb,o.ajax=Sb=!!Sb,r.ajaxTransport(function(b){var c,d;if(o.cors||Sb&&!b.crossDomain)return{send:function(e,f){var g,h=b.xhr();if(h.open(b.type,b.url,b.async,b.username,b.password),b.xhrFields)for(g in b.xhrFields)h[g]=b.xhrFields[g];b.mimeType&&h.overrideMimeType&&h.overrideMimeType(b.mimeType),b.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest");for(g in e)h.setRequestHeader(g,e[g]);c=function(a){return function(){c&&(c=d=h.onload=h.onerror=h.onabort=h.onreadystatechange=null,"abort"===a?h.abort():"error"===a?"number"!=typeof h.status?f(0,"error"):f(h.status,h.statusText):f(Rb[h.status]||h.status,h.statusText,"text"!==(h.responseType||"text")||"string"!=typeof h.responseText?{binary:h.response}:{text:h.responseText},h.getAllResponseHeaders()))}},h.onload=c(),d=h.onerror=c("error"),void 0!==h.onabort?h.onabort=d:h.onreadystatechange=function(){4===h.readyState&&a.setTimeout(function(){c&&d()})},c=c("abort");try{h.send(b.hasContent&&b.data||null)}catch(i){if(c)throw i}},abort:function(){c&&c()}}}),r.ajaxPrefilter(function(a){a.crossDomain&&(a.contents.script=!1)}),r.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(a){return r.globalEval(a),a}}}),r.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),r.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(e,f){b=r(" - - - - - - - - - - -
-
-
-
添加分区
-
-
-
- -
- -
-
-
- -
- -
-
- -
- -
- -
-
- -
- -
- -
-
- -
- -
- -
-
-
-
- - -
-
-
-
-
-
-
- - - - - \ No newline at end of file diff --git a/legend/views/area-charge-count.html b/legend/views/area-charge-count.html deleted file mode 100644 index 114c329..0000000 --- a/legend/views/area-charge-count.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - - -
-
-{{/*
首页 / 分组充值统计
*/}} -
-
-
- -
- -
- - -
- -
- -
-
- -
-
-
-
- - - - - \ No newline at end of file diff --git a/legend/views/area-edit.html b/legend/views/area-edit.html deleted file mode 100644 index a1fac5c..0000000 --- a/legend/views/area-edit.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - - 充值商户后台 - - - {{/* */}} - - - - - - - - - - - - - - - -
-
-
-
编辑分区
-
-
- -
- -
- -
-
-
- -
- -
-
- -
- -
- -
-
- -
- -
- -
-
- -
- -
- -
-
-
-
- - -
-
-
-
-
-
-
- - - - - \ No newline at end of file diff --git a/legend/views/area-list.html b/legend/views/area-list.html deleted file mode 100644 index 645cf18..0000000 --- a/legend/views/area-list.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - - -
-
-
-
-
-
- - - - - - - - -
- - - \ No newline at end of file diff --git a/legend/views/error/404.html b/legend/views/error/404.html deleted file mode 100644 index 80b1568..0000000 --- a/legend/views/error/404.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - - 充值商户后台 - - - - - - - - - -
-
-
-

-

页面或者数据被 纸飞机 运到火星了,啥都看不到了…

-
-
-
- - \ No newline at end of file diff --git a/legend/views/error/503.html b/legend/views/error/503.html deleted file mode 100644 index 4b8c2c7..0000000 --- a/legend/views/error/503.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - - 充值商户后台 - - - - - - - - - -
-
-
-

-

您可能需要重新登录.....,或者刷新下网页!!!!!!

-
-
-
- - \ No newline at end of file diff --git a/legend/views/everyday-charge-count.html b/legend/views/everyday-charge-count.html deleted file mode 100644 index 6551424..0000000 --- a/legend/views/everyday-charge-count.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - - -
-
-{{/*
首页 / 每日充值统计
*/}} -
-
-
- -
- -
- - -
- -
- -
-
- -
-
-
-
- - - - - \ No newline at end of file diff --git a/legend/views/favicon.png b/legend/views/favicon.png deleted file mode 100644 index 6450c4e..0000000 Binary files a/legend/views/favicon.png and /dev/null differ diff --git a/legend/views/group-charge-count.html b/legend/views/group-charge-count.html deleted file mode 100644 index a2a54a8..0000000 --- a/legend/views/group-charge-count.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - - -
-
-{{/*
首页 / 分组充值统计
*/}} -
-
-
- -
- -
- - -
- -
- -
-
- -
-
-
-
- - - - - \ No newline at end of file diff --git a/legend/views/group-list.html b/legend/views/group-list.html deleted file mode 100644 index 690b907..0000000 --- a/legend/views/group-list.html +++ /dev/null @@ -1,185 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - - -
-{{/*
*/}} -
-
- - - - - - - - -
-
- - - - - - \ No newline at end of file diff --git a/legend/views/imitate-order.html b/legend/views/imitate-order.html deleted file mode 100644 index e912560..0000000 --- a/legend/views/imitate-order.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - - -
-
-
-{{/*

首页 / 模拟充值

*/}} -
-
-
- - -
- -
- - -
- -
- - -
- -
- -
-
-
-
-
-
-
- - - - - \ No newline at end of file diff --git a/legend/views/index.html b/legend/views/index.html deleted file mode 100644 index e31aa6b..0000000 --- a/legend/views/index.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - -
- -
- -
- - -
- - - - - - - -
-
- -
  • - 控制台 -
  • -
    -
    -
    -
    关闭当前
    -
    关闭其它
    -
    关闭全部
    -
    -
    -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - \ No newline at end of file diff --git a/legend/views/login.html b/legend/views/login.html deleted file mode 100644 index fe312b6..0000000 --- a/legend/views/login.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - 游戏充值商户后台 - - -{{/* */}} - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/legend/views/merchant-key.html b/legend/views/merchant-key.html deleted file mode 100644 index 5e5ebb1..0000000 --- a/legend/views/merchant-key.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - -
    -{{/*
    */}} - -
    -
    基本信息
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    登录帐号:

    {{.userName}}

    商户账户号:

    {{.userInfo.MerchantUid}}

    商户密钥:

    {{.userInfo.MerchantSecret}}

    - -

    商户KEY:

    {{.userInfo.MerchantKey}}

    -

    银行开户名:

    {{.bankInfo.AccountName}}

    开户银行:

    {{.bankInfo.BankName}}

    银行卡号:

    {{.bankInfo.BankNo}}

    银行编码:

    {{.bankInfo.BankCode}}

    手机号码:

    {{.bankInfo.PhoneNo}}

    -
    -{{/*
    */}} -
    - - - -
    - - - - - \ No newline at end of file diff --git a/legend/views/order-list.html b/legend/views/order-list.html deleted file mode 100644 index 8a97e61..0000000 --- a/legend/views/order-list.html +++ /dev/null @@ -1,185 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - - -
    -
    -
    -

    首页 / 充值订单

    -
    -
    -
    - -
    - -
    - - -
    - -
    - - -
    - -
    -
    -
    - -
    - -
    - - -
    - -
    - - -
    - -
    - -
    - -
    - -
    - -
    - - -
    - -
    - - -
    - -
    - -
    - -
    -
    -
    -
    -
    -
    - - - - - - - - - \ No newline at end of file diff --git a/legend/views/person.html b/legend/views/person.html deleted file mode 100644 index 4987e62..0000000 --- a/legend/views/person.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - 游戏充值商户后台 - - -{{/* */}} - - - - - - - - - -
    -
    -
    -
    - -
    -
    -
    -
    - -
    -
    -
    -
    - -
    -
    -
    6到16个字符
    -
    - -
    -
    -
    -
    - -
    -
    - -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/legend/views/scale-template.html b/legend/views/scale-template.html deleted file mode 100644 index 8b20abc..0000000 --- a/legend/views/scale-template.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - -
    -
    -
    -
    - - - - - - - - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/legend/views/settle-list.html b/legend/views/settle-list.html deleted file mode 100644 index 227af40..0000000 --- a/legend/views/settle-list.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - - -
    -
    -
    -{{/*

    首页 / 结算管理

    */}} -
    -
    -
    - - -
    - -
    - - -
    - -
    - - -
    - -
    - -
    -
    -
    -
    -
    -
    -
    - - - - - \ No newline at end of file diff --git a/legend/views/template-add.html b/legend/views/template-add.html deleted file mode 100644 index 9edc4ed..0000000 --- a/legend/views/template-add.html +++ /dev/null @@ -1,343 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - -
    -
    -
    配置模板
    -
    -
    -
    -
    -
    -

    基础配置

    -
    - -
    - -
    - -
    -
    取名保证唯一性
    -
    - -
    - -
    - -
    -
    可填写角色名、或者角色ID;不可为空
    -
    -
    - -
    - -
    -
    此提示会在充值页面显示,提示玩家如何查看用户标识
    -
    - -
    - -
    - - -
    -
    - - - -
    -
    - -
    - -
    -
    默认是元宝,也可以是钻石、点券
    -
    - -
    - -
    - -
    -
    默认是100,既充值1元人命币转为100游戏币
    -
    - -
    - -
    - -
    -
    默认最低为10元
    -
    -
    - - -
    -
    - -
    添加商品
    -

    说明:请根据游戏内设置的商品道具进行设置,切勿乱填

    可购次数填0代表不限,填1代表一个帐号仅可购买一次,依此类推

    -
    - -
    -
    - - -
    -

    激励赠送

    -
    -
    - -
    - - - -
    -
    - - -
    -
    -
    添加
    -
    - - -
    -
    -
    添加
    -
    -
    -
    -
    -
    -
    - -
    返回当前页
    -
    -
    -
    - -
    -
    -
    -{{/* */}} - - - - - \ No newline at end of file diff --git a/legend/views/template-edit.html b/legend/views/template-edit.html deleted file mode 100644 index 30333a2..0000000 --- a/legend/views/template-edit.html +++ /dev/null @@ -1,484 +0,0 @@ - - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - - -
    -
    -
    编辑模板
    -
    -
    -
    -
    -
    -

    基础配置

    -
    - -
    - -
    - -
    -
    - -
    - -
    - -
    -
    可填写角色名、或者角色ID;不可为空
    -
    -
    - -
    - -
    -
    此提示会在充值页面显示,提示玩家如何查看用户标识
    -
    - -
    - -
    - - -
    -
    - - - -
    -
    - -
    - -
    -
    默认是元宝,也可以是钻石、点券
    -
    - -
    - -
    - -
    -
    默认是100,既充值1元人命币转为100游戏币
    -
    - -
    - -
    - -
    -
    默认最低为10元
    -
    -
    - - -
    -
    - -
    添加
    -

    说明:请根据游戏内设置的商品道具进行设置,切勿乱填

    可购次数填0代表不限,填1代表一个帐号仅可购买一次,依此类推

    -
    - -
    -
    - - -
    -

    激励赠送

    -
    -
    - -
    - - - -
    -
    - - -
    -
    -
    添加
    -
    - - -
    -
    -
    添加
    -
    -
    -
    -
    -
    -
    - -
    返回当前页
    -
    -
    -
    - -
    -
    -
    - - - - - \ No newline at end of file diff --git a/legend/views/welcome.html b/legend/views/welcome.html deleted file mode 100644 index 4e60a40..0000000 --- a/legend/views/welcome.html +++ /dev/null @@ -1,186 +0,0 @@ - - - - - 充值商户后台 - - -{{/* */}} - - - - - - - - - - - -
    -
    - {{/*
    -
    -
    -
    欢迎 {{.nickName}}: - 充值后台!当前时间:{{.currentTime}} -
    -
    -
    -
    */}} -
    -
    -
    账户总余额 - {{/**/}}
    -
    -

    {{.balance}}

    -

    单位: - 元 - {{/**/}} -

    -
    -
    -
    -
    -
    -
    可结算金额 - {{/**/}}
    -
    -

    {{.settleAmount}}

    -

    单位: - 元 - {{/**/}} -

    -
    -
    -
    -
    -
    -
    冻结金额 - {{/**/}}
    -
    -

    {{.unBalance}}

    -

    单位: - 元 - {{/**/}} -

    -
    -
    -
    -
    -
    -
    今日充值金额 - {{/**/}}
    -
    -

    {{.todayAmount}}

    -

    单位: - -

    -
    -
    -
    - - -
    -
    -
    游戏接口下载
    -
    - - - - - - - - - - - - - -
    游戏名称接口下载
    演示例子x.xuebingsi.com
    战神引擎WINNT
    -
    -
    -
    -
    -
    -
    名词解释
    -
    - - - - - - - - - - - - - -
    账户总金额 - 商户还剩下的金额,总金额 = 可结算金额 + 冻结金额
    可结算金额用户此时可以提现的金额,可结算金额 = 总金额 - 冻结金额
    冻结金额用户暂时不可以动用的金额
    -
    -
    -
    - - -
    -
    - - - \ No newline at end of file