From e0a433e9c31594527a3bf7766c0bfb2cbbceffdb Mon Sep 17 00:00:00 2001
From: wangpengfei <274878379@qq.com>
Date: 星期三, 26 七月 2023 10:09:04 +0800
Subject: [PATCH] fix add pageInfo, keyword to all the list

---
 model/request/masterOrder.go      |    5 
 model/plan.go                     |   26 
 model/request/salesDetails.go     |    5 
 docs/swagger.yaml                 |  323 ++++++
 api/v1/salesReturn.go             |   50 
 model/request/contract.go         |    5 
 service/orderManage.go            |   18 
 api/v1/salesRefund.go             |   51 
 model/serviceFeeManage.go         |   26 
 api/v1/salesLeads.go              |    4 
 service/contract.go               |   18 
 model/request/salesReturn.go      |    5 
 service/plan.go                   |   18 
 model/subOrder.go                 |   26 
 model/salesReturn.go              |   26 
 model/salesLeads.go               |    6 
 service/saleChance.go             |   41 
 api/v1/masterOrder.go             |   50 
 model/request/saleChance.go       |    5 
 router/salesDetails.go            |    4 
 service/serviceFollowup.go        |   18 
 docs/docs.go                      |  467 ++++++++++
 model/orderManage.go              |   26 
 router/salesRefund.go             |    4 
 router/saleChance.go              |    4 
 router/subOrder.go                |    4 
 service/salesRefund.go            |   18 
 model/request/salesRefund.go      |    5 
 router/plan.go                    |    4 
 router/quotation.go               |    4 
 api/v1/orderManage.go             |   50 
 api/v1/serviceFollowup.go         |   50 
 model/request/quotation.go        |    5 
 api/v1/plan.go                    |   50 
 service/salesDetails.go           |   18 
 api/v1/serviceFeeManage.go        |   50 
 model/contract.go                 |   26 
 model/request/serviceFeeManage.go |    5 
 model/request/subOrder.go         |    5 
 pkg/ecode/code.go                 |   12 
 api/v1/contract.go                |   50 
 api/v1/quotation.go               |   50 
 model/masterOrder.go              |   26 
 service/serviceFeeManage.go       |   18 
 model/serviceFollowup.go          |   26 
 model/request/plan.go             |    5 
 router/serviceFollowup.go         |    4 
 model/request/orderManage.go      |    5 
 router/serviceFeeManage.go        |    4 
 model/request/serviceFollowup.go  |    5 
 api/v1/salesDetails.go            |   50 
 service/salesReturn.go            |   18 
 api/v1/subOrder.go                |   50 
 model/saleChance.go               |   47 
 router/contract.go                |    4 
 service/masterOrder.go            |   18 
 model/quotation.go                |   26 
 router/salesReturn.go             |    4 
 docs/swagger.json                 |  467 ++++++++++
 model/response/response.go        |   36 
 api/v1/saleChance.go              |   50 
 model/salesDetails.go             |   26 
 service/quotation.go              |   18 
 model/salesRefund.go              |   26 
 router/masterOrder.go             |    4 
 service/subOrder.go               |   18 
 router/orderManage.go             |    4 
 67 files changed, 2,061 insertions(+), 535 deletions(-)

diff --git a/api/v1/contract.go b/api/v1/contract.go
index 0f69384..e93ece3 100644
--- a/api/v1/contract.go
+++ b/api/v1/contract.go
@@ -98,29 +98,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		Contract
-//	@Summary	鑾峰彇鍚堝悓鍒楄〃
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.ContractResponse}
-//	@Router		/api/contract/list [get]
-func (s *ContractApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	contractList, errCode := contractService.GetContractList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.ContractResponse{
-		List: contractList,
-	})
-}
 
 func checkContractParams(contract request.Contract) (errCode int, contractModel model.Contract) {
 	//if contract.Number == "" {
@@ -142,3 +119,30 @@
 
 	return ecode.OK, contractModel
 }
+
+// List
+//
+//	@Tags		Contract
+//	@Summary	閿�鍞悎鍚屽垪琛�
+//	@Produce	application/json
+//	@Param		object	body		request.GetContractList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.ContractResponse}
+//	@Router		/api/contract/list [post]
+func (con *ContractApi) List(c *gin.Context) {
+	var params request.GetContractList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	contracts, errCode := contractService.GetContractList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.ContractResponse{
+		List: contracts,
+		Count: len(contracts),
+	})
+}
diff --git a/api/v1/masterOrder.go b/api/v1/masterOrder.go
index 3c479b3..6415320 100644
--- a/api/v1/masterOrder.go
+++ b/api/v1/masterOrder.go
@@ -98,29 +98,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		MasterOrder
-//	@Summary	涓昏鍗曞垪琛�
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.MasterOrderResponse}
-//	@Router		/api/masterOrder/list [get]
-func (s *MasterOrderApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	list, errCode := masterOrderService.GetMasterOrderList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.MasterOrderResponse{
-		List: list,
-	})
-}
 
 // checkMasterOrderParams
 // 妫�鏌ヤ富璁㈠崟鍙傛暟
@@ -152,3 +129,30 @@
 
 	return ecode.OK, masterOrderModel
 }
+
+// List
+//
+//	@Tags		MasterOrder
+//	@Summary	閿�鍞�诲崟鍒楄〃
+//	@Produce	application/json
+//	@Param		object	body		request.GetMasterOrderList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.MasterOrderResponse}
+//	@Router		/api/masterOrder/list [post]
+func (con *MasterOrderApi) List(c *gin.Context) {
+	var params request.GetMasterOrderList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	masterOrders, errCode := masterOrderService.GetMasterOrderList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.MasterOrderResponse{
+		List: masterOrders,
+		Count: len(masterOrders),
+	})
+}
diff --git a/api/v1/orderManage.go b/api/v1/orderManage.go
index a295dfc..a5fa91d 100644
--- a/api/v1/orderManage.go
+++ b/api/v1/orderManage.go
@@ -98,29 +98,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		OrderManage
-//	@Summary	宸ュ崟鍒楄〃
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{}
-//	@Router		/api/orderManage/list [get]
-func (o *OrderManageApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	list, errCode := orderManageService.GetOrderManageList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.OrderManageResponse{
-		List: list,
-	})
-}
 
 // checkOrderManageParams
 func checkOrderManageParams(orderManage request.OrderManage) (int, model.OrderManage) {
@@ -153,3 +130,30 @@
 		File:               orderManage.File,
 	}
 }
+
+// List
+//
+//	@Tags		OrderManage
+//	@Summary	宸ュ崟绠$悊鍒楄〃
+//	@Produce	application/json
+//	@Param		object	body		request.GetOrderManageList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.OrderManageResponse}
+//	@Router		/api/orderManage/list [post]
+func (con *OrderManageApi) List(c *gin.Context) {
+	var params request.GetOrderManageList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	orderManages, errCode := orderManageService.GetOrderManageList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.OrderManageResponse{
+		List: orderManages,
+		Count: len(orderManages),
+	})
+}
diff --git a/api/v1/plan.go b/api/v1/plan.go
index 28fff5a..8c49160 100644
--- a/api/v1/plan.go
+++ b/api/v1/plan.go
@@ -98,29 +98,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		Plan
-//	@Summary	鑾峰彇璁″垝鍒楄〃
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.PlanResponse}
-//	@Router		/api/plan/list [get]
-func (s *PlanApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	list, errCode := planService.GetPlanList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.PlanResponse{
-		List: list,
-	})
-}
 
 func checkPlanParams(plan request.Plan) (errCode int, p model.Plan) {
 	//if plan.Number == "" {
@@ -155,3 +132,30 @@
 
 	return ecode.OK, p
 }
+
+// List
+//
+//	@Tags		Plan
+//	@Summary	鐢熸垚璁″垝鍒楄〃
+//	@Produce	application/json
+//	@Param		object	body		request.GetPlanList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.PlanResponse}
+//	@Router		/api/plan/list [post]
+func (con *PlanApi) List(c *gin.Context) {
+	var params request.GetPlanList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	plans, errCode := planService.GetPlanList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.PlanResponse{
+		List: plans,
+		Count: len(plans),
+	})
+}
diff --git a/api/v1/quotation.go b/api/v1/quotation.go
index c76567f..187554c 100644
--- a/api/v1/quotation.go
+++ b/api/v1/quotation.go
@@ -98,29 +98,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		Quotation
-//	@Summary	鎶ヤ环鍗曞垪琛�
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.QuotationResponse}
-//	@Router		/api/quotation/list [get]
-func (s *QuotationApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	list, errCode := quotationService.GetQuotationList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.QuotationResponse{
-		List: list,
-	})
-}
 
 // checkQuotationParams
 func checkQuotationParams(quotation request.Quotation) (int, model.Quotation) {
@@ -166,3 +143,30 @@
 	return ecode.OK, quotationModel
 
 }
+
+// List
+//
+//	@Tags		Quotation
+//	@Summary	鎶ヤ环鍗曞垪琛�
+//	@Produce	application/json
+//	@Param		object	body		request.GetQuotationList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.QuotationResponse}
+//	@Router		/api/quotation/list [post]
+func (con *QuotationApi) List(c *gin.Context) {
+	var params request.GetQuotationList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	quotations, errCode := quotationService.GetQuotationList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.QuotationResponse{
+		List: quotations,
+		Count: len(quotations),
+	})
+}
diff --git a/api/v1/saleChance.go b/api/v1/saleChance.go
index 35d91b1..33df8a5 100644
--- a/api/v1/saleChance.go
+++ b/api/v1/saleChance.go
@@ -104,29 +104,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		SaleChance
-//	@Summary	鑾峰彇閿�鍞満浼氬垪琛�
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.SaleChanceResponse}
-//	@Router		/api/saleChance/list [get]
-func (s *SaleChanceApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	errCode, list := saleChanceService.GetSaleChanceList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.SaleChanceResponse{
-		List: list,
-	})
-}
 
 // checkSaleChanceParams
 // 妫�鏌ラ攢鍞満浼氬弬鏁�
@@ -207,3 +184,30 @@
 
 	return ecode.OK, sc
 }
