--小程序 local M = {} local skynet = require "skynet" local mysqldbx = require "mysqldbx" local tools = require "tools" local cjson = require "cjson" --获取所有小程序 function M.getAppList() local sql = string.format("select * from `tg_app` ") local isok,res; res = mysqldbx.query(sql) if #res <= 0 then return true ,{} end return true, res end --所属账户ID advertiser_id --资产ID instance_id --小程序ID app_id --小程序名称 name --添加小程序 function M.addApp(msg_body) local isok ,key = tools.checkData({"wx_origin_id","butler_id","tg_platform_id","app_id","instance_id","name","advertiser_id","landing_page","titles"},msg_body) if not isok then return false,string.format("缺少字段: %s.", key) end local current_time = os.date("%Y-%m-%d %H:%M:%S") msg_body.create_time = current_time local sql = string.format("INSERT INTO `tg_app` (wx_origin_id,butler_id,tg_platform_id,app_id, instance_id, name,advertiser_id,landing_page,titles) VALUES ('%s',%d,%d,'%s','%s','%s','%s','%s','%s')", msg_body.wx_origin_id, msg_body.butler_id, msg_body.tg_platform_id, msg_body.app_id, msg_body.instance_id,msg_body.name,msg_body.advertiser_id,msg_body.landing_page,msg_body.titles) mysqldbx.query(sql) skynet.send("backmgr","lua","on_recv",nil,"ws_push_msg",cjson.encode({cmd="updateAppConfig"})) return true end --修改小程序 function M.modifyApp(msg_body) local isok ,key = tools.checkData({"wx_origin_id","butler_id","id","tg_platform_id","app_id","instance_id","name","advertiser_id","landing_page","titles"},msg_body) if not isok then return false,string.format("缺少字段: %s.", key) end local current_time = os.date("%Y-%m-%d %H:%M:%S") msg_body.update_time = current_time local sql = string.format("UPDATE `tg_app` SET wx_origin_id = '%s' , butler_id = %d , tg_platform_id =%d ,app_id ='%s' , instance_id ='%s' , name ='%s' , advertiser_id ='%s' , update_time ='%s' , landing_page ='%s' , titles ='%s' WHERE id = %d ", msg_body.wx_origin_id,msg_body.butler_id,msg_body.tg_platform_id,msg_body.app_id,msg_body.instance_id,msg_body.name,msg_body.advertiser_id,msg_body.update_time,msg_body.landing_page,msg_body.titles,msg_body.id) mysqldbx.query(sql) skynet.send("backmgr","lua","on_recv",nil,"ws_push_msg",cjson.encode({cmd="updateAppConfig"})) return true end function M.search(msg_body) local isok ,key = tools.checkData({"tg_platform_id","butler_id","page_size","page_number"},msg_body) if not isok then return false,string.format("缺少字段: %s.", key) end local page_size = msg_body.page_size local page_number = msg_body.page_number local offset = (page_number - 1) * page_size local tg_platform_id_param = "" if msg_body.tg_platform_id~="" then tg_platform_id_param = "AND tg_platform_id = "..msg_body.tg_platform_id.." " end local butler_id_param = "" if msg_body.butler_id ~= "" then butler_id_param = " AND butler_id = "..msg_body.butler_id.." " end local param = tg_platform_id_param..butler_id_param local sql = "SELECT COUNT(*) AS total FROM tg_app WHERE 1=1 "..param local total = mysqldbx.query(sql) sql = "SELECT * FROM tg_app WHERE 1=1 "..param..string.format(" ORDER BY id LIMIT %d OFFSET %d ",page_size, offset) local res; res = mysqldbx.query(sql) return true,res,total[1].total end return M