コード例 #1
0
        public List <EPlan_FromDouBanTagUrls> InitPlanFromTagUrl(List <Secction_Tag> tagLists)
        {
            List <EPlan_FromDouBanTagUrls> result = new List <EPlan_FromDouBanTagUrls>();

            if (!_PlanFTURepository.IsExistPlan())
            {
                NLogUtil.InfoTxt("豆瓣计划写入到数据库");
                if (tagLists != null && tagLists.Count > 0)
                {
                    List <EDataSection> dsList = new List <EDataSection>();
                    // List<EPlan_FromDouBanTagUrls> planList = new List<EPlan_FromDouBanTagUrls>();

                    var allSection = _SectionDb.AllSection();
                    foreach (Secction_Tag st in tagLists)
                    {
                        ESection section = null;
                        try
                        {
                            section = allSection[st.sectionName];
                        }
                        catch
                        {
                            section = null;
                        }
                        foreach (var tag in st.TagList)
                        {
                            result.Add(PlanFTURepository.NewModelInstance(tag.Name, tag.Url));
                            if (section != null)
                            {
                                dsList.Add(DataSectionRepository.newModelInstance(section.Code, tag.Code));
                            }
                        }
                    }
                    var rAll = _Db.Ado.UseTran(async() =>
                    {
                        await _DataSectionDb.CoverNewSectionCodeAsync(dsList);
                        _PlanFTURepository.CoverPlans(GenCodeHelper.Plan_FromDouBanTagUrls, result);
                    });
                    if (rAll.IsSuccess)
                    {
                        NLogUtil.InfoTxt("【成功】豆瓣计划已在数据库初始化");
                    }
                    else
                    {
                        NLogUtil.ErrorTxt($"【失败】豆瓣计划:{rAll.ErrorMessage}");
                    }
                }
            }
            else
            {
                NLogUtil.InfoTxt("DouBan Plan 已经存在数据库中!");
                //DouBand Tag List 只能获取1000内的
                result = _PlanFTURepository.QueryPlan(GenCodeHelper.Plan_FromDouBanTagUrls);
            }
            return(result);
        }
コード例 #2
0
 public DouBanBookService(BookRepository bookRepository,
                          SectionRepository sectionRepository,
                          TagRepository tagRepository,
                          PersonRepository personRepository,
                          BookTagRepository bookTagRepository,
                          DataSectionRepository dataSectionRepository,
                          PlanFTURepository planFTURepository,
                          ISqlSugarClient sqlSugarClient)
 {
     _PersonDb          = personRepository;
     _BookDb            = bookRepository;
     _SectionDb         = sectionRepository;
     _TagDb             = tagRepository;
     _BookTagDb         = bookTagRepository;
     _DataSectionDb     = dataSectionRepository;
     _Db                = sqlSugarClient;
     _PlanFTURepository = planFTURepository;
 }