|
@@ -5,19 +5,11 @@
|
|
|
* @date 2017/6/9
|
|
|
* @version
|
|
|
*/
|
|
|
-let mongoose = require("mongoose");
|
|
|
-let MongooseHelper = require("../libraries/database/mongoose_helper");
|
|
|
-let userSchema = require("./schema/user");
|
|
|
-let Request = require("request");
|
|
|
+import userSchema from "./schema/user";
|
|
|
+import Request from "request";
|
|
|
+import BaseModel from "../../common/base/base_model"
|
|
|
|
|
|
-class UserModel {
|
|
|
-
|
|
|
- /**
|
|
|
- * db句柄
|
|
|
- *
|
|
|
- * @var {object}
|
|
|
- */
|
|
|
- db = null;
|
|
|
+class UserModel extends BaseModel {
|
|
|
|
|
|
/**
|
|
|
* 企业所在地区
|
|
@@ -40,50 +32,6 @@ class UserModel {
|
|
|
*/
|
|
|
companyScale = ['1-20', '20-50', '50-100', '100+'];
|
|
|
|
|
|
- /**
|
|
|
- * 默认结构
|
|
|
- *
|
|
|
- * @var {object}
|
|
|
- */
|
|
|
- defaultSchema = {
|
|
|
- username: String,
|
|
|
- email: String,
|
|
|
- mobile: String,
|
|
|
- real_name: String,
|
|
|
- company: String,
|
|
|
- province: String,
|
|
|
- area: Number,
|
|
|
- company_type: Number,
|
|
|
- company_scale: Number,
|
|
|
- last_login: Number,
|
|
|
- create_time: Number
|
|
|
- };
|
|
|
-
|
|
|
- /**
|
|
|
- * 登录验证结构
|
|
|
- *
|
|
|
- * @var {object}
|
|
|
- */
|
|
|
- loginSchema = {
|
|
|
- username: {
|
|
|
- type: String,
|
|
|
- required: true
|
|
|
- },
|
|
|
- email: {
|
|
|
- type: String,
|
|
|
- required: true
|
|
|
- },
|
|
|
- mobile: {
|
|
|
- type: String,
|
|
|
- required: true,
|
|
|
- validate: {
|
|
|
- validator: function(v) {
|
|
|
- return /^1([34578]\d)\d{8}$/.test(v);
|
|
|
- },
|
|
|
- message: '{VALUE} is not a valid phone number!'
|
|
|
- },
|
|
|
- }
|
|
|
- };
|
|
|
|
|
|
/**
|
|
|
* 构造函数
|
|
@@ -91,8 +39,9 @@ class UserModel {
|
|
|
* @return {void}
|
|
|
*/
|
|
|
constructor() {
|
|
|
- this.db = new MongooseHelper();
|
|
|
- this.db.model = userSchema;
|
|
|
+ let parent = super();
|
|
|
+ parent.model = userSchema;
|
|
|
+ parent.init();
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -178,14 +127,14 @@ class UserModel {
|
|
|
* @return {object}
|
|
|
*/
|
|
|
findDataByName(username) {
|
|
|
- return this.db.find({username: username});
|
|
|
+ return this.db.model.find({username: username});
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 新增用户
|
|
|
*
|
|
|
* @param {object} userData
|
|
|
- * @return {Promise}
|
|
|
+ * @return {Promise|boolean}
|
|
|
*/
|
|
|
addUser(userData) {
|
|
|
let insertData = {
|
|
@@ -201,7 +150,7 @@ class UserModel {
|
|
|
create_time: new Date().getTime(),
|
|
|
area: 0
|
|
|
};
|
|
|
- return this.db.create(insertData);
|
|
|
+ return this.db.model.create(insertData);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -214,9 +163,9 @@ class UserModel {
|
|
|
if (Object.keys(condition).length <= 0 || Object.keys(updateData).length <= 0) {
|
|
|
return null;
|
|
|
}
|
|
|
- return this.db.update(condition, updateData);
|
|
|
+ return this.db.model.update(condition, updateData);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
-module.exports = UserModel;
|
|
|
+export default UserModel;
|