fix some error

This commit is contained in:
pengtao 2019-07-12 10:22:48 +08:00
parent 4cd3ca7fd5
commit aa49059bb9
5 changed files with 89 additions and 40 deletions

20
ad_interface.py Normal file
View File

@ -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)

38
adlist.py Normal file
View File

@ -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

View File

@ -20,7 +20,7 @@ import datetime
import pdb import pdb
log = logging.getLogger(__name__) log = logging.getLogger(__name__)
mydb = MysqlBase(**mysql_promotion_config)
parser = reqparse.RequestParser() parser = reqparse.RequestParser()
parser.add_argument('id') parser.add_argument('id')
parser.add_argument('gameid') parser.add_argument('gameid')
@ -36,7 +36,7 @@ parser.add_argument('ad_url')
parser.add_argument('ad_sort') parser.add_argument('ad_sort')
parser.add_argument('status') parser.add_argument('status')
parser.add_argument('companyid') parser.add_argument('companyid')
mydb = MysqlBase(**mysql_promotion_config)
class Ad(Resource): class Ad(Resource):
def __init__(self): def __init__(self):
@ -175,10 +175,3 @@ class Ad(Resource):
except Exception: except Exception:
log.error("remove id from ad failed!", exc_info=True) 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

View File

@ -19,12 +19,14 @@ parser.add_argument('appid')
parser.add_argument('appkey') parser.add_argument('appkey')
parser.add_argument('status') parser.add_argument('status')
parser.add_argument('tel') parser.add_argument('tel')
parser.add_argument('user')
mydb = MysqlBase(**mysql_promotion_config)
class Company(Resource): class Company(Resource):
def __init__(self): def __init__(self):
self.args = parser.parse_args() self.args = parser.parse_args()
self.mydb = MysqlBase(**mysql_promotion_config)
def get(self): def get(self):
status = self.args['status'] status = self.args['status']
@ -32,12 +34,12 @@ class Company(Resource):
all_data = [] all_data = []
try: try:
if status: 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: 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: else:
sql = f"select id,name,contact,tel,appid,appkey,status from company ;" sql = f"select id,name,contact,tel,appid,appkey,status,user from company ;"
data = self.mydb.query(sql) data = mydb.query(sql)
log.info(f"get data from db was {data}") log.info(f"get data from db was {data}")
if data: if data:
@ -45,12 +47,12 @@ class Company(Resource):
if line: if line:
company = {} company = {}
company['id'], company['name'], company['contact'], company['tel'], company['appid'], 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) all_data.append(company)
del company del company
else: else:
log.error(f"{data} not found in mysql !") log.info(f"{data} not found in mysql !")
return jsonify({'code': 404}) return jsonify({'code': 200, 'message': []})
except Exception: except Exception:
log.error(f"get company status={status} failed! ", exc_info=True) log.error(f"get company status={status} failed! ", exc_info=True)
return jsonify({'code': 500}) return jsonify({'code': 500})
@ -60,7 +62,7 @@ class Company(Resource):
id = self.args['id'] id = self.args['id']
try: try:
del_sql = f'delete from company where id={id};' del_sql = f'delete from company where id={id};'
self.mydb.query(del_sql) mydb.query(del_sql)
except Exception: except Exception:
log.error(f"remove {id} failed!", exc_info=True) log.error(f"remove {id} failed!", exc_info=True)
return jsonify({'code': 500}) return jsonify({'code': 500})
@ -75,14 +77,14 @@ class Company(Resource):
appid = self.get_random() appid = self.get_random()
# check appid not in db # check appid not in db
check_appid = f"select appid from company where appid='{appid}'" check_appid = f"select appid from company where appid='{appid}'"
data = self.mydb.query(check_appid) data = mydb.query(check_appid)
if data: if data:
self.get_appid() self.get_appid()
return appid return appid
def get_companyid(self): def get_companyid(self):
max_id = f"select id from company order by id desc limit 1" 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}") log.info(f"1 {data}")
try: try:
max = int(data[0][0]) + 1 max = int(data[0][0]) + 1
@ -99,10 +101,11 @@ class Company(Resource):
company['name'] = self.args['name'] company['name'] = self.args['name']
company['contact'] = self.args['contact'] company['contact'] = self.args['contact']
company['tel'] = self.args['tel'] company['tel'] = self.args['tel']
company['user'] = self.args['user']
company['id'] = self.get_companyid() company['id'] = self.get_companyid()
company['appid'] = self.get_appid() company['appid'] = self.get_appid()
company['appkey'] = 'undefined' company['appkey'] = 'undefined'
self.mydb.insert("company", company) mydb.insert("company", company)
except Exception: except Exception:
log.error("set values to company mysql failed!", exc_info=True) log.error("set values to company mysql failed!", exc_info=True)
return jsonify({'code': 500}) return jsonify({'code': 500})
@ -116,15 +119,16 @@ class Company(Resource):
company['name'] = self.args['name'] company['name'] = self.args['name']
company['contact'] = self.args['contact'] company['contact'] = self.args['contact']
company['tel'] = self.args['tel'] company['tel'] = self.args['tel']
company['user'] = self.args['user']
company['status'] = self.args['status'] or 0 company['status'] = self.args['status'] or 0
company['appid'] = self.args['appid'] company['appid'] = self.args['appid']
company['appkey'] = self.args['appkey'] company['appkey'] = self.args['appkey']
sel_sql = f"select name from company where id={self.args['id']};" 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: if data:
condition = f"id='{self.args['id']}'" condition = f"id='{self.args['id']}'"
self.mydb.update("company", company, condition) mydb.update("company", company, condition)
return jsonify({'code': 200}) return jsonify({'code': 200})
else: else:
return jsonify({'code': 404, 'message': f"{self.args['id']} not found in mysql!"}) return jsonify({'code': 404, 'message': f"{self.args['id']} not found in mysql!"})

