| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- package com.uas.erp.database.service;
- import com.uas.erp.database.domain.Master;
- import com.uas.erp.database.domain.MasterView;
- import com.uas.erp.database.entity.DBA;
- import org.springframework.beans.factory.InitializingBean;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.util.CollectionUtils;
- import java.util.LinkedHashSet;
- import java.util.List;
- import java.util.Set;
- import java.util.concurrent.ConcurrentSkipListSet;
- /**
- * Created by Pro1 on 2017/7/27.
- */
- @Service
- public class MasterService implements InitializingBean{
- @Autowired
- private DBAService dbaService;
- private Set<Master> masters;
- /**
- * 查找全部账套
- */
- public void scanAll() {
- masters = new ConcurrentSkipListSet<>();
- List<DBA> dbas = dbaService.findAll();
- if (!CollectionUtils.isEmpty(dbas)) {
- for (DBA dba : dbas) {
- masters.addAll(dbaService.getMasters(dba));
- }
- }
- }
- @Override
- public void afterPropertiesSet() throws Exception {
- this.scanAll();
- }
- public Set<Master> findAll(boolean cloudEnabled) {
- if (!cloudEnabled) {
- return masters;
- }
- Set<Master> cloudMasters = new LinkedHashSet<>();
- for (Master master : masters) {
- if (master.isCloudEnabled()) {
- cloudMasters.add(master);
- }
- }
- return cloudMasters;
- }
- public Set<MasterView> findAllView(boolean cloudEnabled) {
- Set<MasterView> views = new LinkedHashSet<>();
- Set<Master> thisMasters = findAll(cloudEnabled);
- for (Master master : thisMasters) {
- views.add(new MasterView(master));
- }
- return views;
- }
- public Master findOne(String qualifier) {
- for (Master master : masters) {
- if (master.qualifier().equals(qualifier)) {
- return master;
- }
- }
- return null;
- }
- }
|