controllers.go 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. package controllers
  2. import (
  3. "Cold_Data/lib"
  4. "Cold_Data/models/Account"
  5. "Cold_Data/models/Device"
  6. "fmt"
  7. beego "github.com/beego/beego/v2/server/web"
  8. "log"
  9. "strings"
  10. )
  11. type MainController struct {
  12. beego.Controller
  13. }
  14. func (c *MainController) Get() {
  15. T_key := c.GetString("T_key")
  16. T_mode, _ := c.GetInt("T_mode", 1)
  17. T_key_s := strings.Split(T_key, ",")
  18. Company_r, err := Account.Read_Company_T_key(T_key_s[len(T_key_s)-1])
  19. if err != nil {
  20. c.Data["json"] = lib.JSONS{Code: 201, Msg: "T_key!"}
  21. c.ServeJSON()
  22. return
  23. }
  24. //if !strings.Contains(Company_r.T_data, "_") {
  25. // c.TplName = "error.html"
  26. // return
  27. //}
  28. Company_R, ok := lib.Company_Map[Company_r.Id]
  29. if !ok {
  30. c.TplName = "error.html"
  31. return
  32. }
  33. Company_R.Company_name = Company_r.T_name
  34. Company_R.Company_key = Company_r.T_key
  35. Company_R.Company_plan = Company_r.T_plan
  36. Company_R.Company_data = Company_r.T_data
  37. Company_R.Company_v3d = Company_r.T_v3d
  38. Company_R.Company_Address = Company_r.T_Address
  39. Company_R.Company_coordinate = Company_r.T_coordinate
  40. switch T_mode {
  41. case 1: // 智慧大屏
  42. fmt.Println("智慧大屏:", Company_r.T_data)
  43. LOOPnum := 0
  44. LOOP:
  45. if len(Company_r.T_data) == 0 {
  46. // 复用上一级
  47. err, Company_r = Account.Read_Company_id(Company_r.T_mid)
  48. if err != nil {
  49. c.TplName = "error.html"
  50. return
  51. }
  52. if LOOPnum < 10 {
  53. LOOPnum += 1
  54. goto LOOP
  55. } else {
  56. c.TplName = "error.html"
  57. return
  58. }
  59. }
  60. c.Data["C_keys"] = T_key
  61. c.TplName = Company_r.T_data + ".html"
  62. log.Println("Company_data:", c.TplName)
  63. // 全国
  64. if strings.Contains(Company_R.Company_name, "主") || strings.Contains(Company_R.Company_name, "全国") {
  65. c.Data["map"] = "china"
  66. c.TplName = "B_Mode1.html"
  67. return
  68. }
  69. return
  70. case 2: // 3D大屏
  71. fmt.Println("3D大屏:", Company_r.T_v3d) // C_Mode_v3D_精简版|5QIRTWYLG6NE7OC349JP8M02UKBZHV1S
  72. T_v3d_list := strings.Split(Company_r.T_v3d, "|")
  73. if len(T_v3d_list) != 2 {
  74. c.TplName = "error.html"
  75. return
  76. }
  77. c.Data["C_keys"] = T_key
  78. c.TplName = T_v3d_list[0] + ".html"
  79. return
  80. }
  81. c.TplName = "error.html"
  82. return
  83. }
  84. // 列表 - 接口
  85. func (c *MainController) Company_Data() {
  86. T_key := c.GetString("T_key")
  87. Company_r, err := Account.Read_Company_T_key(T_key)
  88. if err != nil {
  89. c.Data["json"] = lib.JSONS{Code: 201, Msg: "T_key!"}
  90. c.ServeJSON()
  91. return
  92. }
  93. Company_map := lib.Company_Map[Company_r.Id]
  94. Company_map.Company_name = Company_r.T_name
  95. Company_map.Company_key = Company_r.T_key
  96. Company_map.Company_plan = Company_r.T_plan
  97. Company_map.Company_data = Company_r.T_data
  98. Company_map.Company_v3d = Company_r.T_v3d
  99. Company_map.Company_Address = Company_r.T_Address
  100. Company_map.Company_coordinate = Company_r.T_coordinate
  101. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: Company_map}
  102. c.ServeJSON()
  103. return
  104. }
  105. //func (c *MainController) Company_Device_Sensor_List() {
  106. //
  107. // T_key := c.GetString("T_key")
  108. // Company_r,err := Account.Read_Company_T_key(T_key)
  109. // if err != nil {
  110. // c.Data["json"] = lib.JSONS{Code: 201, Msg: "T_key!"}
  111. // c.ServeJSON()
  112. // return
  113. // }
  114. //
  115. // // 查询公司下面所有子公司id
  116. // T_pids := Account.ReadCompanyIds_T_path(Company_r.T_path)
  117. //
  118. // //Account.Read_Company_All_Maps()
  119. // Sensor_List := Device.Read_CompanyDeviceSensor_List_For_Data(T_pids)
  120. //
  121. // c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: Sensor_List}
  122. // c.ServeJSON()
  123. // return
  124. //
  125. //}
  126. // 列表 - 接口
  127. func (c *MainController) DeviceTask_List() {
  128. //// 验证登录
  129. //b_, admin_r := lib.Verification(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  130. //if !b_ {
  131. // c.Data["json"] = lib.JSONS{Code: 201, Msg: "User_tokey Err!"}
  132. // c.ServeJSON()
  133. // return
  134. //}
  135. T_sn := c.GetString("T_sn")
  136. DeviceTask_list := Device.Read_DeviceTask_List(T_sn)
  137. DeviceTask_r := []Device.DeviceTask_R{}
  138. for _, v := range DeviceTask_list {
  139. x := Device.DeviceTask_R{}
  140. x.T_Ut_start = v.T_Ut_start.Format("2006-01-02 15:04:05")
  141. x.T_Ut_end = v.T_Ut_end.Format("2006-01-02 15:04:05")
  142. x.T_State = v.T_State
  143. DeviceTask_r = append(DeviceTask_r, x)
  144. }
  145. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: DeviceTask_r}
  146. c.ServeJSON()
  147. return
  148. }
  149. // 列表 - 接口
  150. func (c *MainController) DeviceData_List() {
  151. T_sn := c.GetString("T_sn")
  152. //T_id, _ := c.GetInt("T_id")
  153. T_id := 1
  154. Time_start := c.GetString("Time_start")
  155. Time_end := c.GetString("Time_end")
  156. r_Device, err := Device.Read_Device_ByT_sn(T_sn)
  157. if err != nil {
  158. c.Data["json"] = lib.JSONS{Code: 201, Msg: "T_sn!"}
  159. c.ServeJSON()
  160. return
  161. }
  162. DeviceData_list := Device.Read_DeviceData_List(T_sn, T_id, Time_start, Time_end)
  163. DeviceData_r := []Device.DeviceData_RR{}
  164. for _, v := range DeviceData_list {
  165. x := Device.DeviceData_RR{}
  166. x.T_t = v.T_t
  167. x.T_rh = v.T_rh
  168. x.T_site = v.T_site
  169. x.T_time = v.T_time.Format("2006-01-02 15:04:05")
  170. x.T_ist = r_Device.T_ist
  171. x.T_ist = r_Device.T_ist
  172. if dsp, is := Device.Read_DeviceSensorParameter(T_sn, T_id); is {
  173. x.T_name = dsp.T_name
  174. x.T_Tlower = dsp.T_Tlower
  175. x.T_Tupper = dsp.T_Tupper
  176. x.T_RHlower = dsp.T_RHlower
  177. x.T_RHupper = dsp.T_RHupper
  178. }
  179. DeviceData_r = append(DeviceData_r, x)
  180. }
  181. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: DeviceData_r}
  182. c.ServeJSON()
  183. return
  184. }