~wantellets/prestashoperpconnect/prestashoperpconnect_id_shop

« back to all changes in this revision

Viewing changes to prestashoperpconnect/prestashop_model.py

  • Committer: WANTELLET Sylvain
  • Date: 2013-11-04 13:22:16 UTC
  • mfrom: (250.1.29 prestashoperpconnect)
  • Revision ID: wantellets@gmail.com-20131104132216-l2yh2taitl2p1uro
MERGE changes from main branch

Show diffs side-by-side

added added

removed removed

Lines of Context:
75
75
            required=True,
76
76
            help='Warehouse used to compute the stock quantities.'
77
77
        ),
78
 
        # add a field `auto_activate` -> activate a cron
 
78
        'taxes_included': fields.boolean("Use tax included prices"),
79
79
        'import_partners_since': fields.datetime('Import partners since'),
80
80
        'import_orders_since': fields.datetime('Import Orders since'),
81
81
        'language_ids': fields.one2many(
141
141
                    session,
142
142
                    backend_record.id,
143
143
                    since_date,
144
 
                    shop.prestashop_id
 
144
                    shop.prestashop_id,
 
145
                    priority=10,
145
146
                )
146
147
 
147
148
        return True
151
152
            ids = [ids]
152
153
        session = ConnectorSession(cr, uid, context=context)
153
154
        for backend_id in ids:
154
 
            import_products.delay(session, backend_id)
 
155
            import_products.delay(session, backend_id, priority=10)
155
156
        return True
156
157
 
157
158
    def import_carriers(self, cr, uid, ids, context=None):
159
160
            ids = [ids]
160
161
        session = ConnectorSession(cr, uid, context=context)
161
162
        for backend_id in ids:
162
 
            import_carriers.delay(session, backend_id)
 
163
            import_carriers.delay(session, backend_id, priority=10)
163
164
        return True
164
165
 
165
166
    def update_product_stock_qty(self, cr, uid, ids, context=None):
176
177
                                                context=context)
177
178
        return True
178
179
 
179
 
    def _prestashop_backend(self, cr, uid, callback, domain=None,
180
 
                            context=None):
 
180
    def import_sale_orders(self, cr, uid, ids, context=None):
 
181
        if not hasattr(ids, '__iter__'):
 
182
            ids = [ids]
 
183
        session = ConnectorSession(cr, uid, context=context)
 
184
        for backend_record in self.browse(cr, uid, ids, context=context):
 
185
            since_date = None
 
186
            if backend_record.import_orders_since:
 
187
                since_date = datetime.strptime(
 
188
                    backend_record.import_orders_since,
 
189
                    DEFAULT_SERVER_DATETIME_FORMAT
 
190
                )
 
191
            import_orders_since.delay(
 
192
                session,
 
193
                backend_record.id,
 
194
                since_date,
 
195
                priority=5,
 
196
            )
 
197
        return True
 
198
 
 
199
    def _scheduler_launch(self, cr, uid, callback, domain=None,
 
200
                          context=None):
181
201
        if domain is None:
182
202
            domain = []
183
203
        ids = self.search(cr, uid, domain, context=context)
186
206
 
187
207
    def _scheduler_update_product_stock_qty(self, cr, uid, domain=None,
188
208
                                            context=None):
189
 
        self._prestashop_backend(cr, uid, self.update_product_stock_qty,
190
 
                                 domain=domain, context=context)
191
 
 
192
 
    def import_sale_orders(self, cr, uid, ids, context=None):
193
 
        if not hasattr(ids, '__iter__'):
194
 
            ids = [ids]
195
 
        session = ConnectorSession(cr, uid, context=context)
196
 
        for backend_record in self.browse(cr, uid, ids, context=context):
197
 
            since_date = None
198
 
            if backend_record.import_orders_since:
199
 
                since_date = datetime.strptime(
200
 
                    backend_record.import_orders_since,
201
 
                    DEFAULT_SERVER_DATETIME_FORMAT
202
 
                )
203
 
            import_orders_since.delay(
204
 
                session,
205
 
                backend_record.id,
206
 
                since_date
207
 
            )
208
 
        return True
209
 
 
210
 
    def update_sale_order(self, cr, uid, ids, context=None):
211
 
        ""
212
 
        if not hasattr(ids, '__iter__'):
213
 
            ids = [ids]
214
 
        ps_product_obj = self.pool['prestashop.product.product']
215
 
        product_ids = ps_product_obj.search(cr, uid,
216
 
                                            [('backend_id', 'in', ids)],
217
 
                                            context=context)
218
 
        ps_product_obj.recompute_magento_qty(cr, uid, product_ids,
219
 
                                             context=context)
220
 
        return True
221
 
 
 
209
        self._scheduler_launch(cr, uid, self.update_product_stock_qty,
 
210
                               domain=domain, context=context)
 
211
 
 
212
    def _scheduler_import_sale_orders(self, cr, uid, domain=None, context=None):
 
213
        self._scheduler_launch(cr, uid, self.import_sale_orders, domain=domain,
 
214
                               context=context)
 
215
 
 
216
    def _scheduler_import_customers(self, cr, uid, domain=None, context=None):
 
217
        self._scheduler_launch(cr, uid, self.import_custmers_since,
 
218
                               domain=domain, context=context)
 
219
 
 
220
    def _scheduler_import_products(self, cr, uid, domain=None, context=None):
 
221
        self._scheduler_launch(cr, uid, self.import_products, domain=domain,
 
222
                               context=context)
 
223
 
 
224
    def _scheduler_import_carriers(self, cr, uid, domain=None, context=None):
 
225
        self._scheduler_launch(cr, uid, self.import_carriers, domain=domain,
 
226
                               context=context)
222
227
 
223
228
class prestashop_binding(orm.AbstractModel):
224
229
    _name = 'prestashop.binding'