Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mall.oytour.com
Project
Project
Details
Activity
Releases
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
黄奎
mall.oytour.com
Commits
ebf8d841
Commit
ebf8d841
authored
Sep 02, 2020
by
吴春
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'sdzq-ld' of
http://gitlab.oytour.com/Kui2/mall.oytour.com
into sdzq
parents
54bf9ceb
d9d3e1e5
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
221 additions
and
1 deletion
+221
-1
GuideCarController.cs
Mall.WebApi/Controllers/Product/GuideCarController.cs
+221
-1
No files found.
Mall.WebApi/Controllers/Product/GuideCarController.cs
View file @
ebf8d841
...
...
@@ -17,6 +17,7 @@ using Mall.Common;
using
Mall.Module.Product
;
using
Mall.AOP
;
using
Mall.Model.Extend.GuideCar
;
using
Mall.Common.Enum.Goods
;
using
DotNetCore.CAP.Infrastructure
;
namespace
Mall.WebApi.Controllers.MallBase
...
...
@@ -124,6 +125,209 @@ namespace Mall.WebApi.Controllers.MallBase
return
ApiResult
.
Success
(
""
,
pagelist
);
}
/// <summary>
/// 商品导出
/// </summary>
[
HttpPost
]
public
FileContentResult
GetProductGoodsListToExcel
()
{
var
parms
=
RequestParm
;
RB_Goods_Extend
demodel
=
JsonConvert
.
DeserializeObject
<
RB_Goods_Extend
>(
parms
.
msg
.
ToString
());
string
ExcelName
=
"司导商品列表"
+
DateTime
.
Now
.
ToString
(
"yyyyMMddHHmmss"
)
+
".xls"
;
List
<
ExcelDataSource
>
slist
=
new
List
<
ExcelDataSource
>();
ExcelDataSource
header
=
new
ExcelDataSource
()
{
ExcelRows
=
new
List
<
ExcelColumn
>(
30
)
{
new
ExcelColumn
(
value
:
"序号"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"商品名称"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"原价"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"成本价"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"商品详情"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"商品缩略图"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"商品轮播图"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"商品视频"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"单位"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"售价"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"是否使用规格"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"规格组"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"商品库存"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"虚拟销量"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"购物数量限制"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"单品满件包邮"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"单品满额包邮"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"赠送积分"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"赠送积分类型"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"可抵扣积分"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"可抵扣积分类型"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"允许多件累计折扣"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"自定义分享图片"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"自定义分享标题"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"排序"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"限购订单"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"是否单独区域购买"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"区域限购详情"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"规格详情"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"是否快速购买"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"是否热销"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
},
new
ExcelColumn
(
value
:
"是否面议"
)
{
CellWidth
=
15
,
HAlignmentEnum
=
HAlignmentEnum
.
CENTER
,
VAlignmentEnum
=
VAlignmentEnum
.
CENTER
}
}
};
slist
.
Add
(
header
);
try
{
demodel
.
TenantId
=
parms
.
TenantId
;
demodel
.
MallBaseId
=
parms
.
MallBaseId
;
var
list
=
guideCarModule
.
GetProductGoodsPageList
(
1
,
10000
,
out
long
count
,
demodel
);
#
region
组装数据
int
Num
=
0
;
foreach
(
var
item
in
list
)
{
Num
++;
string
GGZ
=
""
;
string
GGMX
=
""
;
if
(
item
.
IsCustomSpecification
==
1
)
{
var
obj
=
item
.
SpecificationList
.
Select
(
x
=>
new
{
x
.
Id
,
x
.
GoodsId
,
x
.
Name
,
x
.
Sort
,
x
.
EnabledImage
,
SpecificationValueList
=
x
.
SpecificationValueList
.
Select
(
z
=>
new
{
z
.
Id
,
z
.
GoodsId
,
z
.
SpecificationId
,
z
.
Name
,
z
.
Image
,
z
.
Sort
})
});
GGZ
=
JsonConvert
.
SerializeObject
(
obj
);
//序列化
GGMX
=
JsonConvert
.
SerializeObject
(
item
.
SpecificationPriceList
.
Select
(
x
=>
new
{
x
.
Id
,
x
.
GoodsId
,
x
.
SpecificationSort
,
x
.
SellingPrice
,
x
.
InventoryNum
,
x
.
GoodsWeight
,
x
.
GoodsNumbers
}));
}
else
{
List
<
object
>
objList
=
new
List
<
object
>();
List
<
object
>
SpecificationValueList
=
new
List
<
object
>();
SpecificationValueList
.
Add
(
new
{
Id
=
0
,
GoodsId
=
item
.
Id
,
SpecificationId
=
0
,
Name
=
item
.
DefaultSpecificationName
,
Image
=
""
,
Sort
=
0
});
objList
.
Add
(
new
{
Id
=
0
,
GoodsId
=
item
.
Id
,
Name
=
"规格"
,
Sort
=
0
,
EnabledImage
=
2
,
SpecificationValueList
});
GGZ
=
JsonConvert
.
SerializeObject
(
objList
);
//序列化
List
<
object
>
SpecificationPriceList
=
new
List
<
object
>();
SpecificationPriceList
.
Add
(
new
{
Id
=
0
,
GoodsId
=
item
.
Id
,
SpecificationSort
=
""
,
item
.
SellingPrice
,
item
.
InventoryNum
,
item
.
GoodsWeight
,
item
.
GoodsNumbers
});
GGMX
=
JsonConvert
.
SerializeObject
(
SpecificationPriceList
);
//序列化
}
string
AreaList
=
""
;
if
(
item
.
IsAreaBuy
==
1
)
{
AreaList
=
JsonConvert
.
SerializeObject
(
item
.
AreaList
.
Select
(
x
=>
new
{
x
.
Id
,
x
.
GoodsId
,
x
.
AreaId
,
x
.
AreaName
,
x
.
AreaType
}));
}
ExcelDataSource
datarow
=
new
ExcelDataSource
()
{
ExcelRows
=
new
List
<
ExcelColumn
>(
30
)
{
new
ExcelColumn
(
value
:
Num
.
ToString
()){
},
new
ExcelColumn
(
value
:
item
.
Name
){
},
new
ExcelColumn
(
value
:(
item
.
OriginalPrice
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
CostPrice
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:
item
.
GoodsDetails
){
},
new
ExcelColumn
(
value
:
item
.
CoverImage
){
},
new
ExcelColumn
(
value
:
item
.
CarouselImage
){
},
new
ExcelColumn
(
value
:
item
.
VideoAddress
){
},
new
ExcelColumn
(
value
:
item
.
Unit
){
},
new
ExcelColumn
(
value
:(
item
.
SellingPrice
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
IsCustomSpecification
??
2
).
ToString
()){
},
new
ExcelColumn
(
value
:
GGZ
.
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
InventoryNum
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
SalesNum
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
LimitBuyGoodsNum
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
FullNumPinkage
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
FullMoneyPinkage
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
IntegralPresent
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
IntegralPresentType
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
PointsDeduction
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
PointsDeductionType
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
IsMultipleDeduction
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:
item
.
CustomShareImage
??
""
){
},
new
ExcelColumn
(
value
:
item
.
CustomShareTitles
??
""
){
},
new
ExcelColumn
(
value
:(
item
.
Sort
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
LimitBuyOrderNum
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
IsAreaBuy
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:
AreaList
.
ToString
()){
},
new
ExcelColumn
(
value
:
GGMX
.
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
IsQuickBuy
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
IsSellWell
??
0
).
ToString
()){
},
new
ExcelColumn
(
value
:(
item
.
IsGoodsNegotiable
??
0
).
ToString
()){
},
}
,
ColumnHight
=
30
};
slist
.
Add
(
datarow
);
}
#
endregion
var
byteData
=
ExcelTempLateHelper
.
ToExcelExtend
(
slist
);
return
File
(
byteData
,
"application/octet-stream"
,
ExcelName
);
}
catch
(
Exception
ex
)
{
LogHelper
.
Write
(
ex
,
string
.
Format
(
"GetFileFromWebApi_requestData: {0}"
,
JsonHelper
.
Serialize
(
RequestParm
)));
var
byteData1
=
ExcelTempLateHelper
.
ToExcelExtend
(
slist
);
return
File
(
byteData1
,
"application/octet-stream"
,
ExcelName
);
}
}
/// <summary>
/// 获取商品详情
/// </summary>
...
...
@@ -242,6 +446,21 @@ namespace Mall.WebApi.Controllers.MallBase
});
}
/// <summary>
/// 获取服务类型枚举
/// </summary>
/// <returns></returns>
[
HttpPost
]
public
ApiResult
GetOrderListExportEnumList
()
{
var
list
=
EnumHelper
.
GetEnumList
(
typeof
(
GuideCarGoodsTypeEnum
));
return
ApiResult
.
Success
(
""
,
list
.
Select
(
x
=>
new
{
Name
=
x
.
Key
,
Id
=
Convert
.
ToInt32
(
x
.
Value
)
}));
}
/// <summary>
/// 新增修改商品信息
/// </summary>
...
...
@@ -329,6 +548,7 @@ namespace Mall.WebApi.Controllers.MallBase
#
endregion
demodel
.
IsCustomSpecification
??=
2
;
demodel
.
DefaultSpecificationName
=
"默认"
;
demodel
.
InventoryNum
??=
0
;
List
<
Model
.
Extend
.
User
.
RB_Distributor_Grade_Extend
>
DGradeList
=
null
;
List
<
Model
.
Extend
.
User
.
RB_Member_Grade_Extend
>
MGradeList
=
null
;
...
...
@@ -338,7 +558,6 @@ namespace Mall.WebApi.Controllers.MallBase
demodel
.
CustomShareTitles
??=
""
;
demodel
.
CustomShareImage
??=
""
;
demodel
.
GoodsStatus
??=
2
;
demodel
.
DefaultSpecificationName
??=
""
;
demodel
.
Sort
??=
0
;
demodel
.
CostPrice
??=
0
;
demodel
.
IsGoodsNegotiable
??=
2
;
...
...
@@ -484,6 +703,7 @@ namespace Mall.WebApi.Controllers.MallBase
demodel
.
SubName
??=
""
;
//副标题
demodel
.
IsLiveGoods
??=
2
;
//是否直播商品 1是 2否
demodel
.
SendArea
??=
""
;
//发货地
demodel
.
GoodsClassify
=
1
;
bool
flag
=
guideCarModule
.
SetProductGoodsInfo
(
demodel
);
if
(
flag
)
...
...
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