|
@@ -11,6 +11,7 @@ class ExpertuserService extends CrudService {
|
|
|
constructor(ctx) {
|
|
|
super(ctx, 'experts_user');
|
|
|
this.model = this.ctx.model.Expertsuser;
|
|
|
+ this.umodel = this.ctx.model.User;
|
|
|
}
|
|
|
|
|
|
async create(data) {
|
|
@@ -81,6 +82,45 @@ class ExpertuserService extends CrudService {
|
|
|
user.status = data.status;
|
|
|
return await user.save();
|
|
|
}
|
|
|
+
|
|
|
+ async upgrade({ id }, data) {
|
|
|
+ await this.umodel.deleteOne({ id });
|
|
|
+ const { phone } = data;
|
|
|
+ const phoneList = await this.model.find({ phone });
|
|
|
+ const is_has = phoneList.find(f => f.id !== id);
|
|
|
+ if (is_has) throw new BusinessError('此手机号已被注册,请更换手机号');
|
|
|
+ const user = {};
|
|
|
+ if (data.name) {
|
|
|
+ user.name = data.name;
|
|
|
+ }
|
|
|
+ if (data.password) {
|
|
|
+ user.password = { secret: data.password };
|
|
|
+ }
|
|
|
+ user.cardnumber = data.cardnumber;
|
|
|
+ user.gender = data.gender;
|
|
|
+ user.phone = data.phone;
|
|
|
+ user.email = data.email;
|
|
|
+ user.addr = data.addr;
|
|
|
+ user.img_path = data.img_path;
|
|
|
+ user.birthday = data.birthday;
|
|
|
+ user.level = data.level;
|
|
|
+ user.levelname = data.levelname;
|
|
|
+ user.position = data.position;
|
|
|
+ user.school = data.school;
|
|
|
+ user.xl = data.xl;
|
|
|
+ user.xw = data.xw;
|
|
|
+ user.major = data.major;
|
|
|
+ user.professional = data.professional;
|
|
|
+ user.resume = data.resume;
|
|
|
+ user.project = data.project;
|
|
|
+ user.academic = data.academic;
|
|
|
+ user.paper = data.paper;
|
|
|
+ user.remark = data.remark;
|
|
|
+ user.role = data.role;
|
|
|
+ user.status = data.status;
|
|
|
+ const res = await this.model.create(user);
|
|
|
+ return res;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
module.exports = ExpertuserService;
|