def post(self): result = utils.init_response_data() arguments = self.format_arguments() try: for (k, v) in arguments.items(): if k in ['price', 'origin_price']: del arguments[k] try: arguments[k] = float(v) except: raise ValueError(u"价格格式有误") if k in ['on_sale_flag', 'sort']: del arguments[k] try: arguments[k] = int(v) except: raise ValueError(u"%s栏位应为整数" % k) self.model.edit(arguments) result['data'] = arguments except Exception as e: result = utils.reset_response_data(0, unicode(e)) result['alert'] = 1 self.render("admin/product/product-edit.html", result=result, search='')
def post(self, *args, **kwargs): result = utils.init_response_data() try: sku = self.get_argument("sku","") name = self.get_argument("name","") sort = self.get_argument("sort",0) image = self.get_argument("image","") show_code = self.get_argument("show_code","") show_name = self.get_argument("show_name","") enable_flag = self.get_argument("enable_flag",1) on_sale_flag = self.get_argument("on_sale_flag",1) origin_price = self.get_argument("origin_price",0.0) price = self.get_argument("price",0.0) type = self.get_argument("type", "") desc = self.get_argument("desc","") add_time = datetime.datetime.now() if type == "": raise Exception("类型不能为空") query_params = dict( type = type, ) if not self.model.is_exists(query_params): obj = self.model.create(dict(sku=sku,name=name,sort=sort,image=image,show_code=show_code,show_name=show_name, enable_flag=enable_flag,on_sale_flag=on_sale_flag,origin_price=origin_price, price=price,type=type,desc=desc,add_time=add_time)) obj = utils.dump(obj) result["data"] = obj except Exception, e: result = utils.reset_response_data(0, str(e))
def post(self): result = utils.init_response_data() user_coll = self.model.get_coll() try: login = self.get_argument("login") password = self.get_argument("password") is_save_password = int(self.get_argument("is_save_password", False)) if login == "": raise Exception("请输入用户名!") elif user_coll.find({"mobile":login}).count() == 0 \ and user_coll.find({"email":login}).count() == 0: raise Exception("手机或邮箱不存在!") elif password == "": raise Exception("请输入密码!") user = user_coll.find_one({"mobile":login}) or user_coll.find_one({"email":login}) if user["password1"] != password: raise Exception("密码错误!") user["login_date"] = datetime.datetime.now() user_coll.save(user) params = { 'client_id':user["mobile"], 'client_secret':password, 'grant_type':'client_credentials', 'scope':'font-api', } body = urllib.urlencode(params) client = tornado.httpclient.AsyncHTTPClient() response = yield tornado.gen.Task( client.fetch, "http://localhost:9000/token", method='POST', body=body) response_body = json.loads(response.body) try: access_token = response_body["access_token"] except Exception ,e: result = utils.reset_response_data(-1, str(e) + \ response_body["error"]+" "+\ response_body["error_description"]+\ " or password error!") self.finish(result) return if is_save_password: self.model.delay_access_token(access_token) user["_id"] = str(user["_id"]) # 存储 token-uid self.model.save_token_uid(access_token, user["_id"]) user["add_time"] = str(user["add_time"]).split(".")[0] user["login_date"] = str(user["login_date"]).split(".")[0] del user["password1"] del user["password2"] result["data"] = user result["data"]["access_token"] = access_token
def put(self): result = utils.init_response_data() try: type = self.get_argument("type", "BAR001") self.model.to_file(type) except Exception as e: result = utils.reset_response_data(0, unicode(e)) self.finish(result)
def get(self): result = utils.init_response_data() try: show_code = self.get_argument("show_code","") result["data"] = self.model.get_show_products(show_code) except Exception as e: result = utils.reset_response_data(0,unicode(e)) self.finish(result)
def delete(self): result = utils.init_response_data() try: ids = json.loads(self.get_argument("ids")) _ids = [utils.create_objectid(id) for id in ids] for _id in _ids: self.model.delete(_id=_id) except Exception, e: result = utils.reset_response_data(0, str(e))
def post(self): result = utils.init_response_data() try: type = self.get_argument("type", "BAR001") number = self.get_argument("number", 0) self.model.generate(type, number) except Exception as e: result = utils.reset_response_data(0, unicode(e)) self.finish(result)
def get(self): result = utils.init_response_data() try: product_id = self.get_argument("product_id","") product = self.coll.find_one({"_id":utils.create_objectid(product_id)}) result["data"] = utils.dump(product) except Exception as e: result = utils.reset_response_data(0,unicode(e)) self.finish(result)
def get(self): import renren.libs.wslib as wslib result = utils.init_response_data() try: res = wslib.send_msg(18752036998, "【东汇征信】尊敬的用户您好,您本次的验证码为12345,30分钟内有效") result['data'] = res except Exception as e: result = utils.reset_response_data(0, unicode(e)) self.finish(result)
def get(self): result = utils.init_response_data() try: result['data'] = "Api home page" result['version'] = "v0.2.0" result['pack_date'] = "2016-08-09" result['update_msg'] = u"1.修改邮箱为集团邮箱 2.修改后台文档删除后不能重新更新的bug" except Exception as e: result = utils.reset_response_data(0, unicode(e)) self.finish(result)
def get(self): result = utils.init_response_data() try: request_params = self.format_request_params() exec("""objs, pager = self.model.search_list(%s)""" % request_params) result["data"] = objs result["pager"] = pager except Exception, e: result = utils.reset_response_data(0, str(e)) self.finish(result) return
def get(self): result = utils.init_response_data() try: id = self.get_argument("id") _id = utils.create_objectid(id) ret = self.model.search({"_id": _id}) if ret: result["data"] = ret else: result["data"] = {} except Exception, e: result = utils.reset_response_data(0, str(e))
def get(self): result = utils.init_response_data() product_id = self.get_argument("product_id", "") try: if not self.model.is_exist(product_id): raise ValueError(u"该商品不存在") result['data'] = self.coll.find_one( {"_id": utils.create_objectid(product_id)}) result['mode'] = '' except Exception as e: result['alert'] = 1 result = utils.reset_response_data(0, unicode(e)) self.render("admin/product/product-edit.html", result=result)
def get(self): result = utils.init_response_data() query_list = {} try: page = self.get_argument("page",1) page_size = self.get_argument("page_size",15) type = self.get_argument("type",None) if type is not None: query_list['type'] = type query_list['enable_flag'] = 1 result["data"],result["pager"] = self.model.list(query_list,page,page_size) except Exception as e: result = utils.reset_response_data(0,unicode(e)) self.finish(result)
def get(self): result = utils.init_response_data() query_list = {} try: page = self.get_argument("page", 1) page_size = self.get_argument("page_size", 15) query_list['enable_flag'] = 1 result["data"], result["pager"] = self.model.list( query_list, page, page_size) except Exception as e: result = utils.reset_response_data(0, unicode(e)) self.render("admin/product/product-list.html", result=result, search='')
def get(self): result = utils.init_response_data() checkcode_coll = self.model.get_coll() try: mobile = self.get_argument("mobile") curr_time = datetime.datetime.now() if checkcode_coll.find({ "mobile": mobile, "enable_flag": True }).count() > 0: # 验证码请求限制 每小时限制5条 if checkcode_coll.find({ "mobile": mobile, "create_date": { "$gte": curr_time - datetime.timedelta(hours=1), "$lte": curr_time + datetime.timedelta(hours=1), } }).count() >= 5: raise Exception("验证码请求限制,每小时限制5条!") cr = checkcode_coll.find({ "mobile": mobile, "enable_flag": True }) for checkcode in cr: checkcode["enable_flag"] = False checkcode_coll.save(checkcode) else: pass random_code = utils.get_random_num(6, mode="number") checkcode_coll.insert_one({ "mobile": mobile, "enable_flag": True, "create_date": curr_time, "type": "mobile", "code": random_code, }) res = wslib.send_msg(mobile, "尊敬的用户您好,您本次的验证码为%s,30分钟内有效" % random_code) if res != "0": raise ValueError(u"短信发送失败") result["code"] = random_code except Exception, e: result = utils.reset_response_data(0, str(e))
def get(self): result = utils.init_response_data() product_id = self.get_argument("product_id", "") try: if not self.model.is_exist(product_id): raise ValueError(u"该商品不存在") self.model.edit({ "enable_flag": 0, "_id": utils.create_objectid(product_id) }) result['data'], result['pager'] = self.model.list() result['mode'] = '' except Exception as e: result = utils.reset_response_data(0, unicode(e)) result['alert'] = 1 self.render("admin/product/product-list.html", result=result, search='')
def get(self): result = utils.init_response_data() checkcode_coll = self.model.get_coll() try: email = self.get_argument("email") curr_time = datetime.datetime.now() if checkcode_coll.find({ "email": email, "enable_flag": True }).count() > 0: # 验证码请求限制 每天限制5条 if checkcode_coll.find({ "email": email, "create_date": { "$gte": curr_time - datetime.timedelta(hours=1), "$lte": curr_time + datetime.timedelta(hours=1), } }).count() >= 5: raise Exception("验证码请求限制,每小时限制5条!") cr = checkcode_coll.find({"email": email, "enable_flag": True}) for checkcode in cr: checkcode["enable_flag"] = False checkcode_coll.save(checkcode) else: pass random_code = utils.get_random_num(6, mode="number") checkcode_coll.insert_one({ "email": email, "enable_flag": True, "create_date": curr_time, "type": "email", "code": random_code, }) result['res'] = send_email( '*****@*****.**', [email], u'风控系统邮件验证', '', html=u"【风控系统】尊敬的用户您好,您本次的验证码为%s,30分钟内有效" % random_code) # result['res'] = send_email('*****@*****.**',[email],u'风控系统邮件验证','',html=u"【风控系统】尊敬的用户您好,您本次的验证码为%s,30分钟内有效"%random_code) result["code"] = random_code except Exception, e: result = utils.reset_response_data(0, str(e))
def post(self): result = utils.init_response_data() try: self.check_request_params(self.mp_require_params) request_params = self.format_request_params() exec("""request_params = self.mp_default_params.update(%s)""" % request_params) request_params = self.mp_default_params query_params = {} for key in self.query_params: query_params.update({ key: request_params[key], }) if query_params == {} or not self.model.is_exists(query_params): obj = self.model.create(**request_params) result = utils.dump(obj) except Exception, e: result = utils.reset_response_data(0, str(e))
def put(self): result = utils.init_response_data() try: id = self.get_argument("id") _id = utils.create_objectid(id) address = self.get_argument("address", "") self.check_request_params(self.mp_require_params) request_params = self.format_request_params() update_params = {} exec("""update_params.update(%s)""" % request_params) self.check_update_params(update_params) update_params["_id"] = _id del update_params["id"] ret = self.model.update(query_params={"_id": _id}, update_params=update_params) result['data'] = ret except Exception, e: result = utils.reset_response_data(0, str(e))
def post(self): result = utils.init_response_data() try: user_coll = self.model.get_coll() oauth_coll = BaseModel.get_model("oauth.OauthModel").get_coll() checkcode_coll = BaseModel.get_model("checkcode.CheckCode").get_coll() mobile = self.get_argument("mobile") mobile_code = self.get_argument("mobile_code") password1 = self.get_argument("password1") password2 = self.get_argument("password2") type = self.get_argument("type","b") if mobile == "": raise Exception("请输入手机号!") elif mobile_code == "": raise Exception("请输入手机验证码") elif password1 == "": raise Exception("请输入password1!") elif password2 == "": raise Exception("请确认password2!") # 检查手机验证码 utils.check_code(checkcode_coll, mobile, mobile_code) # # 检查邮箱验证码 # utils.check_code(checkcode_coll, email, email_code, type="email") add_time = datetime.datetime.now() login_date = "" headimgurl = "" nickname = "" username = "" active = 0 sex = 0 city = "" address = "" privilege = 0 province = "" if not user_coll.find_one({'mobile': mobile}): user_coll.insert_one({ 'mobile':mobile, 'password1':password1, 'password2':password2, 'add_time':add_time, 'login_date':login_date, 'headimgurl':headimgurl, 'nickname':nickname, 'username':'', 'active':active, 'sex':sex, 'city':city, 'address':address, 'privilege':privilege, 'province':province, 'type':type, }) oauth_coll.insert_one({'identifier': mobile, 'secret': password1, 'redirect_uris': [], 'authorized_grants': [oauth2.grant.ClientCredentialsGrant.grant_type]}) params = { 'login': mobile, 'password': password1, } body = urllib.urlencode(params) client = tornado.httpclient.AsyncHTTPClient() response = yield tornado.gen.Task( client.fetch, "http://localhost:9000" + "/api/user/signin", method='POST', body=body) response_body = json.loads(response.body) if response_body.has_key("error"): result = utils.reset_response_data(0,response_body["error"] + response_body["error_description"]) self.finish(result) return result["data"] = response_body["response"]["data"] except Exception, e: result = utils.reset_response_data(0, str(e))
def delete(self): result = utils.init_response_data() try: raise Exception("操作限制!") except Exception,e: result = utils.reset_response_data(0, str(e))
def get(self): result = utils.init_response_data() result['mode'] = '' self.render("admin/product/product-create.html", result=result)