Exemplo n.º 1
0
 def _post_handler(self):
     content_str = ''
     params = self.validator.data
     save_type = params['save_type']
     content = params.pop('content')
     box_id = params.get('box_id')
     box = BoxList(box_id)
     box.load()
     if not box.data:
         return error(errcode=RESP_CODE.DATAERR)
     # 检查名称
     ret, text_id = TextInfo.create(params)
     log.debug('class=TextInfoCreateHandler|create text info ret=%s', ret)
     if ret != 1:
         return error(errcode=RESP_CODE.DATAERR)
     if save_type == define.SAVE_TYPE_FILE:
         return success(data={})
     log.debug('content=%s', content)
     if isinstance(content, list) and content:
         for item in content:
             content_str += item
     else:
         content_str = content
     base64_str = base64.b64encode(content_str)
     log.debug('base64_str=%s', base64_str)
     detail_values = {'content': base64_str, 'text_id': text_id}
     ret = TextDetail.create(detail_values)
     log.debug('class=TextInfoCreateHandler|create text detail ret=%s', ret)
     return success(data={})
Exemplo n.º 2
0
 def _post_handler(self):
     data = {}
     params = self.validator.data
     # 先检查是否有同名的数据存在
     rate = RateInfo.load_by_name(params.get('name'))
     if rate.data:
         return error(RESP_CODE.DATAEXIST)
     ret = RateInfo.create(params)
     if ret != 1:
         return error(RESP_CODE.DATAERR)
     return success(data=data)
Exemplo n.º 3
0
 def _post_handler(self):
     data = {}
     params = self.validator.data
     rate_id = params.pop('rate_id')
     rate = RateInfo(rate_id)
     rate.load()
     if not rate.data:
         return error(RESP_CODE.DATAERR)
     ret = rate.update(params)
     if ret != 1:
         return error(RESP_CODE.DATAERR)
     return success(data=data)
Exemplo n.º 4
0
 def _post_handler(self):
     params = self.validator.data
     text_id = params['text_id']
     text = TextInfo(text_id)
     text.load()
     if not text.data:
         return error(RESP_CODE.DATAERR)
     delete_values = {'available': define.TEXT_TITLE_DISABLE}
     ret = text.update(delete_values)
     if ret != 1:
         return error(RESP_CODE.DBERR)
     return success(data={})
Exemplo n.º 5
0
 def _get_handler(self):
     data = {'business_loan_rate': 0, 'accumulation_fund_loan_rate': 0}
     rate = RateInfo.name_to_value()
     log.info('class=LoanPrimeRateInfoHandler|rate=%s', rate)
     if not rate:
         return error(RESP_CODE.DATAERR)
     if config.ACCUMULATION_LOAN not in rate.keys(
     ) or config.BUSINESS_LOAN not in rate.keys():
         return error(RESP_CODE.DATAERR)
     data['accumulation_fund_loan_rate'] = rate.get(
         config.ACCUMULATION_LOAN).get('rate')
     data['business_loan_rate'] = rate.get(config.BUSINESS_LOAN).get('rate')
     return success(data=data)
Exemplo n.º 6
0
 def _post_handler(self):
     params = self.validator.data
     order_id = params.pop('order_id')
     order = Order(order_id)
     order.load()
     if not order.data:
         return error(errcode=RESP_CODE.DATAERR)
     # 检查名称
     ret = order.update(params)
     log.debug('OrderViewHandler|post|update ret=%s', ret)
     if ret != 1:
         return error(errcode=RESP_CODE.DATAERR)
     return success(data={})
Exemplo n.º 7
0
    def _get_handler(self):
        params = self.validator.data
        text_id = params.get('text_id')

        text = TextInfo(text_id)
        text.load()
        if not text.data:
            return error(errcode=RESP_CODE.DATAERR)
        save_type = text.data['save_type']
        if save_type == define.SAVE_TYPE_RICH:
            detail = TextDetail.load_by_text_id(text_id)
            # text.data['content'] = detail.data.get('content') if detail.data else ''
            try:
                content_str = detail.data.get('content') if detail.data else ''
                content = base64.b64decode(content_str)
            except Exception:
                log.warn(traceback.format_exc())
                content = detail.data.get('content') if detail.data else ''
            text.data['content'] = content
        else:
            text.data['content'] = ''
        data = text.data
        icon_name = data['icon']
        data['icon'] = BASE_URL + icon_name
        data['icon_name'] = icon_name
        return success(data=data)
Exemplo n.º 8
0
 def _get_handler(self):
     params = self.validator.data
     syssn = params['syssn']
     trade = TradeOrder(syssn)
     if not trade.data:
         return error(RESP_CODE.DATAERR)
     return success(data=trade.data) 
Exemplo n.º 9
0
 def _get_handler(self):
     params = self.validator.data
     rate_id = params.get('rate_id')
     rate = RateInfo(rate_id)
     rate.load()
     if not rate.data:
         return error(RESP_CODE.DATAERR)
     return success(data=rate.data)