+
+// List
+//
+//	@Tags		SaleChance
+//	@Summary	閿�鍞満浼氬垪琛�
+//	@Produce	application/json
+//	@Param		object	body		request.GetSaleChanceList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.SaleChanceResponse}
+//	@Router		/api/saleChance/list [post]
+func (con *SaleChanceApi) List(c *gin.Context) {
+	var params request.GetSaleChanceList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	saleChances, errCode := saleChanceService.GetSaleChanceList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.SaleChanceResponse{
+		List: saleChances,
+		Count: len(saleChances),
+	})
+}
diff --git a/api/v1/salesDetails.go b/api/v1/salesDetails.go
index d7f8bec..1561de1 100644
--- a/api/v1/salesDetails.go
+++ b/api/v1/salesDetails.go
@@ -97,29 +97,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		SalesDetails
-//	@Summary	鑾峰彇閿�鍞槑缁嗗垪琛�
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.SalesDetailsResponse}
-//	@Router		/api/salesDetails/list [get]
-func (s *SalesDetailsApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	list, errCode := salesDetailsService.GetSalesDetailsList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.SalesDetailsResponse{
-		List: list,
-	})
-}
 
 func checkSalesDetailsParams(salesDetails request.SalesDetails) (errCode int, salesDetailsModel model.SalesDetails) {
 	//if salesDetails.ClientId == 0 {
@@ -168,3 +145,30 @@
 
 	return ecode.OK, salesDetailsModel
 }
+
+// List
+//
+//	@Tags		SalesDetails
+//	@Summary	閿�鍞槑缁嗗崟鍒楄〃
+//	@Produce	application/json
+//	@Param		object	body		request.GetSalesDetailsList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.SalesDetailsResponse}
+//	@Router		/api/salesDetails/list [post]
+func (con *SalesDetailsApi) List(c *gin.Context) {
+	var params request.GetSalesDetailsList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	salesDetailss, errCode := salesDetailsService.GetSalesDetailsList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.SalesDetailsResponse{
+		List: salesDetailss,
+		Count: len(salesDetailss),
+	})
+}
diff --git a/api/v1/salesLeads.go b/api/v1/salesLeads.go
index 7c37437..7e11661 100644
--- a/api/v1/salesLeads.go
+++ b/api/v1/salesLeads.go
@@ -145,7 +145,7 @@
 //	@Param		object	body		request.GetSalesLeadsList	true	"鍙傛暟"
 //	@Success	200		{object}	contextx.Response{data=response.SalesLeadsResponse}
 //	@Router		/api/salesLeads/list [post]
-func (s *SalesLeadsApi) List(c *gin.Context) {
+func (con *SalesLeadsApi) List(c *gin.Context) {
 	var params request.GetSalesLeadsList
 	ctx, ok := contextx.NewContext(c, &params)
 	if !ok {
@@ -159,7 +159,7 @@
 	}
 
 	ctx.OkWithDetailed(response.SalesLeadsResponse{
-		List:  salesLeadss,
+		List: salesLeadss,
 		Count: len(salesLeadss),
 	})
 }
diff --git a/api/v1/salesRefund.go b/api/v1/salesRefund.go
index 77d24f7..d201714 100644
--- a/api/v1/salesRefund.go
+++ b/api/v1/salesRefund.go
@@ -98,30 +98,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		SalesRefund
-//	@Summary	閿�鍞��娆惧垪琛�
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.SalesRefundResponse}
-//	@Router		/api/salesRefund/list [get]
-func (s *SalesRefundApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	list, errCode := salesRefundService.GetSalesRefundList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.SalesRefundResponse{
-		List: list,
-	})
-
-}
 
 func checkSalesRefundParams(salesRefund request.SalesRefund) (errCode int, salesRefundRes model.SalesRefund) {
 	//if salesRefund.ClientId == 0 {
@@ -156,3 +132,30 @@
 
 	return ecode.OK, salesRefundRes
 }
+
+// List
+//
+//	@Tags		SalesRefund
+//	@Summary	閿�鍞��娆惧崟鍒楄〃
+//	@Produce	application/json
+//	@Param		object	body		request.GetSalesRefundList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.SalesRefundResponse}
+//	@Router		/api/salesRefund/list [post]
+func (con *SalesRefundApi) List(c *gin.Context) {
+	var params request.GetSalesRefundList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	salesRefunds, errCode := salesRefundService.GetSalesRefundList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.SalesRefundResponse{
+		List: salesRefunds,
+		Count: len(salesRefunds),
+	})
+}
diff --git a/api/v1/salesReturn.go b/api/v1/salesReturn.go
index de7e59b..5ada12a 100644
--- a/api/v1/salesReturn.go
+++ b/api/v1/salesReturn.go
@@ -99,29 +99,6 @@
 
 }
 
-// List
-//
-//	@Tags		SalesReturn
-//	@Summary	鑾峰彇閿�鍞��璐у垪琛�
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.SalesReturnResponse}
-//	@Router		/api/salesReturn/list [get]
-func (s *SalesReturnApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	salesReturns, errCode := salesReturnService.GetSalesReturnList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.SalesReturnResponse{
-		List: salesReturns,
-	})
-}
 
 func checkSalesReturnParams(salesReturn request.SalesReturn) (errCode int, s model.SalesReturn) {
 	//if salesReturn.Number == "" {
@@ -152,3 +129,30 @@
 
 	return ecode.OK, s
 }
+
+// List
+//
+//	@Tags		SalesReturn
+//	@Summary	閿�鍞��璐у崟鍒楄〃
+//	@Produce	application/json
+//	@Param		object	body		request.GetSalesReturnList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.SalesReturnResponse}
+//	@Router		/api/salesReturn/list [post]
+func (con *SalesReturnApi) List(c *gin.Context) {
+	var params request.GetSalesReturnList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	salesReturns, errCode := salesReturnService.GetSalesReturnList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.SalesReturnResponse{
+		List: salesReturns,
+		Count: len(salesReturns),
+	})
+}
diff --git a/api/v1/serviceFeeManage.go b/api/v1/serviceFeeManage.go
index 834ad2c..6d95793 100644
--- a/api/v1/serviceFeeManage.go
+++ b/api/v1/serviceFeeManage.go
@@ -113,29 +113,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		ServiceFeeManage
-//	@Summary	鏈嶅姟璐圭鐞嗗垪琛�
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.ServiceFeeManageResponse}
-//	@Router		/api/serviceFeeManage/list [get]
-func (s *ServiceFeeManageApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	list, errCode := serviceFeeManageService.GetServiceFeeManageList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.ServiceFeeManageResponse{
-		List: list,
-	})
-}
 
 // checkServiceFeeManageParams
 func checkServiceFeeManageParams(serviceFeeManage request.ServiceFeeManage) (errCode int, result model.ServiceFeeManage) {
@@ -161,3 +138,30 @@
 
 	return ecode.OK, result
 }
+
+// List
+//
+//	@Tags		ServiceFeeManage
+//	@Summary	鏈嶅姟璐圭鐞嗗垪琛�
+//	@Produce	application/json
+//	@Param		object	body		request.GetServiceFeeManageList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.ServiceFeeManageResponse}
+//	@Router		/api/serviceFeeManage/list [post]
+func (con *ServiceFeeManageApi) List(c *gin.Context) {
+	var params request.GetServiceFeeManageList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	serviceFeeManages, errCode := serviceFeeManageService.GetServiceFeeManageList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.ServiceFeeManageResponse{
+		List: serviceFeeManages,
+		Count: len(serviceFeeManages),
+	})
+}
diff --git a/api/v1/serviceFollowup.go b/api/v1/serviceFollowup.go
index 9e97657..76d9629 100644
--- a/api/v1/serviceFollowup.go
+++ b/api/v1/serviceFollowup.go
@@ -98,29 +98,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		ServiceFollowup
-//	@Summary	鏈嶅姟璺熻繘鍒楄〃
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.ServiceFollowupResponse}
-//	@Router		/api/serviceFollowup/list [get]
-func (s *ServiceFollowupApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	list, errCode := serviceFollowupService.GetServiceFollowupList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.ServiceFollowupResponse{
-		List: list,
-	})
-}
 
 // checkServiceFollowupParams
 func checkServiceFollowupParams(serviceFollowup request.ServiceFollowup) (errCode int, serviceFollowupModel model.ServiceFollowup) {
@@ -150,3 +127,30 @@
 
 	return ecode.OK, serviceFollowupModel
 }
+
+// List
+//
+//	@Tags		ServiceFollowup
+//	@Summary	鍥炶鍗曠鐞嗗垪琛�
+//	@Produce	application/json
+//	@Param		object	body		request.GetServiceFollowupList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.ServiceFollowupResponse}
+//	@Router		/api/serviceFollowup/list [post]
+func (con *ServiceFollowupApi) List(c *gin.Context) {
+	var params request.GetServiceFollowupList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	serviceFollowups, errCode := serviceFollowupService.GetServiceFollowupList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.ServiceFollowupResponse{
+		List: serviceFollowups,
+		Count: len(serviceFollowups),
+	})
+}
diff --git a/api/v1/subOrder.go b/api/v1/subOrder.go
index a13f934..fd049ca 100644
--- a/api/v1/subOrder.go
+++ b/api/v1/subOrder.go
@@ -98,29 +98,6 @@
 	ctx.Ok()
 }
 
-// List
-//
-//	@Tags		SubOrder
-//	@Summary	鑾峰彇瀛愯鍗曞垪琛�
-//	@Produce	application/json
-//	@Success	200	{object}	contextx.Response{data=response.SubOrderResponse}
-//	@Router		/api/subOrder/list [get]
-func (s *SubOrderApi) List(c *gin.Context) {
-	ctx, ok := contextx.NewContext(c, nil)
-	if !ok {
-		return
-	}
-
-	subOrders, errCode := subOrderService.GetSubOrderList()
-	if errCode != ecode.OK {
-		ctx.Fail(errCode)
-		return
-	}
-
-	ctx.OkWithDetailed(response.SubOrderResponse{
-		List: subOrders,
-	})
-}
 
 // checkSubOrderParams
 // 妫�鏌ュ瓙璁㈠崟鍙傛暟
@@ -141,3 +118,30 @@
 
 	return ecode.OK, newSubOrder
 }
+
+// List
+//
+//	@Tags		SubOrder
+//	@Summary	閿�鍞瓙鍗曞垪琛�
+//	@Produce	application/json
+//	@Param		object	body		request.GetSubOrderList	true	"鍙傛暟"
+//	@Success	200		{object}	contextx.Response{data=response.SubOrderResponse}
+//	@Router		/api/subOrder/list [post]
+func (con *SubOrderApi) List(c *gin.Context) {
+	var params request.GetSubOrderList
+	ctx, ok := contextx.NewContext(c, &params)
+	if !ok {
+		return
+	}
+
+	subOrders, errCode := subOrderService.GetSubOrderList(params.Page, params.PageSize, params.Keyword)
+	if errCode != ecode.OK {
+		ctx.Fail(errCode)
+		return
+	}
+
+	ctx.OkWithDetailed(response.SubOrderResponse{
+		List: subOrders,
+		Count: len(subOrders),
+	})
+}
diff --git a/docs/docs.go b/docs/docs.go
index cabc262..73dae90 100644
--- a/docs/docs.go
+++ b/docs/docs.go
@@ -1236,14 +1236,25 @@
             }
         },
         "/api/contract/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "Contract"
                 ],
