diff --git a/BBWYB.Server.API/Controllers/PurchaserController.cs b/BBWYB.Server.API/Controllers/PurchaserController.cs
new file mode 100644
index 0000000..1c12c61
--- /dev/null
+++ b/BBWYB.Server.API/Controllers/PurchaserController.cs
@@ -0,0 +1,27 @@
+using BBWYB.Server.Business;
+using BBWYB.Server.Model.Dto;
+using Microsoft.AspNetCore.Mvc;
+
+namespace BBWYB.Server.API.Controllers
+{
+ public class PurchaserController : BaseApiController
+ {
+ private PurchaserBusiness purchaserBusiness;
+
+ public PurchaserController(IHttpContextAccessor httpContextAccessor, PurchaserBusiness purchaserBusiness) : base(httpContextAccessor)
+ {
+ this.purchaserBusiness = purchaserBusiness;
+ }
+
+ ///
+ /// 查询采购商列表
+ ///
+ ///
+ ///
+ [HttpPost]
+ public ListResponse QueryPurchaserList([FromBody] QueryPurchaserRequest request)
+ {
+ return purchaserBusiness.QueryPurchaserList(request);
+ }
+ }
+}
diff --git a/BBWYB.Server.Business/Purchaser/PurchaserBusiness.cs b/BBWYB.Server.Business/Purchaser/PurchaserBusiness.cs
new file mode 100644
index 0000000..62b6d0e
--- /dev/null
+++ b/BBWYB.Server.Business/Purchaser/PurchaserBusiness.cs
@@ -0,0 +1,20 @@
+using BBWYB.Common.Log;
+using BBWYB.Common.Models;
+using BBWYB.Server.Model.Dto;
+using Yitter.IdGenerator;
+
+namespace BBWYB.Server.Business
+{
+ public class PurchaserBusiness : BaseBusiness, IDenpendency
+ {
+ public PurchaserBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator) : base(fsql, nLogManager, idGenerator)
+ {
+
+ }
+
+ public ListResponse QueryPurchaserList(QueryPurchaserRequest request)
+ {
+ return new ListResponse();
+ }
+ }
+}
diff --git a/BBWYB.Server.Model/Db/PurchaseScheme/Purchaser.cs b/BBWYB.Server.Model/Db/Purchaser/Purchaser.cs
similarity index 78%
rename from BBWYB.Server.Model/Db/PurchaseScheme/Purchaser.cs
rename to BBWYB.Server.Model/Db/Purchaser/Purchaser.cs
index e4292ac..cbaf0a3 100644
--- a/BBWYB.Server.Model/Db/PurchaseScheme/Purchaser.cs
+++ b/BBWYB.Server.Model/Db/Purchaser/Purchaser.cs
@@ -1,4 +1,4 @@
-using FreeSql.DataAnnotations;
+using FreeSql.DataAnnotations;
namespace BBWYB.Server.Model.Db
{
@@ -23,16 +23,25 @@ namespace BBWYB.Server.Model.Db
public string Id2 { get; set; }
///
- /// 采购商名称
+ /// 发货地(产地)
///
[Column(StringLength = 50)]
- public string Name { get; set; }
+ public string Location { get; set; }
///
- /// 发货地
+ /// 经营模式 0贸易 1厂家
///
+ [Column(DbType = "int", MapType = typeof(int))]
+ public Enums.ManagmentMode? ManagmentMode { get; set; }
+
[Column(StringLength = 50)]
- public string Location { get; set; }
+ public string MemberId { get; set; }
+
+ ///
+ /// 采购商名称
+ ///
+ [Column(StringLength = 50)]
+ public string Name { get; set; }
///
/// 采购平台
@@ -40,19 +49,17 @@ namespace BBWYB.Server.Model.Db
[Column(MapType = typeof(int?))]
public Enums.Platform? Platform { get; set; }
-
- [Column(StringLength = 50, IsNullable = true)]
- public string MemberId { get; set; }
-
///
- /// 采购过的Sku数
+ /// 采购次数
///
- public int? PurchasedSkuCount { get; set; } = 0;
+ [Column(DbType = "int")]
+ public int? PurchasedCount { get; set; } = 0;
///
- /// 采购次数
+ /// 采购过的Sku数
///
- public int? PurchasedCount { get; set; } = 0;
+ [Column(DbType = "int")]
+ public int? PurchasedSkuCount { get; set; } = 0;
}
diff --git a/BBWYB.Server.Model/Db/Purchaser/PurchaserCategoryTagsBasicInfo.cs b/BBWYB.Server.Model/Db/Purchaser/PurchaserCategoryTagsBasicInfo.cs
new file mode 100644
index 0000000..341440a
--- /dev/null
+++ b/BBWYB.Server.Model/Db/Purchaser/PurchaserCategoryTagsBasicInfo.cs
@@ -0,0 +1,27 @@
+using FreeSql.DataAnnotations;
+
+namespace BBWYB.Server.Model.Db
+{
+
+ [Table(Name = "purchasercategorytagsbasicinfo", DisableSyncStructure = true)]
+ public partial class PurchaserCategoryTagsBasicInfo
+ {
+
+ [Column(DbType = "bigint", IsPrimary = true)]
+ public long Id { get; set; }
+
+ [Column(DbType = "datetime")]
+ public DateTime? CreateTime { get; set; }
+
+ [Column(StringLength = 50)]
+ public string Name { get; set; }
+
+ ///
+ /// 类型 主营类目=0 标签=1
+ ///
+ [Column(MapType = typeof(int?))]
+ public Enums.PurchaserBasicInfoType? Type { get; set; }
+
+ }
+
+}
diff --git a/BBWYB.Server.Model/Db/Purchaser/Purchaser_CategoryTagsBasicInfo_Relation.cs b/BBWYB.Server.Model/Db/Purchaser/Purchaser_CategoryTagsBasicInfo_Relation.cs
new file mode 100644
index 0000000..f7728b3
--- /dev/null
+++ b/BBWYB.Server.Model/Db/Purchaser/Purchaser_CategoryTagsBasicInfo_Relation.cs
@@ -0,0 +1,27 @@
+using FreeSql.DataAnnotations;
+
+namespace BBWYB.Server.Model.Db
+{
+
+ [Table(Name = "purchaser_categorytagsbasicinfo_relation", DisableSyncStructure = true)]
+ public partial class Purchaser_CategoryTagsBasicInfo_Relation
+ {
+
+ [Column(DbType = "bigint", IsPrimary = true)]
+ public long Id { get; set; }
+
+ [Column(DbType = "bigint")]
+ public long? BasicExtendedInfoId { get; set; }
+
+ ///
+ /// 关系类型 主营类目=0 标签=1
+ ///
+ [Column(DbType = "int")]
+ public Enums.PurchaserBasicInfoType? BasicType { get; set; }
+
+ [Column(StringLength = 50)]
+ public string PurchaserId { get; set; }
+
+ }
+
+}
diff --git a/BBWYB.Server.Model/Dto/Request/Purchaser/QueryPurchaserRequest.cs b/BBWYB.Server.Model/Dto/Request/Purchaser/QueryPurchaserRequest.cs
new file mode 100644
index 0000000..b8f6361
--- /dev/null
+++ b/BBWYB.Server.Model/Dto/Request/Purchaser/QueryPurchaserRequest.cs
@@ -0,0 +1,31 @@
+namespace BBWYB.Server.Model.Dto
+{
+ public class QueryPurchaserRequest
+ {
+ public string Spu { get; set; }
+
+ public string Sku { get; set; }
+
+ ///
+ /// 采购商Id集合
+ ///
+ public List PurchaserIdList { get; set; }
+
+ ///
+ /// 主营类目Id集合
+ ///
+ public List CategoryIdList { get; set; }
+
+ ///
+ /// 供应商产地
+ ///
+ public string Location { get; set; }
+
+ ///
+ /// 页码 从1开始
+ ///
+ public int PageIndex { get; set; }
+
+ public int PageSize { get; set; }
+ }
+}
diff --git a/BBWYB.Server.Model/Dto/Response/ListResponse.cs b/BBWYB.Server.Model/Dto/Response/ListResponse.cs
new file mode 100644
index 0000000..87b3d34
--- /dev/null
+++ b/BBWYB.Server.Model/Dto/Response/ListResponse.cs
@@ -0,0 +1,9 @@
+namespace BBWYB.Server.Model.Dto
+{
+ public class ListResponse where T : class
+ {
+ public List Items { get; set; }
+
+ public long TotalCount { get; set; }
+ }
+}
diff --git a/BBWYB.Server.Model/Dto/Response/Product/ProductSkuResponse.cs b/BBWYB.Server.Model/Dto/Response/Product/ProductSkuResponse.cs
new file mode 100644
index 0000000..7705489
--- /dev/null
+++ b/BBWYB.Server.Model/Dto/Response/Product/ProductSkuResponse.cs
@@ -0,0 +1,8 @@
+using BBWYB.Server.Model.Db;
+
+namespace BBWYB.Server.Model.Dto
+{
+ public class ProductSkuResponse : ProductSku
+ {
+ }
+}
diff --git a/BBWYB.Server.Model/Dto/Response/Purchaser/PurchaserCategoryTagsBasicInfoResponse.cs b/BBWYB.Server.Model/Dto/Response/Purchaser/PurchaserCategoryTagsBasicInfoResponse.cs
new file mode 100644
index 0000000..bcdce27
--- /dev/null
+++ b/BBWYB.Server.Model/Dto/Response/Purchaser/PurchaserCategoryTagsBasicInfoResponse.cs
@@ -0,0 +1,8 @@
+using BBWYB.Server.Model.Db;
+
+namespace BBWYB.Server.Model.Dto
+{
+ public class PurchaserCategoryTagsBasicInfoResponse: PurchaserCategoryTagsBasicInfo
+ {
+ }
+}
diff --git a/BBWYB.Server.Model/Dto/Response/Purchaser/PurchaserResponse.cs b/BBWYB.Server.Model/Dto/Response/Purchaser/PurchaserResponse.cs
new file mode 100644
index 0000000..33386fd
--- /dev/null
+++ b/BBWYB.Server.Model/Dto/Response/Purchaser/PurchaserResponse.cs
@@ -0,0 +1,64 @@
+using BBWYB.Server.Model.Db;
+
+namespace BBWYB.Server.Model.Dto
+{
+ public class PurchaserResponse : Purchaser
+ {
+ ///
+ /// 类目集合
+ ///
+ public IList CategoryList { get; set; }
+
+ ///
+ /// 标签集合
+ ///
+ public IList TagList { get; set; }
+
+ ///
+ /// 绑定SPU数
+ ///
+ public long? BindingSpuCount { get; set; }
+
+ ///
+ /// 采购SPU数
+ ///
+ public long? PurchasedSpuCount { get; set; }
+
+ ///
+ /// 绑定SKU数
+ ///
+ public long? BindingSkuCount { get; set; }
+
+ ///
+ /// 采购SKU数
+ ///
+ public long? PurchasedSkuCount { get; set; }
+
+ ///
+ /// 采购订单数
+ ///
+ public long? PurchaseOrderCount { get; set; }
+
+ ///
+ /// 采购金额
+ ///
+ public decimal? PurchaseAmount { get; set; }
+
+ ///
+ /// 上次采购时间
+ ///
+ public DateTime? LastPurchaseTime { get; set; }
+
+ ///
+ /// 最近30天具有采购行为的店铺SKU
+ ///
+ public IList Recent30dProductSku { get; set; }
+
+ public PurchaserResponse()
+ {
+ CategoryList = new List();
+ TagList = new List();
+ Recent30dProductSku = new List();
+ }
+ }
+}
diff --git a/BBWYB.Server.Model/Enums.cs b/BBWYB.Server.Model/Enums.cs
index dc80d1e..62132e6 100644
--- a/BBWYB.Server.Model/Enums.cs
+++ b/BBWYB.Server.Model/Enums.cs
@@ -330,5 +330,21 @@
{
首次采购 = 0, 首次优化 = 1, 再次优化 = 2
}
+
+ ///
+ /// 厂家经营模式
+ ///
+ public enum ManagmentMode
+ {
+ 贸易 = 0, 厂家 = 1
+ }
+
+ ///
+ /// 厂家扩展信息类型
+ ///
+ public enum PurchaserBasicInfoType
+ {
+ 主营类目 = 0, 标签 = 1
+ }
}
}