2727
2828import java .util .Date ;
2929import java .util .HashMap ;
30- import java .util .HashSet ;
3130import java .util .List ;
3231import java .util .Map ;
33- import java .util .Set ;
3432
3533import org .apache .commons .lang3 .StringUtils ;
3634import org .slf4j .Logger ;
5048import com .baidu .brcc .domain .ConfigGroup ;
5149import com .baidu .brcc .domain .ConfigItem ;
5250import com .baidu .brcc .domain .ConfigItemExample ;
53- import com .baidu .brcc .domain .Environment ;
54- import com .baidu .brcc .domain .Product ;
55- import com .baidu .brcc .domain .Project ;
5651import com .baidu .brcc .domain .User ;
57- import com .baidu .brcc .domain .Version ;
5852import com .baidu .brcc .domain .base .Pagination ;
5953import com .baidu .brcc .domain .base .R ;
6054import com .baidu .brcc .domain .em .Deleted ;
61- import com .baidu .brcc .domain .meta .MetaConfigGroup ;
6255import com .baidu .brcc .domain .meta .MetaConfigItem ;
63- import com .baidu .brcc .domain .meta .MetaEnvironment ;
64- import com .baidu .brcc .domain .meta .MetaProduct ;
65- import com .baidu .brcc .domain .meta .MetaProject ;
66- import com .baidu .brcc .domain .meta .MetaVersion ;
6756import com .baidu .brcc .domain .vo .BatchConfigItemReq ;
6857import com .baidu .brcc .domain .vo .ConfigItemForGroupVo ;
6958import com .baidu .brcc .domain .vo .ConfigItemReq ;
7463import com .baidu .brcc .service .EnvironmentService ;
7564import com .baidu .brcc .service .EnvironmentUserService ;
7665import com .baidu .brcc .service .ProductService ;
66+ import com .baidu .brcc .service .ProductUserService ;
7767import com .baidu .brcc .service .ProjectService ;
68+ import com .baidu .brcc .service .ProjectUserService ;
7869import com .baidu .brcc .service .RccCache ;
7970import com .baidu .brcc .service .VersionService ;
8071import com .baidu .brcc .utils .time .DateTimeUtils ;
@@ -118,6 +109,12 @@ public class ConfigItemController {
118109 @ Autowired
119110 private RccCache rccCache ;
120111
112+ @ Autowired
113+ private ProductUserService productUserService ;
114+
115+ @ Autowired
116+ private ProjectUserService projectUserService ;
117+
121118 /**
122119 * 新增或修改配置
123120 *
@@ -354,8 +351,10 @@ public R delete(@PathVariable("itemId") Long itemId, @LoginUser User user) {
354351
355352 /**
356353 * 根据分组查询配置
354+ *
357355 * @param groupId
358356 * @param user
357+ *
359358 * @return
360359 */
361360 @ GetMapping ("list" )
@@ -401,13 +400,15 @@ public R<List<ConfigItemForGroupVo>> listByGroup(@RequestParam("groupId") Long g
401400
402401 /**
403402 * 配置检索,支持key, value模糊匹配查询
403+ *
404404 * @param productId
405405 * @param projectId
406406 * @param key
407407 * @param val
408408 * @param pageNo
409409 * @param pageSize
410410 * @param user
411+ *
411412 * @return
412413 */
413414 @ GetMapping ("query" )
@@ -427,107 +428,8 @@ public R<Pagination<ConfigItemVo>> query(
427428 return R .error (CONFIG_KEY_VALUE_NOT_EXISTS_STATUS , CONFIG_KEY_VALUE_NOT_EXISTS_MSG );
428429 }
429430 int offset = (pageNo - 1 ) * pageSize ;
430- Set <Long > groupIds = new HashSet <>();
431- Set <Long > versionIds = new HashSet <>();
432- Set <Long > environmentIds = new HashSet <>();
433- Set <Long > projectIds = new HashSet <>();
434- Set <Long > productIds = new HashSet <>();
435- Pagination <ConfigItemVo > pagination = configItemService .pagination (ConfigItemExample .newBuilder ()
436- .orderByClause (MetaConfigItem .COLUMN_NAME_VERSIONID )
437- .start (offset )
438- .limit (pageSize )
439- .build ()
440- .createCriteria ()
441- .andDeletedEqualTo (Deleted .OK .getValue ())
442- .andProductIdEqualTo (productId , productId != null && productId > 0 )
443- .andProjectIdEqualTo (projectId , projectId != null && projectId > 0 )
444- .andNameLikeBoth (key , isNotBlank (key ))
445- .andValLikeBoth (val , isNotBlank (val ))
446- .toExample (),
447- item -> {
448- ConfigItemVo vo = new ConfigItemVo ();
449- Long groupId = item .getGroupId ();
450- groupIds .add (groupId );
451- Long versionId = item .getVersionId ();
452- versionIds .add (versionId );
453- Long environmentId = item .getEnvironmentId ();
454- environmentIds .add (environmentId );
455- Long _projectId = item .getProjectId ();
456- projectIds .add (_projectId );
457- Long _productId = item .getProductId ();
458- productIds .add (_productId );
459- vo .setId (item .getId ());
460- vo .setGroupId (groupId );
461- vo .setVersionId (versionId );
462- vo .setEnvironmentId (environmentId );
463- vo .setProjectId (_projectId );
464- vo .setProductId (_productId );
465- vo .setName (item .getName ());
466- vo .setMemo (item .getMemo ());
467- vo .setVal (item .getVal ());
468- return vo ;
469- }
470- );
471-
472- if (pagination != null && !CollectionUtils .isEmpty (pagination .getDataList ())) {
473- Map <Long , Product > productMap = productService .selectMapByPrimaryKeys (
474- productIds ,
475- Product :: getId ,
476- MetaProduct .COLUMN_NAME_ID ,
477- MetaProduct .COLUMN_NAME_NAME
478- );
479-
480- Map <Long , Project > projectMap = projectService .selectMapByPrimaryKeys (
481- projectIds ,
482- Project :: getId ,
483- MetaProject .COLUMN_NAME_ID ,
484- MetaProject .COLUMN_NAME_NAME
485- );
486-
487- Map <Long , Environment > environmentMap = environmentService .selectMapByPrimaryKeys (
488- environmentIds ,
489- Environment :: getId ,
490- MetaEnvironment .COLUMN_NAME_ID ,
491- MetaEnvironment .COLUMN_NAME_NAME
492- );
493-
494- Map <Long , Version > versionMap = versionService .selectMapByPrimaryKeys (
495- versionIds ,
496- Version :: getId ,
497- MetaVersion .COLUMN_NAME_ID ,
498- MetaVersion .COLUMN_NAME_NAME
499- );
500-
501- Map <Long , ConfigGroup > groupMap = configGroupService .selectMapByPrimaryKeys (
502- groupIds ,
503- ConfigGroup :: getId ,
504- MetaConfigGroup .COLUMN_NAME_ID ,
505- MetaConfigGroup .COLUMN_NAME_NAME
506- );
507-
508- pagination .each (item -> {
509- Long groupId = item .getGroupId ();
510- Long versionId = item .getVersionId ();
511- Long environmentId = item .getEnvironmentId ();
512- Long _projectId = item .getProjectId ();
513- Long _productId = item .getProductId ();
514- if (groupMap != null && groupMap .get (groupId ) != null ) {
515- item .setGroupName (groupMap .get (groupId ).getName ());
516- }
517- if (versionMap != null && versionMap .get (versionId ) != null ) {
518- item .setVersionName (versionMap .get (versionId ).getName ());
519- }
520- if (environmentMap != null && environmentMap .get (environmentId ) != null ) {
521- item .setEnvironmentName (environmentMap .get (environmentId ).getName ());
522- }
523- if (projectMap != null && projectMap .get (_projectId ) != null ) {
524- item .setProjectName (projectMap .get (_projectId ).getName ());
525- }
526- if (productMap != null && productMap .get (_productId ) != null ) {
527- item .setProductName (productMap .get (_productId ).getName ());
528- }
529- });
530- }
431+ Pagination <ConfigItemVo > pagination =
432+ configItemService .pagination (offset , pageSize , productId , projectId , key , val , user );
531433 return R .ok (pagination );
532434 }
533435
0 commit comments