Exemplo n.º 10
0
 def _post_handler(self):
     params = self.validator.data
     # 检查名称
     ret = BoxList.create(params)
     log.debug("class=BoxCreateHandler|create ret=%s", ret)
     if ret != 1:
         return error(errcode=RESP_CODE.DATAERR)
     return success(data={})
Exemplo n.º 11
0
 def _post_handler(self):
     params = self.validator.data
     box_id = params.get('box_id')
     box = BoxList(box_id)
     box.load()
     if not box.data:
         return error(errcode=RESP_CODE.DATAERR)
     # 检查名称
     # 只能创建一个先检查
     order = Order.load_by_box_id(box_id)
     if order.data:
         return error(errcode=RESP_CODE.DATAEXIST)
     ret = Order.create(params)
     log.debug('class=OrderCreateHandler|create ret=%s', ret)
     if ret != 1:
         return error(errcode=RESP_CODE.DATAERR)
     return success(data={})
Exemplo n.º 12
0
 def _post_handler(self):
     params = self.validator.data
     # 检查名称
     ret = Carousel.create(params)
     log.debug("class=%s|create ret=%s", self.__class__.__name__, ret)
     if ret != 1:
         return error(errcode=RESP_CODE.DATAERR)
     return success(data={})
Exemplo n.º 13
0
 def _post_handler(self):
     params = self.validator.data
     user_state = params['state']
     user_id = params['user_id']
     user = User(user_id)
     ret = user.update(value={'state': user_state})
     if ret != 1:
         return error(RESP_CODE.DBERR)
     return success(data={})
Exemplo n.º 14
0
 def _get_handler(self):
     try:
         params = self.validator.data
         user_id = params.get('user_id')
         data = tools.get_merchant(user_id)
         return success(data=data)
     except Exception:
         log.warn(traceback.format_exc())
         return error(RESP_CODE.SERVERERR)
Exemplo n.º 15
0
 def _post_handler(self):
     try:
         params = self.validator.data
         user_id = params.pop('user_id')
         values = params
         tools.update_merchant(user_id, values)
         return success(data={})
     except Exception:
         log.warn(traceback.format_exc())
         return error(RESP_CODE.SERVERERR)
Exemplo n.º 16
0
 def _post_handler(self):
     data = {}
     params = self.validator.data
     syssn = params['syssn']
     txamt = params['txamt']
     r = Refund(config.APPID, config.SECRET, config.MCH_ID, config.API_KEY)
     flag, msg = r.run(syssn, txamt)
     if not flag:
         return error(RESP_CODE.UNKOWNERR, respmsg=msg)
     return success(data=data)
Exemplo n.º 17
0
 def POST(self, *args):
     try:
         log.info('<<< %s start >>>', self.__class__.__name__)
         self.set_headers(BaseHandler.headers)
         ret = self._post_handler()
         log.info("ret: %s", ret)
         log.info('<<< %s end >>>', self.__class__.__name__)
         return self.write(ret)
     except Exception:
         log.warn(traceback.format_exc())
         return error(RESP_CODE.SERVERERR)
Exemplo n.º 18
0
 def _post_handler(self):
     params = self.validator.data
     mobile = params['mobile']
     password = params["password"]
     # if mobile not in ALLOW_LOGIN_MOBILE:
     #     log.info('mobile=%s forbidden', mobile)
     #     return error(RESP_CODE.USERFORBIDDEN)
     user = User.load_user_by_mobile(mobile)
     if user.data and user.userid:
         if user.data['state'] != HOUSE_USER_STATE_OK:
             log.info('userid=%s|state=%s|forbidden login', user.userid, user.data['state'])
             return error(RESP_CODE.USERSTATEERR)
         if user.data['user_type'] != HOUSE_USER_TYPE_ADMIN:
             log.info('userid=%s|user_type=%s|forbidden login', user.userid, user.data['user_type'])
             return error(RESP_CODE.ROLEERR)
         flag = check_password(password, user.data.get('password'))
         if not flag:
             return error(RESP_CODE.PWDERR)
         return success(data={'userid': user.userid})
     return error(RESP_CODE.DATAERR)
Exemplo n.º 19
0
 def _post_handler(self):
     params = self.validator.data
     box_id = params.pop('box_id')
     # 检查是否存在
     box = BoxList(box_id)
     box.load()
     if not box.data:
         return error(errcode=RESP_CODE.DATAERR)
     ret = box.update(params)
     log.debug('BoxViewHandler|post|update ret=%s', ret)
     return success(data={})
Exemplo n.º 20
0
 def _post_handler(self):
     params = self.validator.data
     carousel_id = params.pop('carousel_id')
     # 检查是否存在
     carousel = Carousel(carousel_id)
     carousel.load()
     if not carousel.data:
         return error(errcode=RESP_CODE.DATAERR)
     ret = carousel.update(params)
     log.debug('class=%s|post|update ret=%s', self.__class__.__name__, ret)
     return success(data={})
