11package com .javabaas .server .object .service ;
22
33import com .javabaas .server .admin .entity .*;
4- import com .javabaas .server .common .entity .SimpleError ;
5- import com .javabaas .server .object .dao .impl .mongo .MongoDao ;
6- import com .javabaas .server .object .entity .*;
7- import com .javabaas .server .object .entity .error .FieldRequiredError ;
8- import com .javabaas .server .object .entity .error .FieldTypeError ;
9- import com .javabaas .server .user .entity .BaasUser ;
104import com .javabaas .server .admin .service .ClazzService ;
115import com .javabaas .server .admin .service .FieldService ;
126import com .javabaas .server .admin .service .StatService ;
137import com .javabaas .server .common .entity .SimpleCode ;
8+ import com .javabaas .server .common .entity .SimpleError ;
149import com .javabaas .server .common .util .JSONUtil ;
1510import com .javabaas .server .file .entity .BaasFile ;
1611import com .javabaas .server .file .service .FileService ;
1712import com .javabaas .server .hook .service .HookService ;
1813import com .javabaas .server .object .dao .IDao ;
14+ import com .javabaas .server .object .dao .impl .mongo .MongoDao ;
15+ import com .javabaas .server .object .entity .*;
16+ import com .javabaas .server .object .entity .error .FieldRequiredError ;
17+ import com .javabaas .server .object .entity .error .FieldTypeError ;
18+ import com .javabaas .server .user .entity .BaasUser ;
1919import org .springframework .beans .factory .annotation .Autowired ;
2020import org .springframework .stereotype .Service ;
2121import org .springframework .util .StringUtils ;
@@ -158,7 +158,8 @@ public void update(String appId, String plat, String className, String id, BaasO
158158 hookService .afterUpdate (appId , className , object , currentUser );
159159 }
160160
161- public void increment (String appId , String plat , String className , String id , BaasObject object , BaasUser currentUser , boolean isMaster ) {
161+ public void increment (String appId , String plat , String className , String id , BaasObject object , BaasUser currentUser , boolean
162+ isMaster ) {
162163 //查询已经存在的对象
163164 BaasObject exist = getObject (appId , className , id , isMaster );
164165 if (exist == null ) {
@@ -205,7 +206,8 @@ public BaasObject get(String appId, String plat, String className, String id) {
205206 return get (appId , plat , className , id , null , null , true );
206207 }
207208
208- public BaasObject get (String appId , String plat , String className , String id , BaasInclude include , BaasUser currentUser , boolean isMaster ) {
209+ public BaasObject get (String appId , String plat , String className , String id , BaasInclude include , BaasUser currentUser , boolean
210+ isMaster ) {
209211 //判断id是否合法
210212 if (!isValidId (id )) {
211213 throw new SimpleError (SimpleCode .OBJECT_ID_ERROR );
@@ -225,6 +227,8 @@ public List<BaasObject> list(String appId, String plat, String className, BaasQu
225227 int limit , int skip , BaasUser currentUser , boolean isMaster ) {
226228 //上限不得超过1000
227229 limit = limit > 1000 ? 1000 : limit ;
230+ //limit必须为正数
231+ if (limit <= 0 ) limit = 100 ;
228232 //验证表级ACL
229233 verifyClazzAccess (appId , ClazzAclMethod .FIND , className , currentUser , isMaster );
230234 //查询条件
@@ -239,7 +243,7 @@ public List<BaasObject> list(String appId, String plat, String className, BaasQu
239243 if (resultMap == null ) {
240244 return result ;
241245 }
242- resultMap .values (). forEach ( result :: add );
246+ result . addAll ( resultMap .values ());
243247 //处理包含数据
244248 if (result .size () > 0 && include != null && include .getSubs ().size () > 0 ) {
245249 //获取包含数据
@@ -256,7 +260,8 @@ private void handleSubQuery(String appId, BaasUser user, boolean isMaster, BaasQ
256260 }
257261 }
258262
259- private boolean handleSub (String appId , BaasUser user , boolean isMaster , String field , Map <String , Object > parent , Map <String , Object > query ) {
263+ private boolean handleSub (String appId , BaasUser user , boolean isMaster , String field , Map <String , Object > parent , Map <String ,
264+ Object > query ) {
260265 boolean flag = false ;
261266 boolean sub = false ;
262267 Set <Map .Entry <String , Object >> entries = query .entrySet ();
@@ -293,7 +298,8 @@ private void replaceSub(String appId, BaasUser user, boolean isMaster, Map paren
293298 if (StringUtils .isEmpty (searchClass ) || !(searchClass instanceof String )) {
294299 throw new SimpleError (SimpleCode .OBJECT_SUB_QUERY_EMPTY_SEARCH_CLASS );
295300 }
296- Map <String , BaasObject > subs = getObjects (appId , (String ) searchClass , new BaasQuery ((Map ) where ), null , 1000 , null , user , isMaster );
301+ Map <String , BaasObject > subs = getObjects (appId , (String ) searchClass , new BaasQuery ((Map ) where ), null , 1000 , null , user ,
302+ isMaster );
297303 if (subs != null ) {
298304 //用查询结果$in替换$sub
299305 BaasList list = new BaasList ();
@@ -358,7 +364,8 @@ private void handleInclude(String appId, List<BaasObject> objects, BaasInclude i
358364 //查询对应的对象列表
359365 List <String > objectIds = ids .getIds (className );
360366 //被关联的对象
361- Map <String , BaasObject > subObjects = getObjects (appId , className , new BaasQuery ("_id" , new BaasObject ("$in" , objectIds )), user , isMaster );
367+ Map <String , BaasObject > subObjects = getObjects (appId , className , new BaasQuery ("_id" , new BaasObject ("$in" , objectIds )),
368+ user , isMaster );
362369 if (subObjects != null && subObjects .size () > 0 ) {
363370 //添加到对应对象
364371 for (BaasObject o : objects ) {
@@ -401,7 +408,8 @@ private Map<String, BaasObject> getObjects(String appId, String className, BaasQ
401408 return getObjects (appId , className , query , null , null , null , user , isMaster );
402409 }
403410
404- private Map <String , BaasObject > getObjects (String appId , String className , BaasQuery query , BaasSort sort , Integer limit , Integer skip , BaasUser user , boolean isMaster ) {
411+ private Map <String , BaasObject > getObjects (String appId , String className , BaasQuery query , BaasSort sort , Integer limit , Integer
412+ skip , BaasUser user , boolean isMaster ) {
405413 //排序条件
406414 if (sort == null ) {
407415 //默认排序为更新时间倒序
0 commit comments