-                "summary": "鑾峰彇鍚堝悓鍒楄〃",
+                "summary": "閿�鍞悎鍚屽垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetContractList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -2608,14 +2619,25 @@
             }
         },
         "/api/masterOrder/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "MasterOrder"
                 ],
-                "summary": "涓昏鍗曞垪琛�",
+                "summary": "閿�鍞�诲崟鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetMasterOrderList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -2772,19 +2794,42 @@
             }
         },
         "/api/orderManage/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "OrderManage"
                 ],
-                "summary": "宸ュ崟鍒楄〃",
+                "summary": "宸ュ崟绠$悊鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetOrderManageList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
                         "schema": {
-                            "$ref": "#/definitions/contextx.Response"
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/contextx.Response"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "$ref": "#/definitions/response.OrderManageResponse"
+                                        }
+                                    }
+                                }
+                            ]
                         }
                     }
                 }
@@ -2998,14 +3043,25 @@
             }
         },
         "/api/plan/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "Plan"
                 ],
-                "summary": "鑾峰彇璁″垝鍒楄〃",
+                "summary": "鐢熸垚璁″垝鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetPlanList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -3394,7 +3450,7 @@
             }
         },
         "/api/quotation/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
@@ -3402,6 +3458,17 @@
                     "Quotation"
                 ],
                 "summary": "鎶ヤ环鍗曞垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetQuotationList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -4373,14 +4440,25 @@
             }
         },
         "/api/saleChance/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SaleChance"
                 ],
-                "summary": "鑾峰彇閿�鍞満浼氬垪琛�",
+                "summary": "閿�鍞満浼氬垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSaleChanceList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -4730,14 +4808,25 @@
             }
         },
         "/api/salesDetails/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SalesDetails"
                 ],
-                "summary": "鑾峰彇閿�鍞槑缁嗗垪琛�",
+                "summary": "閿�鍞槑缁嗗崟鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSalesDetailsList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -4979,14 +5068,25 @@
             }
         },
         "/api/salesRefund/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SalesRefund"
                 ],
-                "summary": "閿�鍞��娆惧垪琛�",
+                "summary": "閿�鍞��娆惧崟鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSalesRefundList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -5098,14 +5198,25 @@
             }
         },
         "/api/salesReturn/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SalesReturn"
                 ],
-                "summary": "鑾峰彇閿�鍞��璐у垪琛�",
+                "summary": "閿�鍞��璐у崟鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSalesReturnList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -5931,7 +6042,7 @@
             }
         },
         "/api/serviceFeeManage/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
@@ -5939,6 +6050,17 @@
                     "ServiceFeeManage"
                 ],
                 "summary": "鏈嶅姟璐圭鐞嗗垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetServiceFeeManageList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -6050,14 +6172,25 @@
             }
         },
         "/api/serviceFollowup/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "ServiceFollowup"
                 ],
-                "summary": "鏈嶅姟璺熻繘鍒楄〃",
+                "summary": "鍥炶鍗曠鐞嗗垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetServiceFollowupList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -6395,14 +6528,25 @@
             }
         },
         "/api/subOrder/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SubOrder"
                 ],
-                "summary": "鑾峰彇瀛愯鍗曞垪琛�",
+                "summary": "閿�鍞瓙鍗曞垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSubOrderList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -7562,6 +7706,44 @@
                 },
                 "title": {
                     "type": "string"
+                }
+            }
+        },
+        "model.OrderManage": {
+            "type": "object",
+            "properties": {
+                "client": {
+                    "$ref": "#/definitions/model.Client"
+                },
+                "clientId": {
+                    "type": "integer"
+                },
+                "contactId": {
+                    "type": "integer"
+                },
+                "file": {
+                    "type": "string"
+                },
+                "id": {
+                    "type": "integer"
+                },
+                "name": {
+                    "type": "string"
+                },
+                "number": {
+                    "type": "string"
+                },
+                "orderType": {
+                    "type": "integer"
+                },
+                "problemDescription": {
+                    "type": "string"
+                },
+                "reportSourceId": {
+                    "type": "integer"
+                },
+                "sourceSheet": {
+                    "type": "integer"
                 }
             }
         },
@@ -9779,6 +9961,22 @@
                 }
             }
         },
+        "request.GetContractList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
         "request.GetFollowRecordList": {
             "type": "object",
             "properties": {
@@ -9795,7 +9993,183 @@
                 }
             }
         },
+        "request.GetMasterOrderList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetOrderManageList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetPlanList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetQuotationList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSaleChanceList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSalesDetailsList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
         "request.GetSalesLeadsList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSalesRefundList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSalesReturnList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetServiceFeeManageList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetServiceFollowupList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSubOrderList": {
             "type": "object",
             "properties": {
                 "keyword": {
@@ -11938,6 +12312,9 @@
         "response.ContractResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12315,6 +12692,9 @@
         "response.MasterOrderResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12330,6 +12710,20 @@
                     "type": "array",
                     "items": {
                         "$ref": "#/definitions/model.Menu"
+                    }
+                }
+            }
+        },
+        "response.OrderManageResponse": {
+            "type": "object",
+            "properties": {
+                "count": {
+                    "type": "integer"
+                },
+                "list": {
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/model.OrderManage"
                     }
                 }
             }
@@ -12363,6 +12757,9 @@
         "response.PlanResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12396,6 +12793,9 @@
         "response.QuotationResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12473,6 +12873,9 @@
         "response.SaleChanceResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12506,6 +12909,9 @@
         "response.SalesDetailsResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12531,6 +12937,9 @@
         "response.SalesRefundResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12542,6 +12951,9 @@
         "response.SalesReturnResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12619,6 +13031,9 @@
         "response.ServiceFeeManageResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12630,6 +13045,9 @@
         "response.ServiceFollowupResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12652,6 +13070,9 @@
         "response.SubOrderResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
diff --git a/docs/swagger.json b/docs/swagger.json
index f25cf9d..8e80ce1 100644
--- a/docs/swagger.json
+++ b/docs/swagger.json
@@ -1224,14 +1224,25 @@
             }
         },
         "/api/contract/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "Contract"
                 ],
-                "summary": "鑾峰彇鍚堝悓鍒楄〃",
+                "summary": "閿�鍞悎鍚屽垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetContractList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -2596,14 +2607,25 @@
             }
         },
         "/api/masterOrder/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "MasterOrder"
                 ],
-                "summary": "涓昏鍗曞垪琛�",
+                "summary": "閿�鍞�诲崟鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetMasterOrderList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -2760,19 +2782,42 @@
             }
         },
         "/api/orderManage/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "OrderManage"
                 ],
-                "summary": "宸ュ崟鍒楄〃",
+                "summary": "宸ュ崟绠$悊鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetOrderManageList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
                         "schema": {
-                            "$ref": "#/definitions/contextx.Response"
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/contextx.Response"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "$ref": "#/definitions/response.OrderManageResponse"
+                                        }
+                                    }
+                                }
+                            ]
                         }
                     }
                 }
@@ -2986,14 +3031,25 @@
             }
         },
         "/api/plan/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "Plan"
                 ],
-                "summary": "鑾峰彇璁″垝鍒楄〃",
+                "summary": "鐢熸垚璁″垝鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetPlanList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -3382,7 +3438,7 @@
             }
         },
         "/api/quotation/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
@@ -3390,6 +3446,17 @@
                     "Quotation"
                 ],
                 "summary": "鎶ヤ环鍗曞垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetQuotationList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -4361,14 +4428,25 @@
             }
         },
         "/api/saleChance/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SaleChance"
                 ],
-                "summary": "鑾峰彇閿�鍞満浼氬垪琛�",
+                "summary": "閿�鍞満浼氬垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSaleChanceList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -4718,14 +4796,25 @@
             }
         },
         "/api/salesDetails/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SalesDetails"
                 ],
-                "summary": "鑾峰彇閿�鍞槑缁嗗垪琛�",
+                "summary": "閿�鍞槑缁嗗崟鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSalesDetailsList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -4967,14 +5056,25 @@
             }
         },
         "/api/salesRefund/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SalesRefund"
                 ],
-                "summary": "閿�鍞��娆惧垪琛�",
+                "summary": "閿�鍞��娆惧崟鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSalesRefundList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -5086,14 +5186,25 @@
             }
         },
         "/api/salesReturn/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SalesReturn"
                 ],
-                "summary": "鑾峰彇閿�鍞��璐у垪琛�",
+                "summary": "閿�鍞��璐у崟鍒楄〃",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSalesReturnList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -5919,7 +6030,7 @@
             }
         },
         "/api/serviceFeeManage/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
@@ -5927,6 +6038,17 @@
                     "ServiceFeeManage"
                 ],
                 "summary": "鏈嶅姟璐圭鐞嗗垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetServiceFeeManageList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -6038,14 +6160,25 @@
             }
         },
         "/api/serviceFollowup/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "ServiceFollowup"
                 ],
-                "summary": "鏈嶅姟璺熻繘鍒楄〃",
+                "summary": "鍥炶鍗曠鐞嗗垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetServiceFollowupList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -6383,14 +6516,25 @@
             }
         },
         "/api/subOrder/list": {
-            "get": {
+            "post": {
                 "produces": [
                     "application/json"
                 ],
                 "tags": [
                     "SubOrder"
                 ],
-                "summary": "鑾峰彇瀛愯鍗曞垪琛�",
+                "summary": "閿�鍞瓙鍗曞垪琛�",
+                "parameters": [
+                    {
+                        "description": "鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetSubOrderList"
+                        }
+                    }
+                ],
                 "responses": {
                     "200": {
                         "description": "OK",
@@ -7550,6 +7694,44 @@
                 },
                 "title": {
                     "type": "string"
+                }
+            }
+        },
+        "model.OrderManage": {
+            "type": "object",
+            "properties": {
+                "client": {
+                    "$ref": "#/definitions/model.Client"
+                },
+                "clientId": {
+                    "type": "integer"
+                },
+                "contactId": {
+                    "type": "integer"
+                },
+                "file": {
+                    "type": "string"
+                },
+                "id": {
+                    "type": "integer"
+                },
+                "name": {
+                    "type": "string"
+                },
+                "number": {
+                    "type": "string"
+                },
+                "orderType": {
+                    "type": "integer"
+                },
+                "problemDescription": {
+                    "type": "string"
+                },
+                "reportSourceId": {
+                    "type": "integer"
+                },
+                "sourceSheet": {
+                    "type": "integer"
                 }
             }
         },
@@ -9767,6 +9949,22 @@
                 }
             }
         },
+        "request.GetContractList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
         "request.GetFollowRecordList": {
             "type": "object",
             "properties": {
@@ -9783,7 +9981,183 @@
                 }
             }
         },
