bparamhandler.go 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629
  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) DeleteBtsBaseParamHan(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. if err := obj.bparamApi.DeleteBtsBaseParam(dataModel); err != nil {
  66. resp.RespFail(c, err.Error())
  67. return
  68. }
  69. //返回数据
  70. resp.RespOk(c)
  71. }
  72. // 查询单条记录
  73. func (obj *BparamHan) GetBtsBaseParamByIdHan(c *gin.Context) {
  74. dataModel := new(bparammodel.BtsBaseParam)
  75. //把前端数据绑定到模型
  76. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  77. resp.RespFail(c, "数据解析错误")
  78. return
  79. }
  80. if err := obj.bparamApi.GetBtsBaseParamById(dataModel); err != nil {
  81. resp.RespFail(c, err.Error())
  82. return
  83. }
  84. //返回数据
  85. resp.RespData(c, dataModel)
  86. }
  87. // 查询满足条件的所有记录
  88. func (obj *BparamHan) GetBtsBaseParamListHan(c *gin.Context) {
  89. dataModel := new(bparammodel.BtsBaseParam)
  90. listParam := new(mysqlmodel.ListParam)
  91. dataList := []bparammodel.BtsBaseParam{}
  92. //把前端数据绑定到模型
  93. if err := obj.bindApi.Bind2Query(c, listParam); err != nil {
  94. resp.RespFail(c, "数据解析错误")
  95. return
  96. }
  97. //查询满足条件的记录
  98. err := obj.bparamApi.GetBtsBaseParamList(dataModel, listParam, &dataList)
  99. if err != nil {
  100. resp.RespFail(c, err.Error())
  101. return
  102. }
  103. //返回记录
  104. resp.RespList(c, dataList)
  105. }
  106. // 分页查询
  107. func (obj *BparamHan) GetBtsBaseParamPageListHan(c *gin.Context) {
  108. dataModel := new(bparammodel.BtsBaseParam)
  109. pageListParam := new(mysqlmodel.PageListParam)
  110. dataList := []bparammodel.BtsBaseParam{}
  111. //把前端数据绑定到模型
  112. if err := obj.bindApi.Bind2PageQuery(c, pageListParam); err != nil {
  113. resp.RespFail(c, "数据解析错误")
  114. return
  115. }
  116. pageListData, err := obj.bparamApi.GetBtsBaseParamPageList(dataModel, pageListParam, &dataList)
  117. if err != nil {
  118. resp.RespFail(c, err.Error())
  119. return
  120. }
  121. resp.RespList(c, pageListData)
  122. }
  123. // 移动端查询基站参数
  124. func (obj *BparamHan) GetMobileBtsParamListHan(c *gin.Context) {
  125. dataModel := new(bparammodel.BtsBaseParam)
  126. //把前端数据绑定到模型
  127. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  128. resp.RespFail(c, "数据解析错误")
  129. return
  130. }
  131. //查询满足条件的
  132. dataList, err := obj.bparamApi.GetMobileBtsParamList(dataModel)
  133. if err != nil {
  134. resp.RespFail(c, "查询数据错误")
  135. return
  136. }
  137. println(dataList)
  138. //返回记录
  139. resp.RespList(c, dataList)
  140. }
  141. // 本地网管新增基站基本参数
  142. func (obj *BparamHan) GuiUploadBtsBaseParamAddHan(c *gin.Context) {
  143. dataModel := new(bparammodel.BtsBaseParam)
  144. //把前端数据绑定到模型上
  145. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  146. resp.RespFail(c, "数据错误")
  147. return
  148. }
  149. //保存数据
  150. if err := obj.bparamApi.AddBtsBaseParam(dataModel); err != nil {
  151. resp.RespFail(c, err.Error())
  152. return
  153. }
  154. //返回数据
  155. resp.RespId(c, dataModel.ID)
  156. }
  157. // 本地网管修改基站基本参数
  158. func (obj *BparamHan) GuiUploadBtsBaseParamUpdateHan(c *gin.Context) {
  159. dataModel := new(bparammodel.BtsBaseParam)
  160. dataMap := make(map[string]interface{})
  161. //把前端数据绑定到模型
  162. if err := obj.bindApi.Bind2Map(c, dataModel, dataMap); err != nil {
  163. resp.RespFail(c, err.Error())
  164. return
  165. }
  166. //保存数据
  167. if err := obj.bparamLgc.UploadBparamLgc(dataModel, dataMap); err != nil {
  168. resp.RespFail(c, err.Error())
  169. return
  170. }
  171. //返回数据
  172. resp.RespOk(c)
  173. }
  174. //***********************************以上是http命令**********************************************
  175. //**********************************************************************************************
  176. //***********************************下面是socket命令********************************************
  177. // 保存http请求通道
  178. func (obj *BparamHan) SaveRequestChan(httpReqChan chan interface{}, ProjectID int, BtsID int, mcpCmdType uint8) {
  179. requestIdStr := fmt.Sprintf("%08X", ProjectID) + "-" + fmt.Sprintf("%08X", BtsID) + "-" + fmt.Sprintf("%d", mcpCmdType)
  180. public.Gpub_mutex.Lock()
  181. public.Gpub_mapChan[requestIdStr] = httpReqChan //保存通道
  182. public.Gpub_mutex.Unlock()
  183. }
  184. // 返回数据并删除http请求通道
  185. func (obj *BparamHan) RespDataWithChan(c *gin.Context, httpReqChan chan interface{}, ProjectID int, BtsID int, mcpCmdType uint8) {
  186. requestIdStr := fmt.Sprintf("%08X", ProjectID) + "-" + fmt.Sprintf("%08X", BtsID) + "-" + fmt.Sprintf("%d", mcpCmdType)
  187. //把数据返回给客户端
  188. select {
  189. case v := <-httpReqChan:
  190. resp.RespData(c, v) //数据返回前端
  191. case <-time.After(10 * time.Second): // 10秒超时
  192. resp.RespFail(c, "查询超时")
  193. }
  194. public.Gpub_mutex.Lock()
  195. delete(public.Gpub_mapChan, requestIdStr)
  196. public.Gpub_mutex.Unlock()
  197. }
  198. // 查询基站设备参数
  199. func (obj *BparamHan) GetBtsOamParamDeviceHan(c *gin.Context) {
  200. dataModel := new(bparammodel.BtsBaseParam)
  201. //把前端数据绑定到模型上
  202. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  203. resp.RespFail(c, "数据错误")
  204. return
  205. }
  206. //生成并保存http请求通道
  207. httpReqChan := make(chan interface{})
  208. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  209. //查询基站参数
  210. if err := obj.bparamOamApi.OamQueryDeviceParam(dataModel); err != nil {
  211. resp.RespFail(c, "查询数据错误")
  212. }
  213. //返回数据并删除http请求通道
  214. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  215. }
  216. // 查询基站网管参数
  217. func (obj *BparamHan) GetBtsOamParamNetworkHan(c *gin.Context) {
  218. dataModel := new(bparammodel.BtsBaseParam)
  219. //把前端数据绑定到模型上
  220. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  221. resp.RespFail(c, "数据错误")
  222. return
  223. }
  224. //生成并保存http请求通道
  225. httpReqChan := make(chan interface{})
  226. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  227. //查询基站参数
  228. if err := obj.bparamOamApi.OamQueryNetworkParam(dataModel); err != nil {
  229. resp.RespFail(c, "查询数据错误")
  230. }
  231. //返回数据并删除http请求通道
  232. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  233. }
  234. // 设置基站网管参数
  235. func (obj *BparamHan) SetBtsOamParamNetworkHan(c *gin.Context) {
  236. dataModel := new(bparammodel.BtsBaseParam)
  237. //把前端数据绑定到模型上
  238. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  239. resp.RespFail(c, "数据错误")
  240. return
  241. }
  242. //生成并保存http请求通道
  243. httpReqChan := make(chan interface{})
  244. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  245. //设置基站参数
  246. if err := obj.bparamOamApi.OamSetNetworkParam(dataModel); err != nil {
  247. resp.RespFail(c, "设置数据错误")
  248. }
  249. //返回数据并删除http请求通道
  250. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  251. }
  252. // 查询基站同步参数
  253. func (obj *BparamHan) GetBtsOamParamSyncHan(c *gin.Context) {
  254. dataModel := new(bparammodel.BtsBaseParam)
  255. //把前端数据绑定到模型上
  256. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  257. resp.RespFail(c, "数据错误")
  258. return
  259. }
  260. //生成并保存http请求通道
  261. httpReqChan := make(chan interface{})
  262. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  263. //查询基站参数
  264. if err := obj.bparamOamApi.OamQuerySyncParam(dataModel); err != nil {
  265. resp.RespFail(c, "查询数据错误")
  266. }
  267. //返回数据并删除http请求通道
  268. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  269. }
  270. // 设置基站同步参数
  271. func (obj *BparamHan) SetBtsOamParamSyncHan(c *gin.Context) {
  272. dataModel := new(bparammodel.BtsBaseParam)
  273. //把前端数据绑定到模型上
  274. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  275. resp.RespFail(c, "数据错误")
  276. return
  277. }
  278. //生成并保存http请求通道
  279. httpReqChan := make(chan interface{})
  280. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  281. //设置基站参数
  282. if err := obj.bparamOamApi.OamSetSyncParam(dataModel); err != nil {
  283. resp.RespFail(c, "设置数据错误")
  284. }
  285. //返回数据并删除http请求通道
  286. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  287. }
  288. // 查询基站增益参数
  289. func (obj *BparamHan) GetBtsOamParamGainHan(c *gin.Context) {
  290. dataModel := new(bparammodel.BtsDeviceParam)
  291. //把前端数据绑定到模型上
  292. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  293. resp.RespFail(c, "数据错误")
  294. return
  295. }
  296. //生成并保存http请求通道
  297. httpReqChan := make(chan interface{})
  298. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  299. //查询基站参数
  300. if err := obj.bparamOamApi.OamQueryGainParam(dataModel); err != nil {
  301. resp.RespFail(c, "查询数据错误")
  302. }
  303. //返回数据并删除http请求通道
  304. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  305. }
  306. // 设置基站增益参数
  307. func (obj *BparamHan) SetBtsOamParamGainHan(c *gin.Context) {
  308. dataModel := new(bparammodel.BtsBaseParam)
  309. //把前端数据绑定到模型上
  310. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  311. resp.RespFail(c, "数据错误")
  312. return
  313. }
  314. //生成并保存http请求通道
  315. httpReqChan := make(chan interface{})
  316. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  317. //设置基站参数
  318. if err := obj.bparamOamApi.OamSetGainParam(dataModel); err != nil {
  319. resp.RespFail(c, "设置数据错误")
  320. }
  321. //返回数据并删除http请求通道
  322. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  323. }
  324. // 查询安装参数
  325. func (obj *BparamHan) GetBtsOamParamInstallHan(c *gin.Context) {
  326. dataModel := new(bparammodel.BtsDeviceParam)
  327. //把前端数据绑定到模型上
  328. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  329. resp.RespFail(c, "数据错误")
  330. return
  331. }
  332. //生成并保存http请求通道
  333. httpReqChan := make(chan interface{})
  334. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  335. //查询基站参数
  336. if err := obj.bparamOamApi.OamQueryInstallParam(dataModel); err != nil {
  337. resp.RespFail(c, "查询数据错误")
  338. }
  339. //返回数据并删除http请求通道
  340. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  341. }
  342. // 配置基站参数
  343. func (obj *BparamHan) SetBtsOamParamInstallHan(c *gin.Context) {
  344. dataModel := new(bparammodel.BtsBaseParam)
  345. //把前端数据绑定到模型上
  346. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  347. resp.RespFail(c, "数据错误")
  348. return
  349. }
  350. //生成并保存http请求通道
  351. httpReqChan := make(chan interface{})
  352. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  353. //设置基站参数
  354. if err := obj.bparamOamApi.OamSetInstallParam(dataModel); err != nil {
  355. resp.RespFail(c, "设置数据错误")
  356. }
  357. //返回数据并删除http请求通道
  358. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  359. }
  360. // 查询基站参数
  361. func (obj *BparamHan) GetBtsOamParamBtsHan(c *gin.Context) {
  362. dataModel := new(bparammodel.BtsDeviceParam)
  363. //把前端数据绑定到模型上
  364. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  365. resp.RespFail(c, "数据错误")
  366. return
  367. }
  368. //生成并保存http请求通道
  369. httpReqChan := make(chan interface{})
  370. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  371. //查询基站参数
  372. if err := obj.bparamOamApi.OamQueryBtsParam(dataModel); err != nil {
  373. resp.RespFail(c, "查询数据错误")
  374. }
  375. //返回数据并删除http请求通道
  376. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  377. }
  378. // 配置基站参数
  379. func (obj *BparamHan) SetBtsOamParamBtsHan(c *gin.Context) {
  380. dataModel := new(bparammodel.BtsBaseParam)
  381. //把前端数据绑定到模型上
  382. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  383. resp.RespFail(c, "数据错误")
  384. return
  385. }
  386. //生成并保存http请求通道
  387. httpReqChan := make(chan interface{})
  388. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  389. //设置基站参数
  390. if err := obj.bparamOamApi.OamSetBtsParam(dataModel); err != nil {
  391. resp.RespFail(c, "设置数据错误")
  392. }
  393. //返回数据并删除http请求通道
  394. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  395. }
  396. // 查询定位类型参数
  397. func (obj *BparamHan) GetBtsOamParamLocationTypeHan(c *gin.Context) {
  398. dataModel := new(bparammodel.BtsDeviceParam)
  399. //把前端数据绑定到模型上
  400. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  401. resp.RespFail(c, "数据错误")
  402. return
  403. }
  404. //生成并保存http请求通道
  405. httpReqChan := make(chan interface{})
  406. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  407. //查询基站参数
  408. if err := obj.bparamOamApi.OamQueryLocationTypeParam(dataModel); err != nil {
  409. resp.RespFail(c, "查询数据错误")
  410. }
  411. //返回数据并删除http请求通道
  412. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  413. }
  414. // 配置定位类型参数
  415. func (obj *BparamHan) SetBtsOamParamLocationTypeHan(c *gin.Context) {
  416. dataModel := new(bparammodel.BtsBaseParam)
  417. //把前端数据绑定到模型上
  418. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  419. resp.RespFail(c, "数据错误")
  420. return
  421. }
  422. //生成并保存http请求通道
  423. httpReqChan := make(chan interface{})
  424. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  425. //设置基站参数
  426. if err := obj.bparamOamApi.OamSetLocationTypeParam(dataModel); err != nil {
  427. resp.RespFail(c, "设置数据错误")
  428. }
  429. //返回数据并删除http请求通道
  430. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  431. }
  432. // 查询rtc参数
  433. func (obj *BparamHan) GetBtsOamParamRtcHan(c *gin.Context) {
  434. dataModel := new(bparammodel.BtsBaseParam)
  435. //把前端数据绑定到模型上
  436. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  437. resp.RespFail(c, "数据错误")
  438. return
  439. }
  440. //生成并保存http请求通道
  441. httpReqChan := make(chan interface{})
  442. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  443. //查询基站参数
  444. if err := obj.bparamOamApi.OamQueryRtcParam(dataModel); err != nil {
  445. resp.RespFail(c, "查询数据错误")
  446. }
  447. //返回数据并删除http请求通道
  448. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_QUERY)
  449. }
  450. // 配置rtc参数
  451. func (obj *BparamHan) SetBtsOamParamRtcHan(c *gin.Context) {
  452. dataModel := new(bparammodel.BtsBaseParam)
  453. //把前端数据绑定到模型上
  454. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  455. resp.RespFail(c, "数据错误")
  456. return
  457. }
  458. //生成并保存http请求通道
  459. httpReqChan := make(chan interface{})
  460. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  461. //设置基站参数
  462. if err := obj.bparamOamApi.OamSetRtcParam(dataModel); err != nil {
  463. resp.RespFail(c, "设置数据错误")
  464. }
  465. //返回数据并删除http请求通道
  466. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  467. }
  468. // 保存参数
  469. func (obj *BparamHan) SaveOamParamHan(c *gin.Context) {
  470. dataModel := new(bparammodel.BtsBaseParam)
  471. //把前端数据绑定到模型上
  472. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  473. resp.RespFail(c, "数据错误")
  474. return
  475. }
  476. //生成并保存http请求通道
  477. httpReqChan := make(chan interface{})
  478. obj.SaveRequestChan(httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  479. //设置基站参数
  480. if err := obj.bparamOamApi.OamSaveParam(dataModel); err != nil {
  481. resp.RespFail(c, "设置数据错误")
  482. }
  483. //返回数据并删除http请求通道
  484. obj.RespDataWithChan(c, httpReqChan, dataModel.ProjectID, dataModel.BtsID, public.BTS_MCP_SET)
  485. }
  486. // 复位基站
  487. func (obj *BparamHan) ResetBtsHan(c *gin.Context) {
  488. dataModel := new(bparammodel.BtsBaseParam)
  489. //把前端数据绑定到模型上
  490. if err := obj.bindApi.Bind2Model(c, dataModel); err != nil {
  491. resp.RespFail(c, "数据错误")
  492. return
  493. }
  494. //设置基站参数
  495. if err := obj.bparamOamApi.OamResetBts(dataModel); err != nil {
  496. resp.RespFail(c, "设置数据错误")
  497. }
  498. resp.RespOk(c)
  499. }