admin
2023-10-18 e80a22d84d2e1321843b4e18d99d9a9fc29d315e
Merge branch 'master' of http://47.92.245.94:8000/r/RiskControl_RR_Fast
4个文件已修改
5个文件已添加
842 ■■■■■ 已修改文件
GasolineBlend/Controllers/TianYanChaController.cs 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
RiskControl.NewService/QiChaCha/TianYanChaApi.cs 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
RiskControl.NewService/QiChaCha/TycEntity/TycEmployments.cs 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
RiskControl.NewService/QiChaCha/TycEntity/TycImportAndExport.cs 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
RiskControl.NewService/QiChaCha/TycEntity/TycIprTm.cs 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
RiskControl.NewService/QiChaCha/TycEntity/TycIprTmDetail.cs 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
RiskControl.NewService/QiChaCha/TycEntity/TycPatents.cs 207 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
RiskControl.NewService/RiskControl.NewService.csproj 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
RiskControl.NewService/Service/TianYanChaService.cs 243 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
GasolineBlend/Controllers/TianYanChaController.cs
@@ -745,8 +745,58 @@
            return result.IsSuccess ? SuccessNoShow(data: result.Data) : ErrorNoShow(result.Message);
        }
        /// <summary>
        /// 进出口信用
        /// </summary>
        /// <returns></returns>
        [HttpPost]
        public async Task<ActionResult> GetTycImportAndExport(string name)
        {
            var result = await _tycService.GetImportAndExport(name);
            return result.IsSuccess ? SuccessNoShow(data: result.Data) : ErrorNoShow(result.Message);
        }
        /// <summary>
        /// 企业专利信息
        /// </summary>
        /// <returns></returns>
        [HttpPost]
        public async Task<ActionResult> GetTycPatents(string name, int pageIndex = 1, int pageSize = 10)
        {
            var result = await _tycService.GetPatents(name, pageIndex, pageSize);
            return result.IsSuccess ? SuccessNoShow(data: result.Data) : ErrorNoShow(result.Message);
        }
        /// <summary>
        /// 企业商标信息
        /// </summary>
        /// <returns></returns>
        [HttpPost]
        public async Task<ActionResult> GetTycIprTm(string name, int pageIndex = 1, int pageSize = 10)
        {
            var result = await _tycService.GetIprTm(name, pageIndex, pageSize);
            return result.IsSuccess ? SuccessNoShow(data: result.Data) : ErrorNoShow(result.Message);
        }
        /// <summary>
        /// 商标信息详情
        /// </summary>
        /// <returns></returns>
        [HttpPost]
        public async Task<ActionResult> GetTycIprTmDetail(string regNo, string intCls)
        {
            var result = await _tycService.GetIprTmDetail(regNo,intCls);
            return result.IsSuccess ? SuccessNoShow(data: result.Data) : ErrorNoShow(result.Message);
        }
        /// <summary>
        /// 企业招聘
        /// </summary>
        /// <returns></returns>
        [HttpPost]
        public async Task<ActionResult> GetTycEmployments(string name, int pageIndex = 1, int pageSize = 10)
        {
            var result = await _tycService.GetEmployments(name, pageIndex, pageSize);
            return result.IsSuccess ? SuccessNoShow(data: result.Data) : ErrorNoShow(result.Message);
        }
