From c0f8f8d3a74dbdab4f6ab4926fc664d818fb50f2 Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期四, 25 四月 2024 16:59:22 +0800
Subject: [PATCH] 获取供应商产品

---
 api/v1/test/supplier.go        |   31 +++++++++++++++
 service/test/supplier.go       |   18 +++++++++
 router/test/supplier.go        |   11 +++--
 model/test/request/supplier.go |    5 ++
 4 files changed, 60 insertions(+), 5 deletions(-)

diff --git a/api/v1/test/supplier.go b/api/v1/test/supplier.go
index 674d309..6a2b489 100644
--- a/api/v1/test/supplier.go
+++ b/api/v1/test/supplier.go
@@ -226,3 +226,34 @@
 		response.OkWithMessage("淇敼鎴愬姛", c)
 	}
 }
+
+// GetSupplierProductList 鑾峰彇渚涘簲鍟嗘彁渚涗骇鍝佸垪琛�
+// @Tags Supplier
+// @Summary 鑾峰彇渚涘簲鍟嗘彁渚涗骇鍝佸垪琛�
+// @Security ApiKeyAuth
+// @accept application/json
+// @Produce application/json
+// @Param data query testReq.SupplierProduct true "鑾峰彇渚涘簲鍟嗘彁渚涗骇鍝佸垪琛�"
+// @Param Authorization	header string true "token"
+// @Success 200 {string} string "{"success":true,"data":{},"msg":"鑾峰彇鎴愬姛"}"
+// @Router /s/getSupplierProductList [get]
+func (sApi *SupplierApi) GetSupplierProductList(c *gin.Context) {
+	var params testReq.SupplierProduct
+	err := c.ShouldBindQuery(&params)
+	if err != nil {
+		response.FailWithMessage(err.Error(), c)
+		return
+	}
+	list, total, err := sService.GetSupplierProduct(params)
+	if err != nil {
+		global.GVA_LOG.Error("鑾峰彇澶辫触!", zap.Error(err))
+		response.FailWithMessage("鑾峰彇澶辫触", c)
+		return
+	}
+	response.OkWithDetailed(response.PageResult{
+		List:     list,
+		Total:    total,
+		Page:     params.Page,
+		PageSize: params.PageSize,
+	}, "鑾峰彇鎴愬姛", c)
+}
diff --git a/model/test/request/supplier.go b/model/test/request/supplier.go
index cfe319d..87d97cb 100644
--- a/model/test/request/supplier.go
+++ b/model/test/request/supplier.go
@@ -17,3 +17,8 @@
 	Id     uint `json:"id"`
 	Status int  `json:"status"`
 }
+
+type SupplierProduct struct {
+	request.PageInfo
+	SupplierId uint `json:"supplierId" form:"supplierId"`
+}
diff --git a/router/test/supplier.go b/router/test/supplier.go
index 5ab0466..ed2c375 100644
--- a/router/test/supplier.go
+++ b/router/test/supplier.go
@@ -14,11 +14,12 @@
 	sRouterWithoutRecord := Router.Group("s")
 	var sApi = v1.ApiGroupApp.TestApiGroup.SupplierApi
 	{
-		sRouter.POST("createSupplier", sApi.CreateSupplier)             // 鏂板缓Supplier
-		sRouter.DELETE("deleteSupplier", sApi.DeleteSupplier)           // 鍒犻櫎Supplier
-		sRouter.DELETE("deleteSupplierByIds", sApi.DeleteSupplierByIds) // 鎵归噺鍒犻櫎Supplier
-		sRouter.PUT("updateSupplier", sApi.UpdateSupplier)              // 鏇存柊Supplier
-		sRouter.POST("changeSupplierStatus", sApi.ChangeSupplierStatus) // 鏇存柊Supplier鐘舵��
+		sRouter.POST("createSupplier", sApi.CreateSupplier)                // 鏂板缓Supplier
+		sRouter.DELETE("deleteSupplier", sApi.DeleteSupplier)              // 鍒犻櫎Supplier
+		sRouter.DELETE("deleteSupplierByIds", sApi.DeleteSupplierByIds)    // 鎵归噺鍒犻櫎Supplier
+		sRouter.PUT("updateSupplier", sApi.UpdateSupplier)                 // 鏇存柊Supplier
+		sRouter.POST("changeSupplierStatus", sApi.ChangeSupplierStatus)    // 鏇存柊Supplier鐘舵��
+		sRouter.GET("getSupplierProductList", sApi.GetSupplierProductList) // 鑾峰彇渚涘簲鍟嗘彁渚涗骇鍝佸垪琛�
 	}
 	{
 		sRouterWithoutRecord.GET("findSupplier", sApi.FindSupplier)                       // 鏍规嵁ID鑾峰彇Supplier
diff --git a/service/test/supplier.go b/service/test/supplier.go
index 27f4a39..b4a792a 100644
--- a/service/test/supplier.go
+++ b/service/test/supplier.go
@@ -101,3 +101,21 @@
 	err := global.GVA_DB.Model(&test.Supplier{}).Count(&total).Error
 	return int(total), err
 }
+
+func (sService *SupplierService) GetSupplierProduct(info testReq.SupplierProduct) ([]test.SupplierMaterial, int64, error) {
+	limit := info.PageSize
+	offset := info.PageSize * (info.Page - 1)
+	// 鍒涘缓db
+	db := global.GVA_DB.Model(&test.SupplierMaterial{})
+	var ps []test.SupplierMaterial
+	var total int64
+	if info.SupplierId > 0 {
+		db = db.Where("supplier_id = ?", info.SupplierId)
+	}
+	err := db.Count(&total).Error
+	if err != nil {
+		return ps, total, err
+	}
+	err = db.Limit(limit).Offset(offset).Order("id desc").Preload("Supplier").Find(&ps).Error
+	return ps, total, err
+}

--
Gitblit v1.8.0