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
25f79c85
Commit
25f79c85
authored
Jan 16, 2024
by
陶然
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化
parent
a797eb70
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
63 additions
and
50 deletions
+63
-50
Extension.cs
Extension.cs
+63
-50
No files found.
Extension.cs
View file @
25f79c85
...
@@ -409,60 +409,73 @@ namespace Com.Bocom.OpenApi
...
@@ -409,60 +409,73 @@ namespace Com.Bocom.OpenApi
var
accountBalance
=
CurrencyUnit
.
CNY
.
GetBalanceAccount
();
var
accountBalance
=
CurrencyUnit
.
CNY
.
GetBalanceAccount
();
#
region
生成扫码支付流水信息并认领
#
region
生成扫码支付流水信息并认领
var
paymentKvid
=
Guid
.
NewGuid
();
Payment
payment
=
null
;
var
payment
=
new
Payment
();
var
queryPayment
=
conn
.
From
<
Payment
>();
payment
.
Kvid
=
paymentKvid
;
queryPayment
.
Where
(
o
=>
o
.
OffsetKvid
==
Guid
.
Empty
&&
o
.
Type
==
PaymentType
.
Bank
&&
o
.
RootKvid
==
o
.
Kvid
&&
o
.
SerialNumber
==
receiveCode
.
response_time
);
payment
.
RootKvid
=
payment
.
Kvid
;
payment
=
conn
.
Single
(
queryPayment
);
payment
.
SerialNumber
=
receiveCode
.
response_time
;
if
(
payment
==
null
)
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
();
var
paymentKvid
=
Guid
.
NewGuid
();
throw
ex
;
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
);
Payment
split
=
null
;
var
querySplit
=
conn
.
From
<
Payment
>();
var
trans2
=
conn
.
OpenTransaction
();
querySplit
.
Where
(
o
=>
o
.
Type
==
PaymentType
.
Split
&&
o
.
OffsetKvid
==
Guid
.
Empty
&&
o
.
ParentKvid
==
payment
.
Kvid
);
try
split
=
conn
.
Single
(
querySplit
);
{
if
(
split
==
null
)
conn
.
Insert
(
split
);
payment
.
RecalculateAmountSplit
(
conn
);
trans2
.
Commit
();
}
catch
(
Exception
ex
)
{
{
trans2
.
Rollback
();
split
=
payment
.
BizSplit
(
payment
.
Amount
,
"自动认领"
,
KiviiContext
.
CurrentMember
.
OrganizationKvid
,
KiviiContext
.
CurrentMember
.
OrganizationName
,
conn
,
"市场业务收入"
,
payment
.
OperatorKvid
,
payment
.
OperatorName
);
throw
ex
;
}
var
trans2
=
conn
.
OpenTransaction
();
try
{
conn
.
Insert
(
split
);
payment
.
RecalculateAmountSplit
(
conn
);
trans2
.
Commit
();
}
catch
(
Exception
ex
)
{
trans2
.
Rollback
();
throw
ex
;
}
}
#
endregion
#
endregion
//var account = CurrencyUnit.CNY.GetBocomAccount();
//var account = CurrencyUnit.CNY.GetBocomAccount();
var
accountBiz
=
CurrencyUnit
.
CNY
.
GetBizAccount
();
var
accountBiz
=
CurrencyUnit
.
CNY
.
GetBizAccount
();
...
@@ -479,7 +492,7 @@ namespace Com.Bocom.OpenApi
...
@@ -479,7 +492,7 @@ namespace Com.Bocom.OpenApi
}
}
dynamicPayPayment
.
SerialNumber
=
split
.
GetSubSerialNumber
(
conn
);
dynamicPayPayment
.
SerialNumber
=
split
.
GetSubSerialNumber
(
conn
);
conn
.
Insert
(
dynamicPayPayment
);
//创建DynamicSplitPayment
conn
.
Insert
(
dynamicPayPayment
);
//创建DynamicSplitPayment
accountDetail
.
Insert
(
conn
);
accountDetail
Payed
.
Insert
(
conn
);
split
.
RecalculateAmountUsed
(
conn
);
//重新统计到账的使用情况
split
.
RecalculateAmountUsed
(
conn
);
//重新统计到账的使用情况
#
region
同步更新泛型
Settlement
表中数据
#
region
同步更新泛型
Settlement
表中数据
...
...
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