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

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

parent d2f352eb
......@@ -99,15 +99,20 @@ public class BusinessServiceImpl extends AbstractCRUDServiceImpl<BusinessDao, Bu
throw new AppException("请选择对应站点");
}
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.setIdList(businessIdList);
this.find(businessQuery).stream()
.map(item -> {
//更新或新增
updateOrSave(item, siteId, context);
return item;
})
.flatMap(item -> this.find(new BusinessQuery().parentId(item.getId())).stream())
.peek(item -> {
//更新或新增
updateOrSave(item, siteId, context);
......@@ -115,44 +120,35 @@ public class BusinessServiceImpl extends AbstractCRUDServiceImpl<BusinessDao, Bu
}
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());
if (!ObjectUtils.isEmpty(siteBusinessEntity)) {
BeanUtils.copyProperties(item, siteBusinessEntity, new String[]{"id"});
siteBusinessEntity.setBusinessName(item.getName());
siteBusinessEntity.setUpdateTime(new Date());
siteBusinessService.update(siteBusinessEntity, context);
} else {
siteBusinessEntity = new SiteBusinessEntity();
BeanUtils.copyProperties(item, siteBusinessEntity, BeanUtil.getNullPropertyNames(item));
SiteEntity siteEntity = siteService.get(siteId);
siteBusinessEntity.setSiteId(siteEntity.getId());
siteBusinessEntity.setSiteName(siteEntity.getSiteName());
siteBusinessEntity.setBusinessId(item.getId());
siteBusinessEntity.setBusinessName(item.getName());
siteBusinessEntity.setId(null);
siteBusinessEntity.setCreateUserId(context==null?1L:context.getUser()==null?1L:context.getUser().getId());
siteBusinessEntity.setCreateTime(new Date());
if (siteBusinessEntity.getIsBusiness() == IsBusinessEnum.二级业务.getValue() && !ObjectUtils.isEmpty(siteBusinessEntity.getParentId())) {
SiteBusinessEntity tempSiteBusinessEntity = siteBusinessService.selectOne(new SiteBusinessQuery().siteId(siteEntity.getId()).businessId(siteBusinessEntity.getParentId()));
if (ObjectUtils.isEmpty(tempSiteBusinessEntity)) {
BusinessEntity parentBusinessEntity = this.get(siteBusinessEntity.getParentId(), context);
SiteBusinessEntity parentSiteBusinessEntity = new SiteBusinessEntity();
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);
}
SiteBusinessEntity siteBusinessEntity = new SiteBusinessEntity();
BeanUtils.copyProperties(item, siteBusinessEntity, BeanUtil.getNullPropertyNames(item));
SiteEntity siteEntity = siteService.get(siteId);
siteBusinessEntity.setSiteId(siteEntity.getId());
siteBusinessEntity.setSiteName(siteEntity.getSiteName());
siteBusinessEntity.setBusinessId(item.getId());
siteBusinessEntity.setBusinessName(item.getName());
siteBusinessEntity.setId(null);
siteBusinessEntity.setCreateUserId(context == null ? 1L : context.getUser() == null ? 1L : context.getUser().getId());
siteBusinessEntity.setCreateTime(new Date());
if (siteBusinessEntity.getIsBusiness() == IsBusinessEnum.二级业务.getValue() && !ObjectUtils.isEmpty(siteBusinessEntity.getParentId())) {
SiteBusinessEntity tempSiteBusinessEntity = siteBusinessService.selectOne(new SiteBusinessQuery().siteId(siteEntity.getId()).businessId(siteBusinessEntity.getParentId()));
if (ObjectUtils.isEmpty(tempSiteBusinessEntity)) {
BusinessEntity parentBusinessEntity = this.get(siteBusinessEntity.getParentId(), context);
SiteBusinessEntity parentSiteBusinessEntity = new SiteBusinessEntity();
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