RiskControl.NewService/QiChaCha/TianYanChaApi.cs
@@ -764,8 +764,48 @@
            var resObj = resStr.ToObject<TycInquiryEvaluationReturnTotal>();
            return resObj;
        }
        public TycImportAndExportReturnTotal GetImportAndExport(TycImportAndExportQuery query)
        {
            var url = "http://open.api.tianyancha.com/services/open/m/importAndExport/2.0";
            var header = GetHeader();
            //var resStr = HttpMethod.HttpGet(url, header, query);
            var resStr = "{\"result\":{\"baseInfo\":{\"types\":\"\",\"specialTradeArea\":\"深圳市其他地区\",\"industryCategory\":\"显示器件制造\",\"managementCategory\":\"进出口货物收发货人\",\"crCode\":\"44039309KX\",\"economicDivision\":\"经济特区\",\"administrativeDivision\":\"广东省深圳市光明区\",\"validityDate\":\"\",\"recordDate\":\"1267372800000\",\"customsRegisteredAddress\":\"福中海关\",\"annualReport\":\"未报送\",\"creditRating\":\"高级认证企业\",\"status\":\"正常\"},\"sanction\":[],\"creditRating\":[]},\"reason\":\"ok\",\"error_code\":0}";
            var resObj = resStr.ToObject<TycImportAndExportReturnTotal>();
            return resObj;
        }
        public TycPatentsReturnTotal GetPatents(TycPatentsQuery query)
        {
            var url = "http://open.api.tianyancha.com/services/open/ipr/patents/3.0";
            var header = GetHeader();
            var resStr = HttpMethod.HttpGet(url, header, query);
            var resObj = resStr.ToObject<TycPatentsReturnTotal>();
            return resObj;
        }
        public TycIprTmReturnTotal GetIprTm(TycIprTmQuery query)
        {
            var url = "http://open.api.tianyancha.com/services/open/ipr/tm/2.0";
            var header = GetHeader();
            var resStr = HttpMethod.HttpGet(url, header, query);
            var resObj = resStr.ToObject<TycIprTmReturnTotal>();
            return resObj;
        }
        public TycIprTmDetailReturnTotal GetIprTmDetail(TycIprTmDetailQuery query)
        {
            var url = "http://open.api.tianyancha.com/services/open/ipr/tm/detail/2.0";
            var header = GetHeader();
            var resStr = HttpMethod.HttpGet(url, header, query);
            var resObj = resStr.ToObject<TycIprTmDetailReturnTotal>();
            return resObj;
        }
        public TycEmploymentsReturnTotal GetEmployments(TycEmploymentsQuery query)
        {
            var url = "http://open.api.tianyancha.com/services/open/m/employments/3.0";
            var header = GetHeader();
            var resStr = HttpMethod.HttpGet(url, header, query);
            var resObj = resStr.ToObject<TycEmploymentsReturnTotal>();
            return resObj;
        }
    }
}
RiskControl.NewService/QiChaCha/TycEntity/TycEmployments.cs
New file
@@ -0,0 +1,81 @@
using System.Collections.Generic;
using RiskControl.NewService.Entity.QccDbEntity;
using SqlSugar;
namespace RiskControl.NewService.QiChaCha.TycEntity
{
    /// <summary>
    /// 企业招聘
    /// </summary>
    public class TycEmploymentsQuery
    {
        /// <summary>
        /// 每页条数(默认20条,最大20条)
        /// </summary>
        public int pageSize { get; set; }
        /// <summary>
        /// 搜索关键字(公司名称、公司id、注册号或社会统一信用代码)
        /// </summary>
        public string keyword { get; set; }
        /// <summary>
        /// 当前页数(默认第1页)
        /// </summary>
        public int pageNum { get; set; }
    }
    /// <summary>
    /// 企业招聘
    /// </summary>
    public class TycEmploymentsReturnTotal : TycBaseResult<TycEmploymentsReturn> { }
    public class TycEmploymentsReturn
    {
        /// <summary>
        /// 总条数
        /// </summary>
        public int total { get; set; }
        /// <summary>
        /// 数据列表
        /// </summary>
        public List<TycEmploymentsReturnItem> items { get; set; }
    }
    [SugarTable("TycEmployments")]
    public class TycEmploymentsReturnItem : QccPageBaseEntity
    {
        /// <summary>
        /// 学历
        /// </summary>
        public string education { get; set; }
        /// <summary>
        /// 地区
        /// </summary>
        public string city { get; set; }
        /// <summary>
        /// 招聘信息来源
        /// </summary>
        public string source { get; set; }
        /// <summary>
        /// 招聘职位
        /// </summary>
        public string title { get; set; }
        /// <summary>
        /// 工作经验
        /// </summary>
        public string experience { get; set; }
        /// <summary>
        /// 发布日期
        /// </summary>
        public string startDate { get; set; }
        /// <summary>
        /// 公司id
        /// </summary>
        public string companyGid { get; set; }
        /// <summary>
        /// 薪资
        /// </summary>
        public string salary { get; set; }
        /// <summary>
        /// 招聘信息地址url
        /// </summary>
        public string webInfoPath { get; set; }
    }
}
RiskControl.NewService/QiChaCha/TycEntity/TycImportAndExport.cs
New file
@@ -0,0 +1,40 @@
using System;
using System.Collections.Generic;
using Newtonsoft.Json.Linq;
using RiskControl.NewService.Entity.QccDbEntity;
using SqlSugar;
namespace RiskControl.NewService.QiChaCha.TycEntity
{
    /// <summary>
    /// 进出口信用
    /// </summary>
    public class TycImportAndExportQuery
    {
        /// <summary>
        /// 搜索关键字(公司名称、公司id、注册号或社会统一信用代码)
        /// </summary>
        public String keyword { get; set; }
    }
    public class TycImportAndExportReturnTotal : TycBaseResult<TycImportAndExportReturn> { }
    [SugarTable("TycImportAndExport")]
    public class TycImportAndExportReturn : QccBaseEntity
    {
        /// <summary>
        /// 信用等级
        /// </summary>
        [SugarColumn(IsJson = true)]
        public List<JObject> creditRating { get; set; }
        /// <summary>
        /// 行政处罚信息
        /// </summary>
        [SugarColumn(IsJson = true)]
        public List<JObject> sanction { get; set; }
        /// <summary>
        /// 基本信息
        /// </summary>
        [SugarColumn(IsJson = true)]
        public JObject baseInfo { get; set; }
    }
}
RiskControl.NewService/QiChaCha/TycEntity/TycIprTm.cs
New file
@@ -0,0 +1,123 @@
using System.Collections.Generic;
using Newtonsoft.Json.Linq;
using RiskControl.NewService.Entity.QccDbEntity;
using SqlSugar;
namespace RiskControl.NewService.QiChaCha.TycEntity
{
    /// <summary>
    /// 企业商标信息
    /// </summary>
    public class TycIprTmQuery
    {
        /// <summary>
        /// 申请开始日期
        /// </summary>
        public string appDateBegin { get; set; }
        /// <summary>
        /// 每页条数(默认20条,最大20条)
        /// </summary>
        public int pageSize { get; set; }
        /// <summary>
        /// 国际分类(参考文档商标国际分类.pdf)
        /// </summary>
        public string tmClass { get; set; }
        /// <summary>
        /// 申请结束日期
        /// </summary>
        public string appDateEnd { get; set; }
        /// <summary>
        /// 搜索关键字(公司名称、公司id、注册号或社会统一信用代码)
        /// </summary>
        public string keyword { get; set; }
        /// <summary>
        /// 当前页数(默认第1页)
        /// </summary>
        public int pageNum { get; set; }
        /// <summary>
        /// 商标状态 1-商标已注册 2-商标无效 3-初审公告 4-等待实质审查 5-商标申请中 6-商标异议中 7-驳回复审中 8-商标其他情形 9-等待驳回复审 10-撤销/无效宣告申请审查中
        /// </summary>
        public string status { get; set; }
    }
    /// <summary>
    /// 企业商标信息
    /// </summary>
    public class TycIprTmReturnTotal : TycBaseResult<TycIprTmReturn> { }
    public class TycIprTmReturn
    {
        /// <summary>
        /// 总条数
        /// </summary>
        public int total { get; set; }
        /// <summary>
        /// 数据列表
        /// </summary>
        public List<TycIprTmReturnItem> items { get; set; }
    }
    [SugarTable("TycIprTm")]
    public class TycIprTmReturnItem : QccPageBaseEntity
    {
        /// <summary>
        /// 状态
        /// </summary>
        public string status { get; set; }
        /// <summary>
        /// 国际分类code
        /// </summary>
        public string tmClass { get; set; }
        /// <summary>
        /// 无用
        /// </summary>
        public string searchType { get; set; }
        /// <summary>
        /// 唯一标识符
        /// </summary>
        public string uni { get; set; }
        /// <summary>
        /// 商标名称
        /// </summary>
        public string tmName { get; set; }
        /// <summary>
        /// 商标id
        /// </summary>
        public string id { get; set; }
        /// <summary>
        /// 无用
        /// </summary>
        public string _type { get; set; }
        /// <summary>
        /// 国际分类
        /// </summary>
        public string intCls { get; set; }
        /// <summary>
        /// 商标流程(内部使用,已经废弃)
        /// </summary>
        public string tmFlow { get; set; }
        /// <summary>
        /// 流程类别
        /// </summary>
        public string category { get; set; }
        /// <summary>
        /// 商标图片
        /// </summary>
        public string tmPic { get; set; }
        /// <summary>
        /// 跳转天眼查链接
        /// </summary>
        [SugarColumn(IsJson = true)]
        public List<JObject> connList { get; set; }
        /// <summary>
        /// 无用
        /// </summary>
        public string eventTime { get; set; }
        /// <summary>
        /// 申请日期
        /// </summary>
        public string appDate { get; set; }
        /// <summary>
        /// 申请人
        /// </summary>
        public string applicantCn { get; set; }
    }
}
RiskControl.NewService/QiChaCha/TycEntity/TycIprTmDetail.cs
New file
@@ -0,0 +1,51 @@
using System;
using System.Collections.Generic;
using Newtonsoft.Json.Linq;
using RiskControl.NewService.Entity.QccDbEntity;
using SqlSugar;
namespace RiskControl.NewService.QiChaCha.TycEntity
{
    /// <summary>
    /// 商标信息详情
    /// </summary>
    public class TycIprTmDetailQuery
    {
        /// <summary>
        /// 注册号
        /// </summary>
        public String regNo { get; set; }
        /// <summary>
        /// 国际分类
        /// </summary>
        public String intCls { get; set; }
    }
    public class TycIprTmDetailReturnTotal : TycBaseResult<TycIprTmDetailReturn> { }
    [SugarTable("TycIprTmDetail")]
    public class TycIprTmDetailReturn : QccBaseEntity
    {
        public string IntCls { get; set; }
        /// <summary>
        /// 商品/服务
        /// </summary>
        [SugarColumn(IsJson = true)]
        public List<JObject> goodsList { get; set; }
        /// <summary>
        ///
        /// </summary>
        [SugarColumn(IsJson = true)]
        public JObject detail { get; set; }
        /// <summary>
        /// 商标最新流程
        /// </summary>
        public string flowStep { get; set; }
        /// <summary>
        /// 商标流程
        /// </summary>
        [SugarColumn(IsJson = true)]
        public List<JObject> flowList { get; set; }
    }
}
RiskControl.NewService/QiChaCha/TycEntity/TycPatents.cs
New file
@@ -0,0 +1,207 @@
using System;
using System.Collections.Generic;
using Newtonsoft.Json.Linq;
using RiskControl.NewService.Entity.QccDbEntity;
using SqlSugar;
namespace RiskControl.NewService.QiChaCha.TycEntity
{
    /// <summary>
    /// 企业专利信息
    /// </summary>
    public class TycPatentsQuery
    {
        /// <summary>
        /// 发布开始时间
        /// </summary>
        public string pubDateBegin { get; set; }
        /// <summary>
        /// 申请开始时间
        /// </summary>
        public string appDateBegin { get; set; }
        /// <summary>
        /// 每页条数(默认20条,最大20条)
        /// </summary>
        public int pageSize { get; set; }
        /// <summary>
        /// 发布结束时间
        /// </summary>
        public string pubDateEnd { get; set; }
        /// <summary>
        /// 申请结束时间
        /// </summary>
        public string appDateEnd { get; set; }
        /// <summary>
        /// 搜索关键字(公司名称、公司id、注册号或社会统一信用代码)
        /// </summary>
        public string keyword { get; set; }
        /// <summary>
        /// 当前页数(默认第1页)
        /// </summary>
        public int pageNum { get; set; }
        /// <summary>
        /// 专利类型(1-发明专利 2-实用新型 3-外观专利)
        /// </summary>
        public int patentType { get; set; }
    }
    /// <summary>
    /// 企业专利信息
    /// </summary>
    public class TycPatentsReturnTotal : TycBaseResult<TycPatentsReturn> { }
    public class TycPatentsReturn
    {
        /// <summary>
        /// 总条数
        /// </summary>
        public int total { get; set; }
        /// <summary>
        /// 数据列表
        /// </summary>
        public List<TycPatentsReturnItem> items { get; set; }
    }
    [SugarTable("TycPatents")]
    public class TycPatentsReturnItem : QccPageBaseEntity
    {
        /// <summary>
        /// 数据获取时间
        /// </summary>
        public DateTime DbCreateTime { get; set; } = DateTime.Now;
        public new string CreateTime { get; set; }
        /// <summary>
        /// 主分类号
        /// </summary>
        public string mainCatNum { get; set; }
        /// <summary>
        /// 申请公布号
        /// </summary>
        public string pubnumber { get; set; }
        /// <summary>
        /// 无用
        /// </summary>
        public string searchType { get; set; }
        /// <summary>
        /// 申请号
        /// </summary>
        public string appnumber { get; set; }
        /// <summary>
        /// 对应表id
        /// </summary>
        public string id { get; set; }
        /// <summary>
        /// 无用
        /// </summary>
        public string _type { get; set; }
        /// <summary>
        /// 法律状态
        /// </summary>
        [SugarColumn(IsJson = true)]
        public List<JObject> lawStatus { get; set; }
        /// <summary>
        /// 名称
        /// </summary>
        public string title { get; set; }
        /// <summary>
        /// 专利名称
        /// </summary>
        public string patentName { get; set; }
        /// <summary>
        /// 授权公告号
        /// </summary>
        public string grantNumber { get; set; }
        /// <summary>
        /// 授权公告日
        /// </summary>
        public string grantDate { get; set; }
        /// <summary>
        /// 优先权信息
        /// </summary>
        [SugarColumn(IsJson = true)]
        public List<JObject> priorityInfo { get; set; }
        /// <summary>
        /// 邮编
        /// </summary>
        public string postCode { get; set; }
        /// <summary>
        /// 跳转到天眼查链接(无效字段)
        /// </summary>
        [SugarColumn(IsJson = true)]
        public List<JObject> connList { get; set; }
        /// <summary>
        /// 申请日
        /// </summary>
        public string applicationTime { get; set; }
        /// <summary>
        /// 申请人
        /// </summary>
        public string applicantname { get; set; }
        /// <summary>
        /// 专利类型
        /// </summary>
        public string patentType { get; set; }
        /// <summary>
        /// 公开公告日
        /// </summary>
        public string pubDate { get; set; }
        /// <summary>
        /// 申请公布号(废弃)
        /// </summary>
        public string applicationPublishNum { get; set; }
        /// <summary>
        /// 代理机构
        /// </summary>
        public string agency { get; set; }
        /// <summary>
        /// 唯一标识符
        /// </summary>
        public string uni { get; set; }
        /// <summary>
        /// 发明人
        /// </summary>
        public string inventor { get; set; }
        /// <summary>
        /// 分类
        /// </summary>
        public string cat { get; set; }
        /// <summary>
        /// 代理人
        /// </summary>
        public string agent { get; set; }
        /// <summary>
        /// 申请公布日
        /// </summary>
        public string applicationPublishTime { get; set; }
        /// <summary>
        /// 申请号/专利号
        /// </summary>
        public string patentNum { get; set; }
        /// <summary>
        /// 图片url
        /// </summary>
        public string imgUrl { get; set; }
        /// <summary>
        /// 全部分类号
        /// </summary>
        public string allCatNum { get; set; }
        /// <summary>
        /// 摘要
        /// </summary>
        public string abstracts { get; set; }
        /// <summary>
        /// 地址
        /// </summary>
        public string address { get; set; }
        /// <summary>
        /// 唯一标识符
        /// </summary>
        public string uuid { get; set; }
        /// <summary>
        /// 无用
        /// </summary>
        public string eventTime { get; set; }
        /// <summary>
        /// 专利状态
        /// </summary>
        public string patentStatus { get; set; }
    }
}
RiskControl.NewService/RiskControl.NewService.csproj
@@ -516,6 +516,7 @@
    <Compile Include="QiChaCha\TycEntity\TycCourtAnnouncement.cs" />
    <Compile Include="QiChaCha\TycEntity\TycCourtRegister.cs" />
    <Compile Include="QiChaCha\TycEntity\TycCustomer.cs" />
    <Compile Include="QiChaCha\TycEntity\TycEmployments.cs" />
    <Compile Include="QiChaCha\TycEntity\TycGuarantees.cs" />
    <Compile Include="QiChaCha\TycEntity\TycHiCourt.cs" />
    <Compile Include="QiChaCha\TycEntity\TycHiJudicial.cs" />
