Beispiel #1
0
def fake_categoies(count=10):
    with db.auto_commit():
        category = Category()
        category.name = 'Default'
        db.session.add(category)

    for i in range(count):
        with db.auto_commit():
            category = Category(name=fake.word())
            db.session.add(category)
Beispiel #2
0
def fake_comments(count=50):
    for i in range(count):
        with db.auto_commit():
            comment = Comment(author=fake.name(),
                              email=fake.email(),
                              site=fake.url(),
                              body=fake.sentence(),
                              timestamp=fake.date_time_this_year(),
                              reviewed=True,
                              post=Post.query.get(
                                  random.randint(1, Post.query.count())))
            db.session.add(comment)

    salt = int(count * 0.1)
    for i in range(salt):
        with db.auto_commit():
            comment = Comment(author=fake.name(),
                              email=fake.email(),
                              site=fake.url(),
                              body=fake.sentence(),
                              timestamp=fake.date_time_this_year(),
                              reviewed=False,
                              post=Post.query.get(
                                  random.randint(1, Post.query.count())))
            db.session.add(comment)

    for i in range(salt):
        with db.auto_commit():
            comment = Comment(author='Mima Kirigoe',
                              email='*****@*****.**',
                              site='example.com',
                              body=fake.sentence(),
                              timestamp=fake.date_time_this_year(),
                              from_admin=True,
                              reviewed=True,
                              post=Post.query.get(
                                  random.randint(1, Post.query.count())))
            db.session.add(comment)

    for i in range(salt):
        with db.auto_commit():
            comment = Comment(author=fake.name(),
                              email=fake.email(),
                              site=fake.url(),
                              body=fake.sentence(),
                              timestamp=fake.date_time_this_year(),
                              reviewed=True,
                              replied=Comment.query.get(
                                  random.randint(1, Comment.query.count())),
                              post=Post.query.get(
                                  random.randint(1, Post.query.count())))
            db.session.add(comment)
Beispiel #3
0
    def make_uid(cls, merchant: MerchantEnum):
        with db.auto_commit():
            global_uid = cls()
            global_uid.merchant = merchant
            db.session.add(global_uid)

        return global_uid.id
Beispiel #4
0
def create_group():
    ep_infos = get_ep_infos()
    if request.method == 'POST':
        form = NewGroup()
        if form.validate_on_submit():
            exists = Group.query.filter_by(name=form.name.data).first()
            if exists:
                flash('分组已存在,不可创建同名分组', 2)
                return common_render('page/manage_group/create/index.html',
                                     ep_infos=ep_infos)
            with db.auto_commit():
                group = Group(name=form.name.data, info=form.info.data)
                db.session.add(group)
                db.session.flush()
                for auth in form.auths.data:
                    meta = find_auth_module(auth)
                    if meta:
                        auth = Auth(auth=meta.auth,
                                    module=meta.module,
                                    group_id=group.id)
                        db.session.add(auth)
            flash('创建成功', 1)
        else:
            flash(form.errors_info)
    return common_render('page/manage_group/create/index.html',
                         ep_infos=ep_infos)
Beispiel #5
0
 def delete(self):
     default_category = Category.query.get(1)
     posts = self.posts[:]
     with db.auto_commit():
         for post in posts:
             post.category = default_category
         db.session.delete(self)
Beispiel #6
0
    def add_bank_card(cls, merchant: MerchantEnum, uid: int, bank_name: str, bank_code: str, card_no: str,
                      account_name: str, branch: str, province: str, city: str):
        """
        添加用户银行卡
        :param merchant:
        :param uid:
        :param bank_name:
        :param bank_code:
        :param card_no:
        :param account_name:
        :param branch:
        :param province:
        :param city:
        :return:
        """
        with db.auto_commit():
            bank_card = cls.query_one(query_fields=dict(card_no=card_no, valid=cls.INVALID, _merchant=merchant.value))
            if not bank_card:
                bank_card = cls.get_model_obj(merchant=merchant)
            bank_card.valid = cls.VALID
            bank_card.uid = uid
            bank_card.bank_name = bank_name
            bank_card.bank_code = bank_code
            bank_card.card_no = card_no
            bank_card.account_name = account_name
            bank_card.branch = branch
            bank_card.province = province
            bank_card.city = city
            bank_card.merchant = merchant
            db.session.add(bank_card)

        return bank_card
