Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
DataCenter_Core2.1_20190520
Overview
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
bltdc
DataCenter_Core2.1_20190520
Commits
b71aa40e
Commit
b71aa40e
authored
Sep 18, 2021
by
zhouminghui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
17169819
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
52 additions
and
23 deletions
+52
-23
GetCashFlowStatementInput.cs
Bailun.DC.Models/Dtos/Finance/GetCashFlowStatementInput.cs
+1
-0
GetMonthStockWeightingSummaryDto.cs
....DC.Models/Dtos/Stock/GetMonthStockWeightingSummaryDto.cs
+8
-0
AccountingSubjectInput.cs
Bailun.DC.Models/WebApiModels/AccountingSubjectInput.cs
+1
-0
MonthPlatformProfitDto.cs
Bailun.DC.Models/WebApiModels/MonthPlatformProfitDto.cs
+1
-0
FinanceService.cs
Bailun.DC.Services/WebApiService/FinanceService.cs
+41
-23
No files found.
Bailun.DC.Models/Dtos/Finance/GetCashFlowStatementInput.cs
View file @
b71aa40e
...
@@ -29,5 +29,6 @@ namespace Bailun.DC.Models.Dtos.Finance
...
@@ -29,5 +29,6 @@ namespace Bailun.DC.Models.Dtos.Finance
/// 0付现 1成本
/// 0付现 1成本
/// </summary>
/// </summary>
public
int
Flag
{
get
;
set
;
}
public
int
Flag
{
get
;
set
;
}
public
string
[]
PaymentTime
{
get
;
set
;
}
}
}
}
}
Bailun.DC.Models/Dtos/Stock/GetMonthStockWeightingSummaryDto.cs
View file @
b71aa40e
...
@@ -45,6 +45,14 @@ namespace Bailun.DC.Models.Dtos.Stock
...
@@ -45,6 +45,14 @@ namespace Bailun.DC.Models.Dtos.Stock
}
}
}
}
}
}
public
class
AveragePrice
{
public
string
bailun_sku
{
get
;
set
;
}
/// <summary>
/// 加权平均价
/// </summary>
public
decimal
weighted_average_price
{
get
;
set
;
}
}
//public class GetMonthStockWeightingSummary
//public class GetMonthStockWeightingSummary
//{
//{
// public dynamic purchase { get; set; }
// public dynamic purchase { get; set; }
...
...
Bailun.DC.Models/WebApiModels/AccountingSubjectInput.cs
View file @
b71aa40e
...
@@ -11,6 +11,7 @@ namespace Bailun.DC.Models.WebApiModels
...
@@ -11,6 +11,7 @@ namespace Bailun.DC.Models.WebApiModels
public
string
Site
{
get
;
set
;
}
public
string
Site
{
get
;
set
;
}
public
string
[]
BillTime
{
get
;
set
;
}
public
string
[]
BillTime
{
get
;
set
;
}
public
string
BillMonth
{
get
;
set
;
}
public
string
BillMonth
{
get
;
set
;
}
public
string
DataCol
{
get
;
set
;
}
}
}
public
class
AccountingSubjectOptionsData
public
class
AccountingSubjectOptionsData
{
{
...
...
Bailun.DC.Models/WebApiModels/MonthPlatformProfitDto.cs
View file @
b71aa40e
...
@@ -19,6 +19,7 @@ namespace Bailun.DC.Models.WebApiModels
...
@@ -19,6 +19,7 @@ namespace Bailun.DC.Models.WebApiModels
public
string
DatacenterCol
{
get
;
set
;
}
public
string
DatacenterCol
{
get
;
set
;
}
public
string
Currency
{
get
;
set
;
}
public
string
Currency
{
get
;
set
;
}
public
string
EbayCurrency
{
get
;
set
;
}
public
string
ExchangeRate
{
get
;
set
;
}
public
string
ExchangeRate
{
get
;
set
;
}
public
decimal
?
AmountValRmb
{
get
;
set
;
}
public
decimal
?
AmountValRmb
{
get
;
set
;
}
public
string
Month
{
get
;
set
;
}
public
string
Month
{
get
;
set
;
}
...
...
Bailun.DC.Services/WebApiService/FinanceService.cs
View file @
b71aa40e
...
@@ -209,8 +209,8 @@ or (s1.is_lend = 2 and s1.lend_balance > 0) or (s1.is_lend = 2 and s1.cost_form
...
@@ -209,8 +209,8 @@ or (s1.is_lend = 2 and s1.lend_balance > 0) or (s1.is_lend = 2 and s1.cost_form
and s1.pay_time >= @PaymentTimeStart and s1.pay_time < @PaymentTimeEnd
and s1.pay_time >= @PaymentTimeStart and s1.pay_time < @PaymentTimeEnd
and s2.company_type = @CorporateEntity "
;
and s2.company_type = @CorporateEntity "
;
var
para
=
new
DynamicParameters
();
var
para
=
new
DynamicParameters
();
para
.
Add
(
"PaymentTimeStart"
,
input
.
PaymentTimeStart
.
Date
);
para
.
Add
(
"PaymentTimeStart"
,
Convert
.
ToDateTime
(
input
.
PaymentTime
[
0
])
.
Date
);
para
.
Add
(
"PaymentTimeEnd"
,
input
.
PaymentTimeEnd
.
AddDays
(
1
).
Date
);
para
.
Add
(
"PaymentTimeEnd"
,
Convert
.
ToDateTime
(
input
.
PaymentTime
[
1
])
.
AddDays
(
1
).
Date
);
para
.
Add
(
"CorporateEntity"
,
input
.
CorporateEntity
);
para
.
Add
(
"CorporateEntity"
,
input
.
CorporateEntity
);
if
(!
string
.
IsNullOrWhiteSpace
(
input
.
CompanyName
)
if
(!
string
.
IsNullOrWhiteSpace
(
input
.
CompanyName
)
&&
!
string
.
IsNullOrWhiteSpace
(
input
.
FeeType
))
&&
!
string
.
IsNullOrWhiteSpace
(
input
.
FeeType
))
...
@@ -225,6 +225,7 @@ and s2.company_type = @CorporateEntity ";
...
@@ -225,6 +225,7 @@ and s2.company_type = @CorporateEntity ";
para
.
Add
(
"offset"
,
(
input
.
PageIndex
-
1
)
*
input
.
PageNumber
);
para
.
Add
(
"offset"
,
(
input
.
PageIndex
-
1
)
*
input
.
PageNumber
);
}
}
}
}
sql
+=
" order by s1.pay_time"
;
var
data
=
SimpleCRUD
.
Query
<
ManagementCost
>(
sql
,
para
,
GlobalConfig
.
ConnectionString
).
ToList
();
var
data
=
SimpleCRUD
.
Query
<
ManagementCost
>(
sql
,
para
,
GlobalConfig
.
ConnectionString
).
ToList
();
foreach
(
var
item
in
data
)
foreach
(
var
item
in
data
)
{
{
...
@@ -366,8 +367,8 @@ SELECT company_name FROM dc_base_finance_company WHERE company_type = @companyTy
...
@@ -366,8 +367,8 @@ SELECT company_name FROM dc_base_finance_company WHERE company_type = @companyTy
) and s2.pay_time >= @paytimeStrat
) and s2.pay_time >= @paytimeStrat
and s2.pay_time < @paytimeEnd "
;
and s2.pay_time < @paytimeEnd "
;
var
para
=
new
DynamicParameters
();
var
para
=
new
DynamicParameters
();
para
.
Add
(
"paytimeStrat"
,
input
.
PaymentTimeStart
.
Date
);
para
.
Add
(
"paytimeStrat"
,
Convert
.
ToDateTime
(
input
.
PaymentTime
[
0
])
.
Date
);
para
.
Add
(
"paytimeEnd"
,
input
.
PaymentTimeEnd
.
AddDays
(
1
).
Date
);
para
.
Add
(
"paytimeEnd"
,
Convert
.
ToDateTime
(
input
.
PaymentTime
[
1
])
.
AddDays
(
1
).
Date
);
para
.
Add
(
"companyType"
,
input
.
CorporateEntity
);
para
.
Add
(
"companyType"
,
input
.
CorporateEntity
);
if
(
input
.
IsStatistics
.
HasValue
)
if
(
input
.
IsStatistics
.
HasValue
)
{
{
...
@@ -382,6 +383,7 @@ and s1.management_cost_name = @managementcostname";
...
@@ -382,6 +383,7 @@ and s1.management_cost_name = @managementcostname";
para
.
Add
(
"typename"
,
input
.
FeeType
);
para
.
Add
(
"typename"
,
input
.
FeeType
);
para
.
Add
(
"managementcostname"
,
input
.
CompanyName
);
para
.
Add
(
"managementcostname"
,
input
.
CompanyName
);
}
}
sql
+=
" order by s2.pay_time"
;
var
data
=
SimpleCRUD
.
Query
<
ManagementCost
>(
sql
,
para
,
GlobalConfig
.
ConnectionString
).
ToList
();
var
data
=
SimpleCRUD
.
Query
<
ManagementCost
>(
sql
,
para
,
GlobalConfig
.
ConnectionString
).
ToList
();
data
.
ForEach
((
item
)
=>
data
.
ForEach
((
item
)
=>
{
{
...
@@ -907,7 +909,7 @@ WHERE s1.month = @month ");
...
@@ -907,7 +909,7 @@ WHERE s1.month = @month ");
sql
.
Append
(
@"SELECT s1.platform AS PlatForm,s1.website AS WebSite,s1.orderno AS Orderno,
sql
.
Append
(
@"SELECT s1.platform AS PlatForm,s1.website AS WebSite,s1.orderno AS Orderno,
s1.datatime AS DataTime,s1.amountval AS AmountVal,
s1.datatime AS DataTime,s1.amountval AS AmountVal,
s2.feetype AS FeeType,s2.subjectcode AS Subjectcode,s2.projectcode AS ProjectCode,
s2.feetype AS FeeType,s2.subjectcode AS Subjectcode,s2.projectcode AS ProjectCode,
s2.financecategory AS FinanceCategory,s2.datacenter_col AS DatacenterCol,s2.currency AS Currency,
s2.financecategory AS FinanceCategory,s2.datacenter_col AS DatacenterCol,s2.currency AS Currency,
s1.currency AS EbayCurrency,
s1.exchange_rate AS ExchangeRate,s1.amountval_rmb AS AmountValRmb,s1.month AS Month
s1.exchange_rate AS ExchangeRate,s1.amountval_rmb AS AmountValRmb,s1.month AS Month
from order_fee_value_amazon s1
from order_fee_value_amazon s1
JOIN order_fee_config s2
JOIN order_fee_config s2
...
@@ -1172,12 +1174,12 @@ AND financecategoryname LIKE '{financecategory.Replace("产品", "")}%' ";
...
@@ -1172,12 +1174,12 @@ AND financecategoryname LIKE '{financecategory.Replace("产品", "")}%' ";
var
result
=
new
PageResult
<
List
<
MonthPlatformProfitDto
>>();
var
result
=
new
PageResult
<
List
<
MonthPlatformProfitDto
>>();
var
pageData
=
new
List
<
MonthPlatformProfitDto
>();
var
pageData
=
new
List
<
MonthPlatformProfitDto
>();
var
sumData
=
new
MonthPlatformProfitDto
();
var
sumData
=
new
MonthPlatformProfitDto
();
tasks
.
Add
(
Task
.
Factory
.
StartNew
(()
=>
tasks
.
Add
(
Task
.
Run
(()
=>
{
{
var
sql
=
BuildAccountingSubjectFlowSql
(
query
,
out
DynamicParameters
param
);
var
sql
=
BuildAccountingSubjectFlowSql
(
query
,
out
DynamicParameters
param
);
pageData
=
SimpleCRUD
.
Query
<
MonthPlatformProfitDto
>(
sql
,
param
,
GlobalConfig
.
ConnectionString_DW
).
ToList
();
pageData
=
SimpleCRUD
.
Query
<
MonthPlatformProfitDto
>(
sql
,
param
,
GlobalConfig
.
ConnectionString_DW
).
ToList
();
}));
}));
tasks
.
Add
(
Task
.
Factory
.
StartNew
(()
=>
tasks
.
Add
(
Task
.
Run
(()
=>
{
{
var
sqlSum
=
BuildAccountingSubjectFlowSql
(
query
,
out
DynamicParameters
paramSum
,
true
);
var
sqlSum
=
BuildAccountingSubjectFlowSql
(
query
,
out
DynamicParameters
paramSum
,
true
);
sumData
=
SimpleCRUD
.
Query
<
MonthPlatformProfitDto
>(
sqlSum
,
paramSum
,
GlobalConfig
.
ConnectionString_DW
).
FirstOrDefault
();
sumData
=
SimpleCRUD
.
Query
<
MonthPlatformProfitDto
>(
sqlSum
,
paramSum
,
GlobalConfig
.
ConnectionString_DW
).
FirstOrDefault
();
...
@@ -1199,7 +1201,7 @@ AND financecategoryname LIKE '{financecategory.Replace("产品", "")}%' ";
...
@@ -1199,7 +1201,7 @@ AND financecategoryname LIKE '{financecategory.Replace("产品", "")}%' ";
sql
.
Append
(
@"select t1.platform AS PlatForm,t1.website AS WebSite,t1.orderno AS Orderno,
sql
.
Append
(
@"select t1.platform AS PlatForm,t1.website AS WebSite,t1.orderno AS Orderno,
t1.datatime AS DataTime,t1.amountval AS AmountVal,
t1.datatime AS DataTime,t1.amountval AS AmountVal,
t2.feetype AS FeeType,t2.subjectcode AS Subjectcode,t2.projectcode AS ProjectCode,
t2.feetype AS FeeType,t2.subjectcode AS Subjectcode,t2.projectcode AS ProjectCode,
t2.financecategory AS FinanceCategory,t2.datacenter_col AS DatacenterCol,t2.currency AS Currency,
t2.financecategory AS FinanceCategory,t2.datacenter_col AS DatacenterCol,t2.currency AS Currency,
t1.currency AS EbayCurrency,
t1.exchange_rate AS ExchangeRate,t1.amountval_rmb AS AmountValRmb,t1.month AS Month from order_fee_value_amazon t1
t1.exchange_rate AS ExchangeRate,t1.amountval_rmb AS AmountValRmb,t1.month AS Month from order_fee_value_amazon t1
join order_fee_config t2 on t1.order_fee_config_id=t2.id "
);
join order_fee_config t2 on t1.order_fee_config_id=t2.id "
);
}
}
...
@@ -1226,6 +1228,11 @@ t1.exchange_rate AS ExchangeRate,t1.amountval_rmb AS AmountValRmb,t1.month AS Mo
...
@@ -1226,6 +1228,11 @@ t1.exchange_rate AS ExchangeRate,t1.amountval_rmb AS AmountValRmb,t1.month AS Mo
sql
.
Append
(
" and t1.month= @month "
);
sql
.
Append
(
" and t1.month= @month "
);
sqlparam
.
Add
(
"month"
,
query
.
BillMonth
);
sqlparam
.
Add
(
"month"
,
query
.
BillMonth
);
}
}
if
(!
string
.
IsNullOrWhiteSpace
(
query
.
DataCol
))
{
sql
.
Append
(
" and t2.datacenter_col= @datacenter_col "
);
sqlparam
.
Add
(
"datacenter_col"
,
query
.
DataCol
);
}
if
(!
string
.
IsNullOrEmpty
(
query
.
PlatForm
))
if
(!
string
.
IsNullOrEmpty
(
query
.
PlatForm
))
{
{
...
@@ -2047,10 +2054,9 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
...
@@ -2047,10 +2054,9 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
{
{
//todo:获取期初库存、上月加权数、本月入库
//todo:获取期初库存、上月加权数、本月入库
#if DEBUG
#if DEBUG
var
startTime
=
Convert
.
ToDateTime
(
"2021-08-01"
);
var
startTime
=
Convert
.
ToDateTime
(
"2021-08-01"
);
var
endTime
=
Convert
.
ToDateTime
(
"2021-09-01"
);
var
endTime
=
Convert
.
ToDateTime
(
"2021-09-01"
);
var
upprMonth
=
startTime
.
AddMonths
(-
1
).
Date
.
ToString
(
"yyyy-MM
-dd
"
);
var
upprMonth
=
startTime
.
AddMonths
(-
1
).
Date
.
ToString
(
"yyyy-MM"
);
#else
#else
var
endTime
=
DateTime
.
Now
.
Date
;
var
endTime
=
DateTime
.
Now
.
Date
;
endTime
=
new
DateTime
(
endTime
.
Year
,
endTime
.
Month
,
01
).
Date
;
endTime
=
new
DateTime
(
endTime
.
Year
,
endTime
.
Month
,
01
).
Date
;
...
@@ -2058,11 +2064,23 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
...
@@ -2058,11 +2064,23 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
var
upprMonth
=
startTime
.
AddMonths
(-
1
).
Date
.
ToString
(
"yyyy-MM-dd"
);
var
upprMonth
=
startTime
.
AddMonths
(-
1
).
Date
.
ToString
(
"yyyy-MM-dd"
);
#endif
#endif
for
(
int
i
=
0
;
i
<
100000
;
i
++)
for
(
int
i
=
1
;
i
<
100000
;
i
++)
{
{
var
skuData
=
GetMonthStockWeightingSkuList
(
startTime
,
endTime
,
i
,
20
);
//从采购单里获取基础sku数据
var
skuData
=
GetMonthStockWeightingSkuList
(
startTime
,
endTime
,
i
,
20
);
//从采购单里获取基础sku数据
if
(
skuData
.
Count
<=
0
)
break
;
if
(
skuData
.
Count
<=
0
)
break
;
var
uppr
=
GetWeightedAveragePrice
(
skuData
,
upprMonth
);
//获取上月加权平均数
var
purchaseData
=
GetThisMonthStockWeightingSummary
(
startTime
,
endTime
,
skuData
);
//获取本期入库数量及单价
if
(
purchaseData
.
Count
<=
0
)
continue
;
var
uppr
=
GetWeightedAveragePrice
(
skuData
,
upprMonth
);
//获取上月结存单价(加权平均数)
var
stock
=
GetMonthEndInventory
(
skuData
,
endTime
);
//获取上期结存数量(期末库存)
//todo:首月计算方式期初库存*采购报价+每次采购用采购数量*采购金额之和/总数量(期初库存、采购数量)
//todo:(上期结存数量×上期结存单价+本期入库数量×本期入库单价)÷(上期结存数量+本期入库数量)=加权平均数。
foreach
(
var
subItem
in
purchaseData
)
{
var
stocks
=
stock
.
FirstOrDefault
(
x
=>
x
.
bailun_sku
==
subItem
.
bailun_sku
)
??
new
GetMonthStockWeightingSummaryDto
();
var
upprs
=
uppr
.
FirstOrDefault
(
x
=>
x
.
bailun_sku
==
subItem
.
bailun_sku
);
//这里会出现新采购的sku是没有上月库存的
var
price
=
((
Convert
.
ToDecimal
(
stocks
.
on_hand_stock
)
*
(
upprs
!=
null
?
upprs
.
weighted_average_price
:
0
))
+
subItem
.
total_price
)
/
(
stocks
.
on_hand_stock
+
subItem
.
total_count
);
var
isSuccess
=
AddAddMonthStockWeighting
(
startTime
,
subItem
,
stocks
,
price
);
}
}
}
}
}
...
@@ -2073,7 +2091,7 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
...
@@ -2073,7 +2091,7 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
/// <param name="purchase"></param>
/// <param name="purchase"></param>
/// <param name="lastStock"></param>
/// <param name="lastStock"></param>
/// <returns></returns>
/// <returns></returns>
private
bool
AddAddMonthStockWeighting
(
DateTime
month
,
GetMonthStockWeightingSummaryDto
purchase
,
GetMonthStockWeightingSummaryDto
lastStock
)
private
bool
AddAddMonthStockWeighting
(
DateTime
month
,
GetMonthStockWeightingSummaryDto
purchase
,
GetMonthStockWeightingSummaryDto
lastStock
,
decimal
?
price
=
null
)
{
{
string
sql
=
@"
string
sql
=
@"
INSERT INTO `dc_month_stock_weighting` (`bailun_sku`, `weighted_month`, `weighted_average_price`,
INSERT INTO `dc_month_stock_weighting` (`bailun_sku`, `weighted_month`, `weighted_average_price`,
...
@@ -2085,7 +2103,7 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
...
@@ -2085,7 +2103,7 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
var
model
=
new
dc_month_stock_weighting
var
model
=
new
dc_month_stock_weighting
{
{
bailun_sku
=
purchase
.
bailun_sku
,
bailun_sku
=
purchase
.
bailun_sku
,
weighted_average_price
=
Math
.
Round
((
purchase
.
total_price
+
lastStock
.
total_price
)
/
(
purchase
.
total_count
+
lastStock
.
on_hand_stock
),
2
),
weighted_average_price
=
price
.
HasValue
?
Math
.
Round
(
price
.
Value
,
2
)
:
Math
.
Round
((
purchase
.
total_price
+
lastStock
.
total_price
)
/
(
purchase
.
total_count
+
lastStock
.
on_hand_stock
),
2
),
create_time
=
DateTime
.
Now
,
create_time
=
DateTime
.
Now
,
month_beginning_stock
=
lastStock
.
on_hand_stock
,
month_beginning_stock
=
lastStock
.
on_hand_stock
,
weighted_month
=
month
.
ToString
(
"yyyy-MM"
)
weighted_month
=
month
.
ToString
(
"yyyy-MM"
)
...
@@ -2235,12 +2253,6 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
...
@@ -2235,12 +2253,6 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
var
purchase
=
SimpleCRUD
.
Query
<
dynamic
>(
sqlPurchase
,
sqlPurchaseParam
,
GlobalConfig
.
ConnectionString
).
ToList
();
var
purchase
=
SimpleCRUD
.
Query
<
dynamic
>(
sqlPurchase
,
sqlPurchaseParam
,
GlobalConfig
.
ConnectionString
).
ToList
();
return
purchase
;
return
purchase
;
}
}
/// <summary>
/// 月期末库存
/// </summary>
/// <param name="sku"></param>
/// <param name="month"></param>
/// <returns></returns>
public
object
GetMonthStockWeightingSummary
(
string
sku
,
string
month
)
public
object
GetMonthStockWeightingSummary
(
string
sku
,
string
month
)
{
{
var
purchaseSql
=
@"SELECT temp.bailun_sku,SUM(temp.total_count*temp.price)AS total_price,SUM(temp.total_count) AS total_count,avg(temp.price) avg_price FROM(
var
purchaseSql
=
@"SELECT temp.bailun_sku,SUM(temp.total_count*temp.price)AS total_price,SUM(temp.total_count) AS total_count,avg(temp.price) avg_price FROM(
...
@@ -2261,11 +2273,17 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
...
@@ -2261,11 +2273,17 @@ AND platform_type = '{item.platform_type}' AND financecategoryname = '{item.fina
var
upper
=
SimpleCRUD
.
Query
<
decimal
>(
upperSql
,
null
,
GlobalConfig
.
ConnectionString
).
FirstOrDefault
();
var
upper
=
SimpleCRUD
.
Query
<
decimal
>(
upperSql
,
null
,
GlobalConfig
.
ConnectionString
).
FirstOrDefault
();
return
(
purchase
,
stock
,
upper
);
return
(
purchase
,
stock
,
upper
);
}
}
public
List
<(
string
,
decimal
)>
GetWeightedAveragePrice
(
List
<
string
>
sku
,
string
month
)
/// <summary>
/// 月加权平均数
/// </summary>
/// <param name="sku"></param>
/// <param name="month"></param>
/// <returns></returns>
public
List
<
AveragePrice
>
GetWeightedAveragePrice
(
List
<
string
>
sku
,
string
month
)
{
{
var
skuStr
=
$"
'(
{
string
.
Join
(
"','"
,
sku
)}
)'
"
;
var
skuStr
=
$"
('
{
string
.
Join
(
"','"
,
sku
)}
')
"
;
var
sql
=
$"select bailun_sku,weighted_average_price FROM dc_month_stock_weighting where weighted_month = '
{
month
}
' and bailun_sku in
{
skuStr
}
"
;
var
sql
=
$"select bailun_sku,weighted_average_price FROM dc_month_stock_weighting where weighted_month = '
{
month
}
' and bailun_sku in
{
skuStr
}
"
;
var
data
=
SimpleCRUD
.
Query
<
(
string
,
decimal
)
>(
sql
,
null
,
GlobalConfig
.
ConnectionString
).
ToList
();
var
data
=
SimpleCRUD
.
Query
<
AveragePrice
>(
sql
,
null
,
GlobalConfig
.
ConnectionString
).
ToList
();
return
data
;
return
data
;
}
}
private
string
BuildMonthStockSql
(
string
sku
,
string
month
,
out
DynamicParameters
param
)
private
string
BuildMonthStockSql
(
string
sku
,
string
month
,
out
DynamicParameters
param
)
...
...
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