lyf666 2017-02-20 14:13:12 +08:00
parent 25c13799c2
commit 096d98bee7
3 changed files with 9 additions and 20 deletions

View File

@ -84,7 +84,7 @@
<dependency> <dependency>
<groupId>cn.cloudowr</groupId> <groupId>cn.cloudowr</groupId>
<artifactId>sdk</artifactId> <artifactId>sdk</artifactId>
<version>1.2.3</version> <version>1.2.4</version>
</dependency> </dependency>
</dependencies> </dependencies>
</project> </project>

View File

@ -1,7 +1,7 @@
package cn.cloudowr.dict; package cn.cloudowr.dict;
import cn.cloudowr.sdk.FastJSONUtil; import cn.cloudowr.sdk.FastJSONUtil;
import cn.cloudowr.sdk.IdInterceptor; import cn.cloudowr.sdk.jfinal.IdInterceptor;
import cn.cloudowr.sdk.jfinal.RestfulStyle; import cn.cloudowr.sdk.jfinal.RestfulStyle;
import com.jfinal.aop.Before; import com.jfinal.aop.Before;
import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoCollection;
@ -85,28 +85,20 @@ public class Controller extends cn.cloudowr.sdk.jfinal.Controller implements Res
return; return;
} }
Document filterDoc = document.get("filter", Document.class);
List<Bson> filterOps = new ArrayList<>();
filterDoc.forEach((key, value) -> {
if ("id".equals(key) || "_id".equals(key)) return;
filterOps.add(Filters.eq(key, value));
});
Document updateDoc = document.get("update", Document.class);
List<Bson> updateOps = new ArrayList<>(); List<Bson> updateOps = new ArrayList<>();
Document $set = updateDoc.get("$set", Document.class); Document $set = document.get("$set", Document.class);
if ($set != null) { if ($set != null) {
$set.forEach((key, value) -> { $set.forEach((key, value) -> {
updateOps.add(Updates.set(key, value)); updateOps.add(Updates.set(key, value));
}); });
} }
List $unset = updateDoc.get("$unset", List.class); List $unset = document.get("$unset", List.class);
if ($unset != null) { if ($unset != null) {
for (Object o : $unset) { for (Object o : $unset) {
updateOps.add(Updates.unset(o.toString())); updateOps.add(Updates.unset(o.toString()));
} }
} }
Document $rename = updateDoc.get("$rename", Document.class); Document $rename = document.get("$rename", Document.class);
if ($rename != null) { if ($rename != null) {
$rename.forEach((oldKey, newKey) -> { $rename.forEach((oldKey, newKey) -> {
updateOps.add(Updates.rename(oldKey, newKey.toString())); updateOps.add(Updates.rename(oldKey, newKey.toString()));

View File

@ -13,12 +13,9 @@ save (json required) {
} }
update (id required, json required) { update (id required, json required) {
json { json {
filter: {k:v...}, $set: {k,v...},
update: { $unset: [k1,k2...],
$set: {k,v...}, $rename: {k,newK...}
$unset: [k1,k2...],
$rename: {k,newK...}
}
} }
return {result : true or false} return {result : true or false}
} }