def post(self): retjson = {'code': 200, 'content': 'ok'} try: argu = self.generate_argu(self.request.arguments) if not (argu): retjson['code'] = 400 retjson['content'] = u"参数缺少" else: sql = u"select * from Books where %s" % (argu) result = self.db.execute(sql).fetchall() content = [] for i in result: book = { 'isbn': i.isbn, 'name': i.name, 'author': i.author, 'price': i.price, 'soldnum': i.soldnum, 'remainnum': i.remainnum, 'shelftime': change_time(i.shelftime, 1), 'releasetime': change_time(i.releasetime, 1), 'active': i.active, 'picture': i.picture, 'note': i.note } content.append(book) retjson['content'] = content except IntegrityError: self.db.rollback() retjson['code'] = 500 retjson['content'] = u'该书籍已存在' except Exception, e: self.db.rollback() retjson['code'] = 500 retjson['content'] = str(e)
def post(self): retjson = {'code':200,'content':'ok'} try: argu = self.generate_argu(self.request.arguments) if not (argu): retjson['code'] = 400 retjson['content'] = u"参数缺少" else: sql = u"select * from Books where %s" %(argu) result = self.db.execute(sql).fetchall() content = [] for i in result: book = { 'isbn':i.isbn, 'name':i.name, 'author':i.author, 'price':i.price, 'soldnum':i.soldnum, 'remainnum':i.remainnum, 'shelftime':change_time(i.shelftime,1), 'releasetime':change_time(i.releasetime,1), 'active':i.active, 'picture':i.picture, 'note':i.note } content.append(book) retjson['content'] = content except IntegrityError: self.db.rollback() retjson['code'] = 500 retjson['content'] = u'该书籍已存在' except Exception,e: self.db.rollback() retjson['code'] = 500 retjson['content'] = str(e)
def post(self): retjson = {'code':200,'content':'ok'} try: pagesize = self.get_argument('pagesize',default=100) pagenumber = self.get_argument('pagenumber',default=1) start_number = (int(pagenumber)-1)*int(pagesize) all_number = self.db.execute("select count(*) as number from Books").fetchone().number retjson['number'] = all_number sql = "select * from Books order by shelftime DESC limit %d,%d" % (start_number,int(pagesize)) result = self.db.execute(sql).fetchall() content = [] for i in result: book = { 'isbn':i.isbn, 'name':i.name, 'author':i.author, 'price':i.price, 'soldnum':i.soldnum, 'remainnum':i.remainnum, 'shelftime':change_time(i.shelftime,1), 'releasetime':change_time(i.releasetime,1), 'active':i.active, 'picture':i.picture, 'note':i.note } content.append(book) retjson['content'] = content except Exception,e: self.db.rollback() retjson['code'] = 500 retjson['content'] = str(e)
def generate_argu(self,arguments): int_key = ['soldnum','remainnum','active'] float_key = ['price'] time_key = ['shelftime','releasetime'] all_key = ['name','author','picture','note'] sql = "" for (key,value) in arguments.iteritems(): if key in int_key: sql += ",%s=%d" %(key,int(value[0])) elif key in float_key: sql += ",%s=%.2f" %(key,float(value[0])) elif key in time_key: sql += ",%s='%s'" %(key,change_time(value[0],0)) elif key in all_key: sql += ",%s='%s'" %(key,value[0]) else: pass if sql: sql = sql[1:] return sql
def generate_argu(self, arguments): int_key = ['soldnum', 'remainnum', 'active'] float_key = ['price'] time_key = ['shelftime', 'releasetime'] all_key = ['name', 'author', 'picture', 'note'] sql = "" for (key, value) in arguments.iteritems(): if key in int_key: sql += ",%s=%d" % (key, int(value[0])) elif key in float_key: sql += ",%s=%.2f" % (key, float(value[0])) elif key in time_key: sql += ",%s='%s'" % (key, change_time(value[0], 0)) elif key in all_key: sql += ",%s='%s'" % (key, value[0]) else: pass if sql: sql = sql[1:] return sql