Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
data-center-auto
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
data-center-auto
Commits
1c82464b
Commit
1c82464b
authored
Jun 18, 2019
by
lizefeng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
周转表分页导出
parent
d998fa7d
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
81 additions
and
108 deletions
+81
-108
DataTableHelper.cs
AutoTurnOver/Common/DataTableHelper.cs
+14
-8
SkuAutoTurnController.cs
AutoTurnOver/Controllers/SkuAutoTurnController.cs
+67
-100
No files found.
AutoTurnOver/Common/DataTableHelper.cs
View file @
1c82464b
...
@@ -16,24 +16,30 @@ namespace AutoTurnOver.Common
...
@@ -16,24 +16,30 @@ namespace AutoTurnOver.Common
/// <param name="fileName">CSV的文件路径</param>
/// <param name="fileName">CSV的文件路径</param>
public
static
void
SaveCSV
(
DataTable
dt
,
string
fileName
)
public
static
void
SaveCSV
(
DataTable
dt
,
string
fileName
)
{
{
if
(!
Directory
.
Exists
(
Path
.
GetDirectoryName
(
fileName
)))
// 是否追加
var
existsPush
=
Directory
.
Exists
(
Path
.
GetDirectoryName
(
fileName
));
if
(!
existsPush
)
{
{
Directory
.
CreateDirectory
(
Path
.
GetDirectoryName
(
fileName
));
Directory
.
CreateDirectory
(
Path
.
GetDirectoryName
(
fileName
));
}
}
FileStream
fs
=
new
FileStream
(
fileName
,
System
.
IO
.
FileMode
.
Create
,
System
.
IO
.
FileAccess
.
Write
);
FileStream
fs
=
new
FileStream
(
fileName
,
System
.
IO
.
FileMode
.
OpenOr
Create
,
System
.
IO
.
FileAccess
.
Write
);
StreamWriter
sw
=
new
StreamWriter
(
fs
,
System
.
Text
.
Encoding
.
Default
);
StreamWriter
sw
=
new
StreamWriter
(
fs
,
System
.
Text
.
Encoding
.
Default
);
string
data
=
""
;
string
data
=
""
;
//写出列名称
if
(!
existsPush
)
for
(
int
i
=
0
;
i
<
dt
.
Columns
.
Count
;
i
++)
{
{
data
+=
dt
.
Columns
[
i
].
ColumnName
.
ToString
();
//写出列名称
if
(
i
<
dt
.
Columns
.
Count
-
1
)
for
(
int
i
=
0
;
i
<
dt
.
Columns
.
Count
;
i
++
)
{
{
data
+=
","
;
data
+=
dt
.
Columns
[
i
].
ColumnName
.
ToString
();
if
(
i
<
dt
.
Columns
.
Count
-
1
)
{
data
+=
","
;
}
}
}
sw
.
WriteLine
(
data
);
}
}
sw
.
WriteLine
(
data
);
//写出各行数据
//写出各行数据
for
(
int
i
=
0
;
i
<
dt
.
Rows
.
Count
;
i
++)
for
(
int
i
=
0
;
i
<
dt
.
Rows
.
Count
;
i
++)
...
...
AutoTurnOver/Controllers/SkuAutoTurnController.cs
View file @
1c82464b
...
@@ -138,6 +138,8 @@ namespace AutoTurnOver.Controllers
...
@@ -138,6 +138,8 @@ namespace AutoTurnOver.Controllers
{
{
try
try
{
{
var
fileName
=
AppContext
.
BaseDirectory
+
@"Result\RealtimeStock\周转表.csv"
;
var
m
=
new
Condition_AutoTurnOver
var
m
=
new
Condition_AutoTurnOver
{
{
searchType
=
searchType
,
searchType
=
searchType
,
...
@@ -158,112 +160,76 @@ namespace AutoTurnOver.Controllers
...
@@ -158,112 +160,76 @@ namespace AutoTurnOver.Controllers
var
total
=
0
;
var
total
=
0
;
var
service
=
new
Services
.
SkuAutoTurnServices
();
var
service
=
new
Services
.
SkuAutoTurnServices
();
var
list
=
service
.
List
(
m
,
0
,
int
.
MaxValue
,
ref
total
,
order
,
sort
).
Select
(
p
=>
new
int
page
=
1
;
int
rows
=
10000
;
while
(
true
)
{
{
p
.
bailun_sku
,
var
list
=
service
.
List
(
m
,
page
,
rows
,
ref
total
,
order
,
sort
);
p
.
sku_title
,
if
(
list
==
null
||
list
.
Count
<=
0
)
break
;
p
.
warehouse_code
,
page
++;
p
.
warehouse_name
,
p
.
quantity_minimum_order
,
DataTable
table
=
new
DataTable
();
p
.
quantity_final_advise
,
string
[]
cols
=
new
string
[]
{
"Sku"
,
"商品编码"
,
"内部编码"
,
"sku标题"
,
"仓库编码"
,
"仓库名称"
,
"MOQ"
,
p
.
quantity_promotion
,
p
.
quantity_inventory
,
p
.
turnover_days
,
p
.
quantity_safe_inventory
,
p
.
inspection_delivery
,
p
.
status
,
p
.
id
,
p
.
quantity_out_stock
,
p
.
supplier_delivery
,
p
.
transfer_delivery
,
p
.
quantity_purchase
,
p
.
quantity_transfer
,
p
.
forecast_fourteenday_sales
,
p
.
forecast_sevenday_sales
,
p
.
oneday_sales
,
p
.
forecast_oneday_sales2
,
p
.
product_inner_code
,
p
.
product_code
,
p
.
bailun_category_name
,
p
.
monitor_status
,
p
.
supplier_name
,
p
.
buyer_name
,
p
.
delivery_days_error
,
p
.
history_sevenday_sales
,
p
.
history_fourteenday_sales
,
p
.
history_thirtyday_sales
,
p
.
unit_price
,
p
.
weight
,
p
.
usable_stock
,
p
.
suppliers_name
,
p
.
history_sevenday_sales_ebay
,
p
.
history_fourteenday_sales_ebay
,
p
.
history_thirtyday_sales_ebay
,
p
.
shipped_stock
,
p
.
develop_time
,
p
.
has_tort
});
DataTable
table
=
new
DataTable
();
string
[]
cols
=
new
string
[]
{
"Sku"
,
"商品编码"
,
"内部编码"
,
"sku标题"
,
"仓库编码"
,
"仓库名称"
,
"MOQ"
,
"采购在途"
,
"调拨在途"
,
"昨日销量"
,
"明日销量"
,
"未来7天日均"
,
"未来14天日均"
,
"建议采购数"
,
"活动促销数量"
,
"采购在途"
,
"调拨在途"
,
"昨日销量"
,
"明日销量"
,
"未来7天日均"
,
"未来14天日均"
,
"建议采购数"
,
"活动促销数量"
,
"实际库存"
,
"安全库存"
,
"周转天数"
,
"供应商交期"
,
"质检入库天数"
,
"调拨头程天数"
,
"预测是否断货"
,
"缺货数量"
,
"监控状态"
,
"供应商"
,
"采购员"
,
"交期异常"
,
"实际库存"
,
"安全库存"
,
"周转天数"
,
"供应商交期"
,
"质检入库天数"
,
"调拨头程天数"
,
"预测是否断货"
,
"缺货数量"
,
"监控状态"
,
"供应商"
,
"采购员"
,
"交期异常"
,
"过去7天日均"
,
"过去14天日均"
,
"过去30天日均"
,
"重量"
,
"单价"
,
"实时库存"
,
"ebay最近7天日均销量"
,
"ebay最近14天日均销量"
,
"ebay最近30天日均销量"
,
"已发货库存"
,
"开发时间"
,
"是否侵权"
"过去7天日均"
,
"过去14天日均"
,
"过去30天日均"
,
"重量"
,
"单价"
,
"实时库存"
,
"ebay最近7天日均销量"
,
"ebay最近14天日均销量"
,
"ebay最近30天日均销量"
,
"已发货库存"
,
"开发时间"
,
"是否侵权"
};
};
foreach
(
var
item
in
cols
)
foreach
(
var
item
in
cols
)
{
{
table
.
Columns
.
Add
(
item
);
table
.
Columns
.
Add
(
item
);
}
foreach
(
var
itemData
in
list
)
{
DataRow
row
=
table
.
NewRow
();
row
[
"Sku"
]
=
itemData
.
bailun_sku
;
row
[
"商品编码"
]
=
itemData
.
product_code
;
row
[
"内部编码"
]
=
itemData
.
product_inner_code
;
row
[
"sku标题"
]
=
itemData
.
sku_title
;
row
[
"仓库编码"
]
=
itemData
.
warehouse_code
;
row
[
"仓库名称"
]
=
itemData
.
warehouse_name
;
row
[
"MOQ"
]
=
itemData
.
quantity_minimum_order
;
row
[
"采购在途"
]
=
itemData
.
quantity_purchase
;
row
[
"调拨在途"
]
=
itemData
.
quantity_transfer
;
row
[
"昨日销量"
]
=
itemData
.
oneday_sales
;
row
[
"明日销量"
]
=
itemData
.
forecast_oneday_sales2
;
row
[
"未来7天日均"
]
=
itemData
.
forecast_sevenday_sales
;
row
[
"未来14天日均"
]
=
itemData
.
forecast_fourteenday_sales
;
row
[
"建议采购数"
]
=
itemData
.
quantity_final_advise
;
row
[
"活动促销数量"
]
=
itemData
.
quantity_promotion
;
row
[
"实际库存"
]
=
itemData
.
quantity_inventory
;
row
[
"安全库存"
]
=
itemData
.
quantity_safe_inventory
;
row
[
"周转天数"
]
=
itemData
.
turnover_days
;
row
[
"供应商交期"
]
=
itemData
.
supplier_delivery
;
row
[
"质检入库天数"
]
=
itemData
.
inspection_delivery
;
row
[
"调拨头程天数"
]
=
itemData
.
transfer_delivery
;
row
[
"预测是否断货"
]
=
itemData
.
status
==
1
?
"是"
:
"否"
;
row
[
"缺货数量"
]
=
itemData
.
quantity_out_stock
;
row
[
"监控状态"
]
=
itemData
.
monitor_status
==
1
?
"停止监控"
:
"监控中"
;
row
[
"供应商"
]
=
itemData
.
supplier_name
;
row
[
"采购员"
]
=
itemData
.
buyer_name
;
row
[
"交期异常"
]
=
itemData
.
delivery_days_error
;
row
[
"过去7天日均"
]
=
itemData
.
history_sevenday_sales
;
row
[
"过去14天日均"
]
=
itemData
.
history_fourteenday_sales
;
row
[
"过去30天日均"
]
=
itemData
.
history_thirtyday_sales
;
row
[
"重量"
]
=
itemData
.
weight
;
row
[
"单价"
]
=
itemData
.
unit_price
;
row
[
"实时库存"
]
=
itemData
.
usable_stock
;
row
[
"ebay最近7天日均销量"
]
=
itemData
.
history_sevenday_sales_ebay
;
row
[
"ebay最近14天日均销量"
]
=
itemData
.
history_fourteenday_sales_ebay
;
row
[
"ebay最近30天日均销量"
]
=
itemData
.
history_thirtyday_sales_ebay
;
row
[
"已发货库存"
]
=
itemData
.
shipped_stock
;
row
[
"开发时间"
]
=
itemData
.
develop_time
;
row
[
"是否侵权"
]
=
itemData
.
has_tort
;
table
.
Rows
.
Add
(
row
);
}
DataTableHelper
.
SaveCSV
(
table
,
fileName
);
}
}
foreach
(
var
itemData
in
list
)
{
DataRow
row
=
table
.
NewRow
();
row
[
"Sku"
]
=
itemData
.
bailun_sku
;
row
[
"商品编码"
]
=
itemData
.
product_code
;
row
[
"内部编码"
]
=
itemData
.
product_inner_code
;
row
[
"sku标题"
]
=
itemData
.
sku_title
;
row
[
"仓库编码"
]
=
itemData
.
warehouse_code
;
row
[
"仓库名称"
]
=
itemData
.
warehouse_name
;
row
[
"MOQ"
]
=
itemData
.
quantity_minimum_order
;
row
[
"采购在途"
]
=
itemData
.
quantity_purchase
;
row
[
"调拨在途"
]
=
itemData
.
quantity_transfer
;
row
[
"昨日销量"
]
=
itemData
.
oneday_sales
;
row
[
"明日销量"
]
=
itemData
.
forecast_oneday_sales2
;
row
[
"未来7天日均"
]
=
itemData
.
forecast_sevenday_sales
;
row
[
"未来14天日均"
]
=
itemData
.
forecast_fourteenday_sales
;
row
[
"建议采购数"
]
=
itemData
.
quantity_final_advise
;
row
[
"活动促销数量"
]
=
itemData
.
quantity_promotion
;
row
[
"实际库存"
]
=
itemData
.
quantity_inventory
;
row
[
"安全库存"
]
=
itemData
.
quantity_safe_inventory
;
row
[
"周转天数"
]
=
itemData
.
turnover_days
;
row
[
"供应商交期"
]
=
itemData
.
supplier_delivery
;
row
[
"质检入库天数"
]
=
itemData
.
inspection_delivery
;
row
[
"调拨头程天数"
]
=
itemData
.
transfer_delivery
;
row
[
"预测是否断货"
]
=
itemData
.
status
==
1
?
"是"
:
"否"
;
row
[
"缺货数量"
]
=
itemData
.
quantity_out_stock
;
row
[
"监控状态"
]
=
itemData
.
monitor_status
==
1
?
"停止监控"
:
"监控中"
;
row
[
"供应商"
]
=
itemData
.
supplier_name
;
row
[
"采购员"
]
=
itemData
.
buyer_name
;
row
[
"交期异常"
]
=
itemData
.
delivery_days_error
;
row
[
"过去7天日均"
]
=
itemData
.
history_sevenday_sales
;
row
[
"过去14天日均"
]
=
itemData
.
history_fourteenday_sales
;
row
[
"过去30天日均"
]
=
itemData
.
history_thirtyday_sales
;
row
[
"重量"
]
=
itemData
.
weight
;
row
[
"单价"
]
=
itemData
.
unit_price
;
row
[
"实时库存"
]
=
itemData
.
usable_stock
;
row
[
"ebay最近7天日均销量"
]
=
itemData
.
history_sevenday_sales_ebay
;
row
[
"ebay最近14天日均销量"
]
=
itemData
.
history_fourteenday_sales_ebay
;
row
[
"ebay最近30天日均销量"
]
=
itemData
.
history_thirtyday_sales_ebay
;
row
[
"已发货库存"
]
=
itemData
.
shipped_stock
;
row
[
"开发时间"
]
=
itemData
.
develop_time
;
row
[
"是否侵权"
]
=
itemData
.
has_tort
;
table
.
Rows
.
Add
(
row
);
}
var
fileName
=
AppContext
.
BaseDirectory
+
@"Result\RealtimeStock\周转表.csv"
;
DataTableHelper
.
SaveCSV
(
table
,
fileName
);
var
memory
=
new
MemoryStream
();
var
memory
=
new
MemoryStream
();
using
(
var
stream
=
new
FileStream
(
fileName
,
FileMode
.
Open
))
using
(
var
stream
=
new
FileStream
(
fileName
,
FileMode
.
Open
))
...
@@ -275,6 +241,7 @@ namespace AutoTurnOver.Controllers
...
@@ -275,6 +241,7 @@ namespace AutoTurnOver.Controllers
}
}
catch
(
Exception
ex
)
catch
(
Exception
ex
)
{
{
Console
.
WriteLine
(
ex
.
Message
+
"----"
+
ex
.
StackTrace
);
return
new
ContentResult
()
{
Content
=
ex
.
Message
+
"----"
+
ex
.
StackTrace
};
return
new
ContentResult
()
{
Content
=
ex
.
Message
+
"----"
+
ex
.
StackTrace
};
}
}
...
...
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