Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
Njzj.Biz.Bocoms.Openapis.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
陶然
Njzj.Biz.Bocoms.Openapis.V4.5
Commits
a797eb70
Commit
a797eb70
authored
Jan 15, 2024
by
陶然
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加扫码支付功能,实现自动生成流水并关联结算
parent
4125b3f8
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
67 additions
and
5 deletions
+67
-5
Extension.cs
Extension.cs
+65
-3
AssemblyInfo.cs
Properties/AssemblyInfo.cs
+2
-2
No files found.
Extension.cs
View file @
a797eb70
...
...
@@ -406,10 +406,69 @@ namespace Com.Bocom.OpenApi
var
amountPayed
=
settlements
.
Sum
(
o
=>
o
.
AmountPayment
);
var
amountTotal
=
decimal
.
Parse
(
receiveCode
.
total_amount
);
if
(
amountTotal
!=
amountSettlement
-
amountPayed
)
return
;
var
account
=
CurrencyUnit
.
CNY
.
GetBocomAccount
();
var
accountBalance
=
CurrencyUnit
.
CNY
.
GetBalanceAccount
();
#
region
生成扫码支付流水信息并认领
var
paymentKvid
=
Guid
.
NewGuid
();
var
payment
=
new
Payment
();
payment
.
Kvid
=
paymentKvid
;
payment
.
RootKvid
=
payment
.
Kvid
;
payment
.
SerialNumber
=
receiveCode
.
response_time
;
payment
.
PayerName
=
$"[扫码支付]
{
receiveCode
.
mer_memo
}
"
;
payment
.
PayerAccountKvid
=
accountBalance
.
Kvid
;
payment
.
PayerAccountName
=
accountBalance
.
Name
;
payment
.
PayerAccountOwnerName
=
accountBalance
.
OwnerName
;
payment
.
PayerAccountSerialNumber
=
accountBalance
.
SerialNumber
;
payment
.
PayeeName
=
KiviiContext
.
CurrentMember
.
OrganizationName
;
payment
.
Type
=
PaymentType
.
Bank
;
//payment.Category = "市场业务收入";
payment
.
OperateTime
=
DateTime
.
ParseExact
(
receiveCode
.
response_time
,
"yyyyMMddHHmmss"
,
System
.
Globalization
.
CultureInfo
.
CurrentCulture
);
payment
.
OperatorKvid
=
KiviiContext
.
CurrentMember
.
Kvid
;
payment
.
OperatorName
=
KiviiContext
.
CurrentMember
.
FullName
;
payment
.
Summary
=
receiveCode
.
tran_content
;
payment
.
Amount
=
amountTotal
;
payment
.
Currency
=
CurrencyUnit
.
CNY
;
payment
.
BizId
=
receiveCode
.
response_time
;
payment
.
BizType
=
typeof
(
ReceiveCode
).
FullName
;
payment
.
BizKvid
=
receiveCode
.
Kvid
;
var
accountDetail
=
payment
.
Accept
(
out
Pay
pay
);
var
trans1
=
conn
.
OpenTransaction
();
try
{
conn
.
Insert
(
payment
);
accountDetail
.
Insert
(
conn
);
conn
.
Insert
(
pay
);
trans1
.
Commit
();
}
catch
(
Exception
ex
)
{
trans1
.
Rollback
();
throw
ex
;
}
var
split
=
payment
.
BizSplit
(
payment
.
Amount
,
"自动认领"
,
null
,
null
,
conn
,
"市场业务收入"
,
payment
.
OperatorKvid
,
payment
.
OperatorName
);
var
trans2
=
conn
.
OpenTransaction
();
try
{
conn
.
Insert
(
split
);
payment
.
RecalculateAmountSplit
(
conn
);
trans2
.
Commit
();
}
catch
(
Exception
ex
)
{
trans2
.
Rollback
();
throw
ex
;
}
#
endregion
//var account = CurrencyUnit.CNY.GetBocomAccount();
var
accountBiz
=
CurrencyUnit
.
CNY
.
GetBizAccount
();
var
accountDetails
=
settlements
.
Paying
(
account
,
accountBiz
,
out
var
pays
,
amountTotal
);
var
dynamicPayPayment
=
settlements
.
Paying
(
split
,
accountBiz
,
out
var
pays
,
out
var
accountDetailPayed
,
amountTotal
);
var
trans
=
conn
.
OpenTransaction
();
try
...
...
@@ -418,7 +477,10 @@ namespace Com.Bocom.OpenApi
{
conn
.
Insert
(
item
);
}
accountDetails
.
ForEach
(
o
=>
o
.
Insert
(
conn
));
//创建账户明细
dynamicPayPayment
.
SerialNumber
=
split
.
GetSubSerialNumber
(
conn
);
conn
.
Insert
(
dynamicPayPayment
);
//创建DynamicSplitPayment
accountDetail
.
Insert
(
conn
);
split
.
RecalculateAmountUsed
(
conn
);
//重新统计到账的使用情况
#
region
同步更新泛型
Settlement
表中数据
foreach
(
var
item
in
settlements
)
...
...
Properties/AssemblyInfo.cs
View file @
a797eb70
...
...
@@ -33,5 +33,5 @@ using System.Runtime.InteropServices;
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("5.4.202
3.1019
0")]
[assembly: AssemblyFileVersion("5.4.202
3.1019
0")]
[assembly: AssemblyVersion("5.4.202
4.115
0")]
[assembly: AssemblyFileVersion("5.4.202
4.115
0")]
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