pull_data_config.lua 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. --拉取数据配置
  2. local M = {}
  3. local mysqldbx = require "mysqldbx"
  4. local tools = require "tools"
  5. local skynet = require "skynet"
  6. local cjson = require "cjson"
  7. function M.get_all_pull_data_list(msg_body)
  8. local sql = "SELECT * FROM pull_data_config "
  9. local list = mysqldbx.query(sql)
  10. return true,list
  11. end
  12. function M.modify_pull_data_config(msg_body)
  13. local isok ,key = tools.checkData({"id","start","name","interval_minute"},msg_body)
  14. if not isok then
  15. return false,string.format("缺少字段: %s.", key)
  16. end
  17. local sql = string.format("UPDATE `pull_data_config` SET start = '%s' ,name ='%s' , interval_minute = %d WHERE id = %d ",
  18. msg_body.start,msg_body.name,msg_body.interval_minute,msg_body.id)
  19. mysqldbx.query(sql)
  20. return true, {}
  21. end
  22. function M.add_pull_data_list_config(msg_body)
  23. local isok ,key = tools.checkData({"config_list"},msg_body)
  24. if not isok then
  25. return false,string.format("缺少字段: %s.", key)
  26. end
  27. for i = 1, #msg_body.config_list, 1 do
  28. local config_item = msg_body.config_list[i]
  29. local sql = string.format("INSERT INTO `pull_data_config` (start,name,interval_minute) VALUES ('%s','%s',%d)",config_item.start,config_item.name,config_item.interval_minute)
  30. skynet.error(sql)
  31. mysqldbx.query(sql)
  32. end
  33. return true, {}
  34. end
  35. function M.add_pull_data_config(msg_body)
  36. local isok ,key = tools.checkData({"start","name","interval_minute"},msg_body)
  37. if not isok then
  38. return false,string.format("缺少字段: %s.", key)
  39. end
  40. local sql = string.format("INSERT INTO `pull_data_config` (start,name,interval_minute) VALUES ('%s','%s',%d)",msg_body.start,msg_body.name,msg_body.interval_minute)
  41. mysqldbx.query(sql)
  42. return true, {}
  43. end
  44. function M.delete_pull_data_config(msg_body)
  45. local isok ,key = tools.checkData({"id"},msg_body)
  46. if not isok then
  47. return false,string.format("缺少字段: %s.", key)
  48. end
  49. local sql = string.format("DELETE FROM pull_data_config WHERE id = %d ",msg_body.id)
  50. mysqldbx.query(sql)
  51. return true, {}
  52. end
  53. function M.pull_data_list(msg_body)
  54. local isok ,key = tools.checkData({"page_size","page_number"},msg_body)
  55. if not isok then
  56. return false,string.format("缺少字段: %s.", key)
  57. end
  58. local page_size = msg_body.page_size
  59. local page_number = msg_body.page_number
  60. local offset = (page_number - 1) * page_size
  61. local sql = "SELECT * FROM pull_data_config "..string.format(" LIMIT %d OFFSET %d ",page_size, offset)
  62. local list = mysqldbx.query(sql)
  63. sql = "SELECT COUNT(*) AS total FROM pull_data_config "
  64. local total = mysqldbx.query(sql)
  65. return true,list,total[1].total
  66. end
  67. function M.sync_pull_data_config(msg_body)
  68. local sql = "SELECT * FROM pull_data_config "
  69. local list = mysqldbx.query(sql)
  70. skynet.send("backmgr","lua","on_recv",nil,"ws_push_msg",cjson.encode({cmd="updatePullConig",data=list}))
  71. return true,{}
  72. end
  73. return M