Beispiel #7
0
    def delete(self, id_):
        mock_data: MockData = MockData.query.filter(MockData.status != -1, MockData.id == id_).first_or_404()
        mock_data.status = -1

        with db.auto_commit():
            db.session.add(mock_data)
        return DeleteSuccess()
Beispiel #8
0
 def register_by_email(user_name, account, secret):
     with db.auto_commit():
         user = User()
         user.user_name = user_name
         user.email = account
         user.password = secret
         db.session.add(user)
Beispiel #9
0
    def get(self):
        """
        测试外网访问,正向代理是否正常
        :return:
        """
        try:
            tx_id = request.args['tx_id']
        except:
            return ResponseSuccess(message="必填交易ID").as_response()

        order = OrderDeposit.query_by_tx_id(tx_id)
        if not order:
            return ResponseSuccess(message="订单不存在,请确认交易号是否正确: %s" %
                                   tx_id).as_response()

        state_before = OrderConstraint.query_by_order_id(order.order_id).state

        with db.auto_commit():
            OrderConstraint.revoke_order_state(order.order_id, order.state)

        state_after = OrderConstraint.query_by_order_id(order.order_id).state

        return ResponseSuccess(bs_data=dict(
            order_id=order.order_id,
            sys_tx_id=order.sys_tx_id,
            order_state=order.state.desc,
            state_before=state_before.desc,
            state_after=state_after.desc,
        )).as_response()
Beispiel #10
0
    def put(self, id_):
        args = ProjectsResource.parser.parse_args()
        project = MockProject.query.filter(MockProject.status != -1, MockProject.id == id_).first_or_404()
        project = MockProjectSchema().load(args, instance=project)

        with db.auto_commit():
            db.session.add(project)
        return UpdateSuccess()
Beispiel #11
0
    def put(self, id_):
        args = DataResource.parser.parse_args()
        mock_data = MockData.query.filter(MockData.status != -1, MockData.id == id_).first_or_404()
        mock_data = MockDataSchema().load(args, instance=mock_data)

        with db.auto_commit():
            db.session.add(mock_data)
        return UpdateSuccess()
Beispiel #12
0
    def drop_all_records(cls):
        create_time = DateTimeKit.get_cur_datetime()

        with db.auto_commit():
            model_cls = cls.get_model_cls(date=create_time)
            model_cls.query.delete()
            model_cls = cls.get_cold_model_cls(date=create_time)
            model_cls.query.delete()
Beispiel #13
0
 def edit_user(user_name, account, gender, department, position, mobile):
     user = User.query.filter_by(email=account).first()
     with db.auto_commit():
         user.user_name = user_name
         user.department_id = department or None
         user.gender = gender
         user.mobile = mobile
         user.position = position
Beispiel #14
0
 def delete(self, id_):
     project: MockProject = MockProject.query.filter(MockProject.status != -1, MockProject.id == id_).first_or_404()
     has_mock_data = MockData.query.filter(MockData.project_id == id_, MockData.status != -1).all()
     if has_mock_data:
         raise DeleteFaild(message='请先删除该项目下的所有 Mock 数据')
     project.status = -1
     with db.auto_commit():
         db.session.add(project)
     return DeleteSuccess()
Beispiel #15
0
def fake_posts(count=50):
    for i in range(count):
        with db.auto_commit():
            post = Post(title=fake.sentence(),
                        body=fake.text(200),
                        category=Category.query.get(
                            random.randint(1, Category.query.count())),
                        timestamp=fake.date_time_this_year())
            db.session.add(post)
Beispiel #16
0
 def delete_bankcard_by_card_id(cls, card_id):
     """
     根据卡号删除用户银行卡
     :param card_id:
     :return:
     """
     with db.auto_commit():
         bank_card = cls.query_bankcard_by_id(card_id=card_id)
         bank_card.valid = cls.INVALID
         db.session.add(bank_card)
Beispiel #17
0
 def delete_account(cls, uid=None, account=None):
     """
     删除账号
     :param uid:
     :param account:
     :return:
     """
     with db.auto_commit():
         user = cls.query_user(uid=uid, account=account)
         db.session.delete(user)
Beispiel #18
0
    def delete_all(cls, *args, **kwargs):
        """
        删除所有
        :return:
        """
        model_cls = kwargs.get('model_cls') or cls.get_model_cls(
            *args, **kwargs)

        with db.auto_commit():
            model_cls.query.delete()
Beispiel #19
0
 def delete_bankcard_by_card_no(cls, merchant, card_no):
     """
     根据卡号删除用户银行卡
     :param merchant:
     :param card_no:
     :return:
     """
     with db.auto_commit():
         bank_card = cls.query_bankcard_by_card_no(merchant, card_no=card_no)
         bank_card.valid = cls.INVALID
         db.session.add(bank_card)
Beispiel #20
0
 def create_user(user_name, account, password, gender, department, position,
                 mobile):
     with db.auto_commit():
         user = User()
         user.user_name = user_name
         user.email = account
         user.password = password
         user.department_id = department or None
         user.gender = gender
         user.mobile = mobile
         user.position = position
         db.session.add(user)
Beispiel #21
0
 def delete_by_create_time(cls, begin_time, end_time, *args, **kwargs):
     """
     根据创建时间删除记录
     :param begin_time:
     :param end_time:
     :param args:
     :param kwargs:
     :return:
     """
     with db.auto_commit():
         return cls.query_by_create_time(
             begin_time, end_time, *args,
             **kwargs).delete(synchronize_session="fetch")
def main():
    app = create_app()
    with app.app_context():
        with db.auto_commit():
            for link in links:
                address = True if link['showAddress'] == '首页' else False
                l = FriendLinks(id=link['linksId'],
                                title=link['linksName'],
                                url=link['linksUrl'],
                                email=link['masterEmail'],
                                create_time=link['linksTime'],
                                show_address=address)
                db.session.add(l)
Beispiel #23
0
def fake_admin():
    '''
    生成管理员帐号
    '''
    with db.auto_commit():

        admin = Admin(
            username='******',
            blog_title='Myblog',
            blog_sub_title="hello world",
            name='Mima Kirigoe',
            about='Um, l, Mima Kirigoe, had a fun time as a member of CHAM...')
        admin.password = '******'
        db.session.add(admin)
Beispiel #24
0
    def add_bank(cls, bank_name: str, bank_code: str):
        """
        添加日志
        :param bank_name:
        :param bank_code:
        :return:
        """
        with db.auto_commit():
            bank = cls()
            bank.bank_name = bank_name
            bank.bank_code = bank_code
            db.session.add(bank)

        return bank
Beispiel #25
0
    def delete_merchant(cls, merchant: MerchantEnum):
        """
        删除商户
        :param merchant:
        :return:
        """
        with db.auto_commit():
            obj = cls.query.filter(cls._merchant == merchant.value).first()
            obj.set_before_fields(['merchant'])

            db.session.delete(obj)

            log_model = cls.add_admin_log(obj)
            log_model and db.session.add(log_model)
Beispiel #26
0
    def register_account(cls, account, login_pwd):
        """
        注册账号
        :param account:
        :param login_pwd:
        :return:
        """
        user = cls()
        user.account = account
        user.login_pwd = login_pwd

        with db.auto_commit():
            db.session.add(user)

        return user
Beispiel #27
0
def settings():
    form = SettingForm()
    if form.validate_on_submit():
        with db.auto_commit():
            current_user.name = form.name.data
            current_user.blog_title = form.blog_title.data
            current_user.blog_sub_title = form.blog_sub_title.data
            current_user.about = form.about.data
        flash('资料修改成功', 'success')
        return redirect(url_for('blog.index'))

    form.name.data = current_user.name
    form.blog_title.data = current_user.blog_title
    form.blog_sub_title.data = current_user.blog_sub_title
    form.about.data = current_user.about
    return render_template('admin/settings.html', form=form)
Beispiel #28
0
    def register_account(cls, mid, account, password):
        """
        注册账号
        :param account:
        :param login_pwd:
        :return:
        """
        user = cls()
        user.mid = mid
        user.account = account
        user.password = password

        with db.auto_commit():
            db.session.add(user)

        return user
Beispiel #29
0
    def commit_models(cls, *args, models=None, delete=False, commit=True):
        """
        多个model在同一个事务中提交,一个失败,所有都失败
        :param models:
        :param delete:
        :param commit: 是否提交事务
        :return:
        """
        models = models or list()
        models.extend(args)

        with db.auto_commit(commit):
            for model in models:
                if delete:
                    db.session.delete(model)
                else:
                    db.session.add(model)
Beispiel #30
0
 def reset_password(cls, account=None, uid=None, login_pwd=None):
     """
     修改密码
     :param account:
     :param uid:
     :param login_pwd:
     :return:
     """
     with db.auto_commit():
         if uid:
             user = cls.query_user(uid=uid)
         else:
             user = cls.query_user(account=account)
         if user is not None:
             user.login_pwd = login_pwd
             db.session.add(user)
             return True
         else:
             return False