+        "request.GetMasterOrderList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetOrderManageList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetPlanList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetQuotationList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSaleChanceList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSalesDetailsList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
         "request.GetSalesLeadsList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSalesRefundList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSalesReturnList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetServiceFeeManageList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetServiceFollowupList": {
+            "type": "object",
+            "properties": {
+                "keyword": {
+                    "type": "string"
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                }
+            }
+        },
+        "request.GetSubOrderList": {
             "type": "object",
             "properties": {
                 "keyword": {
@@ -11926,6 +12300,9 @@
         "response.ContractResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12303,6 +12680,9 @@
         "response.MasterOrderResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12318,6 +12698,20 @@
                     "type": "array",
                     "items": {
                         "$ref": "#/definitions/model.Menu"
+                    }
+                }
+            }
+        },
+        "response.OrderManageResponse": {
+            "type": "object",
+            "properties": {
+                "count": {
+                    "type": "integer"
+                },
+                "list": {
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/model.OrderManage"
                     }
                 }
             }
@@ -12351,6 +12745,9 @@
         "response.PlanResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12384,6 +12781,9 @@
         "response.QuotationResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12461,6 +12861,9 @@
         "response.SaleChanceResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12494,6 +12897,9 @@
         "response.SalesDetailsResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12519,6 +12925,9 @@
         "response.SalesRefundResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12530,6 +12939,9 @@
         "response.SalesReturnResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12607,6 +13019,9 @@
         "response.ServiceFeeManageResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12618,6 +13033,9 @@
         "response.ServiceFollowupResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
@@ -12640,6 +13058,9 @@
         "response.SubOrderResponse": {
             "type": "object",
             "properties": {
+                "count": {
+                    "type": "integer"
+                },
                 "list": {
                     "type": "array",
                     "items": {
diff --git a/docs/swagger.yaml b/docs/swagger.yaml
index 46bc994..5561384 100644
--- a/docs/swagger.yaml
+++ b/docs/swagger.yaml
@@ -450,6 +450,31 @@
       title:
         type: string
     type: object
+  model.OrderManage:
+    properties:
+      client:
+        $ref: '#/definitions/model.Client'
+      clientId:
+        type: integer
+      contactId:
+        type: integer
+      file:
+        type: string
+      id:
+        type: integer
+      name:
+        type: string
+      number:
+        type: string
+      orderType:
+        type: integer
+      problemDescription:
+        type: string
+      reportSourceId:
+        type: integer
+      sourceSheet:
+        type: integer
+    type: object
   model.OrderType:
     properties:
       id:
@@ -1929,6 +1954,17 @@
         description: 姣忛〉澶у皬
         type: integer
     type: object
+  request.GetContractList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
   request.GetFollowRecordList:
     properties:
       keyword:
@@ -1940,7 +1976,128 @@
         description: 姣忛〉澶у皬
         type: integer
     type: object
+  request.GetMasterOrderList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetOrderManageList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetPlanList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetQuotationList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetSaleChanceList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetSalesDetailsList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
   request.GetSalesLeadsList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetSalesRefundList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetSalesReturnList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetServiceFeeManageList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetServiceFollowupList:
+    properties:
+      keyword:
+        type: string
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+    type: object
+  request.GetSubOrderList:
     properties:
       keyword:
         type: string
@@ -3373,6 +3530,8 @@
     type: object
   response.ContractResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.Contract'
@@ -3632,6 +3791,8 @@
     type: object
   response.MasterOrderResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.MasterOrder'
@@ -3642,6 +3803,15 @@
       list:
         items:
           $ref: '#/definitions/model.Menu'
+        type: array
+    type: object
+  response.OrderManageResponse:
+    properties:
+      count:
+        type: integer
+      list:
+        items:
+          $ref: '#/definitions/model.OrderManage'
         type: array
     type: object
   response.OrderTypeResponse:
@@ -3663,6 +3833,8 @@
     type: object
   response.PlanResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.Plan'
@@ -3684,6 +3856,8 @@
     type: object
   response.QuotationResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.Quotation'
@@ -3733,6 +3907,8 @@
     type: object
   response.SaleChanceResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.SaleChance'
@@ -3754,6 +3930,8 @@
     type: object
   response.SalesDetailsResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.SalesDetails'
@@ -3770,6 +3948,8 @@
     type: object
   response.SalesRefundResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.SalesRefund'
@@ -3777,6 +3957,8 @@
     type: object
   response.SalesReturnResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.SalesReturn'
@@ -3826,6 +4008,8 @@
     type: object
   response.ServiceFeeManageResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.ServiceFeeManage'
@@ -3833,6 +4017,8 @@
     type: object
   response.ServiceFollowupResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.ServiceFollowup'
@@ -3847,6 +4033,8 @@
     type: object
   response.SubOrderResponse:
     properties:
+      count:
+        type: integer
       list:
         items:
           $ref: '#/definitions/model.SubOrder'
@@ -4614,7 +4802,14 @@
       tags:
       - Contract
   /api/contract/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetContractList'
       produces:
       - application/json
       responses:
@@ -4627,7 +4822,7 @@
                 data:
                   $ref: '#/definitions/response.ContractResponse'
               type: object
-      summary: 鑾峰彇鍚堝悓鍒楄〃
+      summary: 閿�鍞悎鍚屽垪琛�
       tags:
       - Contract
   /api/contract/update:
@@ -5454,7 +5649,14 @@
       tags:
       - MasterOrder
   /api/masterOrder/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetMasterOrderList'
       produces:
       - application/json
       responses:
@@ -5467,7 +5669,7 @@
                 data:
                   $ref: '#/definitions/response.MasterOrderResponse'
               type: object
-      summary: 涓昏鍗曞垪琛�
+      summary: 閿�鍞�诲崟鍒楄〃
       tags:
       - MasterOrder
   /api/masterOrder/update:
@@ -5552,15 +5754,27 @@
       tags:
       - OrderManage
   /api/orderManage/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetOrderManageList'
       produces:
       - application/json
       responses:
         "200":
           description: OK
           schema:
-            $ref: '#/definitions/contextx.Response'
-      summary: 宸ュ崟鍒楄〃
+            allOf:
+            - $ref: '#/definitions/contextx.Response'
+            - properties:
+                data:
+                  $ref: '#/definitions/response.OrderManageResponse'
+              type: object
+      summary: 宸ュ崟绠$悊鍒楄〃
       tags:
       - OrderManage
   /api/orderManage/update:
@@ -5693,7 +5907,14 @@
       tags:
       - Plan
   /api/plan/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetPlanList'
       produces:
       - application/json
       responses:
@@ -5706,7 +5927,7 @@
                 data:
                   $ref: '#/definitions/response.PlanResponse'
               type: object
-      summary: 鑾峰彇璁″垝鍒楄〃
+      summary: 鐢熸垚璁″垝鍒楄〃
       tags:
       - Plan
   /api/plan/update:
@@ -5937,7 +6158,14 @@
       tags:
       - Quotation
   /api/quotation/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetQuotationList'
       produces:
       - application/json
       responses:
@@ -6541,7 +6769,14 @@
       tags:
       - SaleChance
   /api/saleChance/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetSaleChanceList'
       produces:
       - application/json
       responses:
@@ -6554,7 +6789,7 @@
                 data:
                   $ref: '#/definitions/response.SaleChanceResponse'
               type: object
-      summary: 鑾峰彇閿�鍞満浼氬垪琛�
+      summary: 閿�鍞満浼氬垪琛�
       tags:
       - SaleChance
   /api/saleChance/update:
@@ -6760,7 +6995,14 @@
       tags:
       - SalesDetails
   /api/salesDetails/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetSalesDetailsList'
       produces:
       - application/json
       responses:
@@ -6773,7 +7015,7 @@
                 data:
                   $ref: '#/definitions/response.SalesDetailsResponse'
               type: object
-      summary: 鑾峰彇閿�鍞槑缁嗗垪琛�
+      summary: 閿�鍞槑缁嗗崟鍒楄〃
       tags:
       - SalesDetails
   /api/salesDetails/update:
@@ -6913,7 +7155,14 @@
       tags:
       - SalesRefund
   /api/salesRefund/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetSalesRefundList'
       produces:
       - application/json
       responses:
@@ -6926,7 +7175,7 @@
                 data:
                   $ref: '#/definitions/response.SalesRefundResponse'
               type: object
-      summary: 閿�鍞��娆惧垪琛�
+      summary: 閿�鍞��娆惧崟鍒楄〃
       tags:
       - SalesRefund
   /api/salesRefund/update:
@@ -6986,7 +7235,14 @@
       tags:
       - SalesReturn
   /api/salesReturn/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetSalesReturnList'
       produces:
       - application/json
       responses:
@@ -6999,7 +7255,7 @@
                 data:
                   $ref: '#/definitions/response.SalesReturnResponse'
               type: object
-      summary: 鑾峰彇閿�鍞��璐у垪琛�
+      summary: 閿�鍞��璐у崟鍒楄〃
       tags:
       - SalesReturn
   /api/salesReturn/update:
@@ -7497,7 +7753,14 @@
       tags:
       - ServiceFeeManage
   /api/serviceFeeManage/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetServiceFeeManageList'
       produces:
       - application/json
       responses:
@@ -7570,7 +7833,14 @@
       tags:
       - ServiceFollowup
   /api/serviceFollowup/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetServiceFollowupList'
       produces:
       - application/json
       responses:
@@ -7583,7 +7853,7 @@
                 data:
                   $ref: '#/definitions/response.ServiceFollowupResponse'
               type: object
-      summary: 鏈嶅姟璺熻繘鍒楄〃
+      summary: 鍥炶鍗曠鐞嗗垪琛�
       tags:
       - ServiceFollowup
   /api/serviceFollowup/update:
@@ -7784,7 +8054,14 @@
       tags:
       - SubOrder
   /api/subOrder/list:
-    get:
+    post:
+      parameters:
+      - description: 鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetSubOrderList'
       produces:
       - application/json
       responses:
@@ -7797,7 +8074,7 @@
                 data:
                   $ref: '#/definitions/response.SubOrderResponse'
               type: object
-      summary: 鑾峰彇瀛愯鍗曞垪琛�
+      summary: 閿�鍞瓙鍗曞垪琛�
       tags:
       - SubOrder
   /api/subOrder/update:
diff --git a/model/contract.go b/model/contract.go
index 31b639b..4ba79f6 100644
--- a/model/contract.go
+++ b/model/contract.go
@@ -20,7 +20,13 @@
 
 	ContractSearch struct {
 		Contract
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -36,6 +42,9 @@
 
 func (slf *ContractSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&Contract{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -76,3 +85,18 @@
 	slf.Id = id
 	return slf
 }
+
+func (slf *ContractSearch) SetKeyword(keyword string) *ContractSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *ContractSearch) SetPage(page, size int) *ContractSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *ContractSearch) SetOrder(order string) *ContractSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/masterOrder.go b/model/masterOrder.go
index 6d52417..2167555 100644
--- a/model/masterOrder.go
+++ b/model/masterOrder.go
@@ -23,7 +23,13 @@
 	// MasterOrderSearch 閿�鍞�诲崟鎼滅储鏉′欢
 	MasterOrderSearch struct {
 		MasterOrder
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -39,6 +45,9 @@
 
 func (slf *MasterOrderSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&MasterOrder{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -79,3 +88,18 @@
 	slf.Id = id
 	return slf
 }
+
+func (slf *MasterOrderSearch) SetKeyword(keyword string) *MasterOrderSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *MasterOrderSearch) SetPage(page, size int) *MasterOrderSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *MasterOrderSearch) SetOrder(order string) *MasterOrderSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/orderManage.go b/model/orderManage.go
index 3bb6f81..9d8cfaa 100644
--- a/model/orderManage.go
+++ b/model/orderManage.go
@@ -23,7 +23,13 @@
 
 	OrderManageSearch struct {
 		OrderManage
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -39,6 +45,9 @@
 
 func (slf *OrderManageSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&OrderManage{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -79,3 +88,18 @@
 	slf.Id = id
 	return slf
 }
+
+func (slf *OrderManageSearch) SetKeyword(keyword string) *OrderManageSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *OrderManageSearch) SetPage(page, size int) *OrderManageSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *OrderManageSearch) SetOrder(order string) *OrderManageSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/plan.go b/model/plan.go
index d6d0ae5..acfe041 100644
--- a/model/plan.go
+++ b/model/plan.go
@@ -25,7 +25,13 @@
 
 	PlanSearch struct {
 		Plan
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -41,6 +47,9 @@
 
 func (slf *PlanSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&Plan{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -81,3 +90,18 @@
 	slf.Id = id
 	return slf
 }
+
+func (slf *PlanSearch) SetKeyword(keyword string) *PlanSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *PlanSearch) SetPage(page, size int) *PlanSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *PlanSearch) SetOrder(order string) *PlanSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/quotation.go b/model/quotation.go
index 878f211..d14bc36 100644
--- a/model/quotation.go
+++ b/model/quotation.go
@@ -28,7 +28,13 @@
 	// QuotationSearch 鎶ヤ环鍗曟悳绱㈡潯浠�
 	QuotationSearch struct {
 		Quotation
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -44,6 +50,9 @@
 
 func (slf *QuotationSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&Quotation{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -89,3 +98,18 @@
 	var db = slf.build()
 	return db.Updates(data).Error
 }
+
+func (slf *QuotationSearch) SetKeyword(keyword string) *QuotationSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *QuotationSearch) SetPage(page, size int) *QuotationSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *QuotationSearch) SetOrder(order string) *QuotationSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/request/contract.go b/model/request/contract.go
index ce085ce..f86a93b 100644
--- a/model/request/contract.go
+++ b/model/request/contract.go
@@ -17,3 +17,8 @@
 	Id int `json:"id"`
 	Contract
 }
+
+type GetContractList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/masterOrder.go b/model/request/masterOrder.go
index 349aee0..8ad935e 100644
--- a/model/request/masterOrder.go
+++ b/model/request/masterOrder.go
@@ -17,3 +17,8 @@
 	Id int `json:"id"`
 	MasterOrder
 }
+
+type GetMasterOrderList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/orderManage.go b/model/request/orderManage.go
index 2a468a2..614db86 100644
--- a/model/request/orderManage.go
+++ b/model/request/orderManage.go
@@ -20,3 +20,8 @@
 	Id int `json:"id"`
 	OrderManage
 }
+
+type GetOrderManageList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/plan.go b/model/request/plan.go
index f262cec..706f8c2 100644
--- a/model/request/plan.go
+++ b/model/request/plan.go
@@ -20,3 +20,8 @@
 	Id   int  `json:"id"`
 	Plan Plan `json:"plan"`
 }
