diff --git a/ad_interface.py b/ad_interface.py new file mode 100644 index 0000000..47bb5bc --- /dev/null +++ b/ad_interface.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +from __future__ import absolute_import +# pip install flask-restful +from flask import Flask, jsonify +from flask_restful import reqparse, abort, Api, Resource +from log.mylog import define_logger +import logging +from adlist import Adlist + +define_logger("/data/logs/promotion.log") +log = logging.getLogger(__name__) + +app = Flask(__name__) +api = Api(app) + +# 设置路由 +api.add_resource(Adlist, '/adlist') + +if __name__ == '__main__': + app.run(host='0.0.0.0', debug=True, port=7777) diff --git a/adlist.py b/adlist.py new file mode 100644 index 0000000..2cec064 --- /dev/null +++ b/adlist.py @@ -0,0 +1,38 @@ +# -*- coding: utf-8 -*- +from __future__ import absolute_import +# pip install flask-restful +from flask import Flask, jsonify +from flask_restful import reqparse, abort, Api, Resource +from log.mylog import define_logger +import logging + +define_logger("/data/logs/adlist.log") +log = logging.getLogger(__name__) + +parser = reqparse.RequestParser() +parser.add_argument('id') +parser.add_argument('gameid') +parser.add_argument('name') +parser.add_argument('locationid') +parser.add_argument('begin_time') +parser.add_argument('end_time') +parser.add_argument('ad_num') +parser.add_argument('ad_title') +parser.add_argument('ad_body') +parser.add_argument('ad_image') +parser.add_argument('ad_url') +parser.add_argument('ad_sort') +parser.add_argument('status') +parser.add_argument('companyid') + +class Adlist(Resource): + def __init__(self): + pass + + + def get(self): + pass + + + def post(self): + pass diff --git a/handler/ad.py b/handler/ad.py index b7df28f..5b74777 100644 --- a/handler/ad.py +++ b/handler/ad.py @@ -20,7 +20,7 @@ import datetime import pdb log = logging.getLogger(__name__) -mydb = MysqlBase(**mysql_promotion_config) + parser = reqparse.RequestParser() parser.add_argument('id') parser.add_argument('gameid') @@ -36,7 +36,7 @@ parser.add_argument('ad_url') parser.add_argument('ad_sort') parser.add_argument('status') parser.add_argument('companyid') - +mydb = MysqlBase(**mysql_promotion_config) class Ad(Resource): def __init__(self): @@ -175,10 +175,3 @@ class Ad(Resource): except Exception: log.error("remove id from ad failed!", exc_info=True) - -class Adlist(Resource): - def __init__(self): - self.args = parser.parse_args() - - def get(self): - pass diff --git a/handler/company.py b/handler/company.py index a32251e..f84f3e6 100644 --- a/handler/company.py +++ b/handler/company.py @@ -19,12 +19,14 @@ parser.add_argument('appid') parser.add_argument('appkey') parser.add_argument('status') parser.add_argument('tel') +parser.add_argument('user') +mydb = MysqlBase(**mysql_promotion_config) class Company(Resource): def __init__(self): self.args = parser.parse_args() - self.mydb = MysqlBase(**mysql_promotion_config) + def get(self): status = self.args['status'] @@ -32,12 +34,12 @@ class Company(Resource): all_data = [] try: if status: - sql = f"select id,name,contact,tel,appid,appkey,status from company where status={status};" + sql = f"select id,name,contact,tel,appid,appkey,status,user from company where status={status};" elif id: - sql = f"select id,name,contact,tel,appid,appkey,status from company where id={id};" + sql = f"select id,name,contact,tel,appid,appkey,status,user from company where id={id};" else: - sql = f"select id,name,contact,tel,appid,appkey,status from company ;" - data = self.mydb.query(sql) + sql = f"select id,name,contact,tel,appid,appkey,status,user from company ;" + data = mydb.query(sql) log.info(f"get data from db was {data}") if data: @@ -45,12 +47,12 @@ class Company(Resource): if line: company = {} company['id'], company['name'], company['contact'], company['tel'], company['appid'], company[ - 'appkey'], company['status'] = line + 'appkey'], company['status'], company['user'] = line all_data.append(company) del company else: - log.error(f"{data} not found in mysql !") - return jsonify({'code': 404}) + log.info(f"{data} not found in mysql !") + return jsonify({'code': 200, 'message': []}) except Exception: log.error(f"get company status={status} failed! ", exc_info=True) return jsonify({'code': 500}) @@ -60,7 +62,7 @@ class Company(Resource): id = self.args['id'] try: del_sql = f'delete from company where id={id};' - self.mydb.query(del_sql) + mydb.query(del_sql) except Exception: log.error(f"remove {id} failed!", exc_info=True) return jsonify({'code': 500}) @@ -75,14 +77,14 @@ class Company(Resource): appid = self.get_random() # check appid not in db check_appid = f"select appid from company where appid='{appid}'" - data = self.mydb.query(check_appid) + data = mydb.query(check_appid) if data: self.get_appid() return appid def get_companyid(self): max_id = f"select id from company order by id desc limit 1" - data = self.mydb.query(max_id) + data = mydb.query(max_id) log.info(f"1 {data}") try: max = int(data[0][0]) + 1 @@ -99,10 +101,11 @@ class Company(Resource): company['name'] = self.args['name'] company['contact'] = self.args['contact'] company['tel'] = self.args['tel'] + company['user'] = self.args['user'] company['id'] = self.get_companyid() company['appid'] = self.get_appid() company['appkey'] = 'undefined' - self.mydb.insert("company", company) + mydb.insert("company", company) except Exception: log.error("set values to company mysql failed!", exc_info=True) return jsonify({'code': 500}) @@ -116,15 +119,16 @@ class Company(Resource): company['name'] = self.args['name'] company['contact'] = self.args['contact'] company['tel'] = self.args['tel'] + company['user'] = self.args['user'] company['status'] = self.args['status'] or 0 company['appid'] = self.args['appid'] company['appkey'] = self.args['appkey'] sel_sql = f"select name from company where id={self.args['id']};" - data = self.mydb.query(sel_sql) + data = mydb.query(sel_sql) if data: condition = f"id='{self.args['id']}'" - self.mydb.update("company", company, condition) + mydb.update("company", company, condition) return jsonify({'code': 200}) else: return jsonify({'code': 404, 'message': f"{self.args['id']} not found in mysql!"}) diff --git a/mysql/mmysql.py b/mysql/mmysql.py index 9d70044..e4b3f4a 100644 --- a/mysql/mmysql.py +++ b/mysql/mmysql.py @@ -56,7 +56,7 @@ class MysqlBase: self.curs.close() self.conn.close() - ###插入 + ###插入 def insert(self, table, data): _field = ','.join(['`%s`' % (k_insert) for k_insert in data.keys()]) @@ -67,16 +67,14 @@ class MysqlBase: ###执行 self.curs.lastrowid = 0 try: - self.curs.execute(_sql) - ###提交 - self.conn.commit() - log.info('%s insert ' % _sql) - + self.curs.execute(_sql) ###提交 except: self.conn.rollback() log.error('%s insert error' % _sql) raise ValueError('112,insert error %s' % _sql) + self.conn.commit() + log.info('%s insert ' % _sql) return self.curs.lastrowid ###更新 @@ -88,14 +86,13 @@ class MysqlBase: ###执行 resNum = 0 try: - resNum = self.curs.execute(_sql) - ###提交 - self.conn.commit() # log.info('%s update ' % _sql) + resNum = self.curs.execute(_sql) ###提交 except: self.conn.rollback() log.error('%s update error' % _sql) raise ValueError('update error %s' % _sql) + self.conn.commit() return resNum ###删除 @@ -105,15 +102,14 @@ class MysqlBase: ###执行 resNum = 0 try: - resNum = self.curs.execute(_sql) - ###提交 - self.conn.commit() # log.info('%s delete ' % _sql) + resNum = self.curs.execute(_sql) ###提交 except: self.conn.rollback() log.error('%s delete error' % _sql) raise ValueError('112,delete error %s' % _sql) + self.conn.commit() return resNum ###直接给修改语句执行 @@ -124,8 +120,7 @@ class MysqlBase: if many: try: ###多条同时插入 - resNum = self.curs.executemany(sql, many) - self.conn.commit() # log.info('%s exec ' % sql) + resNum = self.curs.executemany(sql, many) # log.info('%s exec ' % sql) except: self.conn.rollback() @@ -133,15 +128,14 @@ class MysqlBase: raise ValueError('exec error %s' % sql) else: try: - resNum = self.curs.execute(sql) - ###提交 - self.conn.commit() # log.info('%s exec ' % sql) + resNum = self.curs.execute(sql) ###提交 # self.conn.commit() # log.info('%s exec ' % sql) except: self.conn.rollback() log.error('%s exec error' % sql) raise ValueError('112,exec error %s' % sql) + self.conn.commit() return resNum ###查询