ruifeng_liu 3 tahun lalu
induk
melakukan
77755bd23a
1 mengubah file dengan 14 tambahan dan 14 penghapusan
  1. 14 14
      app/service/patent/patentinfo.js

+ 14 - 14
app/service/patent/patentinfo.js

@@ -32,40 +32,40 @@ class PatentinfoService extends CrudService {
   }
 
   async query(query, { skip = 0, limit = 0 }) {
-    query = await this.resetCode(query);
-    const res = await this.model.find(query).skip(parseInt(skip)).limit(parseInt(limit))
+    const newquery = await this.resetCode(query);
+    const res = await this.model.find(newquery).skip(parseInt(skip)).limit(parseInt(limit))
       .sort({ 'meta.createdAt': -1 });
     return res;
 
   }
   async count(query) {
-    query = await this.resetCode(query);
-    const res = await this.model.countDocuments(trimData(query)).exec();
+    const newquery = await this.resetCode(query);
+    const res = await this.model.countDocuments(trimData(newquery)).exec();
     return res;
   }
 
   async resetCode(query) {
-    query = this.ctx.service.util.util.dealQuery(query);
-    const { type } = query;
+    let newquery = _.cloneDeep(query);
+    newquery = this.ctx.service.util.util.dealQuery(newquery);
+    const { type } = newquery;
     if (type === 'else') {
-      query.$and = [{ type: { $ne: '发明' } }, { type: { $ne: '实用新型' } }];
-      delete query.type;
+      newquery.$and = [{ type: { $ne: '发明' } }, { type: { $ne: '实用新型' } }];
+      delete newquery.type;
     }
-    const { code, user_id } = query;
+    const { code, user_id } = newquery;
     let ids = [];
     if (code) {
       const plist = await this.personalModel.find({ code });
       ids = plist.map(i => i._id);
       if (ids.length > 0) {
-        query.user_id = { $elemMatch: { $in: ids } };
-        delete query.code;
+        newquery.user_id = { $elemMatch: { $in: ids } };
+        delete newquery.code;
       }
     } else if (user_id) {
-      console.log('in function:');
-      query.user_id = { $elemMatch: { $in: [ ObjectId(user_id) ] } };
+      newquery.user_id = { $elemMatch: { $in: [ ObjectId(user_id) ] } };
     }
 
-    return query;
+    return newquery;
   }
 
   async queryByOrg({ code, status, term, skip = 0, limit = 0 }) {