|
@@ -2,12 +2,17 @@
|
|
|
|
|
|
此项目没有修改框架,所以model部分如果使用子目录,会引发错误,controller和service,router使用子目录不会产生bug
|
|
|
|
|
|
-添加模糊查询:naf-framework-mongoose>lib>service>crud-service中
|
|
|
-query和count在操作model前加上下面的代码
|
|
|
+添加模糊查询
|
|
|
+>符号及使用=>在parameters中的query`{key:value} => {key:%value%}`
|
|
|
+
|
|
|
+>位置:`naf-framework-mongoose>lib>service>crud-service`中
|
|
|
+
|
|
|
+`query`和`count`在`操作model前`加上下面的代码
|
|
|
+
|
|
|
> filter = this.turnFilter(filter);
|
|
|
|
|
|
-之后添加函数 turnFilter
|
|
|
->
|
|
|
+之后添加函数 `turnFilter`
|
|
|
+```
|
|
|
turnFilter(filter){
|
|
|
let str = /^%\w*%$/;
|
|
|
let keys = Object.keys(filter);
|
|
@@ -21,7 +26,35 @@ turnFilter(filter){
|
|
|
}
|
|
|
return filter;
|
|
|
}
|
|
|
+```
|
|
|
+添加日期范围查询
|
|
|
+>符号及使用=>在parameters中的query,`{key:value} => {'${key}@start/end':'${key}@start/end'}`
|
|
|
+
|
|
|
+>位置:`naf-framework-mongoose>lib>service>crud-service`中
|
|
|
+
|
|
|
+`query`和`count`在`操作model前`加上下面的代码
|
|
|
|
|
|
+> filter = this.turnDateRangeQuery(filter);
|
|
|
+
|
|
|
+之后添加函数 `turnDateRangeQuery`
|
|
|
+```
|
|
|
+turnDateRangeQuery(filter){
|
|
|
+ const keys = Object.keys(filter);
|
|
|
+ for (const k of keys) {
|
|
|
+ if (k.includes('@')) {
|
|
|
+ const karr = k.split('@');
|
|
|
+ // 因为是针对处理范围日期,所以必须只有,开始时间和结束时间
|
|
|
+ if (karr.length === 2) {
|
|
|
+ const type = karr[1];
|
|
|
+ if (type === 'start') filter[karr[0]] = { ...get(filter, karr[0], {}), $gte: filter[k] };
|
|
|
+ else filter[karr[0]] = { ...get(filter, karr[0], {}), $lte: filter[k] };
|
|
|
+ delete filter[k]
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return filter;
|
|
|
+ }
|
|
|
+```
|
|
|
## QuickStart
|
|
|
|
|
|
<!-- add docs here for user -->
|