@@ -523,8 +524,11 @@
    <Compile Include="QiChaCha\TycEntity\TycHiLawSuit.cs" />
    <Compile Include="QiChaCha\TycEntity\TycHumanCompanyholding.cs" />
    <Compile Include="QiChaCha\TycEntity\TycIcChangeinfo.cs" />
    <Compile Include="QiChaCha\TycEntity\TycImportAndExport.cs" />
    <Compile Include="QiChaCha\TycEntity\TycInquiryEvaluation.cs" />
    <Compile Include="QiChaCha\TycEntity\TycInverst.cs" />
    <Compile Include="QiChaCha\TycEntity\TycIprTm.cs" />
    <Compile Include="QiChaCha\TycEntity\TycIprTmDetail.cs" />
    <Compile Include="QiChaCha\TycEntity\TycJrBankruptcy.cs" />
    <Compile Include="QiChaCha\TycEntity\TycJrDishonest.cs" />
    <Compile Include="QiChaCha\TycEntity\TycJrJudicialCase.cs" />
@@ -535,6 +539,7 @@
    <Compile Include="QiChaCha\TycEntity\TycJudicialSale.cs" />
    <Compile Include="QiChaCha\TycEntity\TycKtannouncement.cs" />
    <Compile Include="QiChaCha\TycEntity\TycParentCompany.cs" />
    <Compile Include="QiChaCha\TycEntity\TycPatents.cs" />
    <Compile Include="QiChaCha\TycEntity\TycPsNews.cs" />
    <Compile Include="QiChaCha\TycEntity\TycSecurity.cs" />
    <Compile Include="QiChaCha\TycEntity\TycStockIllegal.cs" />
