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

---
 service/test/supplier.go |   45 ++++++++++++++++++++++++++++++++++++---------
 1 files changed, 36 insertions(+), 9 deletions(-)

diff --git a/service/test/supplier.go b/service/test/supplier.go
index 4ce559f..b4a792a 100644
--- a/service/test/supplier.go
+++ b/service/test/supplier.go
@@ -11,42 +11,42 @@
 }
 
 // CreateSupplier 鍒涘缓Supplier璁板綍
-// Author [piexlmax](https://github.com/piexlmax)
 func (sService *SupplierService) CreateSupplier(s *test.Supplier) (err error) {
 	err = global.GVA_DB.Create(s).Error
 	return err
 }
 
 // DeleteSupplier 鍒犻櫎Supplier璁板綍
-// Author [piexlmax](https://github.com/piexlmax)
 func (sService *SupplierService) DeleteSupplier(s test.Supplier) (err error) {
 	err = global.GVA_DB.Delete(&s).Error
 	return err
 }
 
 // DeleteSupplierByIds 鎵归噺鍒犻櫎Supplier璁板綍
-// Author [piexlmax](https://github.com/piexlmax)
 func (sService *SupplierService) DeleteSupplierByIds(ids request.IdsReq) (err error) {
 	err = global.GVA_DB.Delete(&[]test.Supplier{}, "id in ?", ids.Ids).Error
 	return err
 }
 
 // UpdateSupplier 鏇存柊Supplier璁板綍
-// Author [piexlmax](https://github.com/piexlmax)
 func (sService *SupplierService) UpdateSupplier(s test.Supplier) (err error) {
 	err = global.GVA_DB.Updates(&s).Error
 	return err
 }
 
 // GetSupplier 鏍规嵁id鑾峰彇Supplier璁板綍
-// Author [piexlmax](https://github.com/piexlmax)
 func (sService *SupplierService) GetSupplier(id uint) (s test.Supplier, err error) {
-	err = global.GVA_DB.Where("id = ?", id).First(&s).Error
+	err = global.GVA_DB.Model(&test.Supplier{}).Where("id = ?", id).First(&s).Error
+	return
+}
+
+// GetSupplierByNumber 鏍规嵁缂栫爜鑾峰彇Supplier璁板綍
+func (sService *SupplierService) GetSupplierByNumber(number string) (s test.Supplier, err error) {
+	err = global.GVA_DB.Model(&test.Supplier{}).Where("number = ?", number).Preload("Contract").First(&s).Error
 	return
 }
 
 // GetSupplierInfoList 鍒嗛〉鑾峰彇Supplier璁板綍
-// Author [piexlmax](https://github.com/piexlmax)
 func (sService *SupplierService) GetSupplierInfoList(info testReq.SupplierSearch) (list []test.Supplier, total int64, err error) {
 	limit := info.PageSize
 	offset := info.PageSize * (info.Page - 1)
@@ -64,7 +64,7 @@
 		db = db.Where("number LIKE ?", "%"+info.Number+"%")
 	}
 	if info.SupplierType != "" {
-		db = db.Where("supplier_type LIKE ?", "%"+info.SupplierType+"%")
+		db = db.Where("srm_supplier_type LIKE ?", "%"+info.SupplierType+"%")
 	}
 	if info.Industry != "" {
 		db = db.Where("industry LIKE ?", "%"+info.Industry+"%")
@@ -78,12 +78,15 @@
 	if info.CreatedAt != nil {
 		db = db.Where("created_at = ?", info.CreatedAt)
 	}
+	if info.Status != 0 {
+		db = db.Where("status = ?", info.Status)
+	}
 	err = db.Count(&total).Error
 	if err != nil {
 		return
 	}
 
-	err = db.Debug().Limit(limit).Offset(offset).Preload("Contract").Find(&ss).Error
+	err = db.Debug().Limit(limit).Offset(offset).Order("created_at desc").Preload("Contract").Find(&ss).Error
 	return ss, total, err
 }
 
@@ -92,3 +95,27 @@
 	err = global.GVA_DB.Model(&test.Supplier{}).Where("id = ?", id).Update("status", status).Error
 	return err
 }
+
+func (sService *SupplierService) MaxAutoIncr() (int, error) {
+	var total int64
+	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