|
@@ -8,7 +8,25 @@
|
|
|
import mongoose from "mongoose";
|
|
|
import Moment from "moment";
|
|
|
import BaseModel from "../../common/base/base_model";
|
|
|
-
|
|
|
+const projectModel = mongoose.model('projects');
|
|
|
+const unitPriceFileModel = mongoose.model('unit_price_file');
|
|
|
+const feeRateFileModel = mongoose.model('fee_rate_file');
|
|
|
+const optionsModel = mongoose.model('options');
|
|
|
+const settingModel = mongoose.model('setting');
|
|
|
+const messageModel = mongoose.model('user_message');
|
|
|
+const logModel = mongoose.model('log');
|
|
|
+const rptCfgModel = mongoose.model("rpt_cfg");
|
|
|
+const rptCusCfgModel = mongoose.model("rpt_customize_cfg");
|
|
|
+const comRationSecTreeModel = mongoose.model('complementary_ration_section_tree');
|
|
|
+const blockLibModel = mongoose.model('blockLibsModel');
|
|
|
+const comGLJLibMode = mongoose.model('complementary_glj_lib');
|
|
|
+const comGLJSectionModel = mongoose.model('complementary_glj_section');
|
|
|
+const comRationItemsModel = mongoose.model('complementary_ration_items');
|
|
|
+const comRationCoeModel = mongoose.model('complementary_ration_coe_list');
|
|
|
+const comRationInstalModel = mongoose.model('complementary_ration_installation');
|
|
|
+const comRationInstalSectionModel = mongoose.model('complementary_ration_installationSection');
|
|
|
+const rptTplTreeMode = mongoose.model("rpt_tpl_tree");
|
|
|
+let sysSchedule = require('../../sys_tools/models/sys_model');
|
|
|
class UserModel extends BaseModel {
|
|
|
|
|
|
/**
|
|
@@ -171,7 +189,43 @@ class UserModel extends BaseModel {
|
|
|
getDayMsg(index){
|
|
|
return this.dayMsg[index];
|
|
|
}
|
|
|
-
|
|
|
+ async deleteUser(userID,managerID){
|
|
|
+ //把用户的项目,单价文件,费率文件标记为真删除状态,然后统一调用清除项目数据的方法
|
|
|
+ let deleteInfo = {
|
|
|
+ deleted:true,
|
|
|
+ deleteDateTime : new Date(),
|
|
|
+ deleteBy:managerID,
|
|
|
+ completeDeleted:true
|
|
|
+ };
|
|
|
+ //标记删除
|
|
|
+ await unitPriceFileModel.updateMany({"user_id":userID},{"deleteInfo":deleteInfo});
|
|
|
+ await feeRateFileModel.updateMany({"userID":userID},{"deleteInfo":deleteInfo});
|
|
|
+ await projectModel.updateMany({"userID":userID},{"deleteInfo":deleteInfo});
|
|
|
+ //删除项目相关数据
|
|
|
+ await sysSchedule.clearJunkData();
|
|
|
+
|
|
|
+ //删除用户私有数据
|
|
|
+ await optionsModel.deleteMany({"user_id":userID});
|
|
|
+ await settingModel.deleteMany({"user_id":userID});
|
|
|
+ await messageModel.deleteMany({"user_id":userID});
|
|
|
+ await logModel.deleteMany({"user_id":userID});
|
|
|
+
|
|
|
+ await rptCfgModel.deleteMany({"userId":userID});
|
|
|
+ await rptCusCfgModel.deleteMany({"userId":userID});
|
|
|
+ await comRationSecTreeModel.deleteMany({"userId":userID});
|
|
|
+ await comGLJLibMode.deleteMany({"userId":userID});
|
|
|
+ await rptTplTreeMode.deleteMany({"userId":userID});
|
|
|
+ await comGLJSectionModel.deleteMany({"userId":userID});
|
|
|
+ await comRationItemsModel.deleteMany({"userId":userID});
|
|
|
+ await comRationCoeModel.deleteMany({"userId":userID});
|
|
|
+ await comRationInstalModel.deleteMany({"userId":userID});
|
|
|
+ await comRationInstalSectionModel.deleteMany({"userId":userID});
|
|
|
+ await blockLibModel.deleteMany({"userID":userID});
|
|
|
+
|
|
|
+ //最后删除用户信息:
|
|
|
+ await this.db.model.deleteOne({_id:mongoose.Types.ObjectId(userID)});
|
|
|
+ return "success";
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
export default UserModel;
|