using System; using System.Collections.Generic; using System.Configuration; using System.Diagnostics; using System.Linq; using System.Threading.Tasks; using CommonHelper; using RiskControl.NewService.Entity.TycDbEntity; using RiskControl.NewService.Extension; using RiskControl.NewService.QiChaCha; using RiskControl.NewService.QiChaCha.TycEntity; using SqlSugar; namespace RiskControl.NewService.Service { /// /// 天眼查 /// public class TianYanChaService : DbContext { private TianYanChaApi _api = new TianYanChaApi(); private int _expiredDays; private int _expiredDays2; private int _expiredDaysSeniorExecutive = 30;//天眼查获取董监高默认30天 private int _expiredDaysSlow = 180;//天眼查获取其他信息180天 public TianYanChaService() { //if (!int.TryParse(ConfigurationManager.AppSettings["TianyanchaExpiredDays"], out _expiredDays)) // _expiredDays = 10; int.TryParse(ConfigurationManager.AppSettings["TianyanchaExpiredDays"], out _expiredDays); int.TryParse(ConfigurationManager.AppSettings["TianyanchaExpiredDays2"], out _expiredDays2); } /// /// 质押明细列表 /// /// 公司名称 /// public async Task GetStockPledgeList(string name, int pageIndex, int pageSize) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name) .OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize) .OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetStockPledgeList(new StockPledgeListQuery() { name = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; var dbmodel = item.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.ItemIndex = (pageIndex - 1) * pageSize + i + 1; dbmodel.TotalItems = qccResult.Result.total; addList.Add(dbmodel); } // 如果使用缓存,则插入数据库 if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 质押明细(配合GetStockPledgeList) /// /// 内部id(businessId) /// 公司id /// public async Task GetStockPledgeDetail(string businessId, string companyId) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.BusinessId == businessId).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.BusinessId == businessId).FirstAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.BusinessId == businessId).ExecuteCommandAsync(); } var qccResult = _api.GetStockPledgeDetail(new StockPledgeDetailQuery() { businessId = businessId, id = companyId }); if (qccResult.Error_code == "0") { var dbmodel = qccResult.Result.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = dbmodel.PledgeIns; //dbmodel.BusinessId = id; if (_expiredDays > 0) await RiskControlRRDb.Insertable(dbmodel).ExecuteCommandAsync(); result.Data = dbmodel; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 知识产权出质 /// /// 公司名称 /// public async Task GetPledgeReg(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name) .OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize) .OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetPledgeReg(new PledgeRegQuery() { name = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; var dbmodel = item.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.ItemIndex = (pageIndex - 1) * pageSize + i + 1; dbmodel.TotalItems = qccResult.Result.total; addList.Add(dbmodel); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 限制消费令 /// /// 公司名称 /// public async Task GetConsumptionRestriction(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name) .OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize) .OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetConsumptionRestriction(new ConsumptionRestrictionQuery() { name = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; var dbmodel = item.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.ItemIndex = (pageIndex - 1) * pageSize + i + 1; dbmodel.TotalItems = qccResult.Result.total; addList.Add(dbmodel); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 知识产权出质 /// /// 公司名称 /// public async Task GetEndCase(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name) .OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize) .OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetEndCase(new EndCaseQuery() { name = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; var dbmodel = item.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.ItemIndex = (pageIndex - 1) * pageSize + i + 1; dbmodel.TotalItems = qccResult.Result.total; addList.Add(dbmodel); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 微信公众号 /// /// 公司名称 /// public async Task GetPublicWeChat(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDaysSlow > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDaysSlow) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name) .OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize) .OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetPublicWeChat(new PublicWeChatQuery() { name = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; var dbmodel = item.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.ItemIndex = (pageIndex - 1) * pageSize + i + 1; dbmodel.TotalItems = qccResult.Result.total; addList.Add(dbmodel); } if (_expiredDaysSlow > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 股本结构 /// /// 公司 /// public async Task GetShareStructure(string name) { var result = new QccMsgData(); if (_expiredDaysSlow > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDaysSlow) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a=>a.PubDate, OrderByType.Desc).ToListAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetShareStructure(new ShareStructureQuery() { name = name}); if (qccResult.Error_code == "0") { // 2.1 当前返回结果的股本信息 var addList = new List(); for (var i = 0; i < qccResult.Result.dataList.Count; i++) { var item = qccResult.Result.dataList[i]; var dbmodel = item.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; addList.Add(dbmodel); } // 2.2 查询其他时间节点的股本信息,第一条就是2.1查询所得 for (var tIndex = 1; tIndex < qccResult.Result.timeList.Count; tIndex++) { var time = qccResult.Result.timeList[tIndex]; var qccResult2 = _api.GetShareStructure(new ShareStructureQuery() {name = name,time = time}); for (var i = 0; i < qccResult2.Result.dataList.Count; i++) { var item = qccResult2.Result.dataList[i]; var dbmodel = item.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; addList.Add(dbmodel); } } if (_expiredDaysSlow > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); result.Data = addList.OrderByDescending(a => a.PubDate).ToList(); ; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 司法协助 /// /// 公司名称 /// public async Task GetJudicialList(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name) .OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize) .OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetJudicialList(new JudicialListQuery() { name = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; var dbmodel = item.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.ItemIndex = (pageIndex - 1) * pageSize + i + 1; dbmodel.TotalItems = qccResult.Result.total; addList.Add(dbmodel); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 司法协助详情 /// /// 司法协助id(assistanceId) /// public async Task GetJudicialDetail(string assistanceId) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.AssistanceId == assistanceId).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.AssistanceId == assistanceId).FirstAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.AssistanceId == assistanceId).ExecuteCommandAsync(); } var qccResult = _api.GetJudicialDetail(new JudicialDetailQuery() { assistanceId = assistanceId }); if (qccResult.Error_code == "0") { var dbmodel = new TycJudicialDetail(); dbmodel.CreateTime = DateTime.Now; //dbmodel.CompanyName = dbmodel.PledgeIns; dbmodel.AssistanceId = assistanceId; dbmodel.ResultData = qccResult.Result.ToJson(); if (_expiredDays > 0) await RiskControlRRDb.Insertable(dbmodel).ExecuteCommandAsync(); result.Data = dbmodel; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 股东信息 /// /// 公司名称 /// public async Task GetHolderList(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDaysSlow > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDaysSlow) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name) .OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize) .OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetHolderList(new HolderQuery() { name = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; var dbmodel = item.MapTo(); dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.ItemIndex = (pageIndex - 1) * pageSize + i + 1; dbmodel.TotalItems = qccResult.Result.total; addList.Add(dbmodel); } if (_expiredDaysSlow > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 企业年报 /// /// 公司名称 /// public async Task GetTycAnnualreportList(string name, int pageIndex = 1, int pageSize = 100) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name) .OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize) .OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetAnnualreport(new TycAnnualreportQuery() { keyword = name}); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; var dbmodel = item.MapTo(); dbmodel.ReportYear = item.BaseInfo.ReportYear; dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.ItemIndex = (pageIndex - 1) * pageSize + i + 1; dbmodel.TotalItems = qccResult.Result.total; addList.Add(dbmodel); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 高管信息 /// /// 公司名称 /// public async Task GetSeniorExecutive(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDaysSlow > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDaysSlow) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name) .OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize) .OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetSeniorExecutive(new TycSeniorExecutiveQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDaysSlow > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 资产负债表 /// /// 公司 /// public async Task GetBalanceSheet(string name,string year) { var result = new QccMsgData(); if (_expiredDays > 0 && year!=null) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name&&a.year==year).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name && a.year == year).ToListAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name && a.year == year).ExecuteCommandAsync(); } var qccResult = _api.GetBalanceSheet(new TycBalanceSheetQuery() { keyword = name,year = year}); if (qccResult.Error_code == "0") { var dblist = qccResult.Result.corpBalanceSheet; dblist.ForEach(dbmodel=> { dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.year = year; dbmodel.corpFinancialYears = qccResult.Result.corpFinancialYears; }); if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 现金流量表 /// /// 公司 /// public async Task GetCashFlow(string name, string year) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name && a.year == year).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name && a.year == year).ToListAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name && a.year == year).ExecuteCommandAsync(); } var qccResult = _api.GetCashFlow(new TycCashFlowQuery() { keyword = name, year = year }); if (qccResult.Error_code == "0") { var dblist = qccResult.Result.corpCashFlow; dblist.ForEach(dbmodel => { dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.year = year; dbmodel.corpFinancialYears = qccResult.Result.corpFinancialYears; }); if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 利润表 /// /// 公司 /// public async Task GetProfit(string name, string year) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name && a.year == year).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name && a.year == year).ToListAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name && a.year == year).ExecuteCommandAsync(); } var qccResult = _api.GetProfit(new TycProfitQuery() { keyword = name, year = year }); if (qccResult.Error_code == "0") { var dblist = qccResult.Result.corpProfit; dblist.ForEach(dbmodel => { dbmodel.CreateTime = DateTime.Now; dbmodel.CompanyName = name; dbmodel.year = year; dbmodel.corpFinancialYears = qccResult.Result.corpFinancialYears; }); if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 历史主要人员 /// /// public async Task GetMembers(string name) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).ToListAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetMembers(new TycMembersQuery() { keyword = name }); if (qccResult.Error_code == "0") { var r = qccResult.Result; r.CreateTime = DateTime.Now; r.CompanyName = name; if (_expiredDays > 0) await RiskControlRRDb.Insertable(r).ExecuteCommandAsync(); result.Data = r; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 历史经营异常 /// /// public async Task GetAbnormal(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.DBCreateTime, OrderByType.Desc).Select(a => a.DBCreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.DBCreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetAbnormal(new TycAbnormalQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.DBCreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 历史网站备案 /// /// public async Task GetIcp(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetIcp(new TycIcpQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 历史司法协助 /// /// public async Task GetLsJudicial(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetLsJudicial(new TycLsJudicialQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 历史司法协助详情 /// /// public async Task GetLsJudicialDetail(string id) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.Id == id).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.Id == id).FirstAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.Id == id).ExecuteCommandAsync(); } var qccResult = _api.GetLsJudicialDetail(new TycLsJudicialDetailQuery() {businessId = id}); if (qccResult.Error_code == "0") { var dblist = qccResult.Result; dblist.CreateTime = DateTime.Now; dblist.Id = id; if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 税务评级 /// /// public async Task GetTaxCredit(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDaysSlow > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDaysSlow) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetTaxCredit(new TycTaxCreditQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDaysSlow > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 双随机抽查 /// /// public async Task GetDoubleRandomCheck(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDaysSlow > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDaysSlow) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetDoubleRandomCheck(new TycDoubleRandomCheckQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDaysSlow > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 一般纳税人 /// /// public async Task GetTaxpayer(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetTaxpayer(new TycTaxpayerQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 双随机抽查详情 /// /// public async Task GetDoubleRandomCheckDetail(string id, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDaysSlow > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.businessId == id).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDaysSlow) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.businessId == id).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.businessId == id).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.businessId == id).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.businessId == id).ExecuteCommandAsync(); } var qccResult = _api.GetDoubleRandomCheckDetail(new TycDoubleRandomCheckDetailQuery() { businessId = id, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.businessId = id; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDaysSlow > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 企业基本信息 /// /// public async Task GetBaseinfoV3(string name) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).FirstAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetBaseinfoV3(new TycMembersQuery() { keyword = name }); if (qccResult.Error_code == "0") { var r = qccResult.Result; r.CreateTime = DateTime.Now; r.CompanyName = name; if (_expiredDays > 0) await RiskControlRRDb.Insertable(r).ExecuteCommandAsync(); result.Data = r; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 搜索 /// /// public async Task GetSearch2(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetSearch2(new TycSearch2Query() { word = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 送达公告 /// /// public async Task GetSendAnnouncement(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetSendAnnouncement(new TycSendAnnouncementQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 立案信息 /// /// public async Task GetCourtRegister(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetCourtRegister(new TycCourtRegisterQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 开庭公告 /// /// public async Task GetKtannouncement(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetKtannouncement(new TycKtannouncementQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 历史开庭公告 /// /// public async Task GetAnnouncement(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetAnnouncement(new TycAnnouncementQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 法院公告 /// /// public async Task GetCourtAnnouncement(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetCourtAnnouncement(new TycCourtAnnouncementQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 历史法院公告 /// /// public async Task GetHiCourt(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetHiCourt(new TycHiCourtQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 法律诉讼 /// /// public async Task GetJrLawSuit(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetJrLawSuit(new TycJrLawSuitQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetJrLawSuitDetail(string uuid) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.uuid == uuid).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.uuid == uuid).FirstAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.uuid == uuid).ExecuteCommandAsync(); } var qccResult = _api.GetJrLawSuitDetail(new TycJrLawSuitDetailQuery() { uuid = uuid }); if (qccResult.Error_code == "0") { var dblist = qccResult.Result; dblist.CreateTime = DateTime.Now; if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetHiJudicialDetail(string businessId) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.businessId == businessId).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.businessId == businessId).FirstAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.businessId == businessId).ExecuteCommandAsync(); } var qccResult = _api.GetHiJudicialDetail(new TycHiJudicialDetailQuery() { businessId = businessId }); if (qccResult.Error_code == "0") { var dblist = qccResult.Result; dblist.CreateTime = DateTime.Now; dblist.businessId = businessId; if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } /// /// 历史法律诉讼 /// /// public async Task GetHiLawSuit(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetHiLawSuit(new TycHiLawSuitQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetJudicial(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetJudicial(new TycJudicialQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetHiJudicial(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetHiJudicial(new TycHiJudicialQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetJrBankruptcy(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetJrBankruptcy(new TycJrBankruptcyQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; item.gid = qccResult.Result.gid; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetJrBankruptcyDetail(string gid,string uuid) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.gid == gid && a.uuid == uuid).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.gid == gid && a.uuid == uuid).FirstAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.gid == gid && a.uuid == uuid).ExecuteCommandAsync(); } var qccResult = _api.GetJrBankruptcyDetail(new TycJrBankruptcyDetailQuery() { gid = gid,uuid = uuid}); if (qccResult.Error_code == "0") { var dblist = qccResult.Result; dblist.CreateTime = DateTime.Now; dblist.gid = gid; if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetTycJrZhixinginfo(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetJrZhixinginfo(new TycJrZhixinginfoQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetJrDishonest(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetJrDishonest(new TycJrDishonestQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetJrJudicialCase(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetJrJudicialCase(new TycJrJudicialCaseQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetIcChangeinfo(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetIcChangeinfo(new TycIcChangeinfoQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetInverst(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetInverst(new TycInverstQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetBranch(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetBranch(new TycBranchQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetHumanCompanyholding(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetHumanCompanyholding(new TycHumanCompanyholdingQuery() { name = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetParentCompany(string name) { var result = new QccMsgData(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).ToListAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetParentCompany(new TycParentCompanyQuery() { keyword = name }); if (qccResult.Error_code == "0") { var r = qccResult.Result; r.CreateTime = DateTime.Now; r.CompanyName = name; if (_expiredDays > 0) await RiskControlRRDb.Insertable(r).ExecuteCommandAsync(); result.Data = r; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetActualControl(string name) { var result = new QccMsgData(); if (_expiredDays2 > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays2) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).ToListAsync(); result.Data = dbmodel; return result; } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetActualControl(new TycActualControlQuery() { keyword = name }); if (qccResult.Error_code == "0") { var r = qccResult; r.CreateTime = DateTime.Now; r.CompanyName = name; if (_expiredDays2 > 0) await RiskControlRRDb.Insertable((TycActualControlReturn)r).ExecuteCommandAsync(); result.Data = r; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetBids(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetBids(new TycBidsQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetPsNews(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetPsNews(new TycPsNewsQuery() { name = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetStockList(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetStockList(new TycStockListQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetCustomer(string name, int pageIndex = 1, int pageSize = 10,string year = "") { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable() .Where(a => a.CompanyName == name) .Where(a=>a.year == year) .Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList.Where(b => b.client_name != "合计").ToList(); result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetCustomer(new TycCustomerQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.pageBean.result.Count; i++) { var item = qccResult.Result.pageBean.result[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.pageBean.total; item.clientsYear = qccResult.Result.clientsYear; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.pageBean.total; resultPage.Items = addList.Where(b => b.client_name != "合计").ToList(); result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetSupply(string name, int pageIndex = 1, int pageSize = 10, string year = "") { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { // 1.数据库是存在 var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable() .Where(a => a.CompanyName == name) .Where(a => a.year == year) .Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); // 如果条数相同,则取数据库的。如果条数不同,则重新请求 if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } // 如果请求页 > 总条数,说明没有数据了 var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } // 2.不存在或过期 await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetSupply(new TycSupplyQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.pageBean.result.Count; i++) { var item = qccResult.Result.pageBean.result[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.pageBean.total; item.suppliesYear = qccResult.Result.suppliesYear; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.pageBean.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetSecurity(string name) { var result = new QccMsgData(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).FirstAsync(); result.Data = dbmodel; return result; } await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetSecurity(new TycSecurityQuery() { keyword = name }); if (qccResult.Error_code == "0") { var dblist = qccResult.Result; dblist.CreateTime = DateTime.Now; if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetGuarantees(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetGuarantees(new TycGuaranteesQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetStockIllegal(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetStockIllegal(new TycStockIllegalQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetJudicialSale(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetJudicialSale(new TycJudicialSaleQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetInquiryEvaluation(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetInquiryEvaluation(new TycInquiryEvaluationQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetImportAndExport(string name) { var result = new QccMsgData(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).FirstAsync(); result.Data = dbmodel; return result; } await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetImportAndExport(new TycImportAndExportQuery() { keyword = name }); if (qccResult.Error_code == "0") { var dblist = qccResult.Result; dblist.CompanyName = name; dblist.CreateTime = DateTime.Now; if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetPatents(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.DbCreateTime, OrderByType.Desc).Select(a => a.DbCreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.DbCreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetPatents(new TycPatentsQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.DbCreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetIprTm(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetIprTm(new TycIprTmQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetIprTmDetail(string regNo,string intCls) { var result = new QccMsgData(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.RegNo == regNo && a.IntCls == intCls).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime) .FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var dbmodel = await RiskControlRRDb.Queryable().Where(a => a.RegNo == regNo && a.IntCls == intCls).FirstAsync(); result.Data = dbmodel; return result; } await RiskControlRRDb.Deleteable().Where(a => a.RegNo == regNo && a.IntCls == intCls).ExecuteCommandAsync(); } var qccResult = _api.GetIprTmDetail(new TycIprTmDetailQuery() { regNo = regNo,intCls = intCls }); if (qccResult.Error_code == "0") { var dblist = qccResult.Result; dblist.CreateTime = DateTime.Now; dblist.RegNo = regNo; dblist.IntCls = intCls; if (_expiredDays > 0) await RiskControlRRDb.Insertable(dblist).ExecuteCommandAsync(); result.Data = dblist; return result; } else { result.Message = qccResult.Reason; return result; } } public async Task GetEmployments(string name, int pageIndex = 1, int pageSize = 10) { var result = new QccMsgData(); var resultPage = new Page(); if (_expiredDays > 0) { var createTime = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.CreateTime).FirstAsync(); if (createTime.AddDays(_expiredDays) >= DateTime.Now) { var query = RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize); var dbcount = await query.CountAsync(); var totalcount = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).OrderBy(a => a.CreateTime, OrderByType.Desc).Select(a => a.TotalItems).FirstAsync(); if (dbcount == pageSize || dbcount == totalcount || dbcount == totalcount - pageSize * (pageIndex - 1)) { var dbList = await RiskControlRRDb.Queryable().Where(a => a.CompanyName == name).Where(a => a.ItemIndex > (pageIndex - 1) * pageSize && a.ItemIndex <= pageIndex * pageSize).OrderBy(a => a.ItemIndex).ToListAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = totalcount; resultPage.Items = dbList; result.Data = resultPage; return result; } var dbTotalPages = totalcount != 0 ? (totalcount % pageSize) == 0 ? (totalcount / pageSize) : (totalcount / pageSize) + 1 : 0; if (dbTotalPages < pageIndex) { result.Message = "查询无结果"; return result; } } await RiskControlRRDb.Deleteable().Where(a => a.CompanyName == name).ExecuteCommandAsync(); } var qccResult = _api.GetEmployments(new TycEmploymentsQuery() { keyword = name, pageNum = pageIndex, pageSize = pageSize }); if (qccResult.Error_code == "0") { var addList = new List(); for (var i = 0; i < qccResult.Result.items.Count; i++) { var item = qccResult.Result.items[i]; item.CreateTime = DateTime.Now; item.CompanyName = name; item.ItemIndex = (pageIndex - 1) * pageSize + i + 1; item.TotalItems = qccResult.Result.total; addList.Add(item); } if (_expiredDays > 0) await RiskControlRRDb.Insertable(addList).ExecuteCommandAsync(); resultPage.CurrentPage = pageIndex; resultPage.PageSize = pageSize; resultPage.TotalItems = qccResult.Result.total; resultPage.Items = addList; result.Data = resultPage; return result; } else { result.Message = qccResult.Reason; return result; } } } }