package route

import (
	"github.com/gin-gonic/gin"
	"github.com/sirupsen/logrus"
	swaggerFiles "github.com/swaggo/files"
	ginSwagger "github.com/swaggo/gin-swagger"
	"youngee_b_api/app/controller"
	"youngee_b_api/handler"
	"youngee_b_api/middleware"
	"youngee_b_api/model/http_model"
)

func InitRoute(r *gin.Engine) {
	r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
	business := r.Group("/youngee")
	{
		business.POST("/register", handler.WrapRegisterHandler)                    // 商家主账号注册
		business.POST("/sendCode", handler.WrapSendCodeHandler)                    // 发送登录验证码
		business.POST("/login", handler.WrapCodeLoginHandler)                      // 商家登录
		business.POST("/subAccount/create", handler.WrapAddNewSubAccountHandler)   // 商家子账号注册
		business.POST("/subAccount/get", handler.WrapFindAllSubAccountHandler)     // 查找商家全部所属子账号
		business.POST("/subAccount/delete", handler.WrapDeleteSubAccountHandler)   // 删除商家子账号
		business.POST("/subAccount/update", handler.WrapFindAllSubAccountHandler)  // 修改商家子账号
		business.POST("/job/get", handler.WrapFindAllJobHandler)                   // 查找商家全部所属岗位
		business.POST("/job/create", handler.WrapaddNewJobHandler)                 // 商家新增岗位
		business.POST("/job/update", handler.WrapupdateJobHandler)                 // 商家修改岗位
		business.POST("/job/delete", handler.WrapdeleteJobHandler)                 // 商家删除岗位
		business.POST("/getUserInfo", handler.WrapGetUserInfoHandler)              // 商家用户信息
		business.POST("/accountInfo/get", handler.WrapGetAccountInfoHandler)       // 账号管理-账号信息查询
		business.POST("/accountInfo/update", handler.WrapUpdateAccountInfoHandler) // 账号管理-账号信息更新
		business.POST("/reviewInfo/get", handler.WrapGetReviewInfoHandler)         // 账号管理-认证信息查询
		business.POST("/contactInfo/get", handler.WrapGetContactInfoHandler)       // 联系方式-查询
		business.POST("/contactInfo/update", handler.WrapUpdateContactInfoHandler) // 联系方式-更新
		business.GET("/test/ping", func(c *gin.Context) {
			resp := http_model.CommonResponse{
				Status:  20000,
				Message: "",
				Data:    "ping",
			}
			c.JSON(200, resp)
		})
	}
	//r.Any("/testDemo", func(c *gin.Context) {
	//	resp := http_model.CommonResponse{
	//		Status:  0,
	//		Message: "",
	//		Data:    "pong",
	//	}
	//	c.JSON(200, resp)
	//	// 注意这里只是debug用的 接口要写成handler形式
	//})
	m := r.Group("/youngee/b")
	{
		m.Use(middleware.LoginAuthMiddleware)
		m.POST("/test", func(c *gin.Context) {
			c.JSON(200, "ok")
			// 注意这里只是debug用的 接口要写成handler形式
			auth := middleware.GetSessionAuth(c)
			logrus.Infof("auth:%+v", auth)
		})
		m.POST("/product/findall", handler.WrapFindAllProductHandler)                   // 查询全部产品
		m.POST("/product/find", handler.WrapFindProductHandler)                         // 查找单个产品
		m.POST("/product/findKuaishou", handler.WrapFindKuaishouProductHandler)         // 查询快手产品信息
		m.POST("/project/create", handler.WrapCreateProjectHandler)                     // 创建项目
		m.POST("/project/show", handler.WrapShowProjectHandler)                         // 展示项目内容
		m.POST("/project/update", handler.WrapUpdateProjectHandler)                     // 更新项目
		m.POST("/project/delete", handler.WrapDeleteProjectHandler)                     // 删除项目
		m.POST("/product/create", handler.WrapCreateProductHandler)                     // 创建项目
		m.POST("/project/list", handler.WrapFullProjectListHandler)                     // 项目列表
		m.POST("/project/taskList", handler.WrapProjectTaskListHandler)                 // 任务列表
		m.POST("/project/draftlist", handler.WrapProjectDraftBoxListHandler)            // 草稿箱查询
		m.GET("/project/getCreatingNumber", handler.WrapGetCreatingNumberHandler)       // 查询创建中项目数量
		m.POST("/project/changeTaskStatus", handler.WrapProjectChangeTaskStatusHandler) // 改变任务的状态
		m.POST("/pay/paysum", handler.WrapPaySumHandler)                                // 支付总额
		m.POST("/pay/projectpay", handler.WrapProjectPayHandler)                        // 支付
		m.POST("/enterprise/balance", handler.WrapEnterpriseBalanceHandler)             // 样叽页面各种余额
		m.POST("/project/tasklogisticslist", handler.WrapTaskLogisticsListHandler)      // 物流信息查询
		m.POST("/project/createlogistics", handler.WrapCreateLogisticsHandler)          // 创建物流信息
		m.POST("/project/signforreceipt", handler.WrapSignForReceiptHandler)            // 签收
		m.POST("/project/taskscriptlist", handler.WrapTaskScriptListHandler)            // 查询脚本列表
		m.POST("/project/scriptopinion", handler.WrapScriptOpinionHandler)              // 脚本审核意见提交
		m.POST("/project/acceptscript", handler.WrapAcceptScriptHandler)                // 同意脚本
		//m.POST("/project/tasksketchlist", handler.WrapTaskSketchListHandler)                 // 查询初稿列表

		//m.POST("/project/tasklinklist", handler.WrapTaskLinkListHandler)                     // 查询链接列表
		//m.POST("/project/taskdatalist", handler.WrapTaskDataListHandler)                     // 查询数据列表

		m.POST("/pay/getCodeUrl", handler.WrapGetCodeUrlHandler)                             // 获取微信支付codeURL
		m.POST("/pay/queryOrderByTradeId", handler.WrapQueryOrderByTradeIdHandler)           // 根据交易id查询微信是否扫码付款
		m.POST("/pay/rechargeBalance", handler.WrapRechargeBalanceHandler)                   // 支付成功后修改企业余额
		m.POST("/project/feeDetail", handler.WrapFeeDetailHandler)                           // 查看结项的费用明细
		m.POST("/pay/rechargeRecord", handler.WrapRechargeRecordHandler)                     // 查看充值记录
		m.POST("/invoice/addReceiveAddress", handler.WrapAddReceiveAddressHandler)           // 新增收货地址
		m.POST("/invoice/addReceiveInfo", handler.WrapAddReceiveInfoHandler)                 // 新增发票信息
		m.GET("/invoice/getReceiveAddress", handler.WrapGetReceiveAddressHandler)            // 获取收货地址
		m.GET("/invoice/getReceiveInfo", handler.WrapGetReceiveInfoHandler)                  // 获取发票信息
		m.POST("/invoice/operateReceiveInfo", handler.WrapOperateReceiveInfoHandler)         // 修改或删除发票信息
		m.POST("/invoice/operateReceiveAddress", handler.WrapOperateReceiveAddressHandler)   // 修改或删除发票地址
		m.POST("/invoice/addInvoiceRecord", handler.WrapAddInvoiceRecordHandler)             // 开票
		m.POST("/invoice/getInvoiceRecord", handler.WrapGetInvoiceRecordHandler)             // 获取开票记录
		m.POST("/project/getlogisticsnumberinfo", handler.WrapGetLogisticsNumberInfoHandler) // 获取物流数量
		m.POST("/project/getlinknumberinfo", handler.WrapGetLinkNumberInfoHandler)           // 获取链接信息
		m.POST("/project/getdatanumberinfo", handler.WrapGetDataNumberInfoHandler)           // 获取数据信息
		m.POST("/project/getreviewnumberinfo", handler.WrapGetReviewNumberInfoHandler)       // 获取审稿信息
		m.POST("/project/getdefaultnumberinfo", handler.WrapGetDefaultNumberInfoHandler)     // 获取违约信息
		m.POST("/project/taskdefaultreviewlist", handler.WrapTaskDefaultReviewListHandler)   // 查询违约列表-脚本、初稿、链接上传违约
		m.POST("/project/taskdefaultdatalist", handler.WrapTaskDefaultDataListHandler)       // 查询违约列表-数据违约
		m.POST("/project/taskteminatinglist", handler.WrapTaskTerminatingListHandler)        // 查询违约列表-解约待处理
		m.POST("/project/taskteminatedlist", handler.WrapTaskTerminatedListHandler)          // 查询违约列表-解约
		m.POST("/project/taskteminate", handler.WrapTaskTerminateHandler)                    // 解约

		m.POST("/project/taskfinishlist", handler.WrapTaskFinishListHandler)           // 查询违约列表-数据违约
		m.POST("/project/getfinishdata", handler.WrapGetFinishDataHandler)             // 获取结案信息
		m.GET("/project/finduserinfo", handler.WrapFindUserInfoHandler)                // 获取账户信息
		m.POST("/project/updatauserinfo", handler.WrapUpdateUserInfoHandler)           // 更新账户信息
		m.POST("/project/getfinishnumberinfo", handler.WrapGetFinishNumberInfoHandler) // 获取结案数量
		m.POST("/project/transferToPublic", handler.WrapTransferToPublicHandler)       // 对公转账
		m.GET("/workspace/headNums", handler.WrapWorkspaceHeadNumsHandler)             // 工作台上面数字显示
		m.POST("/workspace/BarNums", handler.WrapWorkspaceBarNumsHandler)              // 工作台柱状图数字显示

		m.POST("/project/getSpecialInviteNumber", handler.WrapGetSpecialInviteNumberHandler) // 查询专项任务邀请管理任务数量
		m.POST("/project/getSpecialReviewNumber", handler.WrapGetSpecialReviewNumberHandler) // 查询专项任务审稿管理任务数量
		m.POST("/project/getSpecialLinkNumber", handler.WrapGetSpecialLinkNumberHandler)     // 查询专项任务发布管理任务数量
		m.POST("/project/getSpecialDataNumber", handler.WrapGetSpecialDataNumberHandler)     // 查询专项任务数据管理任务数量

		m.POST("/project/specialTaskInviteList", handler.WrapSpecialTaskInviteListHandler)         // 查询专项任务邀请管理任务列表
		m.POST("/project/specialTaskSketchList", handler.WrapSpecialTaskSketchListHandler)         // 查询专项任务审稿管理任务列表
		m.POST("/project/specialTaskScriptList", handler.WrapSpecialTaskScriptListHandler)         // 查询专项任务审稿管理任务列表
		m.POST("/project/specialTaskLinkList", handler.WrapSpecialTaskLinkListHandler)             // 查询专项任务发布管理任务列表
		m.POST("/project/specialTaskDataList", handler.WrapSpecialTaskDataListHandler)             // 查询专项任务数据管理任务列表
		m.POST("/project/specialTaskFinishDataList", handler.WrapSpecialTaskFinishDataListHandler) // 查询专项任务结案数据任务列表

		m.POST("/project/getSpecialLogisticNumber", handler.WrapGetSpecialLogisticNumberHandler) // 查询专项任务发货管理任务数量
		m.POST("/project/getSpecialLogisticList", handler.WrapGetSpecialLogisticListHandler)     // 查询专项任务发货管理任务列表
		m.POST("/project/createSpecialLogistics", handler.WrapCreateSpecialLogisticsHandler)     // 创建专项创建物流信息
		m.POST("/project/signForSpecialLogistic", handler.WrapSignForSpecialLogisticHandler)     // 签收专项创建物流订单
		m.POST("/project/getSpecialSettleNumber", handler.WrapGetSpecialSettleNumberHandler)     // 查询专项任务结算管理任务数量
		m.POST("/project/specialTaskSettleList", handler.WrapSpecialTaskSettleListHandler)       // 查询专项任务结算管理任务列表
		m.POST("/project/getEnterpriseBalance", handler.WrapGetEnterpriseBalanceHandler)         // 查询当前账户所剩余额
		m.POST("/project/specialSettlePay", handler.WrapSpecialSettlePayHandler)                 // 结算
		m.POST("/project/getspecialfinishdata", handler.WrapGetSpecialFinishDataHandler)         // 查询专项任务结案单结案数据
		m.POST("/workspace/ddlproject", handler.WrapWorkspaceDDLprojectHandler)                  // 工作台项目统计
		m.POST("/project/recruit/getservicecharge", handler.WrapGetServiceChargeHandler)         // 获取产品置换服务费
		m.POST("/product/deletePhotoUrl", handler.WrapDeletePhotoUrlHandler)                     // 在数据库中删除图片url
		m.POST("/qrcode/getwxqrcode", handler.WrapGetWxQRCodeHandler)                            // 获取微信二维码

		m.POST("/project/getAllProduct", handler.WrapGetAllProjectHandler) // 查询项目广场项目列表

	}

	// 选品广场相关接口
	s := r.Group("/youngee/b")
	{
		s.Use(middleware.LoginAuthMiddleware)
		s.POST("/selection/delete", handler.WrapDeleteSelectionHandler)                       // 删除选品
		s.POST("/selection/findAll", handler.WrapFindAllSelectionHandler)                     // 选品列表
		s.POST("/selection/detail", handler.WrapSelectionDetailHandler)                       // 选品详情
		s.POST("/selection/create", handler.WrapCreateSelectionHandler)                       // 创建选品
		s.POST("/selection/update", handler.WrapUpdateSelectionHandler)                       // 更新选品
		s.POST("/selection/pay", handler.WrapPaySelectionHandler)                             // 支付选品项目
		s.POST("/selection/task/list", handler.WrapGetSecTaskListHandler)                     // 查询选品的任务列表(确定、发货、结算)
		s.POST("/selection/task/coop/pass", handler.WrapPassSecTaskCoopHandler)               // 同意任务合作
		s.POST("/selection/task/coop/refuse", handler.WrapRefuseSecTaskCoopHandler)           // 拒绝任务合作
		s.POST("/selection/task/logistics/create", handler.WrapCreateSecTaskLogisticsHandler) // 上传物流信息
		s.POST("/selection/task/logistics/update", handler.WrapUpdateSecTaskLogisticsHandler) // 修改物流信息
		s.POST("/selection/task/settle", handler.WrapSettleSecTaskHandler)                    // 结算
		s.POST("/selection/getAllSelection", handler.WrapGetAllSelectionHandler)              // 查询选品广场选品列表
	}

	// 工作台相关接口
	workspace := r.Group("/youngee/b/workspace")
	{
		workspace.Use(middleware.LoginAuthMiddleware)
		workspace.POST("/takegoods", controller.WorkspaceController{}.GetTakegoodsInfo) //工作台数据概览

		// 任务待办
		workspace.POST("/publicTask", controller.WorkspaceController{}.GetPublicTask) // 任务待办-公开任务
		workspace.POST("/targetTask", controller.WorkspaceController{}.GetTargetTask) // 任务待办-定向任务
		workspace.POST("/logistics", controller.WorkspaceController{}.GetLogistics)   // 任务待办-寄样物流
		workspace.POST("/explore", controller.WorkspaceController{}.GetExplore)       // 任务待办-探店邀约
		workspace.POST("/default", controller.WorkspaceController{}.GetDefault)       // 任务待办-违约管理
		// 合作待办
		workspace.POST("/taskInvite", controller.WorkspaceController{}.GetTaskInvite)           // 合作待办-任务邀约
		workspace.POST("/warehouseInvite", controller.WorkspaceController{}.GetWarehouseInvite) // 合作待办-入库邀约
		// 财务待办
		workspace.POST("/finance", controller.WorkspaceController{}.GetFinance) // 财务待办-充值与发票
	}
	// 任务中心相关接口
	task := r.Group("/youngee/b/task")
	{
		task.Use(middleware.LoginAuthMiddleware)
		task.POST("/product/findAll", controller.TaskController{}.GetAllProduct) // 关联商品-已有商品展示
		task.POST("/product/create", controller.TaskController{}.CreateProduct)  // 关联商品-新建商品

		task.POST("/selection/create", controller.TaskController{}.CreateSelection)      // 创建带货任务
		task.POST("/selection/update", controller.TaskController{}.UpdateSelection)      // 更新带货任务（样品奖励、补充信息）
		task.POST("/selection/detail", controller.TaskController{}.GetSelectionDetail)   // 电商带货任务预览
		task.POST("/selection/copy", controller.TaskController{}.CopySelection)          // 电商带货复制任务（获取原任务-创建任务）
		task.POST("/selection/toReview", controller.TaskController{}.SelectionToReview)  // 电商带货提交审核
		task.POST("/selection/task/list", controller.TaskController{}.SelectionTaskList) // 电商带货任务列表
		task.POST("/selection/del", controller.TaskController{}.SelectionDel)            // 删除带货任务
		task.POST("/selection/close", controller.TaskController{}.SelectionClose)        // 结束带货任务
		// 电商带货选达人列表 见/youngee/b/selection/task/list
		task.POST("/selection/talent/count", controller.TaskController{}.SelectionTalentCount)  // 电商带货选达人角标
		task.POST("/selection/data/talent", controller.TaskController{}.TalentDataDetail)       // 电商带货看数据-达人数据
		task.POST("/selection/data/sample", controller.TaskController{}.SampleDataDetail)       // 电商带货看数据-领样数据
		task.POST("/selection/data/selection", controller.TaskController{}.SelectionDataDetail) // 电商带货看数据-带货数据
		task.POST("/selection/reward/cash", controller.TaskController{}.SelectionRewardCash)    // 电商带货执行中-悬赏兑现

		task.POST("/project/create", controller.TaskController{}.CreateProject)              // 创建种草任务
		task.POST("/project/update", controller.TaskController{}.UpdateProject)              // 更新公开种草任务
		task.POST("/project/target/update", controller.TaskController{}.UpdateProjectTarget) // 更新定向种草任务
		task.POST("/project/detail", controller.TaskController{}.GetProjectDetail)           // 品牌种草任务预览
		task.POST("/project/copy", controller.TaskController{}.CopyProject)                  // 品牌种草复制任务
		task.POST("/project/toReview", controller.TaskController{}.ProjectToReview)          // 种草提交审核
		task.POST("/project/task/list", controller.TaskController{}.ProjectTaskList)         // 种草任务列表
		task.POST("/project/del", controller.TaskController{}.ProjectDel)                    // 删除种草任务
		task.POST("/project/close", controller.TaskController{}.ProjectClose)                // 结束种草任务
		task.POST("/talent/category", controller.TaskController{}.GetTalentCategory)         // 达人内容类型

		task.POST("/store/category", controller.TaskController{}.GetStoreCategory)     // 门店类目
		task.POST("/store/findAll", controller.TaskController{}.GetAllStore)           // 关联门店-已有门店展示
		task.POST("/store/create", controller.TaskController{}.CreateStore)            // 关联门店-新建门店
		task.POST("/teamBuying/findAll", controller.TaskController{}.GetAllTeamBuying) // 门店团购列表
		task.POST("/teamBuying/create", controller.TaskController{}.CreateTeamBuying)  // 新建团购

		task.POST("/localLife/create", controller.TaskController{}.CreateLocalLife)              // 创建本地生活任务
		task.POST("/localLife/update", controller.TaskController{}.UpdateLocalLife)              // 更新公开本地生活任务
		task.POST("/localLife/target/update", controller.TaskController{}.UpdateLocalLifeTarget) // 更新定向本地生活任务
		task.POST("/localLife/detail", controller.TaskController{}.GetLocalLifeDetail)           // 本地生活任务预览
		task.POST("/localLife/copy", controller.TaskController{}.CopyLocalLife)                  // 本地生活复制任务
		task.POST("/localLife/toReview", controller.TaskController{}.LocalLifeToReview)          // 本地生活提交审核
		task.POST("/localLife/task/list", controller.TaskController{}.LocalLifeTaskList)         // 本地生活列表
		task.POST("/localLife/del", controller.TaskController{}.LocalLifeDel)                    // 删除本地生活
		task.POST("/localLife/close", controller.TaskController{}.LocalLifeClose)                // 结束本地生活

		// 招募中、执行中
		task.POST("/project/getrecuritddl", handler.WrapGetRecruitTimeHandler)          //种草招募截止时间
		task.POST("/project/gettalentstatusnum", handler.WrapGetTalentstatusNumHandler) //达人状态数量
		task.POST("/project/getTasklist", handler.WrapGetTaskListHandler)               //种草招募中选达人列表/查名单
		task.POST("/project/task/coop/pass", handler.WrapPassproTaskCoopHandler)        // 种草同意任务合作
		task.POST("/project/task/coop/refuse", handler.WrapRefuseproTaskCoopHandler)    // 种草拒绝任务合作

		task.POST("/project/projectdata", handler.WrapProjectDataHandler) //种草看数据
		task.POST("/project/endtask", handler.WrapEndTaskHandler)         //种草暂时终止

		task.POST("/project/gettalentstatuscount", handler.WrapGetTalentstatusCountHandler) //达人状态统计
		task.POST("/project/presketchlist", handler.WrapPreSketchListHandler)               //种草初稿待传列表
		task.POST("/project/tasksketchlist", handler.WrapTasksketchlistHandler)             //种草初稿待审列表.审核通过
		task.POST("/project/sketchopinion", handler.WrapSketchOpinionHandler)               //种草初稿审核意见提交
		task.POST("/project/acceptsketch", handler.WrapAcceptSketchHandler)                 //种草同意初稿
		task.POST("/project/rejectsketch", handler.WrapRejectSketchHandler)                 //种草拒绝初稿
		task.POST("/project/findsketchphoto", handler.WrapFindSketchPhotoHandler)           //种草查询脚本配图和视频demo
		task.POST("/project/getsketchinfo", handler.WrapGetSketchInfoHandler)               //种草获取初稿
		task.POST("/project/getsketchrecordlist", handler.WrapGetSketchRecordListHandler)   //初稿审核记录

		task.POST("/project/prelinklist", handler.WrapPreLinkListHandler)   //种草待传链接列表
		task.POST("/project/tasklinklist", handler.WrapTaskLinklistHandler) //种草链接待审列表，通过
		task.POST("/project/linkopinion", handler.WrapLinkOpinionHandler)   // 种草链接审核意见提交
		task.POST("/project/acceptlink", handler.WrapAcceptLinkHandler)     // 种草同意链接
		task.POST("/project/rejectlink", handler.WrapRejectLinkHandler)     // 种草拒绝链接

		task.POST("/project/predatalist", handler.WrapPreDataListHandler)   //种草待传数据列表
		task.POST("/project/taskdatalist", handler.WrapTaskDatalistHandler) //种草数据待审列表,审核通过
		task.POST("/project/dataopinion", handler.WrapDataOpinionHandler)   // 种草数据审核意见提交
		task.POST("/project/acceptdata", handler.WrapAcceptDataHandler)     // 种草同意数据
		task.POST("/project/rejectdata", handler.WrapRejectDataHandler)     // 种草拒绝数据

		task.POST("/project/executedata", handler.WrapExecuteDataHandler) // 看数据
		task.POST("/project/data", handler.WrapDataHandler)               // 暂未

		task.POST("/locallife/getrecuritddl", handler.WrapGetLocalRecruitTimeHandler)          //本地生活招募截止时间
		task.POST("/locallife/gettalentstatusnum", handler.WrapGetLocalTalentstatusNumHandler) //达人状态数量
		task.POST("/locallife/getTasklist", handler.WrapGetLocalTaskListHandler)               //本地生活招募中选大人列表/查名单
		task.POST("/locallife/task/coop/pass", handler.WrapPasslocalTaskCoopHandler)           // 本地生活同意任务合作
		task.POST("/locallife/task/coop/refuse", handler.WrapRefuselocalTaskCoopHandler)       // 本地生活拒绝任务合作

		task.POST("/locallife/locallifedata", handler.WrapLocallifeDataHandler) //本地看数据

		task.POST("/locallife/getlocaltalentstatuscount", handler.WrapGetLocalTalentstatusCountHandler) //达人状态统计
		task.POST("/locallife/presketchlist", handler.WrapLocalPreSketchListHandler)                    //本地生活初稿待传列表
		task.POST("/locallife/tasksketchlist", handler.WrapLocalTasksketchlistHandler)                  //本地生活初稿待审列表.审核通过
		task.POST("/locallife/sketchopinion", handler.WrapLocalSketchOpinionHandler)                    //本地生活初稿审核意见提交
		task.POST("/locallife/acceptsketch", handler.WrapLocalAcceptSketchHandler)                      //本地生活同意初稿
		task.POST("/locallife/rejectsketch", handler.WrapLocalRejectSketchHandler)                      //本地生活拒绝初稿

		task.POST("/locallife/prelinklist", handler.WrapLocalPreLinkListHandler)   //本地生活待传链接列表
		task.POST("/locallife/tasklinklist", handler.WrapLocalTaskLinklistHandler) //本地生活链接待审列表，通过
		task.POST("/locallife/linkopinion", handler.WrapLocalLinkOpinionHandler)   // 本地生活链接审核意见提交
		task.POST("/locallife/acceptlink", handler.WrapLocalAcceptLinkHandler)     // 本地生活同意链接
		task.POST("/locallife/rejectlink", handler.WrapLocalRejectLinkHandler)     // 本地生活拒绝链接

		task.POST("/locallife/predatalist", handler.WrapLocalPreDataListHandler)   //本地生活待传数据列表
		task.POST("/locallife/taskdatalist", handler.WrapLocalTaskDatalistHandler) //本地生活数据待审列表
		task.POST("/locallife/dataopinion", handler.WrapLocalDataOpinionHandler)   // 本地生活数据审核意见提交
		task.POST("/locallife/acceptdata", handler.WrapLocalAcceptDataHandler)     // 本地生活同意数据
		task.POST("/locallife/rejectdata", handler.WrapLocalRejectDataHandler)     // 本地生活拒绝数据

		// 草稿箱
		task.POST("/draft/selection/list", controller.TaskController{}.GetSelectionDraftList) // 草稿箱——电商带货列表
		task.POST("/draft/project/list", controller.TaskController{}.GetProjectDraftList)     // 草稿箱——品牌种草列表
		task.POST("/draft/localLife/list", controller.TaskController{}.GetLocalLifeDraftList) // 草稿箱——本地生活列表

		// 违约管理
		task.POST("/default/public/list", controller.TaskController{}.GetPublicDefaultList)                // 违约管理——公开任务列表
		task.POST("/default/public/talent/list", controller.TaskController{}.GetPublicDefaultTalentList)   // 违约管理——公开任务-违约达人列表
		task.POST("/default/public/talent/count", controller.TaskController{}.GetPublicDefaultTalentCount) // 违约管理——公开任务-违约达人列表角标
		task.POST("/default/target/list", controller.TaskController{}.GetTargetDefaultList)                // 违约管理——定向任务列表
		task.POST("/default/target/talent/list", controller.TaskController{}.GetTargetDefaultTalentList)   // 违约管理——定向任务-违约达人列表
		task.POST("/default/talent/cancel", controller.TaskController{}.CancelTalent)                      // 违约管理——达人解约
		task.POST("/default/talent/cancel/list", controller.TaskController{}.CancelTalentList)             // 违约管理——达人批量解约

		// 寄样管理
		task.POST("/logistics/selection/talent/count", controller.TaskController{}.LogisticsSelectionTalentCount) // 带货待发货、待签收、已签收角标
		task.POST("/logistics/talent/list", controller.TaskController{}.LogisticsTalentList)                      // 种草达人物流列表
		task.POST("/logistics/export", controller.TaskController{}.LogisticsExport)                               // 导出种草达人物流数据
		task.POST("/logistics/talent/count", controller.TaskController{}.LogisticsTalentCount)                    // 种草待发货、待签收、已签收角标
		task.POST("/logistics/createLogistics", handler.WrapCreateLogisticsHandler)                               // 创建物流信息

		// 探店管理
		task.POST("/store/explore/list", controller.TaskController{}.StoreExploreList)            // 探店本地生活列表
		task.POST("/store/explore/info", controller.TaskController{}.StoreExploreInfo)            // 探店达人列表
		task.POST("/store/explore/info/count", controller.TaskController{}.StoreExploreInfoCount) // 探店达人列表角标
		task.POST("/store/explore/over", controller.TaskController{}.StoreExploreOver)            // 终止合作
		task.POST("/store/explore/operate", controller.TaskController{}.StoreExploreOperate)      // 预约时间批量同意/驳回

		// 服务商合作（其中品牌种草、本地生活列表限制类型为定向即可）
		task.POST("/supplier/list", controller.TaskController{}.GetSupplierInTargetTaskList)    // 服务商合作-服务商列表
		task.POST("/supplier/list/count", controller.TaskController{}.GetSupplierInTargetCount) // 服务商合作-服务商列表角标
		task.POST("/supplier/invite", controller.TaskController{}.InviteSupplier)               // 服务商合作-邀约合作
	}
	// 财务结算相关接口
	finance := r.Group("/youngee/b/finance")
	{
		finance.Use(middleware.LoginAuthMiddleware)
		finance.POST("/recharge/transferToPublic", controller.FinanceController{}.TransferToPublic)  // 充值管理——对公转账
		finance.POST("/pay/getCodeUrl", controller.FinanceController{}.GetCodeUrl)                   // 获取微信支付codeURL
		finance.POST("/pay/queryOrderByTradeId", controller.FinanceController{}.QueryOrderByTradeId) // 根据交易id查询微信是否扫码付款
		finance.POST("/balance/show", controller.FinanceController{}.ShowBalance)                    // 余额管理——总金额、可用余额、冻结金额
		finance.POST("/balance/frozen/info", controller.FinanceController{}.FrozenInfoList)          // 余额管理——冻结记录
		finance.POST("/balance/frozen/count", controller.FinanceController{}.FrozenInfoCount)        // 余额管理——冻结记录-角标
		finance.POST("/recharge/show", controller.FinanceController{}.ShowRecharge)                  // 充值管理——累计充值金额、确认中金额
		finance.POST("/recharge/info", controller.FinanceController{}.RechargeInfoList)              // 充值管理——充值记录
		finance.POST("/recharge/count", controller.FinanceController{}.RechargeInfoCount)            // 充值管理——充值记录-角标
		// YG官方汇款账号

		finance.POST("/invoice/default/update", controller.FinanceController{}.UpdateInvoiceDefault) // 设置默认开票抬头
		finance.POST("/invoice/default/get", controller.FinanceController{}.GetInvoiceDefault)       // 获取默认开票抬头
		finance.POST("/invoice/bill", controller.FinanceController{}.BillInvoice)                    // 确认开票
		finance.POST("/invoice/list/bill", controller.FinanceController{}.GetBillList)               // 开票记录
		finance.POST("/invoice/list/billable", controller.FinanceController{}.GetBillableList)       // 可开票账单
		finance.POST("/invoice/bill/show", controller.FinanceController{}.ShowInvoiceBill)           // 开票金额数据-已开票、可开票、开票中

		finance.POST("/bill/selection/pay", controller.BillController{}.SelectionPay)       // 电商带货账单支付
		finance.POST("/bill/project/pay", controller.BillController{}.ProjectPay)           // 品牌种草账单支付
		finance.POST("/bill/local/pay", controller.BillController{}.LocalLifePay)           // 本地生活账单支付
		finance.POST("/bill/selection/list", controller.BillController{}.SelectionBillList) // 账单查询-电商带货列表
		finance.POST("/bill/project/list", controller.BillController{}.ProjectBillList)     // 账单查询-品牌种草列表
		finance.POST("/bill/local/list", controller.BillController{}.LocalLifeBillList)     // 账单查询-本地生活列表
	}
	// 推广合作-服务商相关接口
	cooperation := r.Group("/youngee/b/cooperation/supplier")
	{
		cooperation.Use(middleware.LoginAuthMiddleware)
		cooperation.POST("/link", controller.CooperationController{}.GetSupplierLink)                 // 服务商端链接
		cooperation.POST("/search", controller.CooperationController{}.SearchSupplier)                // 服务商搜索
		cooperation.POST("/invite", controller.CooperationController{}.InviteSupplier)                // 服务商入库批量邀请
		cooperation.POST("/inPool", controller.CooperationController{}.GetEnterprisePoolList)         // 在库服务商列表
		cooperation.POST("/confirming", controller.CooperationController{}.GetSupplierConfirmingList) // 邀请待确认服务商列表
		cooperation.POST("/count", controller.CooperationController{}.GetSupplierCount)               // 服务商管理-角标
	}
	// 推广合作-商品管理相关接口
	product := r.Group("/youngee/b/cooperation/product")
	{
		product.Use(middleware.LoginAuthMiddleware)
		product.POST("/detail", controller.CooperationController{}.GetProductDetail) // 商品详情
		product.POST("/update", controller.CooperationController{}.UpdateProduct)    // 更新商品
		product.POST("/del", controller.CooperationController{}.DeleteProduct)       // 删除商品
		product.POST("/count", controller.CooperationController{}.CountProduct)      // 商品列表-角标
	}
	// 推广合作-门店管理相关接口
	store := r.Group("/youngee/b/cooperation/store")
	{
		store.Use(middleware.LoginAuthMiddleware)
		store.POST("/detail", controller.CooperationController{}.GetStoreDetail)                 // 门店详情
		store.POST("/update", controller.CooperationController{}.UpdateStore)                    // 更新门店
		store.POST("/del", controller.CooperationController{}.DeleteStore)                       // 删除门店
		store.POST("/teamBuying/detail", controller.CooperationController{}.GetTeamBuyingDetail) // 团购详情
		store.POST("/teamBuying/update", controller.CooperationController{}.UpdateTeamBuying)    // 更新团购
		store.POST("/teamBuying/del", controller.CooperationController{}.DeleteTeamBuying)       // 删除团购
	}
	//推广合作-达人管理
	talent := r.Group("/youngee/b/cooperation/talent")
	{
		talent.Use(middleware.LoginAuthMiddleware)
		talent.POST("/talentnum", handler.WrapGetTalentNumHandler)             //达人数统计
		talent.POST("/goodstalent", handler.WrapGetGoodsTalentHandler)         //带货达人列表
		talent.POST("/projecttalent", handler.WrapGetProjectTalentHandler)     //种草达人
		talent.POST("/locallifetalent", handler.WrapGetLocallifeTalentHandler) //本地生活达人

	}
	// 账号管理
	account := r.Group("/youngee/b/account")
	{
		account.Use(middleware.LoginAuthMiddleware)
		account.POST("/businessLicense", controller.AccountController{}.OCRIdentify)                                        // 营业执照OCR识别/认证
		account.POST("/strategy/auto/update", controller.AccountController{}.StrategyAuto)                                  // 策略配置-自动执行&违约规则
		account.POST("/strategy/defaultPayment/update", controller.AccountController{}.StrategyDefaultPayment)              // 策略配置-违约扣款
		account.POST("/strategy/auto/detail", controller.AccountController{}.StrategyAutoDetail)                            // 策略配置-自动执行&违约规则 详情
		account.POST("/strategy/defaultPayment/detail", controller.AccountController{}.StrategyDefaultPaymentPaymentDetail) // 策略配置-违约扣款 详情
	}
	// 通用
	common := r.Group("/youngee/b/common")
	{
		common.POST("/platform", controller.CommonController{}.CooperationPlatform)     // 获取合作平台icon
		common.POST("/product/category", controller.CommonController{}.ProductCategory) // 获取商品类目
		common.POST("/talent/province", handler.WrapGetProviceHandler)                  //获取达人省份
	}
}
