User.go 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424
  1. package controllers
  2. import (
  3. "ColdVerify_server/conf"
  4. "ColdVerify_server/lib"
  5. "ColdVerify_server/models/Account"
  6. "ColdVerify_server/models/Distributor"
  7. "ColdVerify_server/models/System"
  8. beego "github.com/beego/beego/v2/server/web"
  9. "math"
  10. )
  11. type UserController struct {
  12. beego.Controller
  13. }
  14. // 获取-
  15. func (c *UserController) Get() {
  16. // 验证登录 User_is, User_r
  17. _, User_is := Account.Verification_Admin(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  18. if !User_is {
  19. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  20. c.ServeJSON()
  21. return
  22. }
  23. Id, err := c.GetInt("Id")
  24. if err != nil {
  25. c.Data["json"] = lib.JSONS{Code: 202, Msg: "Id 错误!"}
  26. c.ServeJSON()
  27. return
  28. }
  29. r, is := Account.Read_User_ById(Id)
  30. if !is {
  31. c.Data["json"] = lib.JSONS{Code: 202, Msg: "Id 错误!"}
  32. c.ServeJSON()
  33. return
  34. }
  35. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: r}
  36. c.ServeJSON()
  37. return
  38. }
  39. // 列表 -
  40. func (c *UserController) List() {
  41. // 验证登录 User_is, User_r
  42. User_r, User_is := Account.Verification_Admin(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  43. if !User_is {
  44. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  45. c.ServeJSON()
  46. return
  47. }
  48. var r_jsons lib.R_JSONS
  49. page, _ := c.GetInt("page")
  50. if page < 1 {
  51. page = 1
  52. }
  53. page_z, _ := c.GetInt("page_z")
  54. if page_z < 1 {
  55. page_z = conf.Page_size
  56. }
  57. T_name := c.GetString("T_name")
  58. var T_Distributor_id string
  59. // 优先使用经销商id
  60. if len(User_r.T_Distributor_id) > 0 {
  61. T_Distributor_id = User_r.T_Distributor_id
  62. } else {
  63. T_Distributor_id = c.GetString("T_Distributor_id")
  64. }
  65. var cnt int64
  66. distributorList := Distributor.Read_Distributor_List_ALL("")
  67. distributorMap := Distributor.DistributorListToMap(distributorList)
  68. List, cnt := Account.Read_User_List(T_Distributor_id, T_name, page, page_z, distributorMap)
  69. page_size := math.Ceil(float64(cnt) / float64(page_z))
  70. r_jsons.List = List
  71. r_jsons.Page = page
  72. r_jsons.Page_size = int(page_size)
  73. r_jsons.Pages = lib.Func_page(int64(page), int64(page_size))
  74. r_jsons.Num = int(cnt)
  75. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: r_jsons}
  76. c.ServeJSON()
  77. return
  78. }
  79. // 添加-
  80. func (c *UserController) Add() {
  81. // 验证登录 User_is, User_r
  82. user_r, User_is := Account.Verification_Admin(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  83. if !User_is {
  84. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  85. c.ServeJSON()
  86. return
  87. }
  88. //T_power, _ := c.GetInt("T_power")
  89. T_name := c.GetString("T_name")
  90. T_pass := c.GetString("T_pass")
  91. T_passstr := c.GetString("T_passstr")
  92. T_Distributor_id := c.GetString("T_Distributor_id")
  93. if len(user_r.T_Distributor_id) > 0 {
  94. T_Distributor_id = user_r.T_Distributor_id
  95. }
  96. var_ := Account.User{
  97. //T_power: T_power,
  98. T_name: T_name,
  99. T_pass: T_pass,
  100. T_passstr: T_passstr,
  101. T_Show: 1,
  102. T_State: 1,
  103. T_Distributor_id: T_Distributor_id, // 经销商id
  104. }
  105. if _, is := Account.Read_UserByT_name(T_name); is {
  106. c.Data["json"] = lib.JSONS{Code: 202, Msg: "公司名称重复!"}
  107. c.ServeJSON()
  108. return
  109. }
  110. Id, is := Account.Add_User(var_)
  111. if !is {
  112. c.Data["json"] = lib.JSONS{Code: 202, Msg: "添加失败!"}
  113. c.ServeJSON()
  114. return
  115. }
  116. System.Add_UserLogs_T(user_r.T_uuid, "用户管理", "添加", var_)
  117. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: Id}
  118. c.ServeJSON()
  119. return
  120. }
  121. // 修改-
  122. func (c *UserController) Up() {
  123. // 验证登录 User_is, User_r
  124. user_r, User_is := Account.Verification_Admin(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  125. if !User_is {
  126. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  127. c.ServeJSON()
  128. return
  129. }
  130. //T_power, T_power_err := c.GetInt("T_power")
  131. T_name := c.GetString("T_name")
  132. T_pass := c.GetString("T_pass")
  133. T_passstr := c.GetString("T_passstr")
  134. T_Show, T_Show_err := c.GetInt("T_Show")
  135. T_uuid := c.GetString("T_uuid")
  136. r, is := Account.Read_User(T_uuid)
  137. if !is {
  138. c.Data["json"] = lib.JSONS{Code: 202, Msg: "Id 错误!"}
  139. c.ServeJSON()
  140. return
  141. }
  142. if _, is := Account.Read_UserByT_name(T_name); is && r.T_name != T_name {
  143. c.Data["json"] = lib.JSONS{Code: 202, Msg: "公司名称重复!"}
  144. c.ServeJSON()
  145. return
  146. }
  147. // .......
  148. //if T_power_err == nil {
  149. // r.T_power = T_power
  150. //}
  151. if len(T_name) > 0 {
  152. r.T_name = T_name
  153. }
  154. if len(T_pass) > 0 {
  155. r.T_pass = T_pass
  156. }
  157. if len(T_passstr) > 0 {
  158. r.T_passstr = T_passstr
  159. }
  160. if T_Show_err == nil {
  161. r.T_Show = T_Show
  162. }
  163. // .......
  164. if !Account.Update_User(r, "T_name", "T_pass", "T_passstr", "T_Show") {
  165. c.Data["json"] = lib.JSONS{Code: 202, Msg: "修改失败!"}
  166. c.ServeJSON()
  167. return
  168. }
  169. System.Add_UserLogs_T(user_r.T_uuid, "用户管理", "修改", r)
  170. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!"}
  171. c.ServeJSON()
  172. return
  173. }
  174. // 删除-
  175. func (c *UserController) Del() {
  176. // 验证登录 User_is, User_r
  177. user_r, User_is := Account.Verification_Admin(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  178. if !User_is {
  179. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  180. c.ServeJSON()
  181. return
  182. }
  183. T_uuid := c.GetString("T_uuid")
  184. if r, is := Account.Read_User(T_uuid); is {
  185. if !Account.Delete_User_(r) {
  186. c.Data["json"] = lib.JSONS{Code: 202, Msg: "删除失败!"}
  187. c.ServeJSON()
  188. return
  189. }
  190. System.Add_UserLogs_T(user_r.T_uuid, "用户管理", "删除", r)
  191. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!"}
  192. c.ServeJSON()
  193. return
  194. }
  195. c.Data["json"] = lib.JSONS{Code: 202, Msg: "Id 错误!"}
  196. c.ServeJSON()
  197. return
  198. }
  199. // 修改-
  200. func (c *UserController) UpPassword() {
  201. // 验证登录 User_is, User_r
  202. user_r, User_is := Account.Verification(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  203. if !User_is {
  204. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  205. c.ServeJSON()
  206. return
  207. }
  208. T_oldpass := c.GetString("T_oldpass")
  209. T_pass := c.GetString("T_pass")
  210. T_passstr := c.GetString("T_passstr")
  211. if T_oldpass != user_r.T_pass {
  212. c.Data["json"] = lib.JSONS{Code: 202, Msg: "旧密码错误!"}
  213. c.ServeJSON()
  214. return
  215. }
  216. if len(T_pass) > 0 {
  217. user_r.T_pass = T_pass
  218. }
  219. if len(T_passstr) > 0 {
  220. user_r.T_passstr = T_passstr
  221. }
  222. // .......
  223. if !Account.Update_User(user_r, "T_pass", "T_passstr") {
  224. c.Data["json"] = lib.JSONS{Code: 202, Msg: "修改失败!"}
  225. c.ServeJSON()
  226. return
  227. }
  228. System.Add_UserLogs_T(user_r.T_uuid, "用户管理", "修改密码", user_r)
  229. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!"}
  230. c.ServeJSON()
  231. return
  232. }
  233. // 列表 -
  234. func (c *UserController) Signature_List() {
  235. // 验证登录 User_is, User_r
  236. user_r, User_is := Account.Verification(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  237. if !User_is {
  238. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  239. c.ServeJSON()
  240. return
  241. }
  242. var r_jsons lib.R_JSONS
  243. page, _ := c.GetInt("page")
  244. if page < 1 {
  245. page = 1
  246. }
  247. page_z, _ := c.GetInt("page_z")
  248. if page_z < 1 {
  249. page_z = conf.Page_size
  250. }
  251. T_name := c.GetString("T_name")
  252. var cnt int64
  253. var distributorMap map[string]string
  254. //distributorList := Distributor.Read_Distributor_List_ALL("")
  255. //distributorMap := Distributor.DistributorListToMap(distributorList)
  256. List, cnt := Account.Read_UserSignature_List(user_r.T_uuid, T_name, page, page_z, distributorMap)
  257. page_size := math.Ceil(float64(cnt) / float64(page_z))
  258. r_jsons.List = List
  259. r_jsons.Page = page
  260. r_jsons.Page_size = int(page_size)
  261. r_jsons.Pages = lib.Func_page(int64(page), int64(page_size))
  262. r_jsons.Num = int(cnt)
  263. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: r_jsons}
  264. c.ServeJSON()
  265. return
  266. }
  267. // 添加-
  268. func (c *UserController) Signature_Add() {
  269. // 验证登录 User_is, User_r
  270. user_r, User_is := Account.Verification(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  271. if !User_is {
  272. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  273. c.ServeJSON()
  274. return
  275. }
  276. T_name := c.GetString("T_name")
  277. T_signature := c.GetString("T_signature")
  278. var_ := Account.UserSignature{
  279. T_name: T_name,
  280. T_signature: T_signature,
  281. T_State: 1,
  282. T_uuid: user_r.T_uuid, // 用户uuid
  283. T_Distributor_id: user_r.T_Distributor_id, // 经销商id
  284. }
  285. if _, is := Account.Read_UserSignatureByT_name(user_r.T_uuid, T_name); is {
  286. c.Data["json"] = lib.JSONS{Code: 202, Msg: "名称重复!"}
  287. c.ServeJSON()
  288. return
  289. }
  290. Id, is := Account.Add_UserSignature(var_)
  291. if !is {
  292. c.Data["json"] = lib.JSONS{Code: 202, Msg: "添加失败!"}
  293. c.ServeJSON()
  294. return
  295. }
  296. System.Add_UserLogs_T(user_r.T_uuid, "用户管理", "添加签名", var_)
  297. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!", Data: Id}
  298. c.ServeJSON()
  299. return
  300. }
  301. // 修改-
  302. func (c *UserController) Signature_Up() {
  303. // 验证登录 User_is, User_r
  304. user_r, User_is := Account.Verification(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  305. if !User_is {
  306. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  307. c.ServeJSON()
  308. return
  309. }
  310. Id, _ := c.GetInt("Id")
  311. T_name := c.GetString("T_name")
  312. T_signature := c.GetString("T_signature")
  313. r, is := Account.Read_UserSignature_ById(Id)
  314. if !is {
  315. c.Data["json"] = lib.JSONS{Code: 202, Msg: "Id 错误!"}
  316. c.ServeJSON()
  317. return
  318. }
  319. if r2, is := Account.Read_UserSignatureByT_name(user_r.T_uuid, T_name); is && r2.Id != r.Id {
  320. c.Data["json"] = lib.JSONS{Code: 202, Msg: "名称重复!"}
  321. c.ServeJSON()
  322. return
  323. }
  324. // .......
  325. //if T_power_err == nil {
  326. // r.T_power = T_power
  327. //}
  328. if len(T_name) > 0 {
  329. r.T_name = T_name
  330. }
  331. if len(T_signature) > 0 {
  332. r.T_signature = T_signature
  333. }
  334. // .......
  335. if !Account.Update_UserSignature(r, "T_name", "T_signature") {
  336. c.Data["json"] = lib.JSONS{Code: 202, Msg: "修改失败!"}
  337. c.ServeJSON()
  338. return
  339. }
  340. System.Add_UserLogs_T(user_r.T_uuid, "用户管理", "修改签名", r)
  341. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!"}
  342. c.ServeJSON()
  343. return
  344. }
  345. // 删除-
  346. func (c *UserController) Signature_Del() {
  347. user_r, User_is := Account.Verification(c.Ctx.GetCookie("User_tokey"), c.GetString("User_tokey"))
  348. if !User_is {
  349. c.Data["json"] = lib.JSONS{Code: 201, Msg: "请重新登录!"}
  350. c.ServeJSON()
  351. return
  352. }
  353. Id, _ := c.GetInt("Id")
  354. r, is := Account.Read_UserSignature_ById(Id)
  355. if !is {
  356. c.Data["json"] = lib.JSONS{Code: 202, Msg: "Id 错误!"}
  357. c.ServeJSON()
  358. return
  359. }
  360. if !Account.Delete_UserSignature(r) {
  361. c.Data["json"] = lib.JSONS{Code: 202, Msg: "删除失败!"}
  362. c.ServeJSON()
  363. return
  364. }
  365. System.Add_UserLogs_T(user_r.T_uuid, "用户管理", "删除签名", r)
  366. c.Data["json"] = lib.JSONS{Code: 200, Msg: "ok!"}
  367. c.ServeJSON()
  368. return
  369. }