RiskControl.NewService/Service/TianYanChaService.cs
@@ -3698,6 +3698,249 @@
            }
        }
        public async Task<QccMsgData> GetImportAndExport(string name)
        {
            var result = new QccMsgData();
            if (_expiredDays > 0)
            {
                var createTime = await RiskControlRRDb.Queryable<TycImportAndExportReturn>().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<TycImportAndExportReturn>().Where(a => a.CompanyName == name).FirstAsync();
                    result.Data = dbmodel;
                    return result;
                }
                await RiskControlRRDb.Deleteable<TycImportAndExportReturn>().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<QccMsgData> GetPatents(string name, int pageIndex = 1, int pageSize = 10)
        {
            var result = new QccMsgData();
            var resultPage = new Page<TycPatentsReturnItem>();
            if (_expiredDays > 0)
            {
                var createTime = await RiskControlRRDb.Queryable<TycPatentsReturnItem>().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<TycPatentsReturnItem>().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<TycPatentsReturnItem>().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<TycPatentsReturnItem>().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<TycPatentsReturnItem>().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<TycPatentsReturnItem>();
                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<QccMsgData> GetIprTm(string name, int pageIndex = 1, int pageSize = 10)
        {
            var result = new QccMsgData();
            var resultPage = new Page<TycIprTmReturnItem>();
            if (_expiredDays > 0)
            {
                var createTime = await RiskControlRRDb.Queryable<TycIprTmReturnItem>().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<TycIprTmReturnItem>().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<TycIprTmReturnItem>().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<TycIprTmReturnItem>().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<TycIprTmReturnItem>().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<TycIprTmReturnItem>();
                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<QccMsgData> GetIprTmDetail(string regNo,string intCls)
        {
            var result = new QccMsgData();
            if (_expiredDays > 0)
            {
                var createTime = await RiskControlRRDb.Queryable<TycIprTmDetailReturn>().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<TycIprTmDetailReturn>().Where(a => a.RegNo == regNo && a.IntCls == intCls).FirstAsync();
                    result.Data = dbmodel;
                    return result;
                }
                await RiskControlRRDb.Deleteable<TycIprTmDetailReturn>().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<QccMsgData> GetEmployments(string name, int pageIndex = 1, int pageSize = 10)
        {
            var result = new QccMsgData();
            var resultPage = new Page<TycEmploymentsReturnItem>();
            if (_expiredDays > 0)
            {
                var createTime = await RiskControlRRDb.Queryable<TycEmploymentsReturnItem>().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<TycEmploymentsReturnItem>().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<TycEmploymentsReturnItem>().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<TycEmploymentsReturnItem>().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<TycEmploymentsReturnItem>().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<TycEmploymentsReturnItem>();
                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;
            }
        }