Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
Kivii.Finances.Addons.V4.5
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
陶然
Kivii.Finances.Addons.V4.5
Commits
2903b95e
Commit
2903b95e
authored
Mar 11, 2025
by
Neo Turing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加小微企业验证对接
parent
3270b751
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
128 additions
and
4 deletions
+128
-4
Configs.cs
Src/Configs.cs
+11
-2
Kivii.Finances.Addons.V4.5.csproj
Src/Kivii.Finances.Addons.V4.5.csproj
+1
-0
PolicyVerify.Request.cs
Src/Requests/PolicyVerify.Request.cs
+72
-2
国家企业信用信息公示系统小微企业验证接口.docx
Src/Resources/国家企业信用信息公示系统小微企业验证接口.docx
+0
-0
RestfulPolicyVerify.cs
Src/RestfulPolicyVerify.cs
+44
-0
No files found.
Src/Configs.cs
View file @
2903b95e
...
@@ -14,7 +14,16 @@ namespace Kivii.Finances.Addons
...
@@ -14,7 +14,16 @@ namespace Kivii.Finances.Addons
public
const
string
RouteAllPath
=
"/Kivii/Finances/Template/{Path*}"
;
public
const
string
RouteAllPath
=
"/Kivii/Finances/Template/{Path*}"
;
public
const
string
AesKey
=
""
;
public
const
string
AesIv
=
""
;
#
region
PolicyVerify
public
const
string
UrlVerify
=
"https://scjg.jszwfw.gov.cn:20081"
;
public
const
string
RouteVerify
=
"/ecipplatform/minTypeCorpServlet.json?minTypeCorpInfo=true"
;
public
const
string
AesKey
=
"hj7x89H$yuBI0456"
;
public
const
string
AesIv
=
"NIfb&95GUY86Gfgh"
;
public
const
string
APP_MARK
=
"QYZXDJYJS"
;
public
const
string
APP_WORK
=
"jgta3mkGOgkY"
;
#
endregion
}
}
}
}
Src/Kivii.Finances.Addons.V4.5.csproj
View file @
2903b95e
...
@@ -58,6 +58,7 @@
...
@@ -58,6 +58,7 @@
<Compile
Include=
"Properties\AssemblyInfo.cs"
/>
<Compile
Include=
"Properties\AssemblyInfo.cs"
/>
<Compile
Include=
"RequestService.cs"
/>
<Compile
Include=
"RequestService.cs"
/>
<Compile
Include=
"Requests\PolicyVerify.Request.cs"
/>
<Compile
Include=
"Requests\PolicyVerify.Request.cs"
/>
<Compile
Include=
"RestfulPolicyVerify.cs"
/>
<Compile
Include=
"RestfulReadExcel.cs"
/>
<Compile
Include=
"RestfulReadExcel.cs"
/>
<Compile
Include=
"TemplateRequest.cs"
/>
<Compile
Include=
"TemplateRequest.cs"
/>
</ItemGroup>
</ItemGroup>
...
...
Src/Requests/PolicyVerify.Request.cs
View file @
2903b95e
using
System
;
using
Kivii.Text
;
using
System
;
using
System.Collections.Generic
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Linq
;
using
System.Text
;
using
System.Text
;
...
@@ -6,9 +7,15 @@ using System.Threading.Tasks;
...
@@ -6,9 +7,15 @@ using System.Threading.Tasks;
namespace
Kivii.Finances.Addons.Requests
namespace
Kivii.Finances.Addons.Requests
{
{
#
region
Request
.
Response
[
Route
(
Configs
.
RouteVerify
)]
public
class
PolicyVerifyRequest
:
IReturn
<
PolicyVerifyResponse
>
public
class
PolicyVerifyRequest
:
IReturn
<
PolicyVerifyResponse
>
{
{
/// <summary>
/// <summary>
/// 应用标识
/// </summary>
public
string
appMark
{
get
;
set
;
}
/// <summary>
/// 时间戳,即当前时间 格式为:年月日时分秒 实例: 2019年05月10日 12时12分12秒 格式应写为20190510121212
/// 时间戳,即当前时间 格式为:年月日时分秒 实例: 2019年05月10日 12时12分12秒 格式应写为20190510121212
/// </summary>
/// </summary>
public
string
time
{
get
;
set
;
}
public
string
time
{
get
;
set
;
}
...
@@ -17,7 +24,7 @@ namespace Kivii.Finances.Addons.Requests
...
@@ -17,7 +24,7 @@ namespace Kivii.Finances.Addons.Requests
/// <summary>
/// <summary>
/// 业务参数,json格式。数据固定格式如下,详情可见接口入参字段(节点里面全部内容进行SM2加密处理,非单个字段值){"corpName":"企业名称","uniscid": "统一社会信用代码"}
/// 业务参数,json格式。数据固定格式如下,详情可见接口入参字段(节点里面全部内容进行SM2加密处理,非单个字段值){"corpName":"企业名称","uniscid": "统一社会信用代码"}
/// </summary>
/// </summary>
public
string
@params
{
get
;
set
;
}
public
string
qyInfo
{
get
;
set
;
}
}
}
...
@@ -90,5 +97,68 @@ namespace Kivii.Finances.Addons.Requests
...
@@ -90,5 +97,68 @@ namespace Kivii.Finances.Addons.Requests
/// 注册资本
/// 注册资本
/// </summary>
/// </summary>
public
string
regCapi
{
get
;
set
;
}
public
string
regCapi
{
get
;
set
;
}
/// <summary>
/// 时间
/// </summary>
public
string
time
{
get
;
set
;
}
/// <summary>
/// 是否是小微企业
/// </summary>
public
string
isMinCorp
{
get
;
set
;
}
}
#
endregion
public
class
RestfulPolicyVerifyResponse
:
RestfulQueryResponse
<
PolicyVerifyResponseData
>
{
public
string
Message
{
get
;
set
;
}
}
public
static
class
PolicyVerifyExtension
{
public
static
RestfulPolicyVerifyResponse
GetPolicyVerify
(
this
JsonServiceClient
client
,
PolicyVerifyRequestParams
verifyParam
)
{
if
(
client
==
null
||
verifyParam
==
null
)
throw
new
ArgumentNullException
(
"client or verifyParam"
);
if
(
verifyParam
.
corpName
.
IsNullOrEmpty
())
throw
new
ArgumentNullException
(
"verifyParam.corpName"
);
AesEncryptor
encryptor
=
new
AesEncryptor
(
Configs
.
AesKey
,
Configs
.
AesIv
);
var
time
=
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmss"
);
var
signStr
=
$"
{
time
}{
Configs
.
APP_MARK
}{
Configs
.
APP_WORK
}
"
;
var
sign
=
encryptor
.
Encrypt
(
signStr
);
var
paramJson
=
Kivii
.
Text
.
JsonSerializer
.
SerializeToString
(
verifyParam
);
var
param
=
encryptor
.
Encrypt
(
paramJson
);
//var requestVerify = new PolicyVerifyRequest();
//requestVerify.appMark = Configs.APP_MARK;
//requestVerify.time = time;
//requestVerify.sign = sign;
//requestVerify.qyInfo = param;
var
url
=
$"
{
Configs
.
RouteVerify
}
&appMark=
{
Configs
.
APP_MARK
}
&time=
{
time
}
&sign=
{
sign
}
&qyInfo=
{
param
}
"
;
var
responseVerify
=
client
.
Get
<
PolicyVerifyResponse
>(
url
);
if
(
responseVerify
==
null
)
throw
new
Exception
(
"验证未响应"
);
var
rtns
=
new
RestfulPolicyVerifyResponse
();
rtns
.
Results
=
new
List
<
PolicyVerifyResponseData
>();
if
(
responseVerify
.
code
!=
"0"
)
{
rtns
.
Message
=
responseVerify
.
message
;
return
rtns
;
}
try
{
var
dataJson
=
encryptor
.
Decrypt
(
responseVerify
.
data
);
var
record
=
JsonSerializer
.
DeserializeFromString
<
PolicyVerifyResponseData
>(
dataJson
);
rtns
.
Results
.
Add
(
record
);
}
catch
(
Exception
ex
)
{
throw
ex
;
}
return
rtns
;
}
}
}
}
}
Src/Resources/国家企业信用信息公示系统小微企业验证接口.docx
View file @
2903b95e
No preview for this file type
Src/RestfulPolicyVerify.cs
0 → 100644
View file @
2903b95e
using
Kivii.Finances.Addons.Requests
;
using
Kivii.Finances.Entities
;
using
Kivii.Linq
;
using
Kivii.Text
;
using
Kivii.Web
;
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
using
System.Threading.Tasks
;
namespace
Kivii.Finances.Addons
{
[
Api
(
Description
=
"政策验证"
)]
[
RequiresAnyRole
(
SystemRoles
.
Everyone
)]
public
class
PolicyVerifying
:
RestfulExecution
<
Policy
>
{
public
string
TargetName
{
get
;
set
;
}
public
override
object
OnExecution
(
IRequest
req
,
IResponse
res
)
{
if
(
TargetName
.
IsNullOrEmpty
())
throw
new
Exception
(
"请传入付款单位信息!"
);
var
conn
=
KiviiContext
.
GetOpenedDbConnection
<
InvoiceTitle
>();
var
query
=
conn
.
From
<
InvoiceTitle
>();
query
.
Where
(
o
=>
o
.
CompanyName
==
TargetName
);
query
.
Select
(
o
=>
new
{
corpName
=
o
.
CompanyName
,
uniscid
=
o
.
TaxNumber
});
var
verifyParam
=
conn
.
Single
<
PolicyVerifyRequestParams
>(
query
);
if
(
verifyParam
==
null
)
{
verifyParam
=
new
PolicyVerifyRequestParams
();
verifyParam
.
corpName
=
TargetName
;
verifyParam
.
uniscid
=
""
;
}
var
rtns
=
new
RestfulPolicyVerifyResponse
();
var
client
=
new
JsonServiceClient
(
Configs
.
UrlVerify
);
rtns
=
client
.
GetPolicyVerify
(
verifyParam
);
rtns
.
Total
=
rtns
.
Results
.
Count
;
return
rtns
;
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment