Commit 05a41670 authored by 赵啸非's avatar 赵啸非

添加批量新增窗口业务接口

parent d2f352eb
...@@ -99,15 +99,20 @@ public class BusinessServiceImpl extends AbstractCRUDServiceImpl<BusinessDao, Bu ...@@ -99,15 +99,20 @@ public class BusinessServiceImpl extends AbstractCRUDServiceImpl<BusinessDao, Bu
throw new AppException("请选择对应站点"); throw new AppException("请选择对应站点");
} }
List<Long> businessIdList = Arrays.asList(businessIds.split(",")).stream().map(Long::parseLong).collect(Collectors.toList()); List<Long> businessIdList = Arrays.asList(businessIds.split(",")).stream().map(Long::parseLong).collect(Collectors.toList());
//先删除后再新增
SiteBusinessQuery siteBusinessQuery = new SiteBusinessQuery();
siteBusinessQuery.setSiteId(siteId);
siteBusinessQuery.setBusinessIdList(businessIdList);
Long[] ids = siteBusinessService.find(siteBusinessQuery, context).stream().map(item -> item.getId()).toArray(Long[]::new);
if (!ObjectUtils.isEmpty(ids)) {
siteBusinessService.remove(ids, context);
}
BusinessQuery businessQuery = new BusinessQuery(); BusinessQuery businessQuery = new BusinessQuery();
businessQuery.setIdList(businessIdList); businessQuery.setIdList(businessIdList);
this.find(businessQuery).stream() this.find(businessQuery).stream()
.map(item -> {
//更新或新增
updateOrSave(item, siteId, context);
return item;
})
.flatMap(item -> this.find(new BusinessQuery().parentId(item.getId())).stream())
.peek(item -> { .peek(item -> {
//更新或新增 //更新或新增
updateOrSave(item, siteId, context); updateOrSave(item, siteId, context);
...@@ -115,44 +120,35 @@ public class BusinessServiceImpl extends AbstractCRUDServiceImpl<BusinessDao, Bu ...@@ -115,44 +120,35 @@ public class BusinessServiceImpl extends AbstractCRUDServiceImpl<BusinessDao, Bu
} }
private void updateOrSave(BusinessEntity item, Long siteId, Context context) { private void updateOrSave(BusinessEntity item, Long siteId, Context context) {
SiteBusinessEntity siteBusinessEntity = siteBusinessService.selectOne(new SiteBusinessQuery().siteId(siteId).businessId(item.getId()));
//SiteBusinessEntity siteBusinessEntity = collect.get(item.getId()); SiteBusinessEntity siteBusinessEntity = new SiteBusinessEntity();
if (!ObjectUtils.isEmpty(siteBusinessEntity)) { BeanUtils.copyProperties(item, siteBusinessEntity, BeanUtil.getNullPropertyNames(item));
SiteEntity siteEntity = siteService.get(siteId);
BeanUtils.copyProperties(item, siteBusinessEntity, new String[]{"id"}); siteBusinessEntity.setSiteId(siteEntity.getId());
siteBusinessEntity.setSiteName(siteEntity.getSiteName());
siteBusinessEntity.setBusinessName(item.getName()); siteBusinessEntity.setBusinessId(item.getId());
siteBusinessEntity.setUpdateTime(new Date()); siteBusinessEntity.setBusinessName(item.getName());
siteBusinessService.update(siteBusinessEntity, context); siteBusinessEntity.setId(null);
} else { siteBusinessEntity.setCreateUserId(context == null ? 1L : context.getUser() == null ? 1L : context.getUser().getId());
siteBusinessEntity = new SiteBusinessEntity(); siteBusinessEntity.setCreateTime(new Date());
BeanUtils.copyProperties(item, siteBusinessEntity, BeanUtil.getNullPropertyNames(item));
SiteEntity siteEntity = siteService.get(siteId); if (siteBusinessEntity.getIsBusiness() == IsBusinessEnum.二级业务.getValue() && !ObjectUtils.isEmpty(siteBusinessEntity.getParentId())) {
siteBusinessEntity.setSiteId(siteEntity.getId()); SiteBusinessEntity tempSiteBusinessEntity = siteBusinessService.selectOne(new SiteBusinessQuery().siteId(siteEntity.getId()).businessId(siteBusinessEntity.getParentId()));
siteBusinessEntity.setSiteName(siteEntity.getSiteName()); if (ObjectUtils.isEmpty(tempSiteBusinessEntity)) {
siteBusinessEntity.setBusinessId(item.getId()); BusinessEntity parentBusinessEntity = this.get(siteBusinessEntity.getParentId(), context);
siteBusinessEntity.setBusinessName(item.getName()); SiteBusinessEntity parentSiteBusinessEntity = new SiteBusinessEntity();
siteBusinessEntity.setId(null); BeanUtils.copyProperties(parentBusinessEntity, parentSiteBusinessEntity, BeanUtil.getNullPropertyNames(item));
siteBusinessEntity.setCreateUserId(context==null?1L:context.getUser()==null?1L:context.getUser().getId()); parentSiteBusinessEntity.setSiteId(siteEntity.getId());
siteBusinessEntity.setCreateTime(new Date()); parentSiteBusinessEntity.setSiteName(siteEntity.getSiteName());
parentSiteBusinessEntity.setBusinessId(parentBusinessEntity.getId());
if (siteBusinessEntity.getIsBusiness() == IsBusinessEnum.二级业务.getValue() && !ObjectUtils.isEmpty(siteBusinessEntity.getParentId())) { parentSiteBusinessEntity.setBusinessName(parentBusinessEntity.getName());
SiteBusinessEntity tempSiteBusinessEntity = siteBusinessService.selectOne(new SiteBusinessQuery().siteId(siteEntity.getId()).businessId(siteBusinessEntity.getParentId())); parentSiteBusinessEntity.setId(null);
if (ObjectUtils.isEmpty(tempSiteBusinessEntity)) { parentSiteBusinessEntity.setCreateUserId(context == null ? 1L : context.getUser() == null ? 1L : context.getUser().getId());
BusinessEntity parentBusinessEntity = this.get(siteBusinessEntity.getParentId(), context); parentSiteBusinessEntity.setCreateTime(new Date());
SiteBusinessEntity parentSiteBusinessEntity = new SiteBusinessEntity(); siteBusinessService.save(parentSiteBusinessEntity, context);
BeanUtils.copyProperties(parentBusinessEntity, parentSiteBusinessEntity, BeanUtil.getNullPropertyNames(item));
parentSiteBusinessEntity.setSiteId(siteEntity.getId());
parentSiteBusinessEntity.setSiteName(siteEntity.getSiteName());
parentSiteBusinessEntity.setBusinessId(parentBusinessEntity.getId());
parentSiteBusinessEntity.setBusinessName(parentBusinessEntity.getName());
parentSiteBusinessEntity.setId(null);
parentSiteBusinessEntity.setCreateUserId(context==null?1L:context.getUser()==null?1L:context.getUser().getId());
parentSiteBusinessEntity.setCreateTime(new Date());
siteBusinessService.save(parentSiteBusinessEntity, context);
}
} }
siteBusinessService.save(siteBusinessEntity, context);
} }
siteBusinessService.save(siteBusinessEntity, context);
} }
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment