customerendpoints.py 文件源码

python
阅读 27 收藏 0 点赞 0 评论 0

项目:Restaurant-API-V2 作者: RobusGauli 项目源码 文件源码
def updateMembership(m_id):
    ''' PUT /api/v1/dientables/6    HTTP/1.1
        {"alias" : "new table name", "capacity" : 3}

        Result : {
                    "data": {
                    "capacity": 3,
                    "alias" : "new table name"
                    },
                    "meta": {
                    "code": 200,
                    "message": "Updated Successfully"
                    }
                }
    '''
    with SessionManager(Session) as session:
        try:
            sql_membership = session.query(Membership).filter(Membership.id == m_id).one()
            sql_membership.m_type = request.json.get('m_type', sql_membership.m_type)
            sql_membership.discount = request.json.get('discount', sql_membership.discount)

            #check weather the discount is between 0 and 100
            if not 0 <= int(sql_membership.discount) < 100:
                return jsonify(error_envelop(400, 'DataError', 'Enter the valid discount amount (0 to 100)'))

            sql_membership.description = request.json.get('description', sql_membership.description)
            session.commit()
            return jsonify(update_envelop(200, data=request.json))
        except IntegrityError:
            # if name already exsits in database  
            return jsonify(error_envelop(400, 'Integrity Error','Name already Exists'))
        except NoResultFound:
            return jsonify(error_envelop(404, 'ValueError', 'Id : {0} not found'.format(m_id)))

    return jsonify(error_envelop(100, 'UnknownError', 'UnknownError Found'))
    #now the item is succesfulluy updated
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号