Exemplo n.º 21
0
    def _post_handler(self):
        params = self.validator.data
        # 先检查该用户是否有权限添加用户
        admin = self.user.userid
        if admin not in ALLOW_ADD_USER_ID:
            log.info('admin=%s|is denied', admin)
            return error(RESP_CODE.DATAERR, resperr='该用户没有权限添加用户')
        # 是否已经注册
        mobile = params.get('mobile')
        user = User.load_user_by_mobile(mobile)
        if user.data:
            return error(RESP_CODE.DATAEXIST, resperr='手机号已存在')
        # 默认用用户名称和手机号一样
        params['username'] = params['mobile']
        params['nickname'] = params['name']
        flag, userid = tools.create_merchant(params)
        if flag:
            return success(data={'userid': userid})

        return error(RESP_CODE.DATAERR)
Exemplo n.º 22
0
 def _get_handler(self):
     data = {}
     params = self.validator.data
     js_code = params['js_code']
     g = GenOpenid(config.APPID, config.SECRET, config.MCH_ID,
                   config.API_KEY)
     openid, msg = g.run(js_code)
     if not openid:
         return error(RESP_CODE.UNKOWNERR, respmsg=msg)
     data['openid'] = openid
     return success(data)
Exemplo n.º 23
0
 def _post_handler(self):
     values = {}
     params = self.validator.data
     user_id = params['user_id']
     password = params['password']
     h = hashlib.md5(password)
     md5_password = h.hexdigest()
     log.info('md5_password=%s', md5_password)
     values['password'] = gen_passwd(md5_password)
     user = User(user_id)
     ret = user.update(value=values)
     if ret != 1:
         return error(RESP_CODE.DBERR)
     return success(data={})
Exemplo n.º 24
0
    def _post_handler(self):
        content_str = ''
        params = self.validator.data
        save_type = params['save_type']
        content = params.pop('content')
        text_id = params.pop('text_id')

        text = TextInfo(text_id)
        text.load()
        if not text.data:
            return error(errcode=RESP_CODE.DATAERR)

        ret = text.update(params)
        log.debug('TextInfoViewHandler|post update info ret=%s', ret)
        if ret != 1:
            return error(errcode=RESP_CODE.DATAERR)

        if save_type == define.SAVE_TYPE_FILE:
            return success(data={})

        detail = TextDetail.load_by_text_id(text_id)
        detail_id = detail.data.get('id')
        log.debug('content=%s', content)
        if isinstance(content, list) and content:
            for item in content:
                content_str += item
        else:
            content_str = content
        detail_values = {
            #'content': content,
            'content': base64.b64encode(content_str)
        }
        d = TextDetail(detail_id)
        ret = d.update(detail_values)
        log.debug('TextInfoViewHandler|post update detail ret=%s', ret)
        return success(data={})
Exemplo n.º 25
0
 def _post_handler(self):
     params = self.validator.data
     # check txamt
     txamt = params['txamt']
     openid = params['openid']
     consumer_name = params['consumer_name']
     consumer_mobile = params['consumer_mobile']
     order_name = params['order_name']
     # order_desc是个json串带空格, validator返回的是个列表,存的有问题
     # order_desc = params['order_desc']
     order_desc = self.req.input().get('order_desc', '')
     p = Precreate(config.APPID, config.SECRET, config.MCH_ID,
                   config.API_KEY)
     flag, msg, result = p.run(openid=openid,
                               txamt=txamt,
                               consumer_name=consumer_name,
                               consumer_mobile=consumer_mobile,
                               order_name=order_name,
                               order_desc=order_desc)
     if not flag:
         return error(RESP_CODE.UNKOWNERR, resperr=msg, respmsg=msg)
     return success(data=result)
Exemplo n.º 26
0
 def _get_handler(self):
     data = {}
     params = self.validator.data
     box_id = params.get('box_id')
     box = BoxList(box_id)
     box.load()
     if not box.data:
         return error(errcode=RESP_CODE.DATAERR)
     box_type = box.data.get('box_type')
     data['box_type'] = box_type
     if box_type == define.BOX_TYPE_ORDER:
         order = Order.load_by_box_id(box_id)
         if order.data:
             log.info('order data=%s', order.data)
             order.data['box_id'] = str(order.data['box_id'])
             order.data['goods_picture'] = config.BASE_URL + order.data[
                 'goods_picture']
         data['info'] = order.data if order.data else {}
     elif box_type == define.BOX_TYPE_TEXT:
         text_info = TextInfo.load_by_box_id(box_id)
         if text_info.data:
             log.info('text_info data=%s', text_info.data)
             for item in text_info.data:
                 item['box_id'] = str(item['box_id'])
                 item['icon'] = config.BASE_URL + item['icon']
                 # param_str = 'text_id=%s' % item['text_id']
                 # item['text_detail_url'] = config.TEXT_DETAIL_PREFIX_URL + '?' + param_str
                 item['text_detail_url'] = config.TEXT_DETAIL_PREFIX_URL
         data['info'] = text_info.data if text_info.data else []
     else:
         where = {'available': define.BOX_ENABLE, 'parent': box_id}
         box = BoxList.load_all(where=where)
         for item in box:
             icon_name = item['icon']
             item['icon'] = config.BASE_URL + icon_name
         data['info'] = box
     return success(data=data)
Exemplo n.º 27
0
 def _post_handler_errfunc(self, msg):
     return error(RESP_CODE.PARAMERR, respmsg=msg)