+
+type GetPlanList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/quotation.go b/model/request/quotation.go
index 91654de..8ee6098 100644
--- a/model/request/quotation.go
+++ b/model/request/quotation.go
@@ -20,3 +20,8 @@
 	Id int `json:"id"`
 	Quotation
 }
+
+type GetQuotationList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/saleChance.go b/model/request/saleChance.go
index bc19c29..7d5c4f1 100644
--- a/model/request/saleChance.go
+++ b/model/request/saleChance.go
@@ -41,3 +41,8 @@
 	Id int `json:"id" binding:"required"`
 	SaleChance
 }
+
+type GetSaleChanceList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/salesDetails.go b/model/request/salesDetails.go
index c70d201..f5b1975 100644
--- a/model/request/salesDetails.go
+++ b/model/request/salesDetails.go
@@ -32,3 +32,8 @@
 	Id           int          `json:"id"`
 	SalesDetails SalesDetails `json:"salesDetails"`
 }
+
+type GetSalesDetailsList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/salesRefund.go b/model/request/salesRefund.go
index 3fb49bc..04b792b 100644
--- a/model/request/salesRefund.go
+++ b/model/request/salesRefund.go
@@ -22,3 +22,8 @@
 	Id          int         `json:"id"`
 	SalesRefund SalesRefund `json:"salesRefund"`
 }
+
+type GetSalesRefundList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/salesReturn.go b/model/request/salesReturn.go
index 65ad7d4..a31794c 100644
--- a/model/request/salesReturn.go
+++ b/model/request/salesReturn.go
@@ -21,3 +21,8 @@
 	Id          int `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"`
 	SalesReturn SalesReturn
 }
+
+type GetSalesReturnList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/serviceFeeManage.go b/model/request/serviceFeeManage.go
index b525ae9..d5713b5 100644
--- a/model/request/serviceFeeManage.go
+++ b/model/request/serviceFeeManage.go
@@ -17,3 +17,8 @@
 	Client
 	ServiceFeeManage
 }
+
+type GetServiceFeeManageList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/serviceFollowup.go b/model/request/serviceFollowup.go
index 9ae6706..a13fa6c 100644
--- a/model/request/serviceFollowup.go
+++ b/model/request/serviceFollowup.go
@@ -24,3 +24,8 @@
 	Id int `json:"id"`
 	ServiceFollowup
 }
+
+type GetServiceFollowupList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/request/subOrder.go b/model/request/subOrder.go
index 14d854b..a9e894c 100644
--- a/model/request/subOrder.go
+++ b/model/request/subOrder.go
@@ -18,3 +18,8 @@
 	Id int `json:"id"`
 	SubOrder
 }
+
+type GetSubOrderList struct {
+	PageInfo
+	Keyword string `json:"keyword"`
+}
diff --git a/model/response/response.go b/model/response/response.go
index 3b371a2..ac99723 100644
--- a/model/response/response.go
+++ b/model/response/response.go
@@ -103,7 +103,8 @@
 	}
 
 	SaleChanceResponse struct {
-		List []*model.SaleChance `json:"list"`
+		List  []*model.SaleChance `json:"list"`
+		Count int                 `json:"count"`
 	}
 
 	SaleStageResponse struct {
@@ -127,35 +128,43 @@
 	}
 
 	QuotationResponse struct {
-		List []*model.Quotation `json:"list"`
+		List  []*model.Quotation `json:"list"`
+		Count int                `json:"count"`
 	}
 
 	MasterOrderResponse struct {
-		List []*model.MasterOrder `json:"list"`
+		List  []*model.MasterOrder `json:"list"`
+		Count int                  `json:"count"`
 	}
 
 	SubOrderResponse struct {
-		List []*model.SubOrder `json:"list"`
+		List  []*model.SubOrder `json:"list"`
+		Count int               `json:"count"`
 	}
 
 	SalesDetailsResponse struct {
-		List []*model.SalesDetails `json:"list"`
+		List  []*model.SalesDetails `json:"list"`
+		Count int                   `json:"count"`
 	}
 
 	SalesReturnResponse struct {
-		List []*model.SalesReturn `json:"list"`
+		List  []*model.SalesReturn `json:"list"`
+		Count int                  `json:"count"`
 	}
 
 	SalesRefundResponse struct {
-		List []*model.SalesRefund `json:"list"`
+		List  []*model.SalesRefund `json:"list"`
+		Count int                  `json:"count"`
 	}
 
 	ContractResponse struct {
-		List []*model.Contract `json:"list"`
+		List  []*model.Contract `json:"list"`
+		Count int               `json:"count"`
 	}
 
 	PlanResponse struct {
-		List []*model.Plan `json:"list"`
+		List  []*model.Plan `json:"list"`
+		Count int           `json:"count"`
 	}
 
 	ServiceContractsResponse struct {
@@ -163,11 +172,13 @@
 	}
 
 	OrderManageResponse struct {
-		List []*model.OrderManage `json:"list"`
+		List  []*model.OrderManage `json:"list"`
+		Count int                  `json:"count"`
 	}
 
 	ServiceFollowupResponse struct {
-		List []*model.ServiceFollowup `json:"list"`
+		List  []*model.ServiceFollowup `json:"list"`
+		Count int                      `json:"count"`
 	}
 
 	CustomerServiceSheetResponse struct {
@@ -175,7 +186,8 @@
 	}
 
 	ServiceFeeManageResponse struct {
-		List []*model.ServiceFeeManage `json:"list"`
+		List  []*model.ServiceFeeManage `json:"list"`
+		Count int                       `json:"count"`
 	}
 
 	MenuTreeResponse struct {
diff --git a/model/saleChance.go b/model/saleChance.go
index fdfb54b..060a15c 100644
--- a/model/saleChance.go
+++ b/model/saleChance.go
@@ -45,9 +45,14 @@
 		gorm.Model `json:"-"`
 	}
 
-	SaleChangeSearch struct {
+	SaleChanceSearch struct {
 		SaleChance
-		Orm *gorm.DB
+
+		Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
 	}
 )
 
@@ -55,12 +60,15 @@
 	return "sale_chance"
 }
 
