| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233 | package routersimport (	"tmr-watch/comm"	"tmr-watch/conf/setting"	"tmr-watch/http/handle/api"	"tmr-watch/http/handle/group"	"tmr-watch/http/handle/sap"	"tmr-watch/http/handle/zc"	"tmr-watch/middleware/jwt"	"github.com/gin-gonic/gin"	ginSwagger "github.com/swaggo/gin-swagger"	"github.com/swaggo/gin-swagger/swaggerFiles")func AppAPI(opts ...func(engine *gin.Engine)) func(s *gin.Engine) {	return func(s *gin.Engine) {		for _, opt := range opts {			opt(s)		}		s.POST("/pasture/account/distribute", group.DistributeAccount) // 账号下发		s.Static("/static", setting.CurrentPath+"/dist/static")               // 添加资源路径		s.StaticFile("/", setting.CurrentPath+"/dist/index.html")             //前端接口		s.StaticFile("/favicon.ico", setting.CurrentPath+"/dist/favicon.ico") //前端接口		s.Static("/file", setting.CurrentPath+"/uploads/file")		s.Static("/uploads", setting.CurrentPath+"/uploads")		s.POST("/auth", api.Auth)           // 获取登录token		s.POST("/authlogin", api.AuthLogin) // 获取登录token		s.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler)) // API 注释		if setting.CommSetting.PortName != "" {			s.GET("/comm/:id/:x/:y/", comm.ProcessHttp)			s.GET("/cps/:id/:limit", comm.ProcessHttpCPS)			s.POST("/comm/:id/:x/:y/", comm.ProcessHttp)			s.POST("/cps/:id/:limit", comm.ProcessHttpCPS)		}		eqm := s.Group("/manage/api")		eqm.POST("/login", api.Auth)		eqm.POST("/login/imei", api.AuthImei)		s.GET("/getData", api.GetWxCode)		s.POST("/userwxopenid/binding", api.UserWXOpenIDBinding)		apiV1 := s.Group("/authdata")		apiV1.Use(jwt.JWT()) // token 验证		{			apiV1.POST("/rolemenus", api.GetRecuDataByName)			apiV1.GET("/userinfo", api.GetUserinfo)			apiV1.POST("/logout", api.UserLogout)			apiV1.POST("/GetRecuDataByName", api.GetRecuDataByName) ////			apiV1.POST("/GetDataByName", api.GetDataByName)			apiV1.POST("/GetDataBySqlIN", api.GetDataBySqlIN)			apiV1.POST("/GetDataByNames", api.GetDataByNames)			apiV1.POST("/PostDataByName", api.PostDataByName)			apiV1.POST("/PostDataByNames", api.PostDataByNames)			apiV1.POST("/UpdateDataRelation", api.UpdateDataRelation) //log.error			apiV1.POST("/GetDataByNameForm", api.GetDataByNameForm)			apiV1.POST("/PostDataByNameForm", api.PostDataByNameForm)			apiV1.POST("/GetUpkeepPlan", api.GetUpkeepPlan)			apiV1.POST("/GetReportform", api.GetReportform)			apiV1.POST("/GetArrList", api.GetArrList)			apiV1.POST("/GETNurJudge", api.GETNurJudge)			apiV1.POST("/GETNurJudgeRport", api.GETNurJudgeRport)			apiV1.POST("/ExecDataByConfig", api.ExecDataByConfig)			apiV1.POST("/ImportExcel", api.ImportExcel)			apiV1.POST("/upload/:id/:name", api.UploadFile)			apiV1.POST("/uploads", api.UploadFiles)			apiV1.POST("/uploaderimage", api.UploaderImage)			apiV1.POST("/uploaderTmrImage", api.UploaderTmrImage)			apiV1.POST("/removeimage", api.RemovePicByName)			apiV1.GET("/getthumbnailimage/:filename", api.GetThumbnailImage)			apiV1.POST("/getoriginimage/:filename", api.GetOriginImage)			apiV1.GET("/getfileraw/:filename", api.GetFileRaw)			apiV1.GET("/downloadfile/:filename", api.DownloadFile)			apiV1.POST("/removefile/:id", api.RemoveFileByName)			apiV1.POST("/testdata", api.TestData)			apiV1.POST("/Testpartitions", api.Testpartitions)			//自定义报表			apiV1.POST("/Createchart", api.Createchart)			apiV1.POST("/Updatechart", api.Createchart)			apiV1.POST("/exesql", api.ExecSQL)			apiV1.POST("/Createdashboard", api.Updatedashboard)			apiV1.POST("/Updatedashboard", api.Updatedashboard)			apiV1.POST("/Dashboards", api.Dashboards)			// 格润富德 API 数据获取			apiV1.POST("/getDorm", api.GetDorm) // 牛舍信息			apiV1.POST("/GetRJSBData", api.GetRJSBData)			apiV1.POST("/PostRJSBData", api.PostRJSBData)			apiV1.POST("/PostRJSBDatas", api.PostRJSBDatas)			apiV1.POST("/autogeneration", api.Autogeneration)			apiV1.POST("/spillage", api.GetSpillage)			apiV1.POST("/trains", api.UpdateTrains)			apiV1.POST("/lpplan/edit", api.UpdateLpplan)			apiV1.POST("/lpplan/add", api.AddLpplan)			apiV1.POST("/lpplandtl", api.GetLpplandtl)			apiV1.POST("/lpplandtl/restore", api.RestoreLpplandtl)			apiV1.POST("/lpplandtl/del", api.DelLpplandtl)			apiV1.POST("/spillage/day", api.GetSpillageDay)			apiV1.POST("/trains/day", api.UpdateTrainsDay)			apiV1.POST("/lpplandtl/restore/day", api.RestoreLpplandtlDay)			apiV1.POST("/lpplandtl/del/day", api.DelLpplandtlDay)			apiV1.POST("/lpplandtl/add/day", api.AddLpplanDay)			apiV1.POST("/lpplandtl/day", api.GetLpplandtlDay)			apiV1.POST("/chart/feedEffMR", api.GetFeedEffMR)			apiV1.POST("/chart/feedEffSL", api.GetFeedEffSL)			apiV1.POST("/chart/feedEffHL", api.GetFeedEffHL)			apiV1.POST("/chart/feedEffZH", api.GetFeedEffZH)			apiV1.POST("/chart/feedEffCBFT", api.GetFeedEffCBFT)			apiV1.POST("/chart/accuracyAllFT", api.GetAccuracyAllFT)			apiV1.POST("/chart/accuracyAllJH", api.GetAccuracyAllJH)			apiV1.POST("/chart/accuracyAllNQ", api.GetAccuracyAllNQ)			apiV1.POST("/chart/accuracyAllCC", api.GetAccuracyAllCC)			apiV1.POST("/chart/accuracyAllHL", api.GetAccuracyAllHL)			apiV1.POST("/chart/accuracyAllLS", api.GetAccuracyAllLS)			apiV1.POST("/chart/accuracyAllQX", api.GetAccuracyAllQX)			apiV1.POST("/summary", api.GetSummary)			apiV1.POST("/ftdetail/edit", api.UpdateFTdetail)			apiV1.POST("/fpdetail/edit", api.UpdateFpdetailBar)			apiV1.POST("/ftdetai/del", api.DeleteFTdetail)			apiV1.POST("/lpplandtl/add", api.AddLpplandtl)			apiV1.POST("/lpplandtl/edit/sort", api.UpdateLpplandtlSort)			apiV1.POST("/lpplandtl/date/add", api.AddLpplandtlDate)			apiV1.POST("/lpplandtl/edit/date/sort", api.UpdateLpplandtlDateSort)			apiV1.POST("/processAnalysist", api.GetProcessAnalysis)			apiV1.POST("/feedp/undistribute", api.GetFeedpUndistributed)			apiV1.POST("/feedtemplet/enable", api.UpdateFeedtempletStatus)			apiV1.POST("/ftdry/add", api.AddFtdry)			apiV1.POST("/checkDates", api.CheckDates)			//编辑数据同步勾选状态			apiV1.POST("/scheduled/status/edit", api.UpdateScheduledStatus)			//	立即同步			apiV1.POST("/synchronizeNow", api.SynchronizeNow)			apiV1.POST("/fpdimportexcel", api.FpdImportExcel)			apiV1.POST("/barfeedremain/excel", api.GetBarfeedremainExcel)			//删除当前班次撒料时记录			apiV1.POST("/spillageall/del", api.DeleteSpillageAll)			apiV1.POST("/feedp/history", api.GetFeedpHistory)			//查看撒料修改记录			apiV1.POST("/spillageall/history", api.GetSpillageallHistory)			//查看撒料设备			apiV1.POST("/tmrListEnableTypeAll", api.GetTMRListEnableTypeAll)			//查看提醒设置			apiV1.POST("/remind/list", api.GetRemind)			apiV1.POST("/remind/edit", api.UpdateRemind)			//配方模板修改记录			apiV1.POST("/recipetemplate/history", api.GetRecipeTemplateRecordHistory)			//配方模板修改记录			apiV1.POST("/feedtemplet/history", api.GetFeedtempletHistory)			//app取料接口			apiV1.POST("/downloadedplan", api.GetDownloadedplanMaterial1)			apiV1.POST("/downloadedplan/list", api.GetDownloadedplanMaterialList)			apiV1.POST("/subplan", api.GetSubPlan)			apiV1.POST("/completeplan", api.CompletePlan)			apiV1.POST("/realtimeweight", api.AddRealTimeWeight)			//修改撒料计划tmr编号			apiV1.POST("/materialtmr/edit", api.UpdateMaterialTMR)			apiV1.POST("/materialtmr/date/edit", api.UpdateMaterialTMRDate)			//集团端配方下发			apiV1.POST("/formulaissued", api.AddFormulaIssued)			//盘点单添加			apiV1.POST("/biginventory", api.AddBigInventory)			//sap原料上传			apiV1.POST("/material/sap/upload", sap.MaterialOutbound)			apiV1.POST("/downloadplandtl1/image/upload", api.UploadFile1)			apiV1.POST("/syncSCJH", zc.SyncSCJH)			//修改日执行计划			apiV1.POST("/dailydata/edit", api.UpdateDailyData)			apiV1.POST("/formulastatistics", api.GetFormulaStatistics)			apiV1.POST("/sap/feed", sap.SyncSapFeed)			apiV1.POST("/sap/bar", sap.SyncSapBar)			apiV1.POST("/sap/material", sap.MaterialOutbound)			apiV1.POST("/feedbackup/check", api.CheckFeedTrgaddress)			apiV1.POST("/ud/feedp/sync", api.UdFeedpSync)		}		//不需要登录验证的接口		s.POST("/getopenid/:code", api.GetOpenID)		apiV3 := s.Group("/thi") // restful  接口 tablename 是 表名字		{			apiV3.POST("/GetDataByName", api.GetDataByName)			apiV3.POST("/PostDataByName", api.PostDataByName)			apiV3.POST("/plandata", api.GetPlanData)			apiV3.POST("/plandata/edit", api.PostPlanData)			apiV3.POST("/plandata/batch/edit", api.PostPlanDatas)		}		apiV4 := s.Group("/customreport") // restful  接口 tablename 是 表名字		{			apiV4.POST("/createchart", api.Createchart)			apiV4.POST("/PostDataByName", api.PostDataByName)		}	}}
 |