View File

@ -56,7 +56,7 @@ class MysqlBase:
self.curs.close() self.curs.close()
self.conn.close() self.conn.close()
###插入 ###插入
def insert(self, table, data): def insert(self, table, data):
_field = ','.join(['`%s`' % (k_insert) for k_insert in data.keys()]) _field = ','.join(['`%s`' % (k_insert) for k_insert in data.keys()])
@ -67,16 +67,14 @@ class MysqlBase:
###执行 ###执行
self.curs.lastrowid = 0 self.curs.lastrowid = 0
try: try:
self.curs.execute(_sql) self.curs.execute(_sql) ###提交
###提交
self.conn.commit()
log.info('%s insert ' % _sql)
except: except:
self.conn.rollback() self.conn.rollback()
log.error('%s insert error' % _sql) log.error('%s insert error' % _sql)
raise ValueError('112,insert error %s' % _sql) raise ValueError('112,insert error %s' % _sql)
self.conn.commit()
log.info('%s insert ' % _sql)
return self.curs.lastrowid return self.curs.lastrowid
###更新 ###更新
@ -88,14 +86,13 @@ class MysqlBase:
###执行 ###执行
resNum = 0 resNum = 0
try: try:
resNum = self.curs.execute(_sql) resNum = self.curs.execute(_sql) ###提交
###提交
self.conn.commit() # log.info('%s update ' % _sql)
except: except:
self.conn.rollback() self.conn.rollback()
log.error('%s update error' % _sql) log.error('%s update error' % _sql)
raise ValueError('update error %s' % _sql) raise ValueError('update error %s' % _sql)
self.conn.commit()
return resNum return resNum
###删除 ###删除
@ -105,15 +102,14 @@ class MysqlBase:
###执行 ###执行
resNum = 0 resNum = 0
try: try:
resNum = self.curs.execute(_sql) resNum = self.curs.execute(_sql) ###提交
###提交
self.conn.commit() # log.info('%s delete ' % _sql)
except: except:
self.conn.rollback() self.conn.rollback()
log.error('%s delete error' % _sql) log.error('%s delete error' % _sql)
raise ValueError('112,delete error %s' % _sql) raise ValueError('112,delete error %s' % _sql)
self.conn.commit()
return resNum return resNum
###直接给修改语句执行 ###直接给修改语句执行
@ -124,8 +120,7 @@ class MysqlBase:
if many: if many:
try: try:
###多条同时插入 ###多条同时插入
resNum = self.curs.executemany(sql, many) resNum = self.curs.executemany(sql, many) # log.info('%s exec ' % sql)
self.conn.commit() # log.info('%s exec ' % sql)
except: except:
self.conn.rollback() self.conn.rollback()
@ -133,15 +128,14 @@ class MysqlBase:
raise ValueError('exec error %s' % sql) raise ValueError('exec error %s' % sql)
else: else:
try: try:
resNum = self.curs.execute(sql) resNum = self.curs.execute(sql) ###提交 # self.conn.commit() # log.info('%s exec ' % sql)
###提交
self.conn.commit() # log.info('%s exec ' % sql)
except: except:
self.conn.rollback() self.conn.rollback()
log.error('%s exec error' % sql) log.error('%s exec error' % sql)
raise ValueError('112,exec error %s' % sql) raise ValueError('112,exec error %s' % sql)
self.conn.commit()
return resNum return resNum
###查询 ###查询