Example #1
0
 def console_order_1(self):
     self.state = self.params.get_integer("state")
     self.cash_flow_state = self.params.get_integer("cash_flow_state")
     self.freight_flow_state = self.params.get_integer("freight_flow_state")
     self.official_order = self.params.get_boolean("official_order")
     self.context["page_title"] = u"訂購管理"
     limit = self.components.pagination.paginate()
     return scaffold.list(self)
Example #2
0
 def admin_images_list(self):
     self.meta.pagination_limit = 12
     model = self.meta.Model
     def photo_factory(self):
         return model.query(
             model.content_type.IN(["image/jpeg", "image/jpg", "image/png", "image/gif"])).order(
             -model.content_type, -model.created, model._key)
     self.scaffold.query_factory = photo_factory
     return scaffold.list(self)
Example #3
0
    def console_product(self):
        self.context["page_title_for_nav"] = u"商品列表"

        def factory(controller):
            return ProductModel.query(
                ndb.AND(ProductModel.store == controller.session["store"],
                        )).order(-ProductModel.sort)

        self.scaffold.query_factory = factory
        return scaffold.list(self)
Example #4
0
    def admin_pickup_list(self):
        self.context["current_theme"] = self.theme
        self.meta.pagination_limit = 48
        namespace = self.namespace
        model = self.meta.Model

        def get_list(self):
            return model.get_list(namespace)

        self.scaffold.query_factory = get_list
        namespace_manager.set_namespace("shared.theme")
        return scaffold.list(self)
Example #5
0
 def admin_pickup_list(self):
     scaffold.list(self)
     plugins_list = []
     enable_plugins_list = self.settings.get_plugins(
         self.server_name, self.namespace)
     for item in self.plugins_all:
         module_path = 'plugins.%s' % item
         try:
             module = __import__('%s' % module_path, fromlist=['*'])
             cls = getattr(module, 'plugins_helper')
             cls["name"] = item
             if item in enable_plugins_list:
                 cls["enable"] = True
             else:
                 cls["enable"] = False
             if "icon" not in cls:
                 cls["icon"] = "cube"
             plugins_list.append(cls)
         except:
             self.logging.debug("Plugins %s helper not found, skipping" %
                                item)
     self.context["plugins"] = plugins_list
Example #6
0
    def console_sales(self):
        self.state = self.params.get_integer("state")
        self.cash_flow_state = self.params.get_integer("cash_flow_state")
        self.freight_flow_state = self.params.get_integer("freight_flow_state")
        self.official_order = self.params.get_boolean("official_order")
        self.context["page_title_for_nav"] = u"銷售管理"

        def factory(controller):
            return OrderInfoModel.query(
                ndb.AND(
                    OrderInfoModel.store == controller.session["store"],
                    OrderInfoModel.state == controller.state,
                    OrderInfoModel.cash_flow_state ==
                    controller.cash_flow_state,
                    OrderInfoModel.freight_flow_state ==
                    controller.freight_flow_state,
                    OrderInfoModel.official_order == controller.official_order,
                )).order(-OrderInfoModel.sort)

        self.scaffold.query_factory = factory
        return scaffold.list(self)
Example #7
0
 def admin_list(self):
     return scaffold.list(self)
Example #8
0
 def admin_list(self):
     namespace_manager.set_namespace("shared.theme")
     return scaffold.list(self)
Example #9
0
 def admin_list(self):
     self.context["administrator_role"] = self.administrator.role
     return scaffold.list(self)
Example #10
0
 def admin_list(controller):
     return scaffold.list(controller)
Example #11
0
 def admin_list(self):
     self.context["administrator_key"] = self.administrator.key
     scaffold.list(self)
     for item in self.context[self.scaffold.plural]:
         item.level = item.role.get().level
Example #12
0
 def admin_list(self):
     namespace_manager.set_namespace("shared.information")
     return scaffold.list(self)
Example #13
0
    def push_message(self):
        self.meta.change_view("jsonp")
        self.context["data"] = {"error": "need_login"}
        self.state = self.params.get_integer("state")
        self.cash_flow_state = self.params.get_integer("cash_flow_state")
        self.freight_flow_state = self.params.get_integer("freight_flow_state")
        self.official_order = self.params.get_boolean("official_order")
        self.client_id = None
        if "mobile" in self.session:
            if self.session["mobile"] is not None:
                m = get_mobile(self.session["mobile"])
                if m is None:
                    return
                self.client_id = self.util.encode_key(m.account)
        if self.client_id is None:
            return

        def factory(controller):
            return MessageModel.query(
                ndb.OR(MessageModel.store == controller.session["store"],
                       MessageModel.user_a ==
                       controller.session["account"])).order(MessageModel.sort)

        self.scaffold.query_factory = factory
        scaffold.list(self)
        list = self.context[self.scaffold.plural].fetch()
        msg_list = []
        for item in list:
            msg_id = u""
            url = u""
            message = u""
            is_read = False
            sort = item.sort
            created = item.created.isoformat()
            if item.message_type == u"order":
                msg_id = u"message_" + self.Util.encode_key(item.order_info)
                if item.store == self.session["store"]:
                    url = "/console/sales/detail/" + self.Util.encode_key(
                        item.order_info)
                    message = item.store_text
                    is_read = item.store_read
                else:
                    url = "/console/order/detail/" + self.Util.encode_key(
                        item.order_info)
                    if item.purchaser.key == self.session["account"]:
                        message = item.user_a_text
                        is_read = item.user_a_read
                    else:
                        message = item.user_b_text
                        is_read = item.user_b_read
            #TODO 訂單內訊息
            #TODO 人對商家的訊息
            #TODO 人對人的訊息
            msg_list.append({
                "id": msg_id,
                "message": message,
                "is_read": is_read,
                "url": url,
                "sort": sort,
                "created": created
            })
        self.context["data"] = msg_list
        result = unicode(json_util.stringify(msg_list))
        send_message_to_client(self.client_id, {
            "action": "message",
            "list": result
        })