bparamhandler.go 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697
  1. // 模块控制接口-基站参数
  2. // 秒寻科技
  3. // zt 2024-02-16
  4. package bparamhandler
  5. import (
  6. "fmt"
  7. "ipsomc/core/dao/mysql/mysqlmodel"
  8. "ipsomc/core/gin/bind"
  9. "ipsomc/core/gin/resp"
  10. "ipsomc/module/bparam/bparamapi"
  11. "ipsomc/module/bparam/bparamlogic"
  12. "ipsomc/module/bparam/bparammodel"
  13. "ipsomc/module/bparam/bparamoam"
  14. "ipsomc/public"
  15. "time"
  16. "github.com/gin-gonic/gin"
  17. )
  18. type BparamHan struct {
  19. bindApi bind.BindApi
  20. bparamApi bparamapi.BparamApi
  21. bparamLgc bparamlogic.BparamLgc
  22. bparamOamApi bparamoam.BparamOam
  23. }
  24. // 新增基站基本参数
  25. func (obj *BparamHan) AddBtsBaseParamHan(c *gin.Context) {
  26. dataModel := new(bparammodel.BtsBaseParam)
  27. //把前端数据绑定到模型上
  28. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  29. resp.RespFail(c, "数据错误")
  30. return
  31. }
  32. //保存数据
  33. if err := obj.bparamApi.AddBtsBaseParam(dataModel); err != nil {
  34. resp.RespFail(c, err.Error())
  35. return
  36. }
  37. //返回数据
  38. resp.RespId(c, dataModel.ID)
  39. }
  40. // 修改
  41. func (obj *BparamHan) UpdateBtsBaseParamHan(c *gin.Context) {
  42. dataModel := new(bparammodel.BtsBaseParam)
  43. dataMap := make(map[string]interface{})
  44. //把前端数据绑定到模型
  45. if err := obj.bindApi.Bind2Map(c, dataModel, dataMap); err != nil {
  46. resp.RespFail(c, err.Error())
  47. return
  48. }
  49. //保存数据
  50. if err := obj.bparamApi.UpdateBtsBaseParam(dataModel, dataMap); err != nil {
  51. resp.RespFail(c, err.Error())
  52. return
  53. }
  54. //返回数据
  55. resp.RespOk(c)
  56. }
  57. // 启用和停用基站
  58. func (obj *BparamHan) EnableBtsBaseParamHan(c *gin.Context) {
  59. dataModel := new(bparammodel.BtsBaseParam)
  60. //把前端数据绑定到模型
  61. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  62. resp.RespFail(c, "数据错误")
  63. return
  64. }
  65. //保存数据
  66. if err := obj.bparamApi.EnableBtsBaseParam(dataModel); err != nil {
  67. resp.RespFail(c, err.Error())
  68. return
  69. }
  70. //返回数据
  71. resp.RespOk(c)
  72. }
  73. // 删除
  74. func (obj *BparamHan) DeleteBtsBaseParamHan(c *gin.Context) {
  75. dataModel := new(bparammodel.BtsBaseParam)
  76. //把前端数据绑定到模型
  77. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  78. resp.RespFail(c, "数据解析错误")
  79. return
  80. }
  81. if err := obj.bparamApi.DeleteBtsBaseParam(dataModel); err != nil {
  82. resp.RespFail(c, err.Error())
  83. return
  84. }
  85. //返回数据
  86. resp.RespOk(c)
  87. }
  88. // 查询单条记录
  89. func (obj *BparamHan) GetBtsBaseParamByIdHan(c *gin.Context) {
  90. dataModel := new(bparammodel.BtsBaseParam)
  91. //把前端数据绑定到模型
  92. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  93. resp.RespFail(c, "数据解析错误")
  94. return
  95. }
  96. if err := obj.bparamApi.GetBtsBaseParamById(dataModel); err != nil {
  97. resp.RespFail(c, err.Error())
  98. return
  99. }
  100. //返回数据
  101. resp.RespData(c, dataModel)
  102. }
  103. // 查询满足条件的所有记录
  104. func (obj *BparamHan) GetBtsBaseParamListHan(c *gin.Context) {
  105. dataModel := new(bparammodel.BtsBaseParam)
  106. listParam := new(mysqlmodel.ListParam)
  107. dataList := []bparammodel.BtsBaseParam{}
  108. //把前端数据绑定到模型
  109. if err := obj.bindApi.Bind2Query(c, listParam); err != nil {
  110. resp.RespFail(c, "数据解析错误")
  111. return
  112. }
  113. //查询满足条件的记录
  114. err := obj.bparamApi.GetBtsBaseParamList(dataModel, listParam, &dataList)
  115. if err != nil {
  116. resp.RespFail(c, err.Error())
  117. return
  118. }
  119. //更新基站在线状态
  120. existFlag := false
  121. if len(public.Gpub_mapHeart) > 0 {
  122. //更新基站状态
  123. for i, btsParam := range dataList {
  124. existFlag = false
  125. //修改基站状态
  126. for _, v := range public.Gpub_mapHeart {
  127. if btsParam.ProjectID == v.ProjectID && btsParam.BtsID == v.BtsID {
  128. dataList[i].Status = 2 //在线
  129. existFlag = true
  130. break
  131. }
  132. }
  133. if !existFlag && btsParam.Status == 2 {
  134. dataList[i].Status = 1 //离线
  135. }
  136. }
  137. }
  138. //返回记录
  139. resp.RespList(c, dataList)
  140. }
  141. // 分页查询
  142. func (obj *BparamHan) GetBtsBaseParamPageListHan(c *gin.Context) {
  143. dataModel := new(bparammodel.BtsBaseParam)
  144. pageListParam := new(mysqlmodel.PageListParam)
  145. dataList := []bparammodel.BtsBaseParam{}
  146. //把前端数据绑定到模型
  147. if err := obj.bindApi.Bind2PageQuery(c, pageListParam); err != nil {
  148. resp.RespFail(c, "数据解析错误")
  149. return
  150. }
  151. pageListData, err := obj.bparamApi.GetBtsBaseParamPageList(dataModel, pageListParam, &dataList)
  152. if err != nil {
  153. resp.RespFail(c, err.Error())
  154. return
  155. }
  156. //更新基站在线状态
  157. existFlag := false
  158. if len(public.Gpub_mapHeart) > 0 {
  159. //更新基站状态
  160. for i, btsParam := range dataList {
  161. existFlag = false
  162. //修改基站状态
  163. for _, v := range public.Gpub_mapHeart {
  164. if btsParam.ProjectID == v.ProjectID && btsParam.BtsID == v.BtsID {
  165. dataList[i].Status = 2 //在线
  166. existFlag = true
  167. break
  168. }
  169. }
  170. if !existFlag && btsParam.Status == 2 {
  171. dataList[i].Status = 1 //离线
  172. }
  173. }
  174. }
  175. resp.RespList(c, pageListData)
  176. }
  177. // 移动端查询基站参数
  178. func (obj *BparamHan) GetMobileBtsParamListHan(c *gin.Context) {
  179. dataModel := new(bparammodel.BtsBaseParam)
  180. //把前端数据绑定到模型
  181. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  182. resp.RespFail(c, "数据解析错误")
  183. return
  184. }
  185. //查询满足条件的
  186. dataList, err := obj.bparamApi.GetMobileBtsParamList(dataModel)
  187. if err != nil {
  188. resp.RespFail(c, "查询数据错误")
  189. return
  190. }
  191. println(dataList)
  192. //返回记录
  193. resp.RespList(c, dataList)
  194. }
  195. // 本地网管新增基站基本参数
  196. func (obj *BparamHan) GuiUploadBtsBaseParamAddHan(c *gin.Context) {
  197. dataModel := new(bparammodel.BtsBaseParam)
  198. //把前端数据绑定到模型上
  199. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  200. resp.RespFail(c, "数据错误")
  201. return
  202. }
  203. //保存数据
  204. if err := obj.bparamApi.AddBtsBaseParam(dataModel); err != nil {
  205. resp.RespFail(c, err.Error())
  206. return
  207. }
  208. //返回数据
  209. resp.RespId(c, dataModel.ID)
  210. }
  211. // 本地网管修改基站基本参数
  212. func (obj *BparamHan) GuiUploadBtsBaseParamUpdateHan(c *gin.Context) {
  213. dataModel := new(bparammodel.BtsBaseParam)
  214. dataMap := make(map[string]interface{})
  215. //把前端数据绑定到模型
  216. if err := obj.bindApi.Bind2Map(c, dataModel, dataMap); err != nil {
  217. resp.RespFail(c, err.Error())
  218. return
  219. }
  220. //保存数据
  221. if err := obj.bparamLgc.UploadBparamLgc(dataModel, dataMap); err != nil {
  222. resp.RespFail(c, err.Error())
  223. return
  224. }
  225. //返回数据
  226. resp.RespOk(c)
  227. }
  228. //***********************************以上是http命令**********************************************
  229. //**********************************************************************************************
  230. //***********************************下面是socket命令********************************************
  231. // 保存http请求通道
  232. func (obj *BparamHan) SaveRequestChan(httpReqChan chan interface{}, ProjectID int, BtsID int, mcpCmdType uint8, moduleId uint8) {
  233. requestIdStr := fmt.Sprintf("%08X", ProjectID) + "-" + fmt.Sprintf("%08X", BtsID) + "-" + fmt.Sprintf("%d", mcpCmdType) + "-" + fmt.Sprintf("%d", moduleId)
  234. public.Gpub_mutex.Lock()
  235. public.Gpub_mapChan[requestIdStr] = httpReqChan //保存通道
  236. public.Gpub_mutex.Unlock()
  237. }
  238. // 返回数据并删除http请求通道
  239. func (obj *BparamHan) RespDataWithChan(c *gin.Context, httpReqChan chan interface{}, ProjectID int, BtsID int, mcpCmdType uint8, moduleId uint8) {
  240. requestIdStr := fmt.Sprintf("%08X", ProjectID) + "-" + fmt.Sprintf("%08X", BtsID) + "-" + fmt.Sprintf("%d", mcpCmdType) + "-" + fmt.Sprintf("%d", moduleId)
  241. //把数据返回给客户端
  242. select {
  243. case v := <-httpReqChan:
  244. resp.RespData(c, v) //数据返回前端
  245. case <-time.After(10 * time.Second): // 10秒超时
  246. resp.RespFail(c, "查询超时")
  247. }
  248. close(httpReqChan) //关闭通道
  249. public.Gpub_mutex.Lock()
  250. delete(public.Gpub_mapChan, requestIdStr)
  251. public.Gpub_mutex.Unlock()
  252. }
  253. // 查询基站设备参数
  254. func (obj *BparamHan) GetBtsOamParamDeviceHan(c *gin.Context) {
  255. dataModel := new(bparammodel.BtsBaseParam)
  256. //把前端数据绑定到模型上
  257. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  258. resp.RespFail(c, "数据错误")
  259. return
  260. }
  261. //生成并保存http请求通道
  262. httpReqChan := make(chan interface{})
  263. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_DEVICE)
  264. //查询基站参数
  265. if err := obj.bparamOamApi.OamQueryDeviceParam(dataModel); err != nil {
  266. resp.RespFail(c, "查询数据错误")
  267. }
  268. //返回数据并删除http请求通道
  269. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_DEVICE)
  270. }
  271. // 查询基站网管参数
  272. func (obj *BparamHan) GetBtsOamParamNetworkHan(c *gin.Context) {
  273. dataModel := new(bparammodel.BtsBaseParam)
  274. //把前端数据绑定到模型上
  275. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  276. resp.RespFail(c, "数据错误")
  277. return
  278. }
  279. //生成并保存http请求通道
  280. httpReqChan := make(chan interface{})
  281. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_NETWORK)
  282. //查询基站参数
  283. if err := obj.bparamOamApi.OamQueryNetworkParam(dataModel); err != nil {
  284. resp.RespFail(c, "查询数据错误")
  285. }
  286. //返回数据并删除http请求通道
  287. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_NETWORK)
  288. }
  289. // 设置基站网管参数
  290. func (obj *BparamHan) SetBtsOamParamNetworkHan(c *gin.Context) {
  291. dataModel := new(bparammodel.BtsBaseParam)
  292. //把前端数据绑定到模型上
  293. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  294. resp.RespFail(c, "数据错误")
  295. return
  296. }
  297. //生成并保存http请求通道
  298. httpReqChan := make(chan interface{})
  299. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_NETWORK)
  300. //设置基站参数
  301. if err := obj.bparamOamApi.OamSetNetworkParam(dataModel); err != nil {
  302. resp.RespFail(c, "设置数据错误")
  303. }
  304. //返回数据并删除http请求通道
  305. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_NETWORK)
  306. }
  307. // 查询基站同步参数
  308. func (obj *BparamHan) GetBtsOamParamSyncHan(c *gin.Context) {
  309. dataModel := new(bparammodel.BtsBaseParam)
  310. //把前端数据绑定到模型上
  311. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  312. resp.RespFail(c, "数据错误")
  313. return
  314. }
  315. //生成并保存http请求通道
  316. httpReqChan := make(chan interface{})
  317. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_SYNC)
  318. //查询基站参数
  319. if err := obj.bparamOamApi.OamQuerySyncParam(dataModel); err != nil {
  320. resp.RespFail(c, "查询数据错误")
  321. }
  322. //返回数据并删除http请求通道
  323. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_SYNC)
  324. }
  325. // 设置基站同步参数
  326. func (obj *BparamHan) SetBtsOamParamSyncHan(c *gin.Context) {
  327. dataModel := new(bparammodel.BtsBaseParam)
  328. //把前端数据绑定到模型上
  329. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  330. resp.RespFail(c, "数据错误")
  331. return
  332. }
  333. //生成并保存http请求通道
  334. httpReqChan := make(chan interface{})
  335. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_SYNC)
  336. //设置基站参数
  337. if err := obj.bparamOamApi.OamSetSyncParam(dataModel); err != nil {
  338. resp.RespFail(c, "设置数据错误")
  339. }
  340. //返回数据并删除http请求通道
  341. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_SYNC)
  342. }
  343. // 查询基站增益参数
  344. func (obj *BparamHan) GetBtsOamParamGainHan(c *gin.Context) {
  345. dataModel := new(bparammodel.BtsDeviceParam)
  346. //把前端数据绑定到模型上
  347. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  348. resp.RespFail(c, "数据错误")
  349. return
  350. }
  351. //生成并保存http请求通道
  352. httpReqChan := make(chan interface{})
  353. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_GAIN)
  354. //查询基站参数
  355. if err := obj.bparamOamApi.OamQueryGainParam(dataModel); err != nil {
  356. resp.RespFail(c, "查询数据错误")
  357. }
  358. //返回数据并删除http请求通道
  359. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_GAIN)
  360. }
  361. // 设置基站增益参数
  362. func (obj *BparamHan) SetBtsOamParamGainHan(c *gin.Context) {
  363. dataModel := new(bparammodel.BtsBaseParam)
  364. //把前端数据绑定到模型上
  365. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  366. resp.RespFail(c, "数据错误")
  367. return
  368. }
  369. //生成并保存http请求通道
  370. httpReqChan := make(chan interface{})
  371. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_GAIN)
  372. //设置基站参数
  373. if err := obj.bparamOamApi.OamSetGainParam(dataModel); err != nil {
  374. resp.RespFail(c, "设置数据错误")
  375. }
  376. //返回数据并删除http请求通道
  377. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_GAIN)
  378. }
  379. // 查询安装参数
  380. func (obj *BparamHan) GetBtsOamParamInstallHan(c *gin.Context) {
  381. dataModel := new(bparammodel.BtsDeviceParam)
  382. //把前端数据绑定到模型上
  383. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  384. resp.RespFail(c, "数据错误")
  385. return
  386. }
  387. //生成并保存http请求通道
  388. httpReqChan := make(chan interface{})
  389. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_INSTALL)
  390. //查询基站参数
  391. if err := obj.bparamOamApi.OamQueryInstallParam(dataModel); err != nil {
  392. resp.RespFail(c, "查询数据错误")
  393. }
  394. //返回数据并删除http请求通道
  395. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_INSTALL)
  396. }
  397. // 配置基站参数
  398. func (obj *BparamHan) SetBtsOamParamInstallHan(c *gin.Context) {
  399. dataModel := new(bparammodel.BtsBaseParam)
  400. //把前端数据绑定到模型上
  401. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  402. resp.RespFail(c, "数据错误")
  403. return
  404. }
  405. //生成并保存http请求通道
  406. httpReqChan := make(chan interface{})
  407. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_INSTALL)
  408. //设置基站参数
  409. if err := obj.bparamOamApi.OamSetInstallParam(dataModel); err != nil {
  410. resp.RespFail(c, "设置数据错误")
  411. }
  412. //返回数据并删除http请求通道
  413. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_INSTALL)
  414. }
  415. // 查询基站参数
  416. func (obj *BparamHan) GetBtsOamParamBtsHan(c *gin.Context) {
  417. dataModel := new(bparammodel.BtsDeviceParam)
  418. //把前端数据绑定到模型上
  419. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  420. resp.RespFail(c, "数据错误")
  421. return
  422. }
  423. //生成并保存http请求通道
  424. httpReqChan := make(chan interface{})
  425. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_BTS)
  426. //查询基站参数
  427. if err := obj.bparamOamApi.OamQueryBtsParam(dataModel); err != nil {
  428. resp.RespFail(c, "查询数据错误")
  429. }
  430. //返回数据并删除http请求通道
  431. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_BTS)
  432. }
  433. // 配置基站参数
  434. func (obj *BparamHan) SetBtsOamParamBtsHan(c *gin.Context) {
  435. dataModel := new(bparammodel.BtsBaseParam)
  436. //把前端数据绑定到模型上
  437. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  438. resp.RespFail(c, "数据错误")
  439. return
  440. }
  441. //生成并保存http请求通道
  442. httpReqChan := make(chan interface{})
  443. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_BTS)
  444. //设置基站参数
  445. if err := obj.bparamOamApi.OamSetBtsParam(dataModel); err != nil {
  446. resp.RespFail(c, "设置数据错误")
  447. }
  448. //返回数据并删除http请求通道
  449. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_BTS)
  450. }
  451. // 查询定位类型参数
  452. func (obj *BparamHan) GetBtsOamParamLocationTypeHan(c *gin.Context) {
  453. dataModel := new(bparammodel.BtsDeviceParam)
  454. //把前端数据绑定到模型上
  455. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  456. resp.RespFail(c, "数据错误")
  457. return
  458. }
  459. //生成并保存http请求通道
  460. httpReqChan := make(chan interface{})
  461. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_BTS)
  462. //查询基站参数
  463. if err := obj.bparamOamApi.OamQueryLocationTypeParam(dataModel); err != nil {
  464. resp.RespFail(c, "查询数据错误")
  465. }
  466. //返回数据并删除http请求通道
  467. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_BTS)
  468. }
  469. // 配置定位类型参数
  470. func (obj *BparamHan) SetBtsOamParamLocationTypeHan(c *gin.Context) {
  471. dataModel := new(bparammodel.BtsBaseParam)
  472. //把前端数据绑定到模型上
  473. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  474. resp.RespFail(c, "数据错误")
  475. return
  476. }
  477. //生成并保存http请求通道
  478. httpReqChan := make(chan interface{})
  479. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_BTS)
  480. //设置基站参数
  481. if err := obj.bparamOamApi.OamSetLocationTypeParam(dataModel); err != nil {
  482. resp.RespFail(c, "设置数据错误")
  483. }
  484. //返回数据并删除http请求通道
  485. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_BTS)
  486. }
  487. // 查询rtc参数
  488. func (obj *BparamHan) GetBtsOamParamRtcHan(c *gin.Context) {
  489. dataModel := new(bparammodel.BtsBaseParam)
  490. //把前端数据绑定到模型上
  491. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  492. resp.RespFail(c, "数据错误")
  493. return
  494. }
  495. //生成并保存http请求通道
  496. httpReqChan := make(chan interface{})
  497. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_RTC)
  498. //查询基站参数
  499. if err := obj.bparamOamApi.OamQueryRtcParam(dataModel); err != nil {
  500. resp.RespFail(c, "查询数据错误")
  501. }
  502. //返回数据并删除http请求通道
  503. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY, public.BTS_MODULE_RTC)
  504. }
  505. // 配置rtc参数
  506. func (obj *BparamHan) SetBtsOamParamRtcHan(c *gin.Context) {
  507. dataModel := new(bparammodel.BtsBaseParam)
  508. //把前端数据绑定到模型上
  509. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  510. resp.RespFail(c, "数据错误")
  511. return
  512. }
  513. //生成并保存http请求通道
  514. httpReqChan := make(chan interface{})
  515. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_RTC)
  516. //设置基站参数
  517. if err := obj.bparamOamApi.OamSetRtcParam(dataModel); err != nil {
  518. resp.RespFail(c, "设置数据错误")
  519. }
  520. //返回数据并删除http请求通道
  521. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_RTC)
  522. }
  523. // 保存参数
  524. func (obj *BparamHan) SaveOamParamHan(c *gin.Context) {
  525. dataModel := new(bparammodel.BtsBaseParam)
  526. //把前端数据绑定到模型上
  527. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  528. resp.RespFail(c, "数据错误")
  529. return
  530. }
  531. //生成并保存http请求通道
  532. httpReqChan := make(chan interface{})
  533. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_GAIN)
  534. //设置基站参数
  535. if err := obj.bparamOamApi.OamSaveParam(dataModel); err != nil {
  536. resp.RespFail(c, "设置数据错误")
  537. }
  538. //返回数据并删除http请求通道
  539. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET, public.BTS_MODULE_GAIN)
  540. }
  541. // 复位基站
  542. func (obj *BparamHan) ResetBtsHan(c *gin.Context) {
  543. dataModel := new(bparammodel.BtsBaseParam)
  544. //把前端数据绑定到模型上
  545. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  546. resp.RespFail(c, "数据错误")
  547. return
  548. }
  549. //设置基站参数
  550. if err := obj.bparamOamApi.OamResetBts(dataModel); err != nil {
  551. resp.RespFail(c, "设置数据错误")
  552. }
  553. resp.RespOk(c)
  554. }