Beispiel #1
0
 def get_product_detail(self, merchant_id, product_id):
     response = ProductResponse()
     try:
         is_valid = self.modelProductService.get_product_detail(
             merchant_id, product_id)
         if not is_valid:
             response.success = False
             response.message = '商品不存在'
         else:
             pass
     except Exception as e:
         response.success = False
         response.message = str(e)
     return response
Beispiel #2
0
 def update_price(self, merchant_id, product_id, nid, input_dict):
     response = ProductResponse()
     try:
         # 检查当前用户是否有权限为该商品增加规格
         is_valid = self.modelProductService.get_product_by_id(
             merchant_id, product_id)
         if not is_valid:
             response.success = False
             response.message = '无权更新规格'
         else:
             self.modelProductService.update_price(nid, input_dict)
     except Exception as e:
         response.success = False
         response.message = str(e)
     return response
Beispiel #3
0
 def fetch_price_detail(self, price_id):
     response = ProductResponse()
     try:
         result = self.modelProductService.fetch_price_detail(price_id)
         response.rows = result
     except Exception as e:
         response.success = False
         response.message = str(e)
     return response
Beispiel #4
0
 def get_price_by_product_id(self, merchant_id, product_id):
     response = ProductResponse()
     try:
         result = self.modelProductService.get_price_by_product_id(
             merchant_id, product_id)
         response.rows = result
     except Exception as e:
         response.success = False
         response.message = str(e)
     return response
Beispiel #5
0
    def create_puv(self, product_id, ip):
        response = ProductResponse()
        try:
            has_exist = self.modelProductService.exist_product_by_pid(
                product_id)
            if not has_exist:
                response.success = False
                response.message = '商品ID不存在'
            else:
                current_date = time.strftime('%Y-%m-%d')
                current_timestamp = time.mktime(
                    datetime.datetime.strptime(current_date,
                                               "%Y-%m-%d").timetuple()) * 1000

                self.modelProductService.create_product_puv(
                    product_id, ip, current_date, current_timestamp)
        except Exception as e:
            response.success = False
            response.message = str(e)
        return response
Beispiel #6
0
 def get_page_by_merchant_id(self, merchant_id, start, row):
     response = ProductResponse()
     try:
         count = self.modelProductService.get_count_by_merchant_id(
             merchant_id)
         result = self.modelProductService.get_page_by_merchant_id(
             merchant_id, start, row)
         response.rows = {'count': count, 'result': result}
     except Exception as e:
         response.success = False
         response.message = str(e)
     return response
Beispiel #7
0
 def get_upv(self, merchant_id, product_id):
     response = ProductResponse()
     try:
         is_valid = self.modelProductService.get_product_by_id(
             merchant_id, product_id)
         if not is_valid:
             response.message = '无权获取PUV'
             response.success = False
         else:
             pv = self.modelProductService.get_product_pv(product_id)
             uv = self.modelProductService.get_product_uv(product_id)
             response.rows = [{
                 'name': 'pv',
                 'data': pv
             }, {
                 'name': 'uv',
                 'data': uv
             }]
     except Exception as e:
         response.success = False
         response.message = str(e)
     return response
Beispiel #8
0
 def create_product(self, merchant_id, input_dict):
     response = ProductResponse()
     try:
         product_dict = {
             'merchant_id': merchant_id,
             'title': input_dict['title'],
             'img': input_dict['img'],
             'category_id': 1,
             'ctime': time.strftime('%Y-%m-%d')
         }
         detail_list = json.loads(input_dict['detail_list'])
         img_list = json.loads(input_dict['img_list'])
         self.modelProductService.create_product(product_dict, detail_list,
                                                 img_list)
     except Exception as e:
         response.success = False
         response.message = str(e)
     return response
Beispiel #9
0
    def fetch_product_detail(self, product_id, price_id):
        response = ProductResponse()
        try:
            product_detail = self.modelProductService.fetch_product_and_merchant(
                product_id)
            price_detail = self.modelProductService.fetch_price_detail(
                price_id)
            price_list = self.modelProductService.fetch_price_list(product_id)

            image_list = self.modelProductService.fetch_image_list(product_id)
            detail_list = self.modelProductService.fetch_detail_list(
                product_id)
            comment_list = self.modelProductService.fetch_comment_list(
                product_id)

            fine = self.modelProductService.fetch_comment_count(product_id, 1)
            no_fine = self.modelProductService.fetch_comment_count(
                product_id, 2)

            response.rows = {
                'product_detail': product_detail,
                'price_detail': price_detail,
                'price_list': price_list,
                'image_list': image_list,
                'detail_list': detail_list,
                'comment_list': comment_list,
                'comment_count': {
                    'fine':
                    fine,
                    'fine_percent':
                    fine / (fine + no_fine) * 100 if fine else 0,
                    'no_fine':
                    no_fine,
                    'no_fine_percent':
                    no_fine / (fine + no_fine) * 100 if no_fine else 0,
                    'total':
                    fine + no_fine
                }
            }
        except Exception as e:
            response.success = False
            response.message = str(e)
        return response
Beispiel #10
0
    def fetch_index_product(self):
        response = ProductResponse()
        try:
            super_new_list = self.modelProductService.fetch_super_new_product()
            super_excellent_list = self.modelProductService.fetch_super_excellent_product(
            )

            a = self.modelProductService.fetch_limit_price_and_product('家具城')
            b = self.modelProductService.fetch_limit_price_and_product('建材城')
            c = self.modelProductService.fetch_limit_price_and_product('家具家装')
            response.rows = {
                'super_new_list': super_new_list,
                'super_excellent_list': super_excellent_list,
                'furniture': a,
                'building_materials': b,
                'decoration': c
            }
        except Exception as e:
            response.success = False
            response.message = str(e)
        return response