-func NewSaleChangeSearch() *SaleChangeSearch {
-	return &SaleChangeSearch{Orm: mysqlx.GetDB()}
+func NewSaleChanceSearch() *SaleChanceSearch {
+	return &SaleChanceSearch{Orm: mysqlx.GetDB()}
 }
 
-func (slf *SaleChangeSearch) build() *gorm.DB {
+func (slf *SaleChanceSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&SaleChance{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id > 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -71,42 +79,57 @@
 	return db
 }
 
-func (slf *SaleChangeSearch) Create(record *SaleChance) (err error) {
+func (slf *SaleChanceSearch) Create(record *SaleChance) (err error) {
 	var db = slf.build()
 	err = db.Create(record).Error
 	return
 }
 
-func (slf *SaleChangeSearch) Update(record *SaleChance) (err error) {
+func (slf *SaleChanceSearch) Update(record *SaleChance) (err error) {
 	var db = slf.build()
 	err = db.Updates(record).Error
 	return
 }
 
-func (slf *SaleChangeSearch) Delete() (err error) {
+func (slf *SaleChanceSearch) Delete() (err error) {
 	var db = slf.build()
 	err = db.Delete(&SaleChance{}).Error
 	return
 }
 
-func (slf *SaleChangeSearch) Find() (record SaleChance, err error) {
+func (slf *SaleChanceSearch) Find() (record SaleChance, err error) {
 	var db = slf.build()
 	err = db.First(&record).Error
 	return
 }
 
-func (slf *SaleChangeSearch) FindAll() (record []*SaleChance, err error) {
+func (slf *SaleChanceSearch) FindAll() (record []*SaleChance, err error) {
 	var db = slf.build()
 	err = db.Preload("Client").Preload("Contact").Find(&record).Error
 	return
 }
 
-func (slf *SaleChangeSearch) SetId(id int) *SaleChangeSearch {
+func (slf *SaleChanceSearch) SetId(id int) *SaleChanceSearch {
 	slf.Id = id
 	return slf
 }
 
-func (slf *SaleChangeSearch) SetName(name string) *SaleChangeSearch {
+func (slf *SaleChanceSearch) SetName(name string) *SaleChanceSearch {
 	slf.Name = name
 	return slf
 }
+
+func (slf *SaleChanceSearch) SetKeyword(keyword string) *SaleChanceSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *SaleChanceSearch) SetPage(page, size int) *SaleChanceSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *SaleChanceSearch) SetOrder(order string) *SaleChanceSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/salesDetails.go b/model/salesDetails.go
index 8755d28..da9422d 100644
--- a/model/salesDetails.go
+++ b/model/salesDetails.go
@@ -32,7 +32,13 @@
 
 	SalesDetailsSearch struct {
 		SalesDetails
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -48,6 +54,9 @@
 
 func (slf *SalesDetailsSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&SalesDetails{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -88,3 +97,18 @@
 	err := db.Preload("Products").Preload("Client").Find(&records).Error
 	return records, err
 }
+
+func (slf *SalesDetailsSearch) SetKeyword(keyword string) *SalesDetailsSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *SalesDetailsSearch) SetPage(page, size int) *SalesDetailsSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *SalesDetailsSearch) SetOrder(order string) *SalesDetailsSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/salesLeads.go b/model/salesLeads.go
index 4c1bad7..2cbf6f5 100644
--- a/model/salesLeads.go
+++ b/model/salesLeads.go
@@ -26,12 +26,11 @@
 	SalesLeadsSearch struct {
 		SalesLeads
 
-				Orm      *gorm.DB
+		Orm      *gorm.DB
 		Keyword  string
 		OrderBy  string
 		PageNum  int
 		PageSize int
-
 	}
 )
 
@@ -50,6 +49,9 @@
 	if slf.Keyword != "" {
 		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
 	}
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
diff --git a/model/salesRefund.go b/model/salesRefund.go
index 8cf92ad..83d2b5a 100644
--- a/model/salesRefund.go
+++ b/model/salesRefund.go
@@ -23,7 +23,13 @@
 
 	SalesRefundSearch struct {
 		SalesRefund
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -39,6 +45,9 @@
 
 func (slf *SalesRefundSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&SalesRefund{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -79,3 +88,18 @@
 	slf.Id = id
 	return slf
 }
+
+func (slf *SalesRefundSearch) SetKeyword(keyword string) *SalesRefundSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *SalesRefundSearch) SetPage(page, size int) *SalesRefundSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *SalesRefundSearch) SetOrder(order string) *SalesRefundSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/salesReturn.go b/model/salesReturn.go
index 074cbe1..d99df06 100644
--- a/model/salesReturn.go
+++ b/model/salesReturn.go
@@ -21,7 +21,13 @@
 
 	SalesReturnSearch struct {
 		SalesReturn
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -37,6 +43,9 @@
 
 func (slf *SalesReturnSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&SalesReturn{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -77,3 +86,18 @@
 	slf.Id = id
 	return slf
 }
+
+func (slf *SalesReturnSearch) SetKeyword(keyword string) *SalesReturnSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *SalesReturnSearch) SetPage(page, size int) *SalesReturnSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *SalesReturnSearch) SetOrder(order string) *SalesReturnSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/serviceFeeManage.go b/model/serviceFeeManage.go
index 6db6e76..e7709da 100644
--- a/model/serviceFeeManage.go
+++ b/model/serviceFeeManage.go
@@ -20,7 +20,13 @@
 
 	ServiceFeeManageSearch struct {
 		ServiceFeeManage
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -40,6 +46,9 @@
 
 func (slf *ServiceFeeManageSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&ServiceFeeManage{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db.Where("id = ?", slf.Id)
 	}
@@ -83,3 +92,18 @@
 	err := db.Preload("Client").Find(&records).Error
 	return records, err
 }
+
+func (slf *ServiceFeeManageSearch) SetKeyword(keyword string) *ServiceFeeManageSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *ServiceFeeManageSearch) SetPage(page, size int) *ServiceFeeManageSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *ServiceFeeManageSearch) SetOrder(order string) *ServiceFeeManageSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/serviceFollowup.go b/model/serviceFollowup.go
index 6f8f179..fab5cf9 100644
--- a/model/serviceFollowup.go
+++ b/model/serviceFollowup.go
@@ -28,7 +28,13 @@
 
 	ServiceFollowupSearch struct {
 		ServiceFollowup
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -44,6 +50,9 @@
 
 func (slf *ServiceFollowupSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&ServiceFollowup{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -86,3 +95,18 @@
 }
 
 // 鍙兘鎬� 甯佺 褰撳墠鐘舵�侊紙閿�鍞満浼氾級
+
+func (slf *ServiceFollowupSearch) SetKeyword(keyword string) *ServiceFollowupSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *ServiceFollowupSearch) SetPage(page, size int) *ServiceFollowupSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *ServiceFollowupSearch) SetOrder(order string) *ServiceFollowupSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/model/subOrder.go b/model/subOrder.go
index 60eb98c..f383d9d 100644
--- a/model/subOrder.go
+++ b/model/subOrder.go
@@ -19,7 +19,13 @@
 
 	SubOrderSearch struct {
 		SubOrder
-		Orm *gorm.DB
+
+				Orm      *gorm.DB
+		Keyword  string
+		OrderBy  string
+		PageNum  int
+		PageSize int
+
 	}
 )
 
@@ -35,6 +41,9 @@
 
 func (slf *SubOrderSearch) build() *gorm.DB {
 	var db = slf.Orm.Model(&SubOrder{})
+	if slf.Keyword != "" {
+		db = db.Where("name LIKE ?", "%"+slf.Keyword+"%")
+	}
 	if slf.Id != 0 {
 		db = db.Where("id = ?", slf.Id)
 	}
@@ -73,3 +82,18 @@
 	slf.Id = id
 	return slf
 }
+
+func (slf *SubOrderSearch) SetKeyword(keyword string) *SubOrderSearch {
+	slf.Keyword = keyword
+	return slf
+}
+
+func (slf *SubOrderSearch) SetPage(page, size int) *SubOrderSearch {
+	slf.PageNum, slf.PageSize = page, size
+	return slf
+}
+
+func (slf *SubOrderSearch) SetOrder(order string) *SubOrderSearch {
+	slf.OrderBy = order
+	return slf
+}
diff --git a/pkg/ecode/code.go b/pkg/ecode/code.go
index e2462f4..d859d9d 100644
--- a/pkg/ecode/code.go
+++ b/pkg/ecode/code.go
@@ -137,12 +137,12 @@
 	FollowRecordUpdateErr = 1800005 // 鏇存柊璺熻繘璁板綍澶辫触
 	FollowRecordDeleteErr = 1800006 // 鍒犻櫎璺熻繘璁板綍澶辫触
 
-	SaleChangeExist     = 1900001 // 閿�鍞満浼氬凡瀛樺湪
-	SaleChangeNotExist  = 1900002 // 閿�鍞満浼氫笉瀛樺湪
-	SaleChangeListErr   = 1900003 // 鑾峰彇閿�鍞満浼氬垪琛ㄥけ璐�
-	SaleChangeSetErr    = 1900004 // 璁剧疆閿�鍞満浼氬け璐�
-	SaleChangeUpdateErr = 1900005 // 鏇存柊閿�鍞満浼氬け璐�
-	SaleChangeDeleteErr = 1900006 // 鍒犻櫎閿�鍞満浼氬け璐�
+	SaleChanceExist     = 1900001 // 閿�鍞満浼氬凡瀛樺湪
+	SaleChanceNotExist  = 1900002 // 閿�鍞満浼氫笉瀛樺湪
+	SaleChanceListErr   = 1900003 // 鑾峰彇閿�鍞満浼氬垪琛ㄥけ璐�
+	SaleChanceSetErr    = 1900004 // 璁剧疆閿�鍞満浼氬け璐�
+	SaleChanceUpdateErr = 1900005 // 鏇存柊閿�鍞満浼氬け璐�
+	SaleChanceDeleteErr = 1900006 // 鍒犻櫎閿�鍞満浼氬け璐�
 
 	SaleStageExist    = 2000001 // 閿�鍞樁娈靛凡瀛樺湪
 	SaleStageNotExist = 2000002 // 閿�鍞樁娈典笉瀛樺湪
diff --git a/router/contract.go b/router/contract.go
index d83f1e1..01cbcb8 100644
--- a/router/contract.go
+++ b/router/contract.go
@@ -14,6 +14,6 @@
 		contractRouter.POST("add", contractApi.Add)             // 娣诲姞鍚堝悓
 		contractRouter.DELETE("delete/:id", contractApi.Delete) // 鍒犻櫎鍚堝悓
 		contractRouter.PUT("update", contractApi.Update)        // 鏇存柊鍚堝悓
-		contractRouter.GET("list", contractApi.List)            // 鑾峰彇鍚堝悓鍒楄〃
+		contractRouter.POST("list", contractApi.List)            // 鑾峰彇閿�鍞悎鍚屽垪琛�
 	}
-}
+}
\ No newline at end of file
diff --git a/router/masterOrder.go b/router/masterOrder.go
index d3d4cf6..23efb34 100644
--- a/router/masterOrder.go
+++ b/router/masterOrder.go
@@ -14,6 +14,6 @@
 		masterOrderRouter.POST("add", masterOrderApi.Add)             // 娣诲姞涓昏鍗�
 		masterOrderRouter.DELETE("delete/:id", masterOrderApi.Delete) // 鍒犻櫎涓昏鍗�
 		masterOrderRouter.PUT("update", masterOrderApi.Update)        // 鏇存柊涓昏鍗�
-		masterOrderRouter.GET("list", masterOrderApi.List)            // 鑾峰彇涓昏鍗曞垪琛�
+		masterOrderRouter.POST("list", masterOrderApi.List)            // 鑾峰彇閿�鍞�诲崟鍒楄〃
 	}
-}
+}
\ No newline at end of file
diff --git a/router/orderManage.go b/router/orderManage.go
index 0774329..64ddd77 100644
--- a/router/orderManage.go
+++ b/router/orderManage.go
@@ -14,6 +14,6 @@
 		orderManageRouter.POST("add", orderManageApi.Add)             // 娣诲姞璁㈠崟
 		orderManageRouter.DELETE("delete/:id", orderManageApi.Delete) // 鍒犻櫎璁㈠崟
 		orderManageRouter.PUT("update", orderManageApi.Update)        // 鏇存柊璁㈠崟
