selfcheer
2024-07-19 1572f45e72cc0fa15c029f9ee2a08474104435e6
api/v1/purchase/purchase.go
@@ -10,6 +10,7 @@
   "srm/model/common/response"
   "srm/model/purchase"
   purchaserequest "srm/model/purchase/request"
   "srm/proto/common"
   "srm/proto/purchase_wms"
   "strconv"
   "strings"
@@ -238,13 +239,13 @@
      return
   }
   warehouse := ""
   data, err := service.NewPurchaseService().GetPurchase(uint(params.Id))
   if err != nil {
      global.GVA_LOG.Error("获取失败!", zap.Error(err))
      response.FailWithMessage("获取失败", c)
      return
   }
   if params.Status == purchase.OrderStatusReceived {
      data, err := service.NewPurchaseService().GetPurchase(uint(params.Id))
      if err != nil {
         global.GVA_LOG.Error("获取失败!", zap.Error(err))
         response.FailWithMessage("获取失败", c)
         return
      }
      productList, err := service.NewPurchaseService().GetPurchaseProductList(uint(params.Id))
      if err != nil {
         global.GVA_LOG.Error("获取失败!", zap.Error(err))
@@ -260,11 +261,12 @@
      }
      client := purchase_wms.NewPurchaseServiceClient(purchase_wms.PurchaseConn)
      resp, err := client.PurchaseToWms(context.Background(), &purchase_wms.PurchaseToWmsRequest{
         Number:          data.Number,
         SupplierName:    data.Supplier.Name,
         Product:         product,
         Source:          "SRM_PURCHASE",
         OperationSource: purchase_wms.OperationSource_OperationSourcePurchase,
         Number:             data.Number,
         SupplierName:       data.Supplier.Name,
         Product:            product,
         Source:             "SRM_PURCHASE",
         OperationSource:    common.OperationSource_OperationSourcePurchase,
         SalesDetailsNumber: data.SourceOrder,
      })
      if err != nil {
         global.GVA_LOG.Error("grpc调用失败!", zap.Error(err))
@@ -397,14 +399,14 @@
   var operationInfos purchaseRes.OperationInfo
   productInfos := make([]purchaseRes.ProductInfo, 0)
   inWarehouseInfos := make([]purchaseRes.InWarehouseInfo, 0)
   productMap := make(map[string]*purchaseRes.ProductInfo)
   //productMap := make(map[string]*purchaseRes.ProductInfo)
   if len(info.Operations) > 0 {
      for _, operation := range info.Operations {
         var pi purchaseRes.ProductInfo
         var iwi purchaseRes.InWarehouseInfo
         if p, ok := productMap[operation.ProductId]; ok {
            pi = *p
         }
         //if p, ok := productMap[operation.ProductId]; ok {
         //   pi = *p
         //}
         pi.Number = operation.ProductId
         pi.Name = operation.ProductName
         iwi.Number = operation.ProductId
@@ -413,7 +415,7 @@
         iwi.Status = operation.Status
         iwi.Principal = data.Principal
         iwi.WarehouseName = data.Warehouse
         if operation.OverTime != "" {
         if operation.OverTime != "" && operation.Status == 4 {
            iwi.OverTime = operation.OverTime
            iwi.OverAmount = operation.Amount
            pi.OverAmount = pi.OverAmount + operation.Amount
@@ -436,7 +438,8 @@
            }
         }
         inWarehouseInfos = append(inWarehouseInfos, iwi)
         productMap[operation.ProductId] = &pi
         //productMap[operation.ProductId] = &pi
         productInfos = append(productInfos, pi)
      }
   } else {
      for _, products := range productList {
@@ -455,12 +458,13 @@
               break
            }
         }
         productMap[pi.Number] = &pi
         //productMap[pi.Number] = &pi
         productInfos = append(productInfos, pi)
      }
   }
   for _, productInfo := range productMap {
      productInfos = append(productInfos, *productInfo)
   }
   //for _, productInfo := range productMap {
   //   productInfos = append(productInfos, *productInfo)
   //}
   operationInfos.InWarehouseInfos = inWarehouseInfos
   operationInfos.ProductInfos = productInfos
@@ -681,13 +685,14 @@
      }
      client := purchase_wms.NewPurchaseServiceClient(purchase_wms.PurchaseConn)
      _, err = client.PurchaseToWms(context.Background(), &purchase_wms.PurchaseToWmsRequest{
         Number:          purchaseData.Number,
         SupplierName:    purchaseData.Supplier.Name,
         SupplierId:      int64(purchaseData.SupplierId),
         Product:         product,
         Source:          "SRM_PURCHASE",
         WarehouseName:   purchaseData.Warehouse,
         OperationSource: purchase_wms.OperationSource_OperationSourcePurchase,
         Number:             purchaseData.Number,
         SupplierName:       purchaseData.Supplier.Name,
         SupplierId:         int64(purchaseData.SupplierId),
         Product:            product,
         Source:             "SRM_PURCHASE",
         WarehouseName:      purchaseData.Warehouse,
         OperationSource:    common.OperationSource_OperationSourcePurchase,
         SalesDetailsNumber: purchaseData.SourceOrder,
      })
      if err != nil {
         global.GVA_LOG.Error("grpc调用失败!", zap.Error(err))
@@ -768,13 +773,14 @@
   }
   client := purchase_wms.NewPurchaseServiceClient(purchase_wms.PurchaseConn)
   _, err = client.PurchaseToWms(context.Background(), &purchase_wms.PurchaseToWmsRequest{
      Number:          purchaseData.Number,
      SupplierName:    purchaseData.Supplier.Name,
      SupplierId:      int64(purchaseData.SupplierId),
      Product:         product,
      Source:          "SRM_PURCHASE",
      WarehouseName:   purchaseData.Warehouse,
      OperationSource: purchase_wms.OperationSource_OperationSourcePurchase,
      Number:             purchaseData.Number,
      SupplierName:       purchaseData.Supplier.Name,
      SupplierId:         int64(purchaseData.SupplierId),
      Product:            product,
      Source:             "SRM_PURCHASE",
      WarehouseName:      purchaseData.Warehouse,
      OperationSource:    common.OperationSource_OperationSourcePurchase,
      SalesDetailsNumber: purchaseData.SourceOrder,
   })
   if err != nil {
      global.GVA_LOG.Error("grpc调用失败!", zap.Error(err))