cgserver 6.6.4 → 6.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,3 +1,7 @@
1
+ 6.6.5
2
+ 1、mongomanager可单独初始化
3
+ 6.6.5
4
+ 1、mongoaccountservice增加登录时间和ip
1
5
  6.5.8
2
6
  1、修改编译bug
3
7
  6.5.7
@@ -192,9 +192,9 @@ class core {
192
192
  if (core.isArray(items)) {
193
193
  return items.length;
194
194
  }
195
- if (core.isObject) {
195
+ if (core.isObject(items)) {
196
196
  let len = 0;
197
- core.foreach(items, function () {
197
+ core.foreach(items, () => {
198
198
  ++len;
199
199
  });
200
200
  return len;
@@ -1,11 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GMongoMgr = exports.MgReturn = exports.MrResult = exports.MongoBaseModel = void 0;
3
+ exports.GMongoMgr = exports.MgReturn = exports.MrResult = exports.MongoBaseModel = exports.MongoConfig = void 0;
4
4
  const Log_1 = require("../Logic/Log");
5
5
  const mongo = require("mongodb");
6
6
  const _error_1 = require("../Config/_error_");
7
7
  const Core_1 = require("../Core/Core");
8
- const ServerConfig_1 = require("../Config/ServerConfig");
8
+ class MongoConfig {
9
+ open = false;
10
+ host = "127.0.0.1";
11
+ port = 27017;
12
+ options = null;
13
+ database = 'mongodb';
14
+ }
15
+ exports.MongoConfig = MongoConfig;
9
16
  class MongoBaseModel {
10
17
  _id;
11
18
  }
@@ -38,6 +45,7 @@ class MgReturn {
38
45
  exports.MgReturn = MgReturn;
39
46
  exports.GMongoMgr = null;
40
47
  class MongoManager {
48
+ _mongocfg = null;
41
49
  _init_cbs = [];
42
50
  _mongo = null;
43
51
  get mongo() {
@@ -50,22 +58,23 @@ class MongoManager {
50
58
  }
51
59
  constructor() {
52
60
  }
53
- async init() {
61
+ async init(cfg) {
62
+ if (!cfg || !this._mongocfg.open) {
63
+ return false;
64
+ }
54
65
  if (this._inited) {
55
66
  return false;
56
67
  }
57
68
  if (this._mongo) {
58
69
  return true;
59
70
  }
60
- if (!ServerConfig_1.GServerCfg.db.mongo || !ServerConfig_1.GServerCfg.db.mongo.open) {
61
- return true;
62
- }
71
+ this._mongocfg = cfg;
63
72
  this._inited = true;
64
- Log_1.GLog.info("mongo config=" + JSON.stringify(ServerConfig_1.GServerCfg.db.mongo));
65
- let client = new mongo.MongoClient("mongodb://" + ServerConfig_1.GServerCfg.db.mongo.host + ":" + ServerConfig_1.GServerCfg.db.mongo.port, ServerConfig_1.GServerCfg.db.mongo.options);
73
+ Log_1.GLog.info("mongo config=" + JSON.stringify(this._mongocfg));
74
+ let client = new mongo.MongoClient("mongodb://" + this._mongocfg.host + ":" + this._mongocfg.port, this._mongocfg.options);
66
75
  await Core_1.core.safeCall(client.connect, client);
67
76
  this.onConnect();
68
- this._mongo = client.db(ServerConfig_1.GServerCfg.db.mongo.database);
77
+ this._mongo = client.db(this._mongocfg.database);
69
78
  for (let i = 0; i < this._init_cbs.length; ++i) {
70
79
  this._init_cbs[i]();
71
80
  }
@@ -82,12 +91,12 @@ class MongoManager {
82
91
  this._mongo_init_succ = false;
83
92
  Log_1.GLog.error("mongo has ended!");
84
93
  Log_1.GLog.info("mongo try reconnect");
85
- this.init();
94
+ this.init(this._mongocfg);
86
95
  }
87
96
  onError(err) {
88
97
  Log_1.GLog.error("Error " + err);
89
98
  Log_1.GLog.info("mongo try reconnect");
90
- this.init();
99
+ this.init(this._mongocfg);
91
100
  }
92
101
  async getAutoIds(key) {
93
102
  if (!this._mongo) {
@@ -280,6 +280,9 @@ class AccountService extends MongoBaseService_1.MongoBaseService {
280
280
  await MongoUserService_1.GUserSer.updateBaseInfoByAccount(account.id, extra_info.nickname, extra_info.sex, extra_info.logo);
281
281
  }
282
282
  }
283
+ account.login_time = Date.now();
284
+ account.login_ip = ip;
285
+ this.updateOne({ login_time: account.login_time, login_ip: account.login_ip }, { id: account.id });
283
286
  rs.account = account;
284
287
  return rs;
285
288
  }
@@ -73,8 +73,8 @@ class ISocketServer {
73
73
  cgserver_1.GCgServer.addSocketServer(this);
74
74
  await MSSqlManager_1.GMSSqlMgr.init();
75
75
  await MysqlManager_1.GMysqlMgr.init();
76
- await RedisManager_1.GRedisMgr.init(ServerConfig_1.GServerCfg.db.redis);
77
- await MongoManager_1.GMongoMgr.init();
76
+ await RedisManager_1.GRedisMgr.init(ServerConfig_1.GServerCfg.db?.redis);
77
+ await MongoManager_1.GMongoMgr.init(ServerConfig_1.GServerCfg.db?.mongo);
78
78
  let code = await RedisManager_1.GRedisMgr.incr("server_code");
79
79
  this._code = code;
80
80
  this.initWebSocket();
@@ -24,9 +24,9 @@ class IWebServer {
24
24
  Log_1.GLog.error("webserver 配置不存在,启动服务器失败");
25
25
  return false;
26
26
  }
27
- await RedisManager_1.GRedisMgr.init(ServerConfig_1.GServerCfg.db.redis);
27
+ await RedisManager_1.GRedisMgr.init(ServerConfig_1.GServerCfg.db?.redis);
28
28
  await MysqlManager_1.GMysqlMgr.init();
29
- await MongoManager_1.GMongoMgr.init();
29
+ await MongoManager_1.GMongoMgr.init(ServerConfig_1.GServerCfg.db?.mongo);
30
30
  AlipayTool_1.GAlipayTool.init();
31
31
  //初始化web引擎
32
32
  this._engine = new Engine_1.Engine(cfg, new RazorJs_1.RazorJs());
@@ -1,4 +1,4 @@
1
- import { MongoClientOptions } from "mongodb";
1
+ import { MongoConfig } from "../Database/MongoManager";
2
2
  import { Config } from "./Config";
3
3
  export declare enum ESessionType {
4
4
  Cache = 0,
@@ -129,13 +129,7 @@ export declare class FrameworkConfig extends Config {
129
129
  database: number;
130
130
  password: any;
131
131
  };
132
- mongo: {
133
- open: boolean;
134
- host: string;
135
- port: number;
136
- options: MongoClientOptions;
137
- database: string;
138
- };
132
+ mongo: MongoConfig;
139
133
  mysql: {
140
134
  open: boolean;
141
135
  auto: boolean;
@@ -1,4 +1,11 @@
1
1
  import * as mongo from 'mongodb';
2
+ export declare class MongoConfig {
3
+ open: boolean;
4
+ host: string;
5
+ port: number;
6
+ options: mongo.MongoClientOptions;
7
+ database: string;
8
+ }
2
9
  export declare class MongoBaseModel {
3
10
  _id: any;
4
11
  }
@@ -30,6 +37,7 @@ export declare class MgReturn {
30
37
  }
31
38
  export declare let GMongoMgr: MongoManager;
32
39
  declare class MongoManager {
40
+ protected _mongocfg: MongoConfig;
33
41
  protected _init_cbs: any[];
34
42
  protected _mongo: mongo.Db;
35
43
  get mongo(): mongo.Db;
@@ -37,7 +45,7 @@ declare class MongoManager {
37
45
  protected _inited: boolean;
38
46
  get isValid(): boolean;
39
47
  constructor();
40
- init(): Promise<boolean>;
48
+ init(cfg: MongoConfig): Promise<boolean>;
41
49
  registerInitCb(cb: Function): void;
42
50
  onConnect(): void;
43
51
  onEnd(): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cgserver",
3
- "version": "6.6.4",
3
+ "version": "6.6.6",
4
4
  "author": "trojan",
5
5
  "type": "commonjs",
6
6
  "description": "free for all.Websocket or Http",