-		orderManageRouter.GET("list", orderManageApi.List)            // 鑾峰彇璁㈠崟鍒楄〃
+		orderManageRouter.POST("list", orderManageApi.List)            // 鑾峰彇宸ュ崟绠$悊鍒楄〃
 	}
-}
+}
\ No newline at end of file
diff --git a/router/plan.go b/router/plan.go
index e0b3923..e53fa2f 100644
--- a/router/plan.go
+++ b/router/plan.go
@@ -14,6 +14,6 @@
 		planRouter.POST("add", planApi.Add)             // 娣诲姞璁″垝
 		planRouter.DELETE("delete/:id", planApi.Delete) // 鍒犻櫎璁″垝
 		planRouter.PUT("update", planApi.Update)        // 鏇存柊璁″垝
-		planRouter.GET("list", planApi.List)            // 鑾峰彇璁″垝鍒楄〃
+		planRouter.POST("list", planApi.List)            // 鑾峰彇鐢熸垚璁″垝鍒楄〃
 	}
-}
+}
\ No newline at end of file
diff --git a/router/quotation.go b/router/quotation.go
index d5fc559..c5672e8 100644
--- a/router/quotation.go
+++ b/router/quotation.go
@@ -14,6 +14,6 @@
 		quotationRouter.POST("add", quotationApi.Add)             // 娣诲姞鎶ヤ环鍗�
 		quotationRouter.DELETE("delete/:id", quotationApi.Delete) // 鍒犻櫎鎶ヤ环鍗�
 		quotationRouter.PUT("update", quotationApi.Update)        // 鏇存柊鎶ヤ环鍗�
-		quotationRouter.GET("list", quotationApi.List)            // 鑾峰彇鎶ヤ环鍗曞垪琛�
+		quotationRouter.POST("list", quotationApi.List)            // 鑾峰彇鎶ヤ环鍗曞垪琛�
 	}
-}
+}
\ No newline at end of file
diff --git a/router/saleChance.go b/router/saleChance.go
index cf82bcc..5844d07 100644
--- a/router/saleChance.go
+++ b/router/saleChance.go
@@ -14,6 +14,6 @@
 		saleChanceRouter.POST("add", saleChanceApi.Add)             // 娣诲姞閿�鍞満浼�
 		saleChanceRouter.DELETE("delete/:id", saleChanceApi.Delete) // 鍒犻櫎閿�鍞満浼�
 		saleChanceRouter.PUT("update", saleChanceApi.Update)        // 鏇存柊閿�鍞満浼�
-		saleChanceRouter.GET("list", saleChanceApi.List)            // 鑾峰彇閿�鍞満浼氬垪琛�
+		saleChanceRouter.POST("list", saleChanceApi.List)            // 鑾峰彇閿�鍞満浼氬垪琛�
 	}
-}
+}
\ No newline at end of file
diff --git a/router/salesDetails.go b/router/salesDetails.go
index e892a26..01c4248 100644
--- a/router/salesDetails.go
+++ b/router/salesDetails.go
@@ -14,6 +14,6 @@
 		salesDetailsRouter.POST("add", salesDetailsApi.Add)             // 娣诲姞閿�鍞槑缁�
 		salesDetailsRouter.DELETE("delete/:id", salesDetailsApi.Delete) // 鍒犻櫎閿�鍞槑缁�
 		salesDetailsRouter.PUT("update", salesDetailsApi.Update)        // 鏇存柊閿�鍞槑缁�
-		salesDetailsRouter.GET("list", salesDetailsApi.List)            // 鑾峰彇閿�鍞槑缁嗗垪琛�
+		salesDetailsRouter.POST("list", salesDetailsApi.List)            // 鑾峰彇閿�鍞槑缁嗗崟鍒楄〃
 	}
-}
+}
\ No newline at end of file
diff --git a/router/salesRefund.go b/router/salesRefund.go
index 5a30041..c017d70 100644
--- a/router/salesRefund.go
+++ b/router/salesRefund.go
@@ -14,6 +14,6 @@
 		salesRefundRouter.POST("add", salesRefundApi.Add)             // 娣诲姞閿�鍞��娆�
 		salesRefundRouter.DELETE("delete/:id", salesRefundApi.Delete) // 鍒犻櫎閿�鍞��娆�
 		salesRefundRouter.PUT("update", salesRefundApi.Update)        // 鏇存柊閿�鍞��娆�
-		salesRefundRouter.GET("list", salesRefundApi.List)            // 鑾峰彇閿�鍞��娆惧垪琛�
+		salesRefundRouter.POST("list", salesRefundApi.List)            // 鑾峰彇閿�鍞��娆惧崟鍒楄〃
 	}
-}
+}
\ No newline at end of file
diff --git a/router/salesReturn.go b/router/salesReturn.go
index 8c73643..8cbb54f 100644
--- a/router/salesReturn.go
+++ b/router/salesReturn.go
@@ -14,6 +14,6 @@
 		salesReturnRouter.POST("add", salesReturnApi.Add)             // 娣诲姞閿�鍞��璐�
 		salesReturnRouter.DELETE("delete/:id", salesReturnApi.Delete) // 鍒犻櫎閿�鍞��璐�
 		salesReturnRouter.PUT("update", salesReturnApi.Update)        // 鏇存柊閿�鍞��璐�
-		salesReturnRouter.GET("list", salesReturnApi.List)            // 鑾峰彇閿�鍞��璐у垪琛�
+		salesReturnRouter.POST("list", salesReturnApi.List)            // 鑾峰彇閿�鍞��璐у崟鍒楄〃
 	}
-}
+}
\ No newline at end of file
diff --git a/router/serviceFeeManage.go b/router/serviceFeeManage.go
index 92fd410..78de68d 100644
--- a/router/serviceFeeManage.go
+++ b/router/serviceFeeManage.go
@@ -14,6 +14,6 @@
 		serviceFeeManageRouter.POST("add", serviceFeeManageApi.Add)             // 娣诲姞鏈嶅姟璐圭鐞�
 		serviceFeeManageRouter.DELETE("delete/:id", serviceFeeManageApi.Delete) // 鍒犻櫎鏈嶅姟璐圭鐞�
 		serviceFeeManageRouter.PUT("update", serviceFeeManageApi.Update)        // 鏇存柊鏈嶅姟璐圭鐞�
-		serviceFeeManageRouter.GET("list", serviceFeeManageApi.List)            // 鑾峰彇鏈嶅姟璐圭鐞嗗垪琛�
+		serviceFeeManageRouter.POST("list", serviceFeeManageApi.List)            // 鑾峰彇鏈嶅姟璐圭鐞嗗垪琛�
 	}
-}
+}
\ No newline at end of file
diff --git a/router/serviceFollowup.go b/router/serviceFollowup.go
index 18c728b..0e018ca 100644
--- a/router/serviceFollowup.go
+++ b/router/serviceFollowup.go
@@ -14,6 +14,6 @@
 		serviceFollowupRouter.POST("add", serviceFollowupApi.Add)             // 娣诲姞鏈嶅姟璺熻繘
 		serviceFollowupRouter.DELETE("delete/:id", serviceFollowupApi.Delete) // 鍒犻櫎鏈嶅姟璺熻繘
 		serviceFollowupRouter.PUT("update", serviceFollowupApi.Update)        // 鏇存柊鏈嶅姟璺熻繘
-		serviceFollowupRouter.GET("list", serviceFollowupApi.List)            // 鑾峰彇鏈嶅姟璺熻繘鍒楄〃
+		serviceFollowupRouter.POST("list", serviceFollowupApi.List)            // 鑾峰彇鍥炶鍗曠鐞嗗垪琛�
 	}
-}
+}
\ No newline at end of file
diff --git a/router/subOrder.go b/router/subOrder.go
index 1cd0197..ce801ba 100644
--- a/router/subOrder.go
+++ b/router/subOrder.go
@@ -14,6 +14,6 @@
 		subOrderRouter.POST("add", subOrderApi.Add)             // 娣诲姞瀛愯鍗�
 		subOrderRouter.DELETE("delete/:id", subOrderApi.Delete) // 鍒犻櫎瀛愯鍗�
 		subOrderRouter.PUT("update", subOrderApi.Update)        // 鏇存柊瀛愯鍗�
-		subOrderRouter.GET("list", subOrderApi.List)            // 鑾峰彇瀛愯鍗曞垪琛�
+		subOrderRouter.POST("list", subOrderApi.List)            // 鑾峰彇閿�鍞瓙鍗曞垪琛�
 	}
