Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
Kivii.Biz.Finances.V2.0
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.Biz.Finances.V2.0
Commits
c5c35d0e
Commit
c5c35d0e
authored
Feb 25, 2022
by
陶然
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化
parent
84f2e5cb
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
93 additions
and
4 deletions
+93
-4
Invoice.cs
Src/Entities/Invoice.cs
+0
-1
InvoiceApply.cs
Src/Entities/InvoiceApply.cs
+4
-0
Settlement.cs
Src/Entities/Settlement.cs
+0
-1
RestfulInvoice.cs
Src/Transforms/RestfulInvoice.cs
+25
-2
RestfulInvoiceApply.Apply.cs
Src/Transforms/RestfulInvoiceApply.Apply.cs
+0
-0
RestfulSettlement.cs
Src/Transforms/RestfulSettlement.cs
+64
-0
No files found.
Src/Entities/Invoice.cs
View file @
c5c35d0e
...
@@ -215,7 +215,6 @@ namespace Kivii.Finances.Entities
...
@@ -215,7 +215,6 @@ namespace Kivii.Finances.Entities
public
DateTime
OperateTime
{
get
;
set
;
}
public
DateTime
OperateTime
{
get
;
set
;
}
[
ApiMember
(
Description
=
"支付日期"
)]
[
ApiMember
(
Description
=
"支付日期"
)]
[
InternalSetter
]
public
DateTime
?
PayedTime
{
get
;
set
;
}
public
DateTime
?
PayedTime
{
get
;
set
;
}
[
IgnoreUpdate
]
[
IgnoreUpdate
]
...
...
Src/Entities/InvoiceApply.cs
View file @
c5c35d0e
...
@@ -217,6 +217,10 @@ namespace Kivii.Finances.Entities
...
@@ -217,6 +217,10 @@ namespace Kivii.Finances.Entities
[
StringLength
(
2000
),
Default
(
""
)]
[
StringLength
(
2000
),
Default
(
""
)]
public
string
Remark
{
get
;
set
;
}
public
string
Remark
{
get
;
set
;
}
#
endregion
#
endregion
[
Ignore
]
public
List
<
InvoiceApplyDetail
>
Details
{
get
;
set
;
}
}
}
public
enum
InvoiceApplyType
public
enum
InvoiceApplyType
...
...
Src/Entities/Settlement.cs
View file @
c5c35d0e
...
@@ -152,7 +152,6 @@ namespace Kivii.Finances.Entities
...
@@ -152,7 +152,6 @@ namespace Kivii.Finances.Entities
#
region
文本
摘要
备注
#
region
文本
摘要
备注
[
ApiMember
(
Description
=
"摘要,最大500字"
)]
[
ApiMember
(
Description
=
"摘要,最大500字"
)]
[
IgnoreUpdate
]
[
StringLength
(
500
),
Default
(
""
)]
[
StringLength
(
500
),
Default
(
""
)]
public
string
Summary
{
get
;
set
;
}
public
string
Summary
{
get
;
set
;
}
...
...
Src/Transforms/RestfulInvoice.cs
View file @
c5c35d0e
...
@@ -89,8 +89,32 @@ namespace Kivii.Finances.Transforms
...
@@ -89,8 +89,32 @@ namespace Kivii.Finances.Transforms
{
}
{
}
[
RequiresAnyRole
(
SystemRoles
.
Everyone
)]
[
RequiresAnyRole
(
SystemRoles
.
Everyone
)]
public
class
InvoiceUpdate
:
RestfulUpdate
<
Invoice
>
{
}
[
RequiresAnyRole
(
SystemRoles
.
Everyone
)]
public
class
InvoiceRead
:
RestfulRead
<
Invoice
>
public
class
InvoiceRead
:
RestfulRead
<
Invoice
>
{
}
{
public
bool
IncludeDetail
{
get
;
set
;
}
public
override
bool
OnPostRestfulRead
(
IRequest
req
,
IResponse
res
,
System
.
Data
.
IDbConnection
dbConnection
,
IRestfulReadResponse
<
Invoice
>
rtns
)
{
if
(
IncludeDetail
)
{
var
details
=
dbConnection
.
Select
<
InvoiceDetail
>(
o
=>
o
.
InvoiceKvid
==
Kvid
);
rtns
.
Result
.
Details
=
new
List
<
InvoiceDetail
>();
foreach
(
var
item
in
details
)
{
var
detail
=
new
InvoiceDetail
();
detail
.
PopulateWith
(
item
);
rtns
.
Result
.
Details
.
Add
(
detail
);
}
}
return
base
.
OnPostRestfulRead
(
req
,
res
,
dbConnection
,
rtns
);
}
}
[
Api
(
Description
=
"插入发票"
)]
[
Api
(
Description
=
"插入发票"
)]
[
RequiresAnyRole
(
SystemRoles
.
Everyone
)]
[
RequiresAnyRole
(
SystemRoles
.
Everyone
)]
...
@@ -119,7 +143,6 @@ namespace Kivii.Finances.Transforms
...
@@ -119,7 +143,6 @@ namespace Kivii.Finances.Transforms
(
Payments
.
Exists
(
o
=>
o
.
Kvid
==
Guid
.
Empty
)).
ThrowIfTrue
(
"不存在的到账信息!"
);
(
Payments
.
Exists
(
o
=>
o
.
Kvid
==
Guid
.
Empty
)).
ThrowIfTrue
(
"不存在的到账信息!"
);
(
Payments
.
Exists
(
o
=>
o
.
Amount
<=
0
)).
ThrowIfTrue
(
"未指定到账开票金额!"
);
(
Payments
.
Exists
(
o
=>
o
.
Amount
<=
0
)).
ThrowIfTrue
(
"未指定到账开票金额!"
);
(
Payments
.
Sum
(
o
=>
o
.
Amount
)
!=
Items
.
Sum
(
o
=>
o
.
Amount
)).
ThrowIfTrue
(
"到账开票金额和发票金额不一致!"
);
(
Payments
.
Sum
(
o
=>
o
.
Amount
)
!=
Items
.
Sum
(
o
=>
o
.
Amount
)).
ThrowIfTrue
(
"到账开票金额和发票金额不一致!"
);
}
}
var
conn
=
KiviiContext
.
GetOpenedDbConnection
<
Invoice
>();
var
conn
=
KiviiContext
.
GetOpenedDbConnection
<
Invoice
>();
(
conn
.
Exists
<
Invoice
>(
o
=>
Sql
.
In
(
o
.
SerialNumber
,
Items
.
ConvertAll
(
p
=>
p
.
SerialNumber
)))).
ThrowIfTrue
(
"存在重复录入的发票信息"
);
(
conn
.
Exists
<
Invoice
>(
o
=>
Sql
.
In
(
o
.
SerialNumber
,
Items
.
ConvertAll
(
p
=>
p
.
SerialNumber
)))).
ThrowIfTrue
(
"存在重复录入的发票信息"
);
...
...
Src/Transforms/RestfulInvoiceApply.Apply.cs
View file @
c5c35d0e
This diff is collapsed.
Click to expand it.
Src/Transforms/RestfulSettlement.cs
View file @
c5c35d0e
...
@@ -134,6 +134,70 @@ namespace Kivii.Finances.Transforms
...
@@ -134,6 +134,70 @@ namespace Kivii.Finances.Transforms
}
}
}
}
[
Api
(
Description
=
"泛型结算更新"
)]
[
RequiresAnyRole
(
SystemRoles
.
Everyone
)]
public
class
SettlementUpdate
:
RestfulExecutionGeneric
<
Settlement
>
{
public
Settlement
Item
{
get
;
set
;
}
public
List
<
Settlement
>
Items
{
get
;
set
;
}
public
override
object
OnExecutionGeneric
<
G
>(
IRequest
req
,
IResponse
res
)
{
(
Item
==
null
&&
Items
.
IsNullOrEmpty
()).
ThrowIfTrue
(
"请传入要结算的内容!"
);
if
(
Items
.
IsNullOrEmpty
())
Items
=
new
List
<
Settlement
>();
if
(
Item
!=
null
)
Items
.
Add
(
Item
);
var
connF
=
KiviiContext
.
GetOpenedDbConnection
<
Settlement
>();
var
connE
=
KiviiContext
.
GetOpenedDbConnection
<
G
>();
var
rtns
=
new
RestfulCreateResponse
<
Settlement
>();
rtns
.
Results
=
new
List
<
Settlement
>();
#
region
合并数据库连接
,
并启用事务
IDbTransaction
tranE
=
null
,
tranF
=
null
;
if
(
connE
.
ConnectionString
==
connF
.
ConnectionString
)
{
connF
.
Close
();
connF
=
connE
;
tranE
=
connE
.
OpenTransaction
();
}
else
{
tranE
=
connE
.
OpenTransaction
();
tranF
=
connF
.
OpenTransaction
();
}
#
endregion
try
{
foreach
(
var
item
in
Items
)
{
if
(
item
.
OnlyProperties
.
IsNullOrEmpty
())
continue
;
item
.
OnlyProperties
.
RemoveAll
(
o
=>
o
!=
"Remark"
&&
o
!=
"Summary"
);
if
(
item
.
OnlyProperties
.
IsNullOrEmpty
())
continue
;
connF
.
UpdateOnly
(
item
);
rtns
.
Results
.
Add
(
item
);
if
(
typeof
(
G
)
!=
typeof
(
Settlement
))
{
var
entitySettlement
=
new
EntitySettlement
<
G
>();
entitySettlement
.
PopulateInstance
(
item
);
connE
.
UpdateOnly
(
entitySettlement
);
}
}
tranE
?.
Commit
();
tranF
?.
Commit
();
}
catch
(
Exception
ex
)
{
tranE
?.
Rollback
();
tranF
?.
Rollback
();
throw
ex
;
}
return
rtns
;
}
}
[
Api
(
Description
=
"结算读取"
)]
[
Api
(
Description
=
"结算读取"
)]
[
RequiresAnyRole
(
SystemRoles
.
Everyone
)]
[
RequiresAnyRole
(
SystemRoles
.
Everyone
)]
public
class
SettlementRead
:
RestfulExecutionGeneric
<
Settlement
>
public
class
SettlementRead
:
RestfulExecutionGeneric
<
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