added basic functionality to import designers into esales cluster

This commit is contained in:
Martin
2016-05-11 16:17:54 +02:00
parent 9ced739ef6
commit af864c3438
14 changed files with 186 additions and 5 deletions
+4
View File
@@ -1,5 +1,6 @@
from flask import Flask, jsonify, Response, request
from flask_sqlalchemy import SQLAlchemy
from esales.cluster import Cluster
app = Flask(__name__)
app.config.from_object('config')
@@ -13,6 +14,9 @@ app.errorhandler(404)(on_404)
# SQLAlchemy
db = SQLAlchemy(app)
# eSales
esales = Cluster(app.config.get("ESALES_URL"))
from api.views import designers
app.register_blueprint(designers.mod)
View File
+1
View File
@@ -0,0 +1 @@
from . import esales
+27
View File
@@ -0,0 +1,27 @@
# coding=utf-8
from api import app
from api.models.locale import Locale
from esales.models import Category, CategoryTree
from esales.utils import ImportFile
def update_designer(designer):
locales = Locale.query.all()
trees = []
category = Category(
"root/designer/{}".format(designer.path),
designer.name,
hidden=1,
path="/designers/{}".format(designer.path)
)
importfile = ImportFile()
for locale in locales:
tree = CategoryTree("categories_{}".format(locale.value))
tree.add_category(category)
importfile.add_operation("update", tree)
directory = app.config.get("ESALES_IMPORT_DIR")
importfile.write(directory)
+2 -1
View File
@@ -1,5 +1,5 @@
from flask import Blueprint, request, jsonify
from api import db
from api import db, tasks
from api.models import Designer
mod = Blueprint('designers', __name__, url_prefix='/designers')
@@ -34,6 +34,7 @@ def update(id):
setattr(designer, k, v)
db.session.add(designer)
db.session.commit()
tasks.esales.update_designer(designer)
return jsonify(designer.to_json())