-}
+}
\ No newline at end of file
diff --git a/service/contract.go b/service/contract.go
index 58cb8e0..a1e56e5 100644
--- a/service/contract.go
+++ b/service/contract.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (ContractService) GetContractList() ([]*model.Contract, int) {
-	list, err := model.NewContractSearch().FindAll()
-	if err != nil {
-		return nil, ecode.ContractListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (ContractService) UpdateContract(contract *model.Contract) int {
 	// check contract exist
 	_, err := model.NewContractSearch().SetId(contract.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (ContractService) GetContractList(page, pageSize int, keyword string) ([]*model.Contract, int) {
+	// get contact list
+	contacts, err := model.NewContractSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.ContractListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/masterOrder.go b/service/masterOrder.go
index c1255a1..16d3fb5 100644
--- a/service/masterOrder.go
+++ b/service/masterOrder.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (MasterOrderService) GetMasterOrderList() ([]*model.MasterOrder, int) {
-	list, err := model.NewMasterOrderSearch().FindAll()
-	if err != nil {
-		return nil, ecode.MasterOrderListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (MasterOrderService) UpdateMasterOrder(masterOrder *model.MasterOrder) int {
 	// check masterOrder exist
 	_, err := model.NewMasterOrderSearch().SetId(masterOrder.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (MasterOrderService) GetMasterOrderList(page, pageSize int, keyword string) ([]*model.MasterOrder, int) {
+	// get contact list
+	contacts, err := model.NewMasterOrderSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.MasterOrderListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/orderManage.go b/service/orderManage.go
index 93b8219..0e2dbff 100644
--- a/service/orderManage.go
+++ b/service/orderManage.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (OrderManageService) GetOrderManageList() ([]*model.OrderManage, int) {
-	list, err := model.NewOrderManageSearch().FindAll()
-	if err != nil {
-		return nil, ecode.OrderManageListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (OrderManageService) UpdateOrderManage(orderManage *model.OrderManage) int {
 	// check orderManage exist
 	_, err := model.NewOrderManageSearch().SetId(orderManage.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (OrderManageService) GetOrderManageList(page, pageSize int, keyword string) ([]*model.OrderManage, int) {
+	// get contact list
+	contacts, err := model.NewOrderManageSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.OrderManageListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/plan.go b/service/plan.go
index 9e175fb..1d34051 100644
--- a/service/plan.go
+++ b/service/plan.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (PlanService) GetPlanList() ([]*model.Plan, int) {
-	list, err := model.NewPlanSearch().FindAll()
-	if err != nil {
-		return nil, ecode.PlanListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (PlanService) UpdatePlan(plan *model.Plan) int {
 	// check plan exist
 	_, err := model.NewPlanSearch().SetId(plan.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (PlanService) GetPlanList(page, pageSize int, keyword string) ([]*model.Plan, int) {
+	// get contact list
+	contacts, err := model.NewPlanSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.PlanListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/quotation.go b/service/quotation.go
index 247f4e8..13b03b1 100644
--- a/service/quotation.go
+++ b/service/quotation.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (QuotationService) GetQuotationList() ([]*model.Quotation, int) {
-	list, err := model.NewQuotationSearch().FindAll()
-	if err != nil {
-		return nil, ecode.QuotationListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (QuotationService) UpdateQuotation(quotation *model.Quotation) int {
 	// check quotation exist
 	_, err := model.NewQuotationSearch().SetId(quotation.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (QuotationService) GetQuotationList(page, pageSize int, keyword string) ([]*model.Quotation, int) {
+	// get contact list
+	contacts, err := model.NewQuotationSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.QuotationListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/saleChance.go b/service/saleChance.go
index c609f25..03b01c3 100644
--- a/service/saleChance.go
+++ b/service/saleChance.go
@@ -8,43 +8,33 @@
 type SaleChanceService struct{}
 
 func (SaleChanceService) AddSaleChance(saleChange *model.SaleChance) int {
-	err := model.NewSaleChangeSearch().Create(saleChange)
+	err := model.NewSaleChanceSearch().Create(saleChange)
 	if err != nil {
-		return ecode.SaleChangeExist
+		return ecode.SaleChanceExist
 	}
 	return ecode.OK
 }
 
 func (SaleChanceService) DeleteSaleChance(id int) int {
 	// check saleChange exist
-	_, err := model.NewSaleChangeSearch().SetId(id).Find()
+	_, err := model.NewSaleChanceSearch().SetId(id).Find()
 	if err != nil {
-		return ecode.SaleChangeNotExist
+		return ecode.SaleChanceNotExist
 	}
 
 	// delete saleChange
-	err = model.NewSaleChangeSearch().SetId(id).Delete()
+	err = model.NewSaleChanceSearch().SetId(id).Delete()
 	if err != nil {
-		return ecode.SaleChangeDeleteErr
+		return ecode.SaleChanceDeleteErr
 	}
 	return ecode.OK
 }
 
-func (SaleChanceService) GetSaleChanceList() (int, []*model.SaleChance) {
-	// get saleChange list
-	saleChanges, err := model.NewSaleChangeSearch().FindAll()
-	if err != nil {
-		return ecode.SaleChangeListErr, nil
-	}
-
-	return ecode.OK, saleChanges
-}
-
 func (SaleChanceService) UpdateSaleChance(saleChange *model.SaleChance) int {
 	// update saleChange
-	err := model.NewSaleChangeSearch().SetId(saleChange.Id).Update(saleChange)
+	err := model.NewSaleChanceSearch().SetId(saleChange.Id).Update(saleChange)
 	if err != nil {
-		return ecode.SaleChangeUpdateErr
+		return ecode.SaleChanceUpdateErr
 	}
 
 	return ecode.OK
@@ -52,14 +42,23 @@
 
 // CheckSaleChangeExist check saleChange exist
 func CheckSaleChangeExist(id int) int {
-	tmp, err := model.NewSaleChangeSearch().SetId(id).Find()
+	tmp, err := model.NewSaleChanceSearch().SetId(id).Find()
 	if err != nil {
-		return ecode.SaleChangeNotExist
+		return ecode.SaleChanceNotExist
 	}
 
 	if tmp.Id == 0 {
-		return ecode.SaleChangeNotExist
+		return ecode.SaleChanceNotExist
 	}
 
 	return ecode.OK
 }
+
+func (SaleChanceService) GetSaleChanceList(page, pageSize int, keyword string) ([]*model.SaleChance, int) {
+	// get contact list
+	contacts, err := model.NewSaleChanceSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.SaleChanceListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/salesDetails.go b/service/salesDetails.go
index cde3653..ba80cb1 100644
--- a/service/salesDetails.go
+++ b/service/salesDetails.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (SalesDetailsService) GetSalesDetailsList() ([]*model.SalesDetails, int) {
-	list, err := model.NewSalesDetailsSearch().FindAll()
-	if err != nil {
-		return nil, ecode.SalesDetailsListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (SalesDetailsService) UpdateSalesDetails(salesDetails *model.SalesDetails) int {
 	// check salesDetails exist
 	_, err := model.NewSalesDetailsSearch().SetId(salesDetails.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (SalesDetailsService) GetSalesDetailsList(page, pageSize int, keyword string) ([]*model.SalesDetails, int) {
+	// get contact list
+	contacts, err := model.NewSalesDetailsSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.SalesDetailsListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/salesRefund.go b/service/salesRefund.go
index 5efa2e1..78bd789 100644
--- a/service/salesRefund.go
+++ b/service/salesRefund.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (SalesRefundService) GetSalesRefundList() ([]*model.SalesRefund, int) {
-	list, err := model.NewSalesRefundSearch().FindAll()
-	if err != nil {
-		return nil, ecode.SalesRefundListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (SalesRefundService) UpdateSalesRefund(salesRefund *model.SalesRefund) int {
 	// check salesRefund exist
 	_, err := model.NewSalesRefundSearch().SetId(salesRefund.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (SalesRefundService) GetSalesRefundList(page, pageSize int, keyword string) ([]*model.SalesRefund, int) {
+	// get contact list
+	contacts, err := model.NewSalesRefundSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.SalesRefundListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/salesReturn.go b/service/salesReturn.go
index f354d2d..6d4a7e3 100644
--- a/service/salesReturn.go
+++ b/service/salesReturn.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (SalesReturnService) GetSalesReturnList() ([]*model.SalesReturn, int) {
-	list, err := model.NewSalesReturnSearch().FindAll()
-	if err != nil {
-		return nil, ecode.SalesReturnListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (SalesReturnService) UpdateSalesReturn(salesReturn *model.SalesReturn) int {
 	// check salesReturn exist
 	_, err := model.NewSalesReturnSearch().SetId(salesReturn.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (SalesReturnService) GetSalesReturnList(page, pageSize int, keyword string) ([]*model.SalesReturn, int) {
+	// get contact list
+	contacts, err := model.NewSalesReturnSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.SalesReturnListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/serviceFeeManage.go b/service/serviceFeeManage.go
index 45bd4fa..e067ef2 100644
--- a/service/serviceFeeManage.go
+++ b/service/serviceFeeManage.go
@@ -43,15 +43,6 @@
 	return ecode.OK
 }
 
-func (FeeManageService) GetServiceFeeManageList() ([]*model.ServiceFeeManage, int) {
-	list, err := model.NewServiceFeeManageSearch(nil).FindAll()
-	if err != nil {
-		return nil, ecode.ServiceFeeManageListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (FeeManageService) UpdateServiceFeeManage(serviceFeeManage *model.ServiceFeeManage) int {
 	// check serviceFeeManage exist
 	_, err := model.NewServiceFeeManageSearch(nil).SetId(serviceFeeManage.Id).Find()
@@ -78,3 +69,12 @@
 
 	return ecode.OK
 }
+
+func (FeeManageService) GetServiceFeeManageList(page, pageSize int, keyword string) ([]*model.ServiceFeeManage, int) {
+	// get contact list
+	contacts, err := model.NewServiceFeeManageSearch(nil).SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.ServiceFeeManageListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/serviceFollowup.go b/service/serviceFollowup.go
index 83ea5f5..579c73d 100644
--- a/service/serviceFollowup.go
+++ b/service/serviceFollowup.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (FollowupService) GetServiceFollowupList() ([]*model.ServiceFollowup, int) {
-	list, err := model.NewServiceFollowupSearch().FindAll()
-	if err != nil {
-		return nil, ecode.ServiceFollowupListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (FollowupService) UpdateServiceFollowup(serviceFollowup *model.ServiceFollowup) int {
 	// check serviceFollowup exist
 	_, err := model.NewServiceFollowupSearch().SetId(serviceFollowup.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (FollowupService) GetServiceFollowupList(page, pageSize int, keyword string) ([]*model.ServiceFollowup, int) {
+	// get contact list
+	contacts, err := model.NewServiceFollowupSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.ServiceFollowupListErr
+	}
+	return contacts, ecode.OK
+}
diff --git a/service/subOrder.go b/service/subOrder.go
index cf6df59..38a56c6 100644
--- a/service/subOrder.go
+++ b/service/subOrder.go
@@ -29,15 +29,6 @@
 	return ecode.OK
 }
 
-func (SubOrderService) GetSubOrderList() ([]*model.SubOrder, int) {
-	list, err := model.NewSubOrderSearch().FindAll()
-	if err != nil {
-		return nil, ecode.SubOrderListErr
-	}
-
-	return list, ecode.OK
-}
-
 func (SubOrderService) UpdateSubOrder(subOrder *model.SubOrder) int {
 	// check subOrder exist
 	_, err := model.NewSubOrderSearch().SetId(subOrder.Id).Find()
@@ -52,3 +43,12 @@
 
 	return ecode.OK
 }
+
+func (SubOrderService) GetSubOrderList(page, pageSize int, keyword string) ([]*model.SubOrder, int) {
+	// get contact list
+	contacts, err := model.NewSubOrderSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll()
+	if err != nil {
+		return nil, ecode.SubOrderListErr
+	}
+	return contacts, ecode.OK
+}

--
Gitblit v1.8.0