feat: 新增JoyHub模块测试用例和功能增强
1. 新增模块测试用例: - News分类接口测试 (Joyhub_NewsCate.py) - News内容接口测试 (Joyhub_News.py) - 产品分类接口测试 (Joyhub_ProductCate.py) - 产品属性接口测试 (Joyhub_ProductAttr.py) - 产品管理接口测试 (Joyhub_Product.py) - FAQ分类接口测试 (Joyhub_FaqCate.py) - FAQ内容接口测试 (Joyhub_Faq.py) - 博客分类接口测试 (Joyhub_BlogCate.py) - 地址国家接口测试 (Joyhub_AddressCountry.py) - 下载二维码接口测试 (Joyhub_DownloadQrcode.py) - 支付页产品推荐接口测试 (Joyhub_ProductPaymentRecommend.py) 2. 新增业务关键字层: - NewsCateManage.py - NewsManage.py - ProductCateManage.py - ProductAttrManage.py - ProductManage.py - FaqCateManage.py - FaqManage.py - BlogCateManage.py - AddressCountryManage.py - DownloadQrcodeManage.py - ProductPaymentRecommendManage.py 3. 接口层增强: - Dlizhan_interface.py 添加JoyHub相关接口封装 4. 功能增强: - run_tests.py 添加自动清除旧测试结果和报告功能 - Joyhub_Product.py 添加数据库连接获取运费模板ID和品牌ID 5. 修复: - 修复产品创建测试用例缺少前置数据问题
This commit is contained in:
160
dulizhan/library/BusinessKw/JoyHub/AddressCountryManage.py
Normal file
160
dulizhan/library/BusinessKw/JoyHub/AddressCountryManage.py
Normal file
@@ -0,0 +1,160 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
国家信息管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class AddressCountryManage(DlzhanInterface):
|
||||
"""国家信息管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("创建国家信息")
|
||||
def kw_joyhub_address_country_create_post(self, country_code, country_name, country_name_en, phone_code,
|
||||
lingxing_country_code=None, paypal_country_code=None, status=1, id=0):
|
||||
"""
|
||||
创建国家信息业务关键字
|
||||
:param id: 主键,新增为0
|
||||
:param country_code: 国家代码(如 CN/US)
|
||||
:param country_name: 国家名称
|
||||
:param country_name_en: 国家英文名称
|
||||
:param phone_code: 电话区号
|
||||
:param lingxing_country_code: 领星国家代码(可选)
|
||||
:param paypal_country_code: paypal国家代码(可选)
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建国家信息 - country_code: {country_code}, country_name: {country_name}, status: {status}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"countryCode": country_code,
|
||||
"countryName": country_name,
|
||||
"countryNameEn": country_name_en,
|
||||
"phoneCode": phone_code,
|
||||
"status": status
|
||||
}
|
||||
|
||||
if lingxing_country_code:
|
||||
params["lingxingCountryCode"] = lingxing_country_code
|
||||
if paypal_country_code:
|
||||
params["paypalCountryCode"] = paypal_country_code
|
||||
|
||||
resp = self.kw_in_joyhub_address_country_create_post(**params)
|
||||
obj_log.info(f"创建国家信息响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除国家信息")
|
||||
def kw_joyhub_address_country_delete_delete(self, country_id):
|
||||
"""
|
||||
删除国家信息业务关键字
|
||||
:param country_id: 国家信息ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除国家信息 - country_id: {country_id}")
|
||||
resp = self.kw_in_joyhub_address_country_delete_delete(country_id)
|
||||
obj_log.info(f"删除国家信息响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量删除国家信息")
|
||||
def kw_joyhub_address_country_delete_list_delete(self, country_ids):
|
||||
"""
|
||||
批量删除国家信息业务关键字
|
||||
:param country_ids: 国家信息ID列表
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量删除国家信息 - country_ids: {country_ids}")
|
||||
resp = self.kw_in_joyhub_address_country_delete_list_delete(country_ids)
|
||||
obj_log.info(f"批量删除国家信息响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得国家信息详情")
|
||||
def kw_joyhub_address_country_get_get(self, country_id):
|
||||
"""
|
||||
获得国家信息详情业务关键字
|
||||
:param country_id: 国家信息ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得国家信息详情 - country_id: {country_id}")
|
||||
resp = self.kw_in_joyhub_address_country_get_get(country_id)
|
||||
obj_log.info(f"获得国家信息详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得国家信息分页")
|
||||
def kw_joyhub_address_country_page_get(self, page_num=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得国家信息分页业务关键字
|
||||
:param page_num: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得国家信息分页 - page_num: {page_num}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"page": page_num,
|
||||
"size": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_address_country_page_get(**params)
|
||||
obj_log.info(f"获得国家信息分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新国家信息")
|
||||
def kw_joyhub_address_country_update_put(self, country_id, country_code, country_name, country_name_en, phone_code,
|
||||
lingxing_country_code=None, paypal_country_code=None, status=1):
|
||||
"""
|
||||
更新国家信息业务关键字
|
||||
:param country_id: 国家信息ID
|
||||
:param country_code: 国家代码
|
||||
:param country_name: 国家名称
|
||||
:param country_name_en: 国家英文名称
|
||||
:param phone_code: 电话区号
|
||||
:param lingxing_country_code: 领星国家代码(可选)
|
||||
:param paypal_country_code: paypal国家代码(可选)
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新国家信息 - country_id: {country_id}, country_code: {country_code}, country_name: {country_name}")
|
||||
|
||||
params = {
|
||||
"id": country_id,
|
||||
"countryCode": country_code,
|
||||
"countryName": country_name,
|
||||
"countryNameEn": country_name_en,
|
||||
"phoneCode": phone_code,
|
||||
"status": status
|
||||
}
|
||||
|
||||
if lingxing_country_code:
|
||||
params["lingxingCountryCode"] = lingxing_country_code
|
||||
if paypal_country_code:
|
||||
params["paypalCountryCode"] = paypal_country_code
|
||||
|
||||
resp = self.kw_in_joyhub_address_country_update_put(**params)
|
||||
obj_log.info(f"更新国家信息响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量更新国家信息状态")
|
||||
def kw_joyhub_address_country_update_status_list_put(self, country_ids, status):
|
||||
"""
|
||||
批量更新国家信息状态业务关键字
|
||||
:param country_ids: 国家信息ID列表
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量更新国家信息状态 - country_ids: {country_ids}, status: {status}")
|
||||
|
||||
# 接口参数通过query传递,ids需要用逗号分隔
|
||||
ids_str = ','.join(map(str, country_ids))
|
||||
resp = self.kw_in_joyhub_address_country_update_status_list_put(ids=ids_str, status=status)
|
||||
obj_log.info(f"批量更新国家信息状态响应: {resp}")
|
||||
return resp
|
||||
130
dulizhan/library/BusinessKw/JoyHub/BlogCateManage.py
Normal file
130
dulizhan/library/BusinessKw/JoyHub/BlogCateManage.py
Normal file
@@ -0,0 +1,130 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
blog分类管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class BlogCateManage(DlzhanInterface):
|
||||
"""blog分类管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("创建blog分类")
|
||||
def kw_joyhub_blog_cate_create_post(self, name, id=0, status=1, rank_num=None, route=None, cover_image=None):
|
||||
"""
|
||||
创建blog分类业务关键字
|
||||
:param id: 主键,新增为0
|
||||
:param name: 分类名称
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序(可选)
|
||||
:param route: 路由(可选)
|
||||
:param cover_image: 封面图对象,格式: {"url": "xxx", "name": None, "alt": ""}(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建blog分类 - name: {name}, status: {status}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"name": name,
|
||||
"status": status
|
||||
}
|
||||
|
||||
if rank_num is not None:
|
||||
params["rankNum"] = rank_num
|
||||
if route is not None:
|
||||
params["route"] = route
|
||||
if cover_image is not None:
|
||||
if isinstance(cover_image, str):
|
||||
params["coverImage"] = {"url": cover_image, "name": None, "alt": ""}
|
||||
else:
|
||||
params["coverImage"] = cover_image
|
||||
|
||||
resp = self.kw_in_joyhub_blog_cate_create_post(**params)
|
||||
obj_log.info(f"创建blog分类响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除blog分类")
|
||||
def kw_joyhub_blog_cate_delete_delete(self, cate_id):
|
||||
"""
|
||||
删除blog分类业务关键字
|
||||
:param cate_id: blog分类ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除blog分类 - cate_id: {cate_id}")
|
||||
resp = self.kw_in_joyhub_blog_cate_delete_delete(cate_id)
|
||||
obj_log.info(f"删除blog分类响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得blog分类详情")
|
||||
def kw_joyhub_blog_cate_get_get(self, cate_id):
|
||||
"""
|
||||
获得blog分类详情业务关键字
|
||||
:param cate_id: blog分类ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得blog分类详情 - cate_id: {cate_id}")
|
||||
resp = self.kw_in_joyhub_blog_cate_get_get(cate_id)
|
||||
obj_log.info(f"获得blog分类详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得blog分类分页")
|
||||
def kw_joyhub_blog_cate_page_get(self, page_num=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得blog分类分页业务关键字
|
||||
:param page_num: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得blog分类分页 - page_num: {page_num}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"page": page_num,
|
||||
"size": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_blog_cate_page_get(**params)
|
||||
obj_log.info(f"获得blog分类分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新blog分类")
|
||||
def kw_joyhub_blog_cate_update_put(self, cate_id, name, status=1, rank_num=None, route=None, cover_image=None):
|
||||
"""
|
||||
更新blog分类业务关键字
|
||||
:param cate_id: blog分类ID
|
||||
:param name: 分类名称
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序(可选)
|
||||
:param route: 路由(可选)
|
||||
:param cover_image: 封面图对象,格式: {"url": "xxx", "name": None, "alt": ""}(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新blog分类 - cate_id: {cate_id}, name: {name}, status: {status}")
|
||||
|
||||
params = {
|
||||
"id": cate_id,
|
||||
"name": name,
|
||||
"status": status
|
||||
}
|
||||
|
||||
if rank_num is not None:
|
||||
params["rankNum"] = rank_num
|
||||
if route is not None:
|
||||
params["route"] = route
|
||||
if cover_image is not None:
|
||||
if isinstance(cover_image, str):
|
||||
params["coverImage"] = {"url": cover_image, "name": None, "alt": ""}
|
||||
else:
|
||||
params["coverImage"] = cover_image
|
||||
|
||||
resp = self.kw_in_joyhub_blog_cate_update_put(**params)
|
||||
obj_log.info(f"更新blog分类响应: {resp}")
|
||||
return resp
|
||||
125
dulizhan/library/BusinessKw/JoyHub/DownloadQrcodeManage.py
Normal file
125
dulizhan/library/BusinessKw/JoyHub/DownloadQrcodeManage.py
Normal file
@@ -0,0 +1,125 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
二维码管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class DownloadQrcodeManage(DlzhanInterface):
|
||||
"""二维码管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("创建二维码")
|
||||
def kw_joyhub_download_qrcode_create_post(self, title, id=0, status=1):
|
||||
"""
|
||||
创建二维码业务关键字
|
||||
:param id: 主键,新增为0
|
||||
:param title: 标题
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建二维码 - title: {title}, status: {status}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"title": title,
|
||||
"status": status
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_download_qrcode_create_post(**params)
|
||||
obj_log.info(f"创建二维码响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("获得二维码详情")
|
||||
def kw_joyhub_download_qrcode_get_get(self, qrcode_id):
|
||||
"""
|
||||
获得二维码详情业务关键字
|
||||
:param qrcode_id: 二维码ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得二维码详情 - qrcode_id: {qrcode_id}")
|
||||
resp = self.kw_in_joyhub_download_qrcode_get_get(qrcode_id)
|
||||
obj_log.info(f"获得二维码详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得二维码分页")
|
||||
def kw_joyhub_download_qrcode_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得二维码分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得二维码分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_download_qrcode_page_get(**params)
|
||||
obj_log.info(f"获得二维码分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新二维码")
|
||||
def kw_joyhub_download_qrcode_update_put(self, qrcode_id, title, status=1):
|
||||
"""
|
||||
更新二维码业务关键字
|
||||
:param qrcode_id: 二维码ID
|
||||
:param title: 标题
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新二维码 - qrcode_id: {qrcode_id}, title: {title}, status: {status}")
|
||||
|
||||
params = {
|
||||
"id": qrcode_id,
|
||||
"title": title,
|
||||
"status": status
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_download_qrcode_update_put(**params)
|
||||
obj_log.info(f"更新二维码响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
def clean_test_data_from_db(self, title):
|
||||
"""
|
||||
从数据库表jh_download_qrcode中删除测试数据
|
||||
:param title: 要删除的二维码标题
|
||||
:return: 删除是否成功
|
||||
"""
|
||||
obj_log.info(f"从数据库删除测试数据 - title: {title}")
|
||||
try:
|
||||
import pymysql
|
||||
# 数据库连接配置(需要根据实际环境配置)
|
||||
connection = pymysql.connect(
|
||||
host='localhost',
|
||||
user='root',
|
||||
password='password',
|
||||
database='joyhub',
|
||||
charset='utf8mb4'
|
||||
)
|
||||
|
||||
with connection.cursor() as cursor:
|
||||
sql = "DELETE FROM jh_download_qrcode WHERE title LIKE %s"
|
||||
cursor.execute(sql, (f"%{title}%",))
|
||||
connection.commit()
|
||||
deleted_count = cursor.rowcount
|
||||
obj_log.info(f"成功删除 {deleted_count} 条测试数据")
|
||||
return True
|
||||
except Exception as e:
|
||||
obj_log.error(f"删除测试数据失败: {str(e)}")
|
||||
return False
|
||||
finally:
|
||||
if 'connection' in locals():
|
||||
connection.close()
|
||||
108
dulizhan/library/BusinessKw/JoyHub/FaqCateManage.py
Normal file
108
dulizhan/library/BusinessKw/JoyHub/FaqCateManage.py
Normal file
@@ -0,0 +1,108 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
FAQ分类管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class FaqCateManage(DlzhanInterface):
|
||||
"""FAQ分类管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("创建FAQ分类")
|
||||
def kw_joyhub_faq_cate_create_post(self, title, lang, rank_num, pid=0, status=1, id=0):
|
||||
"""
|
||||
创建FAQ分类业务关键字
|
||||
:param id: 主键,新增为0
|
||||
:param pid: 父分类ID,默认为0(顶级分类)
|
||||
:param title: 分类名称
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:param lang: 语言 (en 英语 de 德语 ja 日语)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建FAQ分类 - title: {title}, lang: {lang}, pid: {pid}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"pid": pid,
|
||||
"title": title,
|
||||
"status": status,
|
||||
"rankNum": rank_num,
|
||||
"lang": lang
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_faq_cate_create_post(**params)
|
||||
obj_log.info(f"创建FAQ分类响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除FAQ分类")
|
||||
def kw_joyhub_faq_cate_delete_delete(self, faq_cate_id):
|
||||
"""
|
||||
删除FAQ分类业务关键字
|
||||
:param faq_cate_id: FAQ分类ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除FAQ分类 - faq_cate_id: {faq_cate_id}")
|
||||
resp = self.kw_in_joyhub_faq_cate_delete_delete(faq_cate_id)
|
||||
obj_log.info(f"删除FAQ分类响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得FAQ分类详情")
|
||||
def kw_joyhub_faq_cate_get_get(self, faq_cate_id):
|
||||
"""
|
||||
获得FAQ分类详情业务关键字
|
||||
:param faq_cate_id: FAQ分类ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得FAQ分类详情 - faq_cate_id: {faq_cate_id}")
|
||||
resp = self.kw_in_joyhub_faq_cate_get_get(faq_cate_id)
|
||||
obj_log.info(f"获得FAQ分类详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得FAQ分类列表")
|
||||
def kw_joyhub_faq_cate_list_get(self, **kwargs):
|
||||
"""
|
||||
获得FAQ分类列表业务关键字
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得FAQ分类列表 - kwargs: {kwargs}")
|
||||
resp = self.kw_in_joyhub_faq_cate_list_get(**kwargs)
|
||||
obj_log.info(f"获得FAQ分类列表响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新FAQ分类")
|
||||
def kw_joyhub_faq_cate_update_put(self, faq_cate_id, title, lang, rank_num, pid=0, status=1):
|
||||
"""
|
||||
更新FAQ分类业务关键字
|
||||
:param faq_cate_id: FAQ分类ID
|
||||
:param pid: 父分类ID
|
||||
:param title: 分类名称
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:param lang: 语言 (en 英语 de 德语 ja 日语)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新FAQ分类 - faq_cate_id: {faq_cate_id}, title: {title}, lang: {lang}")
|
||||
|
||||
params = {
|
||||
"id": faq_cate_id,
|
||||
"pid": pid,
|
||||
"title": title,
|
||||
"status": status,
|
||||
"rankNum": rank_num,
|
||||
"lang": lang
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_faq_cate_update_put(**params)
|
||||
obj_log.info(f"更新FAQ分类响应: {resp}")
|
||||
|
||||
return resp
|
||||
148
dulizhan/library/BusinessKw/JoyHub/FaqManage.py
Normal file
148
dulizhan/library/BusinessKw/JoyHub/FaqManage.py
Normal file
@@ -0,0 +1,148 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
FAQ数据管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class FaqManage(DlzhanInterface):
|
||||
"""FAQ数据管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("获得FAQ分类下拉列表")
|
||||
def kw_joyhub_faq_cate_list_get(self):
|
||||
"""
|
||||
获得FAQ分类下拉列表业务关键字
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info("获得FAQ分类下拉列表")
|
||||
resp = self.kw_in_joyhub_faq_cate_list_get()
|
||||
obj_log.info(f"获得FAQ分类下拉列表响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("创建FAQ数据")
|
||||
def kw_joyhub_faq_create_post(self, faq_cate_id, question, answer, rank_num, lang, is_hot=0, status=1, id=0):
|
||||
"""
|
||||
创建FAQ数据业务关键字
|
||||
:param id: 主键,新增为0
|
||||
:param faq_cate_id: 分类ID
|
||||
:param question: 常见问题
|
||||
:param answer: 回答
|
||||
:param is_hot: 是否热门(0否,1是)
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:param lang: 语言 (en 英语 de 德语 ja 日语)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建FAQ数据 - question: {question}, lang: {lang}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"faqCateId": faq_cate_id,
|
||||
"question": question,
|
||||
"answer": answer,
|
||||
"isHot": is_hot,
|
||||
"status": status,
|
||||
"rankNum": rank_num,
|
||||
"lang": lang
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_faq_create_post(**params)
|
||||
obj_log.info(f"创建FAQ数据响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除FAQ数据")
|
||||
def kw_joyhub_faq_delete_delete(self, faq_id):
|
||||
"""
|
||||
删除FAQ数据业务关键字
|
||||
:param faq_id: FAQ数据ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除FAQ数据 - faq_id: {faq_id}")
|
||||
resp = self.kw_in_joyhub_faq_delete_delete(faq_id)
|
||||
obj_log.info(f"删除FAQ数据响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量删除FAQ数据")
|
||||
def kw_joyhub_faq_delete_list_delete(self, ids):
|
||||
"""
|
||||
批量删除FAQ数据业务关键字
|
||||
:param ids: FAQ数据ID列表
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量删除FAQ数据 - ids: {ids}")
|
||||
resp = self.kw_in_joyhub_faq_delete_list_delete(ids)
|
||||
obj_log.info(f"批量删除FAQ数据响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得FAQ数据详情")
|
||||
def kw_joyhub_faq_get_get(self, faq_id):
|
||||
"""
|
||||
获得FAQ数据详情业务关键字
|
||||
:param faq_id: FAQ数据ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得FAQ数据详情 - faq_id: {faq_id}")
|
||||
resp = self.kw_in_joyhub_faq_get_get(faq_id)
|
||||
obj_log.info(f"获得FAQ数据详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得FAQ数据分页")
|
||||
def kw_joyhub_faq_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得FAQ数据分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得FAQ数据分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_faq_page_get(**params)
|
||||
obj_log.info(f"获得FAQ数据分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新FAQ数据")
|
||||
def kw_joyhub_faq_update_put(self, faq_id, faq_cate_id, question, answer, rank_num, lang, is_hot=0, status=1):
|
||||
"""
|
||||
更新FAQ数据业务关键字
|
||||
:param faq_id: FAQ数据ID
|
||||
:param faq_cate_id: 分类ID
|
||||
:param question: 常见问题
|
||||
:param answer: 回答
|
||||
:param is_hot: 是否热门(0否,1是)
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:param lang: 语言 (en 英语 de 德语 ja 日语)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新FAQ数据 - faq_id: {faq_id}, question: {question}, lang: {lang}")
|
||||
|
||||
params = {
|
||||
"id": faq_id,
|
||||
"faqCateId": faq_cate_id,
|
||||
"question": question,
|
||||
"answer": answer,
|
||||
"isHot": is_hot,
|
||||
"status": status,
|
||||
"rankNum": rank_num,
|
||||
"lang": lang
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_faq_update_put(**params)
|
||||
obj_log.info(f"更新FAQ数据响应: {resp}")
|
||||
|
||||
return resp
|
||||
167
dulizhan/library/BusinessKw/JoyHub/NewsCateManage.py
Normal file
167
dulizhan/library/BusinessKw/JoyHub/NewsCateManage.py
Normal file
@@ -0,0 +1,167 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
news分类管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class NewsCateManage(DlzhanInterface):
|
||||
"""news分类管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("创建news分类")
|
||||
def kw_joyhub_news_cate_create_post(self, name, id=0, status=1, rank_num=1, route=None, cover_image=None):
|
||||
"""
|
||||
创建news分类业务关键字
|
||||
:param id: 主键,新增为0
|
||||
:param name: 分类名称
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:param route: 路由(可选)
|
||||
:param cover_image: 缩略图(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建news分类 - name: {name}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"name": name,
|
||||
"status": status,
|
||||
"rankNum": rank_num
|
||||
}
|
||||
|
||||
if route is not None:
|
||||
params["route"] = route
|
||||
if cover_image is not None:
|
||||
params["coverImage"] = cover_image
|
||||
|
||||
resp = self.kw_in_joyhub_news_cate_create_post(**params)
|
||||
obj_log.info(f"创建news分类响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除news分类")
|
||||
def kw_joyhub_news_cate_delete_delete(self, news_cate_id):
|
||||
"""
|
||||
删除news分类业务关键字
|
||||
:param news_cate_id: news分类ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除news分类 - news_cate_id: {news_cate_id}")
|
||||
resp = self.kw_in_joyhub_news_cate_delete_delete(news_cate_id)
|
||||
obj_log.info(f"删除news分类响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量删除news分类")
|
||||
def kw_joyhub_news_cate_delete_list_delete(self, ids):
|
||||
"""
|
||||
批量删除news分类业务关键字
|
||||
:param ids: news分类ID列表
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量删除news分类 - ids: {ids}")
|
||||
resp = self.kw_in_joyhub_news_cate_delete_list_delete(ids)
|
||||
obj_log.info(f"批量删除news分类响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得news分类详情")
|
||||
def kw_joyhub_news_cate_get_get(self, news_cate_id):
|
||||
"""
|
||||
获得news分类详情业务关键字
|
||||
:param news_cate_id: news分类ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得news分类详情 - news_cate_id: {news_cate_id}")
|
||||
resp = self.kw_in_joyhub_news_cate_get_get(news_cate_id)
|
||||
obj_log.info(f"获得news分类详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得news分类分页")
|
||||
def kw_joyhub_news_cate_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得news分类分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得news分类分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_news_cate_page_get(**params)
|
||||
obj_log.info(f"获得news分类分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新news分类")
|
||||
def kw_joyhub_news_cate_update_put(self, news_cate_id, name, status=1, rank_num=1, route=None, cover_image=None):
|
||||
"""
|
||||
更新news分类业务关键字
|
||||
:param news_cate_id: news分类ID
|
||||
:param name: 分类名称
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:param route: 路由(可选)
|
||||
:param cover_image: 缩略图(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新news分类 - news_cate_id: {news_cate_id}, name: {name}")
|
||||
|
||||
params = {
|
||||
"id": news_cate_id,
|
||||
"name": name,
|
||||
"status": status,
|
||||
"rankNum": rank_num
|
||||
}
|
||||
|
||||
if route is not None:
|
||||
params["route"] = route
|
||||
if cover_image is not None:
|
||||
params["coverImage"] = cover_image
|
||||
|
||||
resp = self.kw_in_joyhub_news_cate_update_put(**params)
|
||||
obj_log.info(f"更新news分类响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
def clean_test_data_from_db(self, name):
|
||||
"""
|
||||
从数据库表jh_news_cate中删除测试数据
|
||||
:param name: 要删除的分类名称
|
||||
:return: 删除是否成功
|
||||
"""
|
||||
obj_log.info(f"从数据库删除测试数据 - name: {name}")
|
||||
try:
|
||||
import pymysql
|
||||
# 数据库连接配置(需要根据实际环境配置)
|
||||
connection = pymysql.connect(
|
||||
host='localhost',
|
||||
user='root',
|
||||
password='password',
|
||||
database='joyhub',
|
||||
charset='utf8mb4'
|
||||
)
|
||||
|
||||
with connection.cursor() as cursor:
|
||||
sql = "DELETE FROM jh_news_cate WHERE name LIKE %s"
|
||||
cursor.execute(sql, (f"%{name}%",))
|
||||
connection.commit()
|
||||
deleted_count = cursor.rowcount
|
||||
obj_log.info(f"成功删除 {deleted_count} 条测试数据")
|
||||
return True
|
||||
except Exception as e:
|
||||
obj_log.error(f"删除测试数据失败: {str(e)}")
|
||||
return False
|
||||
finally:
|
||||
if 'connection' in locals():
|
||||
connection.close()
|
||||
187
dulizhan/library/BusinessKw/JoyHub/NewsManage.py
Normal file
187
dulizhan/library/BusinessKw/JoyHub/NewsManage.py
Normal file
@@ -0,0 +1,187 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
news管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class NewsManage(DlzhanInterface):
|
||||
"""news管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("创建news管理")
|
||||
def kw_joyhub_news_create_post(self, title, cover_image, content, id=0, status=1, rank_num=1,
|
||||
seo_title=None, seo_keyword=None, seo_description=None,
|
||||
likes_num=0, cate_ids=None, route=None, publish_time=None):
|
||||
"""
|
||||
创建news管理业务关键字
|
||||
:param id: 主键,新增为0
|
||||
:param title: 标题
|
||||
:param cover_image: 缩略图
|
||||
:param content: PC页面内容
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:param seo_title: SEO标题(可选)
|
||||
:param seo_keyword: SEO关键词(可选)
|
||||
:param seo_description: SEO描述(可选)
|
||||
:param likes_num: 点赞数(可选)
|
||||
:param cate_ids: news分类ID列表(可选)
|
||||
:param route: 路由(可选)
|
||||
:param publish_time: 发布时间(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建news管理 - title: {title}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"title": title,
|
||||
"coverImage": cover_image,
|
||||
"content": content,
|
||||
"status": status,
|
||||
"rankNum": rank_num,
|
||||
"likesNum": likes_num
|
||||
}
|
||||
|
||||
if seo_title is not None:
|
||||
params["seoTitle"] = seo_title
|
||||
if seo_keyword is not None:
|
||||
params["seoKeyword"] = seo_keyword
|
||||
if seo_description is not None:
|
||||
params["seoDescription"] = seo_description
|
||||
if cate_ids is not None:
|
||||
params["cateIds"] = cate_ids
|
||||
if route is not None:
|
||||
params["route"] = route
|
||||
if publish_time is not None:
|
||||
params["publishTime"] = publish_time
|
||||
|
||||
resp = self.kw_in_joyhub_news_create_post(**params)
|
||||
obj_log.info(f"创建news管理响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除news管理")
|
||||
def kw_joyhub_news_delete_delete(self, news_id):
|
||||
"""
|
||||
删除news管理业务关键字
|
||||
:param news_id: news管理ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除news管理 - news_id: {news_id}")
|
||||
resp = self.kw_in_joyhub_news_delete_delete(news_id)
|
||||
obj_log.info(f"删除news管理响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量删除news管理")
|
||||
def kw_joyhub_news_delete_list_delete(self, ids):
|
||||
"""
|
||||
批量删除news管理业务关键字
|
||||
:param ids: news管理ID列表
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量删除news管理 - ids: {ids}")
|
||||
resp = self.kw_in_joyhub_news_delete_list_delete(ids)
|
||||
obj_log.info(f"批量删除news管理响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得news管理详情")
|
||||
def kw_joyhub_news_get_get(self, news_id):
|
||||
"""
|
||||
获得news管理详情业务关键字
|
||||
:param news_id: news管理ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得news管理详情 - news_id: {news_id}")
|
||||
resp = self.kw_in_joyhub_news_get_get(news_id)
|
||||
obj_log.info(f"获得news管理详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得news分类关联列表")
|
||||
def kw_joyhub_news_cate_relation_list_get(self, news_id):
|
||||
"""
|
||||
获得news分类关联列表业务关键字
|
||||
:param news_id: news管理ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得news分类关联列表 - news_id: {news_id}")
|
||||
resp = self.kw_in_joyhub_news_cate_relation_list_get(news_id)
|
||||
obj_log.info(f"获得news分类关联列表响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得news管理分页")
|
||||
def kw_joyhub_news_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得news管理分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得news管理分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_news_page_get(**params)
|
||||
obj_log.info(f"获得news管理分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新news管理")
|
||||
def kw_joyhub_news_update_put(self, news_id, title, cover_image, content, status=1, rank_num=1,
|
||||
seo_title=None, seo_keyword=None, seo_description=None,
|
||||
likes_num=0, cate_ids=None, route=None, publish_time=None):
|
||||
"""
|
||||
更新news管理业务关键字
|
||||
:param news_id: news管理ID
|
||||
:param title: 标题
|
||||
:param cover_image: 缩略图
|
||||
:param content: PC页面内容
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:param seo_title: SEO标题(可选)
|
||||
:param seo_keyword: SEO关键词(可选)
|
||||
:param seo_description: SEO描述(可选)
|
||||
:param likes_num: 点赞数(可选)
|
||||
:param cate_ids: news分类ID列表(可选)
|
||||
:param route: 路由(可选)
|
||||
:param publish_time: 发布时间(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新news管理 - news_id: {news_id}, title: {title}")
|
||||
|
||||
params = {
|
||||
"id": news_id,
|
||||
"title": title,
|
||||
"coverImage": cover_image,
|
||||
"content": content,
|
||||
"status": status,
|
||||
"rankNum": rank_num,
|
||||
"likesNum": likes_num
|
||||
}
|
||||
|
||||
if seo_title is not None:
|
||||
params["seoTitle"] = seo_title
|
||||
if seo_keyword is not None:
|
||||
params["seoKeyword"] = seo_keyword
|
||||
if seo_description is not None:
|
||||
params["seoDescription"] = seo_description
|
||||
if cate_ids is not None:
|
||||
params["cateIds"] = cate_ids
|
||||
if route is not None:
|
||||
params["route"] = route
|
||||
if publish_time is not None:
|
||||
params["publishTime"] = publish_time
|
||||
|
||||
resp = self.kw_in_joyhub_news_update_put(**params)
|
||||
obj_log.info(f"更新news管理响应: {resp}")
|
||||
|
||||
return resp
|
||||
268
dulizhan/library/BusinessKw/JoyHub/ProductAttrManage.py
Normal file
268
dulizhan/library/BusinessKw/JoyHub/ProductAttrManage.py
Normal file
@@ -0,0 +1,268 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
产品属性+产品属性值管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class ProductAttrManage(DlzhanInterface):
|
||||
"""产品属性+产品属性值管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
# ============ 产品属性管理方法 ============
|
||||
|
||||
@allure.step("创建产品属性")
|
||||
def kw_joyhub_product_attr_type_create_post(self, name, type=2, id=0, status=1, remark=None, rank_num=None):
|
||||
"""
|
||||
创建产品属性业务关键字
|
||||
:param id: 主键,新增为0
|
||||
:param type: 属性类型:1-颜色属性(有色卡),2-普通属性
|
||||
:param name: 属性名称
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param remark: 备注(可选)
|
||||
:param rank_num: 排序号(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建产品属性 - name: {name}, type: {type}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"type": type,
|
||||
"name": name,
|
||||
"status": status
|
||||
}
|
||||
|
||||
if remark is not None:
|
||||
params["remark"] = remark
|
||||
if rank_num is not None:
|
||||
params["rankNum"] = rank_num
|
||||
|
||||
resp = self.kw_in_joyhub_product_attr_type_create_post(**params)
|
||||
obj_log.info(f"创建产品属性响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除产品属性")
|
||||
def kw_joyhub_product_attr_type_delete_delete(self, product_attr_type_id):
|
||||
"""
|
||||
删除产品属性业务关键字
|
||||
:param product_attr_type_id: 产品属性ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除产品属性 - product_attr_type_id: {product_attr_type_id}")
|
||||
resp = self.kw_in_joyhub_product_attr_type_delete_delete(product_attr_type_id)
|
||||
obj_log.info(f"删除产品属性响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量删除产品属性")
|
||||
def kw_joyhub_product_attr_type_delete_list_delete(self, ids):
|
||||
"""
|
||||
批量删除产品属性业务关键字
|
||||
:param ids: 产品属性ID列表
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量删除产品属性 - ids: {ids}")
|
||||
resp = self.kw_in_joyhub_product_attr_type_delete_list_delete(ids)
|
||||
obj_log.info(f"批量删除产品属性响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品属性详情")
|
||||
def kw_joyhub_product_attr_type_get_get(self, product_attr_type_id):
|
||||
"""
|
||||
获得产品属性详情业务关键字
|
||||
:param product_attr_type_id: 产品属性ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品属性详情 - product_attr_type_id: {product_attr_type_id}")
|
||||
resp = self.kw_in_joyhub_product_attr_type_get_get(product_attr_type_id)
|
||||
obj_log.info(f"获得产品属性详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品属性分页")
|
||||
def kw_joyhub_product_attr_type_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得产品属性分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品属性分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_product_attr_type_page_get(**params)
|
||||
obj_log.info(f"获得产品属性分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新产品属性")
|
||||
def kw_joyhub_product_attr_type_update_put(self, product_attr_type_id, name, type=2, status=1, remark=None, rank_num=None):
|
||||
"""
|
||||
更新产品属性业务关键字
|
||||
:param product_attr_type_id: 产品属性ID
|
||||
:param name: 属性名称
|
||||
:param type: 属性类型:1-颜色属性(有色卡),2-普通属性
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param remark: 备注(可选)
|
||||
:param rank_num: 排序号(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新产品属性 - product_attr_type_id: {product_attr_type_id}, name: {name}")
|
||||
|
||||
params = {
|
||||
"id": product_attr_type_id,
|
||||
"type": type,
|
||||
"name": name,
|
||||
"status": status
|
||||
}
|
||||
|
||||
if remark is not None:
|
||||
params["remark"] = remark
|
||||
if rank_num is not None:
|
||||
params["rankNum"] = rank_num
|
||||
|
||||
resp = self.kw_in_joyhub_product_attr_type_update_put(**params)
|
||||
obj_log.info(f"更新产品属性响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("修改产品属性状态")
|
||||
def kw_joyhub_product_attr_type_change_status_put(self, product_attr_type_id, status):
|
||||
"""
|
||||
修改产品属性状态业务关键字
|
||||
:param product_attr_type_id: 产品属性ID
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"修改产品属性状态 - product_attr_type_id: {product_attr_type_id}, status: {status}")
|
||||
|
||||
params = {
|
||||
"id": product_attr_type_id,
|
||||
"status": status
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_product_attr_type_change_status_put(**params)
|
||||
obj_log.info(f"修改产品属性状态响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
# ============ 产品属性值管理方法 ============
|
||||
|
||||
@allure.step("创建产品属性值")
|
||||
def kw_joyhub_product_attr_data_create_post(self, product_attr_type_id, attr_value, id=0, color=None):
|
||||
"""
|
||||
创建产品属性值业务关键字
|
||||
:param id: 主键ID,新增为0
|
||||
:param product_attr_type_id: 关联产品属性表的主键ID
|
||||
:param attr_value: 属性值名称
|
||||
:param color: 色卡(可选,颜色属性类型时使用)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建产品属性值 - product_attr_type_id: {product_attr_type_id}, attr_value: {attr_value}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"productAttrTypeId": product_attr_type_id,
|
||||
"attrValue": attr_value
|
||||
}
|
||||
|
||||
if color is not None:
|
||||
params["color"] = color
|
||||
|
||||
resp = self.kw_in_joyhub_product_attr_data_create_post(**params)
|
||||
obj_log.info(f"创建产品属性值响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除产品属性值")
|
||||
def kw_joyhub_product_attr_data_delete_delete(self, product_attr_data_id):
|
||||
"""
|
||||
删除产品属性值业务关键字
|
||||
:param product_attr_data_id: 产品属性值ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除产品属性值 - product_attr_data_id: {product_attr_data_id}")
|
||||
resp = self.kw_in_joyhub_product_attr_data_delete_delete(product_attr_data_id)
|
||||
obj_log.info(f"删除产品属性值响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量删除产品属性值")
|
||||
def kw_joyhub_product_attr_data_delete_list_delete(self, ids):
|
||||
"""
|
||||
批量删除产品属性值业务关键字
|
||||
:param ids: 产品属性值ID列表
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量删除产品属性值 - ids: {ids}")
|
||||
resp = self.kw_in_joyhub_product_attr_data_delete_list_delete(ids)
|
||||
obj_log.info(f"批量删除产品属性值响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品属性值详情")
|
||||
def kw_joyhub_product_attr_data_get_get(self, product_attr_data_id):
|
||||
"""
|
||||
获得产品属性值详情业务关键字
|
||||
:param product_attr_data_id: 产品属性值ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品属性值详情 - product_attr_data_id: {product_attr_data_id}")
|
||||
resp = self.kw_in_joyhub_product_attr_data_get_get(product_attr_data_id)
|
||||
obj_log.info(f"获得产品属性值详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品属性值分页")
|
||||
def kw_joyhub_product_attr_data_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得产品属性值分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品属性值分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_product_attr_data_page_get(**params)
|
||||
obj_log.info(f"获得产品属性值分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新产品属性值")
|
||||
def kw_joyhub_product_attr_data_update_put(self, product_attr_data_id, product_attr_type_id, attr_value, color=None):
|
||||
"""
|
||||
更新产品属性值业务关键字
|
||||
:param product_attr_data_id: 产品属性值ID
|
||||
:param product_attr_type_id: 关联产品属性表的主键ID
|
||||
:param attr_value: 属性值名称
|
||||
:param color: 色卡(可选,颜色属性类型时使用)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新产品属性值 - product_attr_data_id: {product_attr_data_id}, attr_value: {attr_value}")
|
||||
|
||||
params = {
|
||||
"id": product_attr_data_id,
|
||||
"productAttrTypeId": product_attr_type_id,
|
||||
"attrValue": attr_value
|
||||
}
|
||||
|
||||
if color is not None:
|
||||
params["color"] = color
|
||||
|
||||
resp = self.kw_in_joyhub_product_attr_data_update_put(**params)
|
||||
obj_log.info(f"更新产品属性值响应: {resp}")
|
||||
|
||||
return resp
|
||||
145
dulizhan/library/BusinessKw/JoyHub/ProductCateManage.py
Normal file
145
dulizhan/library/BusinessKw/JoyHub/ProductCateManage.py
Normal file
@@ -0,0 +1,145 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
产品分类管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class ProductCateManage(DlzhanInterface):
|
||||
"""产品分类管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("创建产品分类")
|
||||
def kw_joyhub_product_cate_create_post(self, cate_name, id=0, cate_type=1, status=1, rank_num=1):
|
||||
"""
|
||||
创建产品分类业务关键字
|
||||
:param id: 主键ID,新增为0
|
||||
:param cate_name: 产品分类名称
|
||||
:param cate_type: 类型(普通产品=1,积分产品=2)
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建产品分类 - cate_name: {cate_name}, cate_type: {cate_type}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"cateName": cate_name,
|
||||
"cateType": cate_type,
|
||||
"status": status,
|
||||
"rankNum": rank_num
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_product_cate_create_post(**params)
|
||||
obj_log.info(f"创建产品分类响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除产品分类")
|
||||
def kw_joyhub_product_cate_delete_delete(self, product_cate_id):
|
||||
"""
|
||||
删除产品分类业务关键字
|
||||
:param product_cate_id: 产品分类ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除产品分类 - product_cate_id: {product_cate_id}")
|
||||
resp = self.kw_in_joyhub_product_cate_delete_delete(product_cate_id)
|
||||
obj_log.info(f"删除产品分类响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量删除产品分类")
|
||||
def kw_joyhub_product_cate_delete_list_delete(self, ids):
|
||||
"""
|
||||
批量删除产品分类业务关键字
|
||||
:param ids: 产品分类ID列表
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量删除产品分类 - ids: {ids}")
|
||||
resp = self.kw_in_joyhub_product_cate_delete_list_delete(ids)
|
||||
obj_log.info(f"批量删除产品分类响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品分类详情")
|
||||
def kw_joyhub_product_cate_get_get(self, product_cate_id):
|
||||
"""
|
||||
获得产品分类详情业务关键字
|
||||
:param product_cate_id: 产品分类ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品分类详情 - product_cate_id: {product_cate_id}")
|
||||
resp = self.kw_in_joyhub_product_cate_get_get(product_cate_id)
|
||||
obj_log.info(f"获得产品分类详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品分类分页")
|
||||
def kw_joyhub_product_cate_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得产品分类分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品分类分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_product_cate_page_get(**params)
|
||||
obj_log.info(f"获得产品分类分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新产品分类")
|
||||
def kw_joyhub_product_cate_update_put(self, product_cate_id, cate_name, cate_type=1, status=1, rank_num=1):
|
||||
"""
|
||||
更新产品分类业务关键字
|
||||
:param product_cate_id: 产品分类ID
|
||||
:param cate_name: 产品分类名称
|
||||
:param cate_type: 类型(普通产品=1,积分产品=2)
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:param rank_num: 排序号
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新产品分类 - product_cate_id: {product_cate_id}, cate_name: {cate_name}")
|
||||
|
||||
params = {
|
||||
"id": product_cate_id,
|
||||
"cateName": cate_name,
|
||||
"cateType": cate_type,
|
||||
"status": status,
|
||||
"rankNum": rank_num
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_product_cate_update_put(**params)
|
||||
obj_log.info(f"更新产品分类响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("修改产品分类启用/停用状态")
|
||||
def kw_joyhub_product_cate_change_status_put(self, product_cate_id, status):
|
||||
"""
|
||||
修改产品分类启用/停用状态业务关键字
|
||||
:param product_cate_id: 产品分类ID
|
||||
:param status: 状态 (1正常 2停用)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"修改产品分类状态 - product_cate_id: {product_cate_id}, status: {status}")
|
||||
|
||||
params = {
|
||||
"id": product_cate_id,
|
||||
"status": status
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_product_cate_change_status_put(**params)
|
||||
obj_log.info(f"修改产品分类状态响应: {resp}")
|
||||
|
||||
return resp
|
||||
269
dulizhan/library/BusinessKw/JoyHub/ProductManage.py
Normal file
269
dulizhan/library/BusinessKw/JoyHub/ProductManage.py
Normal file
@@ -0,0 +1,269 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
产品管理业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class ProductManage(DlzhanInterface):
|
||||
"""产品管理业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("创建产品")
|
||||
def kw_joyhub_product_create_post(self, product_name, product_cate_id, shipping_template_id, route, intro,
|
||||
brand_id, product_attrs, product_skus, id=0, product_type=1,
|
||||
status=1, rank_num=None, seo_title=None, seo_keyword=None,
|
||||
seo_description=None, single_user_exchange_limit=None,
|
||||
single_product_exchange_limit=None, product_details=None):
|
||||
"""
|
||||
创建产品业务关键字
|
||||
:param id: 主键,新增为0
|
||||
:param product_type: 产品类型(普通产品=1,积分产品=2)
|
||||
:param product_name: 产品名称
|
||||
:param product_cate_id: 产品分类
|
||||
:param shipping_template_id: 运费模板ID
|
||||
:param route: 跳转路由
|
||||
:param intro: 产品简介
|
||||
:param brand_id: 品牌id
|
||||
:param status: 状态(1上架,2下架)
|
||||
:param rank_num: 序号(可选)
|
||||
:param seo_title: SEO标题(可选)
|
||||
:param seo_keyword: SEO关键词(可选)
|
||||
:param seo_description: SEO描述(可选)
|
||||
:param single_user_exchange_limit: 单用户兑换次数限制(可选)
|
||||
:param single_product_exchange_limit: 单次兑换数量限制(可选)
|
||||
:param product_attrs: 产品规格类型关联列表
|
||||
:param product_skus: 产品规格列表
|
||||
:param product_details: 产品详情列表(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建产品 - product_name: {product_name}, product_type: {product_type}")
|
||||
|
||||
params = {
|
||||
"id": id,
|
||||
"productType": product_type,
|
||||
"productName": product_name,
|
||||
"productCateId": product_cate_id,
|
||||
"shippingTemplateId": shipping_template_id,
|
||||
"route": route,
|
||||
"intro": intro,
|
||||
"brandId": brand_id,
|
||||
"status": status,
|
||||
"productAttrs": product_attrs,
|
||||
"productSkus": product_skus
|
||||
}
|
||||
|
||||
if rank_num is not None:
|
||||
params["rankNum"] = rank_num
|
||||
if seo_title is not None:
|
||||
params["seoTitle"] = seo_title
|
||||
if seo_keyword is not None:
|
||||
params["seoKeyword"] = seo_keyword
|
||||
if seo_description is not None:
|
||||
params["seoDescription"] = seo_description
|
||||
if single_user_exchange_limit is not None:
|
||||
params["singleUserExchangeLimit"] = single_user_exchange_limit
|
||||
if single_product_exchange_limit is not None:
|
||||
params["singleProductExchangeLimit"] = single_product_exchange_limit
|
||||
if product_details is not None:
|
||||
params["productDetails"] = product_details
|
||||
|
||||
resp = self.kw_in_joyhub_product_create_post(**params)
|
||||
obj_log.info(f"创建产品响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("删除产品")
|
||||
def kw_joyhub_product_delete_delete(self, product_id):
|
||||
"""
|
||||
删除产品业务关键字
|
||||
:param product_id: 产品ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除产品 - product_id: {product_id}")
|
||||
resp = self.kw_in_joyhub_product_delete_delete(product_id)
|
||||
obj_log.info(f"删除产品响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量删除产品")
|
||||
def kw_joyhub_product_delete_list_delete(self, ids):
|
||||
"""
|
||||
批量删除产品业务关键字
|
||||
:param ids: 产品ID列表
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量删除产品 - ids: {ids}")
|
||||
resp = self.kw_in_joyhub_product_delete_list_delete(ids)
|
||||
obj_log.info(f"批量删除产品响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品详情")
|
||||
def kw_joyhub_product_get_get(self, product_id):
|
||||
"""
|
||||
获得产品详情业务关键字
|
||||
:param product_id: 产品ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品详情 - product_id: {product_id}")
|
||||
resp = self.kw_in_joyhub_product_get_get(product_id)
|
||||
obj_log.info(f"获得产品详情响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品分页")
|
||||
def kw_joyhub_product_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得产品分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_product_page_get(**params)
|
||||
obj_log.info(f"获得产品分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品规格类型关联列表")
|
||||
def kw_joyhub_product_product_attr_list_by_product_id_get(self, product_id):
|
||||
"""
|
||||
获得产品规格类型关联列表业务关键字
|
||||
:param product_id: 产品ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品规格类型关联列表 - product_id: {product_id}")
|
||||
resp = self.kw_in_joyhub_product_product_attr_list_by_product_id_get(product_id)
|
||||
obj_log.info(f"获得产品规格类型关联列表响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品详情列表")
|
||||
def kw_joyhub_product_product_detail_list_by_product_id_get(self, product_id):
|
||||
"""
|
||||
获得产品详情列表业务关键字
|
||||
:param product_id: 产品ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品详情列表 - product_id: {product_id}")
|
||||
resp = self.kw_in_joyhub_product_product_detail_list_by_product_id_get(product_id)
|
||||
obj_log.info(f"获得产品详情列表响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品规格列表")
|
||||
def kw_joyhub_product_product_sku_list_by_product_id_get(self, product_id):
|
||||
"""
|
||||
获得产品规格列表业务关键字
|
||||
:param product_id: 产品ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品规格列表 - product_id: {product_id}")
|
||||
resp = self.kw_in_joyhub_product_product_sku_list_by_product_id_get(product_id)
|
||||
obj_log.info(f"获得产品规格列表响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得产品及规格列表-优惠券中使用")
|
||||
def kw_joyhub_product_product_sku_list_get(self, **kwargs):
|
||||
"""
|
||||
获得产品及规格列表-优惠券中使用业务关键字
|
||||
:param kwargs: 查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得产品及规格列表 - params: {kwargs}")
|
||||
resp = self.kw_in_joyhub_product_product_sku_list_get(**kwargs)
|
||||
obj_log.info(f"获得产品及规格列表响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("更新产品")
|
||||
def kw_joyhub_product_update_put(self, product_id, product_name, product_cate_id, shipping_template_id, route, intro,
|
||||
brand_id, product_attrs, product_skus, product_type=1,
|
||||
status=1, rank_num=None, seo_title=None, seo_keyword=None,
|
||||
seo_description=None, single_user_exchange_limit=None,
|
||||
single_product_exchange_limit=None, product_details=None):
|
||||
"""
|
||||
更新产品业务关键字
|
||||
:param product_id: 产品ID
|
||||
:param product_type: 产品类型(普通产品=1,积分产品=2)
|
||||
:param product_name: 产品名称
|
||||
:param product_cate_id: 产品分类
|
||||
:param shipping_template_id: 运费模板ID
|
||||
:param route: 跳转路由
|
||||
:param intro: 产品简介
|
||||
:param brand_id: 品牌id
|
||||
:param status: 状态(1上架,2下架)
|
||||
:param rank_num: 序号(可选)
|
||||
:param seo_title: SEO标题(可选)
|
||||
:param seo_keyword: SEO关键词(可选)
|
||||
:param seo_description: SEO描述(可选)
|
||||
:param single_user_exchange_limit: 单用户兑换次数限制(可选)
|
||||
:param single_product_exchange_limit: 单次兑换数量限制(可选)
|
||||
:param product_attrs: 产品规格类型关联列表
|
||||
:param product_skus: 产品规格列表
|
||||
:param product_details: 产品详情列表(可选)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"更新产品 - product_id: {product_id}, product_name: {product_name}")
|
||||
|
||||
params = {
|
||||
"id": product_id,
|
||||
"productType": product_type,
|
||||
"productName": product_name,
|
||||
"productCateId": product_cate_id,
|
||||
"shippingTemplateId": shipping_template_id,
|
||||
"route": route,
|
||||
"intro": intro,
|
||||
"brandId": brand_id,
|
||||
"status": status,
|
||||
"productAttrs": product_attrs,
|
||||
"productSkus": product_skus
|
||||
}
|
||||
|
||||
if rank_num is not None:
|
||||
params["rankNum"] = rank_num
|
||||
if seo_title is not None:
|
||||
params["seoTitle"] = seo_title
|
||||
if seo_keyword is not None:
|
||||
params["seoKeyword"] = seo_keyword
|
||||
if seo_description is not None:
|
||||
params["seoDescription"] = seo_description
|
||||
if single_user_exchange_limit is not None:
|
||||
params["singleUserExchangeLimit"] = single_user_exchange_limit
|
||||
if single_product_exchange_limit is not None:
|
||||
params["singleProductExchangeLimit"] = single_product_exchange_limit
|
||||
if product_details is not None:
|
||||
params["productDetails"] = product_details
|
||||
|
||||
resp = self.kw_in_joyhub_product_update_put(**params)
|
||||
obj_log.info(f"更新产品响应: {resp}")
|
||||
|
||||
return resp
|
||||
|
||||
@allure.step("批量上下架产品")
|
||||
def kw_joyhub_product_change_status_put(self, ids, status):
|
||||
"""
|
||||
批量上下架产品业务关键字
|
||||
:param ids: 产品ID列表
|
||||
:param status: 状态(1上架,2下架)
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量上下架产品 - ids: {ids}, status: {status}")
|
||||
|
||||
params = {
|
||||
"ids": ids,
|
||||
"status": status
|
||||
}
|
||||
|
||||
resp = self.kw_in_joyhub_product_change_status_put(**params)
|
||||
obj_log.info(f"批量上下架产品响应: {resp}")
|
||||
|
||||
return resp
|
||||
@@ -0,0 +1,124 @@
|
||||
# -*- coding:utf-8 -*-
|
||||
"""
|
||||
支付页产品推荐业务关键字层
|
||||
"""
|
||||
import allure
|
||||
from dulizhan.library.Dlizhan_interface import DlzhanInterface
|
||||
from base_framework.public_tools import log
|
||||
|
||||
obj_log = log.get_logger()
|
||||
|
||||
|
||||
class ProductPaymentRecommendManage(DlzhanInterface):
|
||||
"""支付页产品推荐业务关键字类"""
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@allure.step("修改支付页产品推荐排序号")
|
||||
def kw_joyhub_product_payment_recommend_change_rank_num_put(self, recommend_id, rank_num):
|
||||
"""
|
||||
修改支付页产品推荐排序号业务关键字
|
||||
:param recommend_id: 推荐ID
|
||||
:param rank_num: 排序号
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"修改支付页产品推荐排序号 - recommend_id: {recommend_id}, rank_num: {rank_num}")
|
||||
resp = self.kw_in_joyhub_product_payment_recommend_change_rank_num_put(id=recommend_id, rankNum=rank_num)
|
||||
obj_log.info(f"修改支付页产品推荐排序号响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("修改支付页产品推荐状态")
|
||||
def kw_joyhub_product_payment_recommend_change_status_put(self, recommend_id, recommend_status):
|
||||
"""
|
||||
修改支付页产品推荐状态业务关键字
|
||||
:param recommend_id: 推荐ID
|
||||
:param recommend_status: 推荐状态
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"修改支付页产品推荐状态 - recommend_id: {recommend_id}, recommend_status: {recommend_status}")
|
||||
resp = self.kw_in_joyhub_product_payment_recommend_change_status_put(id=recommend_id, recommendStatus=recommend_status)
|
||||
obj_log.info(f"修改支付页产品推荐状态响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("创建支付页产品推荐")
|
||||
def kw_joyhub_product_payment_recommend_create_post(self, product_ids, recommend_id=None):
|
||||
"""
|
||||
创建支付页产品推荐业务关键字
|
||||
:param product_ids: 产品ID列表
|
||||
:param recommend_id: 推荐ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"创建支付页产品推荐 - product_ids: {product_ids}")
|
||||
params = {"productIds": product_ids}
|
||||
if recommend_id is not None:
|
||||
params["id"] = recommend_id
|
||||
resp = self.kw_in_joyhub_product_payment_recommend_create_post(**params)
|
||||
obj_log.info(f"创建支付页产品推荐响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("删除支付页产品推荐")
|
||||
def kw_joyhub_product_payment_recommend_delete_delete(self, recommend_id):
|
||||
"""
|
||||
删除支付页产品推荐业务关键字
|
||||
:param recommend_id: 推荐ID
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"删除支付页产品推荐 - recommend_id: {recommend_id}")
|
||||
resp = self.kw_in_joyhub_product_payment_recommend_delete_delete(recommend_id)
|
||||
obj_log.info(f"删除支付页产品推荐响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("批量删除支付页产品推荐")
|
||||
def kw_joyhub_product_payment_recommend_delete_list_delete(self, ids):
|
||||
"""
|
||||
批量删除支付页产品推荐业务关键字
|
||||
:param ids: 推荐ID列表
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"批量删除支付页产品推荐 - ids: {ids}")
|
||||
resp = self.kw_in_joyhub_product_payment_recommend_delete_list_delete(ids)
|
||||
obj_log.info(f"批量删除支付页产品推荐响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得支付页产品推荐分页")
|
||||
def kw_joyhub_product_payment_recommend_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得支付页产品推荐分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得支付页产品推荐分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_product_payment_recommend_page_get(**params)
|
||||
obj_log.info(f"获得支付页产品推荐分页响应: {resp}")
|
||||
return resp
|
||||
|
||||
@allure.step("获得C端支付页产品推荐分页")
|
||||
def kw_joyhub_web_product_payment_recommend_page_get(self, page_no=1, page_size=10, **kwargs):
|
||||
"""
|
||||
获得支付页产品推荐分页业务关键字
|
||||
:param page_no: 页码
|
||||
:param page_size: 每页大小
|
||||
:param kwargs: 其他查询条件
|
||||
:return: 响应结果
|
||||
"""
|
||||
obj_log.info(f"获得支付页产品推荐分页 - page_no: {page_no}, page_size: {page_size}")
|
||||
|
||||
params = {
|
||||
"pageNo": page_no,
|
||||
"pageSize": page_size
|
||||
}
|
||||
params.update(kwargs)
|
||||
|
||||
resp = self.kw_in_joyhub_web_product_payment_recommend_page_get(**params)
|
||||
obj_log.info(f"获得支付页产品推荐分页响应: {resp}")
|
||||
return resp
|
||||
Reference in New Issue
Block a user