Commit 7136a547 authored by liudong1993's avatar liudong1993

商品导出

parent d9d3e1e5
...@@ -10,5 +10,9 @@ namespace Mall.Model.Extend.GuideCar ...@@ -10,5 +10,9 @@ namespace Mall.Model.Extend.GuideCar
public List<string> PicList { get; set; } public List<string> PicList { get; set; }
public string CardIds { get; set; } public string CardIds { get; set; }
/// <summary>
/// 颜色ids
/// </summary>
public string CarColorIds { get; set; }
} }
} }
...@@ -19,5 +19,9 @@ namespace Mall.Model.Extend.GuideCar ...@@ -19,5 +19,9 @@ namespace Mall.Model.Extend.GuideCar
/// 商品数 /// 商品数
/// </summary> /// </summary>
public int GoodsNum { get; set; } public int GoodsNum { get; set; }
/// <summary>
/// ids
/// </summary>
public string GuideCarIds { get; set; }
} }
} }
...@@ -15,6 +15,10 @@ namespace Mall.Model.Extend.GuideCar ...@@ -15,6 +15,10 @@ namespace Mall.Model.Extend.GuideCar
[DB(ConnectionName = "DefaultConnection")] [DB(ConnectionName = "DefaultConnection")]
public class RB_GuideCar_Guide_Extend : RB_GuideCar_Guide public class RB_GuideCar_Guide_Extend : RB_GuideCar_Guide
{ {
/// <summary>
/// 导游ids
/// </summary>
public string GuideIds { get; set; }
/// <summary> /// <summary>
/// 站点名称 /// 站点名称
/// </summary> /// </summary>
......
...@@ -23,6 +23,27 @@ namespace Mall.Model.Extend.Product ...@@ -23,6 +23,27 @@ namespace Mall.Model.Extend.Product
/// 线路描述list /// 线路描述list
/// </summary> /// </summary>
public List<string> LineDescriptionList { get; set; } public List<string> LineDescriptionList { get; set; }
#region 司导信息
/// <summary>
/// 站点名称
/// </summary>
public string SiteName { get; set; }
/// <summary>
/// 导游名称
/// </summary>
public string GuideName { get; set; }
/// <summary>
/// 车辆名称
/// </summary>
public string CarName { get; set; }
/// <summary>
/// 车辆颜色
/// </summary>
public string CarColorName { get; set; }
#endregion
/// <summary> /// <summary>
/// 微店id /// 微店id
/// </summary> /// </summary>
......
...@@ -303,6 +303,67 @@ namespace Mall.Module.Product ...@@ -303,6 +303,67 @@ namespace Mall.Module.Product
return list; return list;
} }
/// <summary>
/// 获取后台商品分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Goods_Extend> GetProductGoodsPageListToExcel(int pageIndex, int pageSize, out long count, RB_Goods_Extend demodel)
{
var list = goodsRepository.GetPageListForCar(pageIndex, pageSize, out count, demodel);
if (list.Any())
{
//查询分类
string ids = string.Join(",", list.Select(x => x.Id));
var clist = goods_CategoryRepository.GetList(new RB_Goods_Category_Extend() { GoodsIds = ids, TenantId = demodel.TenantId, MallBaseId = demodel.MallBaseId });
var olist = goods_OrderRepository.GetGoodsOrderNum(ids);
#region 查询司导信息
string siteIds = string.Join(",", list.Select(x => x.SiteId));
var sitelist = SiteRepository.GetList(new RB_GuideCar_Site_Extend() { SiteIds = siteIds });
string guideIds = string.Join(",", list.Select(x => x.GuideId));
var guidelist = GuideRepository.GetLogisticsRulesList(new RB_GuideCar_Guide_Extend() { GuideIds = guideIds });
string carids = string.Join(",", list.Select(x => x.CarId));
var carlist = GuideCarRepository.GetGuideCarCarList(new RB_GuideCar_Car_Extend() { GuideCarIds = carids });
string colorIds = string.Join(",", list.Select(x => x.CarColorId));
var carcolorlist = CarColorRepository.GetCarColorList(new RB_GuideCar_CarColor_Extend() { CarColorIds = colorIds });
#endregion
foreach (var item in list)
{
item.CategoryList = clist.Where(x => x.GoodsId == item.Id).ToList();
//轮播图
item.CoverImage = "";
item.CarouselImageList = new List<RB_ImageCommonModel>();
if (!string.IsNullOrEmpty(item.CarouselImage) && item.CarouselImage != "[]")
{
List<string> CarouselIdList = JsonConvert.DeserializeObject<List<string>>(item.CarouselImage);
//封面图
item.CoverImage = CarouselIdList[0];
//轮播图
foreach (var qitem in CarouselIdList)
{
item.CarouselImageList.Add(new RB_ImageCommonModel()
{
Id = 0,
Name = "",
Path = qitem
});
}
}
item.GoodsBuyNum = olist.Where(x => x.GoodsId == item.Id).FirstOrDefault()?.OrderNum ?? 0;
item.SiteName = sitelist.Where(x => x.ID == item.SiteId).FirstOrDefault()?.SiteName ?? "";
item.GuideName = guidelist.Where(x => x.ID == item.GuideId).FirstOrDefault()?.Name ?? "";
item.CarName = carlist.Where(x => x.ID == item.CarId).FirstOrDefault()?.Name ?? "";
item.CarColorName = carcolorlist.Where(x => x.ID == item.CarColorId).FirstOrDefault()?.ColorName ?? "";
}
}
return list;
}
/// <summary> /// <summary>
/// 获取商品详情 /// 获取商品详情
/// </summary> /// </summary>
......
...@@ -73,6 +73,10 @@ namespace Mall.Repository.GuideCar ...@@ -73,6 +73,10 @@ namespace Mall.Repository.GuideCar
{ {
builder.Append($" AND {nameof(RB_GuideCar_Car_Extend.ID)}={query.ID}"); builder.Append($" AND {nameof(RB_GuideCar_Car_Extend.ID)}={query.ID}");
} }
if (!string.IsNullOrEmpty(query.GuideCarIds))
{
builder.Append($" AND {nameof(RB_GuideCar_Car_Extend.ID)} in({query.GuideCarIds})");
}
if (query.TenantId > 0) if (query.TenantId > 0)
{ {
builder.Append($" AND {nameof(RB_GuideCar_Car_Extend.TenantId)}={query.TenantId}"); builder.Append($" AND {nameof(RB_GuideCar_Car_Extend.TenantId)}={query.TenantId}");
......
...@@ -119,6 +119,10 @@ namespace Mall.Repository.GuideCar ...@@ -119,6 +119,10 @@ namespace Mall.Repository.GuideCar
{ {
builder.Append($" AND a.{nameof(RB_GuideCar_Guide_Extend.ID)}={query.ID}"); builder.Append($" AND a.{nameof(RB_GuideCar_Guide_Extend.ID)}={query.ID}");
} }
if (!string.IsNullOrEmpty(query.GuideIds))
{
builder.Append($" AND a.{nameof(RB_GuideCar_Guide_Extend.ID)} in({query.GuideIds})");
}
if (query.IsEnable > -1) if (query.IsEnable > -1)
{ {
builder.Append($" AND a.{nameof(RB_GuideCar_Guide_Extend.IsEnable)}={query.IsEnable}"); builder.Append($" AND a.{nameof(RB_GuideCar_Guide_Extend.IsEnable)}={query.IsEnable}");
......
...@@ -57,7 +57,7 @@ namespace Mall.Repository.GuideCar ...@@ -57,7 +57,7 @@ namespace Mall.Repository.GuideCar
/// <param name="rowCount">总条数</param> /// <param name="rowCount">总条数</param>
/// <param name="query">查询条件</param> /// <param name="query">查询条件</param>
/// <returns></returns> /// <returns></returns>
public List<RB_GuideCar_Site_Extend> GetLogisticsRulesList(RB_GuideCar_Site_Extend query) public List<RB_GuideCar_Site_Extend> GetList(RB_GuideCar_Site_Extend query)
{ {
StringBuilder builder = new StringBuilder(); StringBuilder builder = new StringBuilder();
builder.Append($" SELECT * FROM {TableName} WHERE {nameof(RB_GuideCar_Site_Extend.Status)}=0 "); builder.Append($" SELECT * FROM {TableName} WHERE {nameof(RB_GuideCar_Site_Extend.Status)}=0 ");
......
...@@ -146,15 +146,7 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -146,15 +146,7 @@ namespace Mall.WebApi.Controllers.MallBase
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 },
...@@ -163,13 +155,16 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -163,13 +155,16 @@ namespace Mall.WebApi.Controllers.MallBase
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 }
} }
}; };
...@@ -179,82 +174,12 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -179,82 +174,12 @@ namespace Mall.WebApi.Controllers.MallBase
{ {
demodel.TenantId = parms.TenantId; demodel.TenantId = parms.TenantId;
demodel.MallBaseId = parms.MallBaseId; demodel.MallBaseId = parms.MallBaseId;
var list = guideCarModule.GetProductGoodsPageList(1, 10000, out long count, demodel); var list = guideCarModule.GetProductGoodsPageListToExcel(1, 10000, out long count, demodel);
#region 组装数据 #region 组装数据
int Num = 0; int Num = 0;
foreach (var item in list) foreach (var item in list)
{ {
Num++; 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 = ""; string AreaList = "";
if (item.IsAreaBuy == 1) if (item.IsAreaBuy == 1)
{ {
...@@ -279,17 +204,7 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -279,17 +204,7 @@ namespace Mall.WebApi.Controllers.MallBase
new ExcelColumn(value:item.CoverImage){ }, new ExcelColumn(value:item.CoverImage){ },
new ExcelColumn(value:item.CarouselImage){ }, new ExcelColumn(value:item.CarouselImage){ },
new ExcelColumn(value:item.VideoAddress){ }, new ExcelColumn(value:item.VideoAddress){ },
new ExcelColumn(value:item.Unit){ },
new ExcelColumn(value:(item.SellingPrice??0).ToString()){ }, 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.IntegralPresent??0).ToString()){ },
new ExcelColumn(value:(item.IntegralPresentType??0).ToString()){ }, new ExcelColumn(value:(item.IntegralPresentType??0).ToString()){ },
new ExcelColumn(value:(item.PointsDeduction??0).ToString()){ }, new ExcelColumn(value:(item.PointsDeduction??0).ToString()){ },
...@@ -298,15 +213,16 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -298,15 +213,16 @@ namespace Mall.WebApi.Controllers.MallBase
new ExcelColumn(value:item.CustomShareImage ??""){ }, new ExcelColumn(value:item.CustomShareImage ??""){ },
new ExcelColumn(value:item.CustomShareTitles ??""){ }, new ExcelColumn(value:item.CustomShareTitles ??""){ },
new ExcelColumn(value:(item.Sort??0).ToString()){ }, new ExcelColumn(value:(item.Sort??0).ToString()){ },
new ExcelColumn(value:(item.LimitBuyOrderNum??0).ToString()){ },
new ExcelColumn(value:(item.IsAreaBuy??0).ToString()){ }, new ExcelColumn(value:(item.IsAreaBuy??0).ToString()){ },
new ExcelColumn(value:AreaList.ToString()){ }, new ExcelColumn(value:AreaList.ToString()){ },
new ExcelColumn(value:GGMX.ToString()){ }, new ExcelColumn(value:item.SiteName){ },
new ExcelColumn(value:item.GuideName){ },
new ExcelColumn(value:(item.IsQuickBuy??0).ToString()){ }, new ExcelColumn(value:item.CarName){ },
new ExcelColumn(value:(item.IsSellWell??0).ToString()){ }, new ExcelColumn(value:item.CarColorName){ },
new ExcelColumn(value:(item.IsGoodsNegotiable??0).ToString()){ }, new ExcelColumn(value:item.CarNumber){ },
new ExcelColumn(value:item.IsSpell==1?"是":"否"){ },
new ExcelColumn(value:(item.RideNum??0).ToString()){ },
new ExcelColumn(value:(item.AdvanceDay??0).ToString()+"天"){ },
} }
, ,
ColumnHight = 30 ColumnHight = 30
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment