origin_data.lua 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  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.delete_origin_data_by_time(msg_body)
  8. local isok ,key = tools.checkData({"start_create_time","end_create_time"},msg_body)
  9. if not isok then
  10. return false,string.format("缺少字段: %s.", key)
  11. end
  12. local delete_time_param = " AND DATE(created_at) >= DATE(FROM_UNIXTIME(" .. (msg_body.start_create_time / 1000) .. ")) AND DATE(created_at) <= DATE(FROM_UNIXTIME(" .. (msg_body.end_create_time / 1000) .. "))"
  13. end
  14. function M.search_origin_data(msg_body)
  15. local isok ,key = tools.checkData({"page_size","page_number","start_create_time","end_create_time","guajian_info","start_publish_time","end_publish_time"},msg_body)
  16. if not isok then
  17. return false,string.format("缺少字段: %s.", key)
  18. end
  19. local page_size = msg_body.page_size
  20. local page_number = msg_body.page_number
  21. local offset = (page_number - 1) * page_size
  22. local create_date_param = ""
  23. if msg_body.start_create_time~="" and msg_body.end_create_time~="" then
  24. create_date_param = " AND DATE(create_time) >= DATE(FROM_UNIXTIME(" .. (msg_body.start_create_time / 1000) .. ")) AND DATE(create_time) <= DATE(FROM_UNIXTIME(" .. (msg_body.end_create_time / 1000) .. "))"
  25. end
  26. local date_param = ""
  27. if msg_body.start_publish_time~="" and msg_body.end_publish_time~="" then
  28. date_param = " AND DATE(publish_time) >= DATE(FROM_UNIXTIME(" .. (msg_body.start_publish_time / 1000) .. ")) AND DATE(publish_time) <= DATE(FROM_UNIXTIME(" .. (msg_body.end_publish_time / 1000) .. "))"
  29. end
  30. local guajian_info_param = ""
  31. if msg_body.guajian_info~="" then
  32. -- guajian_info_param = string.format(" AND ( guajian_link LIKE CONCAT( '%%%s%%')) ",msg_body.guajian_info)
  33. end
  34. local param = date_param..create_date_param..guajian_info_param
  35. local sql = "SELECT * FROM origin_data WHERE 1=1 "..param.."ORDER BY id DESC"..string.format(" LIMIT %d OFFSET %d ",page_size, offset)
  36. local res = mysqldbx.query(sql)
  37. sql = "SELECT COUNT(*) AS total FROM origin_data WHERE 1=1 "..param
  38. local total = mysqldbx.query(sql)
  39. return true,res,total[1].total
  40. end
  41. return M