From e517b1a99b6edfa24c8cc4e109a6a10488f23b6a Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期一, 28 八月 2023 11:51:55 +0800
Subject: [PATCH] merge

---
 api/v1/purchase/purchase.go |  194 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 194 insertions(+), 0 deletions(-)

diff --git a/api/v1/purchase/purchase.go b/api/v1/purchase/purchase.go
new file mode 100644
index 0000000..d68781c
--- /dev/null
+++ b/api/v1/purchase/purchase.go
@@ -0,0 +1,194 @@
+package purchase
+
+import (
+	"github.com/gin-gonic/gin"
+	"go.uber.org/zap"
+	"srm/global"
+	"srm/model/common/request"
+	"srm/model/common/response"
+	purchaserequest "srm/model/purchase/request"
+	"strconv"
+
+	//"srm/model/purchase"
+
+	//"srm/model/purchase"
+	purchaseRes "srm/model/purchase/response"
+	service "srm/service/purchase"
+	"srm/utils"
+)
+
+type PurchaseApi struct{}
+
+// CreatePurchase
+// @Tags      Purchase
+// @Summary   鍒涘缓閲囪喘鍗�
+// @Security  ApiKeyAuth
+// @accept    application/json
+// @Produce   application/json
+// @Param     data  body     purchaserequest.AddPurchase   true  "閲囪喘鍗曠敤鎴峰悕, 閲囪喘鍗曟墜鏈哄彿鐮�"
+// @Success   200   {object}  response.Response{msg=string}  "鍒涘缓閲囪喘鍗�"
+// @Router    /purchase/purchase [post]
+func (e *PurchaseApi) CreatePurchase(c *gin.Context) {
+	var params purchaserequest.AddPurchase
+	err := c.ShouldBindJSON(&params)
+	if err != nil {
+		response.FailWithMessage(err.Error(), c)
+		return
+	}
+	err = service.NewPurchaseService().CreatePurchase(params)
+	if err != nil {
+		global.GVA_LOG.Error("鍒涘缓澶辫触!", zap.Error(err))
+		response.FailWithMessage("鍒涘缓澶辫触", c)
+		return
+	}
+	response.OkWithMessage("鍒涘缓鎴愬姛", c)
+}
+
+// DeletePurchase
+// @Tags      Purchase
+// @Summary   鍒犻櫎閲囪喘鍗�
+// @Security  ApiKeyAuth
+// @accept    application/json
+// @Produce   application/json
+// @Param		id	path		int	true	"閲囪喘鍗旾D"
+// @Success   200   {object}  response.Response{msg=string}  "鍒犻櫎閲囪喘鍗�"
+// @Router    /purchase/purchase/{id} [delete]
+func (e *PurchaseApi) DeletePurchase(c *gin.Context) {
+	id, _ := strconv.Atoi(c.Param("id"))
+	if id == 0 {
+		response.FailWithMessage("鍙傛暟缂哄け", c)
+		return
+	}
+	err := service.NewPurchaseService().DeletePurchase(uint(id))
+	if err != nil {
+		global.GVA_LOG.Error("鍒犻櫎澶辫触!", zap.Error(err))
+		response.FailWithMessage("鍒犻櫎澶辫触", c)
+		return
+	}
+	response.OkWithMessage("鍒犻櫎鎴愬姛", c)
+}
+
+// UpdatePurchase
+// @Tags      Purchase
+// @Summary   鏇存柊閲囪喘鍗曚俊鎭�
+// @Security  ApiKeyAuth
+// @accept    application/json
+// @Produce   application/json
+// @Param     data  body      purchaserequest.AddPurchase            true  "閲囪喘鍗旾D, 閲囪喘鍗曚俊鎭�"
+// @Success   200   {object}  response.Response{msg=string}  "鏇存柊閲囪喘鍗曚俊鎭�"
+// @Router    /purchase/purchase [put]
+func (e *PurchaseApi) UpdatePurchase(c *gin.Context) {
+	var params purchaserequest.AddPurchase
+	err := c.ShouldBindJSON(&params)
+	if err != nil {
+		response.FailWithMessage(err.Error(), c)
+		return
+	}
+	err = utils.Verify(params.Purchase.GVA_MODEL, utils.IdVerify)
+	if err != nil {
+		response.FailWithMessage(err.Error(), c)
+		return
+	}
+	err = service.NewPurchaseService().UpdatePurchase(&params)
+	if err != nil {
+		global.GVA_LOG.Error("鏇存柊澶辫触!", zap.Error(err))
+		response.FailWithMessage("鏇存柊澶辫触", c)
+		return
+	}
+	response.OkWithMessage("鏇存柊鎴愬姛", c)
+}
+
+// GetPurchase
+// @Tags      Purchase
+// @Summary   鑾峰彇鍗曚竴閲囪喘鍗曚俊鎭�
+// @Security  ApiKeyAuth
+// @accept    application/json
+// @Produce   application/json
+// @Param		id	path		int	true	"閲囪喘鍗旾D"                                           true  "閲囪喘鍗旾D"
+// @Success   200   {object}  response.Response{data=purchaseRes.PurchaseResponse,msg=string}  "鑾峰彇鍗曚竴閲囪喘鍗曚俊鎭�,杩斿洖鍖呮嫭閲囪喘鍗曡鎯�"
+// @Router    /purchase/purchase/{id} [get]
+func (e *PurchaseApi) GetPurchase(c *gin.Context) {
+	id, _ := strconv.Atoi(c.Param("id"))
+	if id == 0 {
+		response.FailWithMessage("鍙傛暟缂哄け", c)
+		return
+	}
+	data, err := service.NewPurchaseService().GetPurchase(uint(id))
+	if err != nil {
+		global.GVA_LOG.Error("鑾峰彇澶辫触!", zap.Error(err))
+		response.FailWithMessage("鑾峰彇澶辫触", c)
+		return
+	}
+	productList, err := service.NewPurchaseService().GetPurchaseProductList(uint(id))
+	if err != nil {
+		global.GVA_LOG.Error("鑾峰彇澶辫触!", zap.Error(err))
+		response.FailWithMessage("鑾峰彇澶辫触", c)
+		return
+	}
+	response.OkWithDetailed(purchaseRes.PurchaseResponse{Purchase: data, ProductList: productList}, "鑾峰彇鎴愬姛", c)
+}
+
+// GetPurchaseList
+// @Tags      Purchase
+// @Summary   鍒嗛〉鑾峰彇閲囪喘鍗曞垪琛�
+// @Security  ApiKeyAuth
+// @accept    application/json
+// @Produce   application/json
+// @Param     data  query     request.PageInfo                                        true  "椤电爜, 姣忛〉澶у皬"
+// @Success   200   {object}  response.Response{data=response.PageResult,msg=string}  "鍒嗛〉鑾峰彇閲囪喘鍗曞垪琛�,杩斿洖鍖呮嫭鍒楄〃,鎬绘暟,椤电爜,姣忛〉鏁伴噺"
+// @Router    /purchase/purchaseList [get]
+func (e *PurchaseApi) GetPurchaseList(c *gin.Context) {
+	var pageInfo request.PageInfo
+	err := c.ShouldBindQuery(&pageInfo)
+	if err != nil {
+		response.FailWithMessage(err.Error(), c)
+		return
+	}
+	err = utils.Verify(pageInfo, utils.PageInfoVerify)
+	if err != nil {
+		response.FailWithMessage(err.Error(), c)
+		return
+	}
+	PurchaseList, total, err := service.NewPurchaseService().GetPurchaseList(pageInfo)
+	if err != nil {
+		global.GVA_LOG.Error("鑾峰彇澶辫触!", zap.Error(err))
+		response.FailWithMessage("鑾峰彇澶辫触"+err.Error(), c)
+		return
+	}
+	response.OkWithDetailed(response.PageResult{
+		List:     PurchaseList,
+		Total:    total,
+		Page:     pageInfo.Page,
+		PageSize: pageInfo.PageSize,
+	}, "鑾峰彇鎴愬姛", c)
+}
+
+// Submit
+// @Tags      Purchase
+// @Summary   鎻愪氦閲囪喘鍗�
+// @Security  ApiKeyAuth
+// @accept    application/json
+// @Produce   application/json
+// @Param		id	path		int	true	"閲囪喘鍗旾D"
+// @Success   200   {object}  response.Response{msg=string}  "鎻愪氦閲囪喘鍗�"
+// @Router    /purchase/submit/{id} [post]
+func (e *PurchaseApi) Submit(c *gin.Context) {
+	var params purchaserequest.AddPurchase
+	err := c.ShouldBindJSON(&params)
+	if err != nil {
+		response.FailWithMessage(err.Error(), c)
+		return
+	}
+	err = utils.Verify(params.Purchase.GVA_MODEL, utils.IdVerify)
+	if err != nil {
+		response.FailWithMessage(err.Error(), c)
+		return
+	}
+	err = service.NewPurchaseService().UpdatePurchase(&params)
+	if err != nil {
+		global.GVA_LOG.Error("鏇存柊澶辫触!", zap.Error(err))
+		response.FailWithMessage("鏇存柊澶辫触", c)
+		return
+	}
+	response.OkWithMessage("鏇存柊鎴愬姛", c)
+}

--
Gitblit v1.8.0