From 4c182b863d4766bae67ef421f097af8f97626774 Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期二, 21 十一月 2023 14:48:43 +0800
Subject: [PATCH] aps插入与查看采购单

---
 proto/purchase_wms/server.go |   40 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 37 insertions(+), 3 deletions(-)

diff --git a/proto/purchase_wms/server.go b/proto/purchase_wms/server.go
index 1e1e099..235def6 100644
--- a/proto/purchase_wms/server.go
+++ b/proto/purchase_wms/server.go
@@ -69,8 +69,14 @@
 	var purchaseRecord purchase.Purchase
 	purchaseRecord.PurchaseTypeId = int(pt.ID)
 	purchaseRecord.SupplierId = int(req.SupplierId)
-	purchaseRecord.OrderSource = "WMS鎺ㄩ��"
-	purchaseRecord.Name = "WMS琛ヨ揣"
+	if req.Source == "WMS" {
+		purchaseRecord.OrderSource = "WMS鎺ㄩ��"
+		purchaseRecord.Name = "WMS琛ヨ揣"
+	} else if req.Source == "APS" {
+		purchaseRecord.OrderSource = "APS鎺ㄩ��"
+		purchaseRecord.Name = "APS閲囪喘"
+	}
+
 	purchaseRecord.ID = 0
 	purchaseRecord.Status = purchase.OrderStatusConfirmed
 	purchaseRecord.HandledBy = "admin"
@@ -89,7 +95,11 @@
 	pp.Amount = purchaseRecord.Quantity
 	pp.Price = decimal.NewFromFloat(product.PurchasePrice)
 	pp.Total = purchaseRecord.TotalPrice
-	pp.Remark = "WMS琛ヨ揣"
+	if req.Source == "WMS" {
+		pp.Remark = "WMS琛ヨ揣"
+	} else if req.Source == "APS" {
+		pp.Remark = "APS閲囪喘"
+	}
 
 	err = global.GVA_DB.Transaction(func(tx *gorm.DB) error {
 		err = tx.Create(&purchaseRecord).Error
@@ -106,3 +116,27 @@
 	resp.PurchaseNumber = purchaseRecord.Number
 	return resp, nil
 }
+
+func (s *Server) GetPurchaseInfo(ctx context.Context, req *GetPurchaseInfoRequest) (*GetPurchaseInfoResponse, error) {
+	if len(req.PurchaseNumbers) == 0 {
+		return nil, errors.New("閲囪喘鍗曠紪鐮佷笉鑳戒负绌�")
+	}
+	var ps []purchase.Purchase
+	err := global.GVA_DB.Model(&purchase.Purchase{}).Where("number in (?)", req.PurchaseNumbers).Preload("Supplier").Find(&ps).Error
+	if err != nil {
+		return nil, err
+	}
+	infos := make([]*PurchaseInfo, 0)
+	for _, p := range ps {
+		var info PurchaseInfo
+		info.PurchaseNumber = p.Number
+		info.PurchaseName = p.Name
+		info.SupplierName = p.Supplier.Name
+		info.Amount = p.Quantity.IntPart()
+		info.Status = int64(p.Status)
+		infos = append(infos, &info)
+	}
+	resp := new(GetPurchaseInfoResponse)
+	resp.Infos = infos
+	return resp, nil
+}

--
Gitblit v1.8.0