Commit 530c0f65 authored by 李光宇's avatar 李光宇
Browse files

Merge branch 'master' into 'main'

代码归档只main分支

See merge request !1
parents 13b3da0e 2b18a6d3
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc验证新增结构相同的套包,2264,2264-24,sit,bs
主数据平台:运营后台管理系统套包创建接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
import random
module = "cmdc_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token)
# 第二步创建套包
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url11")
request_body = commonFuc().get_business_data(module, "payload11")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
# 第三步重复创建套包
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url11")
request_body = commonFuc().get_business_data(module, "payload11")
"""
场景:验证新增结构相同的套包
用例名称:验证新增结构相同的套包
输出:{"success":false,"code":"FRESENIUS_GROUP_ERROR","message":"已存在相同结构的套包,不允许重复录入","data":null,"freshToken":null}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict11")
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc验证组成套包需2个或2个以上商品,2264,2264-25,sit,bs
主数据平台:运营后台管理系统套包创建接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token)
# 第二步创建套包
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url13")
request_body = commonFuc().get_business_data(module, "payload13")
"""
场景:验证组成套包需2个或2个以上商品
用例名称:验证组成套包需2个或2个以上商品
输出:{"success":false,"code":"FRESENIUS_GROUP_ERROR","message":"组成套包需2个或2个以上商品","data":null,"freshToken":null}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict13")
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:api,cmdc-dologin,运营后台管理系统登录,sit,bs
"""
from common.common_func import commonFuc
import requests
import uuid
from common.verification_code_ocr import VerificationCodeOcr
import json
import os
module = "cmdc_login"
class CmdcDoLogin():
"""国药运营后台管理系统登录"""
def __init__(self, username, password):
self.username = username
self.password = password
def get_token(self):
# 获取唯一识别码
uuid_handle = uuid.uuid4()
# 获取验证码报文
param = {"uuid": uuid_handle}
# 获取多彩商城登录页面获取验证码地址
code_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "getVerifyCode_url")
# code_url = "https://service-slb.cmic.com.cn/sso/getVerifyCode"
# 发送请求获取验证码
result = requests.get(code_url, params=param)
# print(result.content)
with open("verifycode.png", 'wb') as f:
f.write(result.content)
# 获取当前文件路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
code_path = BASE_DIR + "/多采商城登录.air/verifycode.png"
# 识别并获取验证码
code = VerificationCodeOcr(code_path, "rainbow123", "rainbow123").base64_api()
# 获取多彩商城登录地址
cmdc_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "do_login_url")
# cmdc_url = "https://service-slb.cmic.com.cn/sso/mallLogin"
# 组装请求报文
request_body = {"userName": self.username, "password": self.password, "validateCode": code, "uuid": uuid_handle}
# print(request_body)
# 发送请求
result = requests.post(cmdc_url, params=request_body)
# 获取预期结果
# check_dict = commonFuc().get_business_data(module, "checkDict")
# print(check_dict)
# # 断言实际结果中是否包含预期结果的内容
# commonFuc().check_result(check_dict, result)
result = json.loads(result.content)
token = commonFuc().analysis_json('accessToken', result)
return token
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:api,cmdc-dologin,运营后台管理系统登录,sit,bs
"""
from common.common_func import commonFuc
import requests
import uuid
from common.verification_code_ocr import VerificationCodeOcr
import json
import os
import hashlib
module = "cmdc_login"
class CmdcDoLogin():
"""国药运营后台管理系统登录"""
def __init__(self, username, password):
self.username = username
self.password = password
def get_token(self):
# 获取唯一识别码
uuid_handle = uuid.uuid4()
# 获取验证码报文
param = {"uuid": uuid_handle}
# 获取多彩商城登录页面获取验证码地址
code_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "getVerifyCode_url")
# code_url = "https://service-slb.cmic.com.cn/sso/getVerifyCode"
# 发送请求获取验证码
result = requests.get(code_url, params=param)
# print(result.content)
# 获取当前文件路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
code_path = BASE_DIR + "/后台管理系统登录/verifycode.png"
# 获取到验证码存入本地文件
with open(code_path, 'wb') as f:
f.write(result.content)
# 识别并获取验证码
code = VerificationCodeOcr(code_path, "rainbow123","rainbow123").base64_api()
# 获取多彩商城登录地址
cmdc_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "do_login_url")
# cmdc_url = "https://service-slb.cmic.com.cn/sso/doLogin"
md = hashlib.md5(self.password.encode()) # 创建md5对象
EncryptPassword = md.hexdigest() # 登录密码进行md5加密
print('加密后的密码', EncryptPassword) # 加密后的密码
# 组装请求报文
request_body = {"userName": self.username, "password": EncryptPassword, "validateCode": code, "uuid": uuid_handle}
# print(request_body)
# 发送请求
result = requests.post(cmdc_url, params=request_body)
# 获取预期结果
# check_dict = commonFuc().get_business_data(module, "checkDict")
# print(check_dict)
# # 断言实际结果中是否包含预期结果的内容
# commonFuc().check_result(check_dict, result)
result = json.loads(result.content)
print(result)
access_token = commonFuc().analysis_json('accessToken', result)
return access_token
if __name__ == "__main__":
cmdc_access_token = CmdcDoLogin("Admin00111", "Aa123456").get_token()
print(cmdc_access_token)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:api,cmdc-maiilogin,多采商城登录,sit,bs
"""
from common.common_func import commonFuc
import requests
import uuid
from common.verification_code_ocr import VerificationCodeOcr
import json
import os
module = "cmdc_login"
class CmdcMaiiLogin():
"""多采商城登录"""
def __init__(self, username, password):
self.username = username
self.password = password
def get_token(self):
# 获取唯一识别码
uuid_handle = uuid.uuid4()
# 获取验证码报文
param = {"uuid": uuid_handle}
# 获取多采商城登录页面获取验证码地址
code_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "getVerifyCode_url")
# code_url = "https://service-slb.cmic.com.cn/sso/getVerifyCode"
# 发送请求获取验证码
result = requests.get(code_url, params=param)
# print(result.content)
# 获取当前文件路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
code_path = BASE_DIR + "/多采商城登录/verifycode.png"
# 获取到验证码存入本地文件
with open(code_path, 'wb') as f:
f.write(result.content)
# 识别并获取验证码
code = VerificationCodeOcr(code_path, "rainbow123", "rainbow123").base64_api()
# 获取多采商城登录地址
cmdc_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "maii_login_url")
# cmdc_url = "https://service-slb.cmic.com.cn/sso/mallLogin"
# 组装请求报文
request_body = {"userName": self.username, "password": self.password, "validateCode": code, "uuid": uuid_handle}
# print(request_body)
# 发送请求
result = requests.post(cmdc_url, params=request_body)
# 获取预期结果
# check_dict = commonFuc().get_business_data(module, "checkDict")
# print(check_dict)
# # 断言实际结果中是否包含预期结果的内容
# commonFuc().check_result(check_dict, result)
result = json.loads(result.content)
token = commonFuc().analysis_json('accessToken', result)
return token
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:api,cmdc-maiilogin,多采商城登录,sit,bs
"""
from common.common_func import commonFuc
import requests
import uuid
from common.verification_code_ocr import VerificationCodeOcr
import json
import os
module = "cmdc_login"
class CmdcMaiiLogin():
"""多采商城登录"""
def __init__(self, username, password):
self.username = username
self.password = password
def get_token(self):
# 获取唯一识别码
uuid_handle = uuid.uuid4()
# 获取验证码报文
param = {"uuid": uuid_handle}
# 获取多采商城登录页面获取验证码地址
code_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "getVerifyCode_url")
# code_url = "https://service-uat.gyqxmall.com/sso/getVerifyCode"
# 发送请求获取验证码
result = requests.get(code_url, params=param)
# print(result.content)
# 获取当前文件路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
code_path = BASE_DIR + "/多采商城登录/verifycode.png"
# 获取到验证码存入本地文件
with open(code_path, 'wb') as f:
f.write(result.content)
# 识别并获取验证码
code = VerificationCodeOcr(code_path, "rainbow123", "rainbow123").base64_api()
# 获取多采商城登录地址
cmdc_url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "maii_login_url")
# cmdc_url = "https://service-uat.gyqxmall.com/sso/mallLogin"
# 组装请求报文
request_body = {"userName": self.username, "password": self.password, "validateCode": code, "uuid": uuid_handle}
# 发送请求
result = requests.post(cmdc_url, params=request_body)
# 获取预期结果
# check_dict = commonFuc().get_business_data(module, "checkDict")
# print(check_dict)
# # 断言实际结果中是否包含预期结果的内容
# commonFuc().check_result(check_dict, result)
result = json.loads(result.content)
print(result)
token = commonFuc().analysis_json('accessToken', result)
return token
if __name__ == "__main__":
cmdc_access_token = CmdcMaiiLogin("BJ0621", "Aa123456").get_token()
print(cmdc_access_token)
\ No newline at end of file
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc商品列表_代客下单,2250,2250-25,sit,bs
主数据平台:运营后台管理系统获取商品列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_product_list_query"
# 第一步登录后台管理系统获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username")
password = commonFuc().get_business_data(module, "password")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token)
# 第二步获取客户列表
url2 = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url2")
request_body2 = commonFuc().get_business_data(module, "payload2")
result2 = requests.post(url2, json=request_body2, headers=headers)
result2 = json.loads(result2.content)
user_no = result2["data"]["list"][0]["userNo"]
# 第二步获取客户对应的商品列表
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url1")
request_body = commonFuc().get_business_data(module, "payload1", user_no)
"""
场景:获取商品列表(代客下单)
用例名称:获取商品列表(代客下单)
输出:{"success":true,"code":"200","message":"OK"}
"""
# 发送请求
result = requests.get(url, params=request_body, headers=headers)
result = json.loads(result.content)
# print(result)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict1")
print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc获取商品列表(快速下单),2252,2252-43,sit,bs
主数据平台:多采商城商品列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.多采商城登录.多采商城登录 import CmdcMaiiLogin
import requests
import json
module = "cmdc_product_list_query"
# 第一步登录多采商城获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcMaiiLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers1", cmdc_access_token)
# 第二步查询站点信息
url10 = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url10")
request_body10 = commonFuc().get_business_data(module, "payload10")
# 发送请求
result10 = requests.post(url10, json=request_body10, headers=headers)
result10 = json.loads(result10.content)
# 获取站点companyId
company_id = result10["data"][3]["companyId"]
# 第二步查询站点对应的JDEcode
url11 = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url11")
request_body11 = commonFuc().get_business_data(module, "payload11", company_id)
# 发送请求
result11 = requests.get(url11, params=request_body11, headers=headers)
result11 = json.loads(result11.content)
company_code = result11["data"]["companyCode"]
# 第四步切换站点
url12 = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url12")
request_body12 = commonFuc().get_business_data(module, "payload12", company_id, company_code)
# 发送请求
result12 = requests.post(url12, json=request_body12, headers=headers)
result12 = json.loads(result12.content)
# 第四步查询站点对应的商品信息
url13 = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url13")
"""
场景:获取商品列表(快速下单)
用例名称:获取商品列表(快速下单)
输出:{"success":true,"code":"200","message":"OK","data":"ok"}
"""
# 发送请求
# request_body13 = commonFuc().get_business_data(module, "payload13")
# print(request_body13)
result = requests.get(url13, headers=headers)
result = json.loads(result.content)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict13")
print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc获取客户列表,2250,2250-26,sit,bs
主数据平台:运营后台管理系统获取客户列表接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_product_list_query"
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url2")
print(url)
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username")
password = commonFuc().get_business_data(module, "password")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token)
request_body = commonFuc().get_business_data(module, "payload2")
"""
场景:获取客户列表(代客下单)
用例名称:获取客户列表(代客下单)
输出:{"success":true,"code":"200","message":"OK"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# print(result)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict2")
print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc采购单查询,2250,2250-27,sit,bs
主数据平台:运营后台管理系统采购单查询接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_purchase_list"
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url")
# print(url)
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username")
password = commonFuc().get_business_data(module, "password")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers1", cmdc_access_token)
request_body = commonFuc().get_business_data(module, "payload1")
"""
场景:传入正确参数,获取到采购单列表
用例名称:获取采购单列表
输出:{"success":true,"code":"200","message":null}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# print(result)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict2")
print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc客户查询,2250,2250-28,sit,bs
主数据平台:运营后台管理系统客户接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_query_customer"
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url")
# print(url)
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username")
password = commonFuc().get_business_data(module, "password")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers1", cmdc_access_token)
request_body = commonFuc().get_business_data(module, "payload1")
"""
场景:传入正确参数,获取到客户列表
用例名称:获取客户列表
输出:{"success":true,"code":"200","message":"OK"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# print(result)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict2")
print(check_dict)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc代客下单_套包清单_查询条件验证,2264,2264-78,sit,bs
主数据平台:运营后台管理系统套包清单获取接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_special_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers2", cmdc_access_token)
# 第二步套包清单列表查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url50")
request_body = commonFuc().get_business_data(module, "payload50")
# 发送请求
result = requests.get(url, params=request_body, headers=headers)
result = json.loads(result.content)
# print(result)
# 获取套包信息
group_name = result["data"][0]["groupName"][:4]
group_product_code = result["data"][0]["subList"][0]["product"]["productCode"]
group_product_name = result["data"][0]["subList"][0]["product"]["productName"]
group_option_str = result["data"][0]["subList"][0]["product"]["specifications"]
document_no = result["data"][0]["documentNo"]
product_line_code = result["data"][0]["productLineCode"]
material_code_split = result["data"][0]["subList"][0]["product"]["materialCode"]
# 第三步进行列表查询条件验证
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url50")
request_body = commonFuc().get_business_data(module, "payload51", group_name, group_product_code, group_product_name,
group_option_str, document_no, product_line_code, material_code_split)
"""
场景: 代客下单_套包清单_查询条件验证
用例名称:代客下单_套包清单_查询条件验证
输出:{"groupPriceStatus": 0}
"""
# 发送请求
result = requests.get(url, params=request_body, headers=headers)
result = json.loads(result.content)
# 获取结果中ref单号
result = {"documentNo": result["data"][0]["documentNo"]}
print(result)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict51", document_no)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc停用_套包协议特价,2264,2264-53,sit,bs
主数据平台:运营后台管理系统套包协议特价列表查询接口和停用接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
from common.db.db import mySql
import requests
import json
module = "cmdc_special_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers2", cmdc_access_token)
# 第二步套包协议特价列表查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url36")
request_body = commonFuc().get_business_data(module, "payload36")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取套包协议特价id
fresenius_price_id = result["data"]["list"][0]["freseniusPriceId"]
# 第三步进行套包协议特价停用操作
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url37")
request_body = {"freseniusPriceIds": [fresenius_price_id], "groupPriceStatus": 0, "remarks": "套包协议特价停用功能验证"}
"""
场景: 停用_套包协议特价
用例名称:停用_套包协议特价
输出:{"groupPriceStatus": 0}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 数据库操作
mysql_handle = mySql()
# 获取conf.ini文件中配置的数据库信息
host, port, user, pwd = mysql_handle.getConf(db="cmdc_db")
# 数据库查询特价单品数量
sql = "SELECT t.groupPriceStatus FROM `cmdc-order`.tc_fresenius_agreement_price t WHERE freseniusPriceId = {};".format(fresenius_price_id)
result = {"groupPriceStatus": mysql_handle.selectSql(host, port, user, pwd, "cmdc-order", sql)[0][0]}
print(result)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict19")
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc停用_批量_特价单品,2264,2264-64,sit,bs
主数据平台:运营后台管理系统特价单品停用接口和导入接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
from common.handle_excel import HandleExcel
from common.db.db import mySql
import requests
import json
import os
module = "cmdc_special_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers2", cmdc_access_token)
# 第二步特价单品列表查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url1")
request_body = commonFuc().get_business_data(module, "payload_1")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取特价单品对应的商品信息和客户信息
product_code = result["data"]["list"][0]["freseniusProduct"]["productCode"]
product_name = result["data"]["list"][0]["freseniusProduct"]["productName"]
customer_code = result["data"]["list"][0]["customerCode"]
customer_name = result["data"]["list"][0]["customerName"]
# 获取文件
BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))))
file_path = BASE_DIR + "/data/cmdc_files/按条件停用单品与客户关系.xlsx"
# 将商品信息和客户信息写入文件中
excel = HandleExcel(file_path, "Sheet1")
excel.write_data(row=2, column=1, value=product_code)
excel.write_data(row=2, column=2, value=product_name)
excel.write_data(row=2, column=3, value=customer_code)
excel.write_data(row=2, column=4, value=customer_name)
# 第二步文件导入
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url18")
request_body = commonFuc().get_business_data(module, "payload18_0")
# 获取文件
file = open(file_path, "rb")
files = {"file": file}
# 发送请求
result = requests.post(url, files=files, headers=headers, data=request_body)
result = json.loads(result.content)
# 导入成功后获取对应的套包id
group_id = result["data"]["freseniusAgreementPrices"][0]["groupId"]
fresenius_price_id = result["data"]["freseniusAgreementPrices"][0]["freseniusPriceId"]
# 第三步进行特价单品删除操作
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url_open")
request_body = {"freseniusPriceIds": [fresenius_price_id], "groupPriceStatus": 0, "remarks": "特价单品停用"}
"""
场景:停用_批量_特价单品
用例名称:停用_批量_特价单品
输出:{"groupPriceStatus": 0}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
file.close()
# 数据库操作
mysql_handle = mySql()
# 获取conf.ini文件中配置的数据库信息
host, port, user, pwd = mysql_handle.getConf(db="cmdc_db")
# 数据库查询特价单品数量
sql = "SELECT t.groupPriceStatus FROM `cmdc-order`.tc_fresenius_agreement_price t WHERE groupId = {};".format(group_id)
result = {"groupPriceStatus": mysql_handle.selectSql(host, port, user, pwd, "cmdc-order", sql)[0][0]}
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict19")
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_套包协议特价管理,2264,2264-57,sit,bs
主数据平台:后台运营系统套包协议特价查询接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_special_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token)
# 第二步套包协议特价查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url3")
request_body = commonFuc().get_business_data(module, "payload3")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 此函数用于当x为none时,进行空字符串替换
def func(x):
if x is None:
x = ""
return x
else:
return x
# 获取套包信息
group_code = result["data"]["list"][0]["groupCode"]
group_name = result["data"]["list"][0]["groupName"]
product_code = result["data"]["list"][0]["products"][0]["productCode"]
product_info = result["data"]["list"][0]["products"][0]["productName"]
material_code = result["data"]["list"][0]["products"][0]["materialCode"]
manufacturer_list = result["data"]["list"][0]["products"][0]["manufacturer"]
productLine_name = result["data"]["list"][0]["productLineName"]
description = result["data"]["list"][0]["products"][0]["description"]
manufacturerProduct_desc = func(result["data"]["list"][0]["products"][0]["manufacturerProductDesc"])
manufacturerProduct_no = func(result["data"]["list"][0]["products"][0]["manufacturerProductNo"])
customer_code = func(result["data"]["list"][0]["products"][0]["customerCode"])
customer_name = func(result["data"]["list"][0]["products"][0]["customerName"])
manufacturer_user_no = func(result["data"]["list"][0]["products"][0]["manufacturerUserNo"])
manufacturer_user_desc = func(result["data"]["list"][0]["products"][0]["manufacturerUserDesc"])
document_no = result["data"]["list"][0]["documentNo"]
status = result["data"]["list"][0]["status"]
group_price_status = result["data"]["list"][0]["groupPriceStatus"]
# 第三步进行查询条件验证
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url3")
request_body = commonFuc().get_business_data(module, "payload13", group_code, group_name, product_code, product_info,
material_code, manufacturer_list, productLine_name, description,
manufacturerProduct_desc,
manufacturerProduct_no, customer_code, customer_name, manufacturer_user_no,
manufacturer_user_desc, document_no, status, group_price_status)
"""
场景: 套包协议特价管理列表查询条件验证
用例名称:列表查询条件验证_套包协议特价管理
输出:{"groupCode":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取套包协议价信息groupCode
result = {"groupCode": result["data"]["list"][0]["groupCode"]}
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict13", group_code)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_套包正价管理,2264,2264-50,sit,bs
主数据平台:后台运营系统套包正价查询接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_special_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token)
# 第二步套包正价列表查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url30")
request_body = commonFuc().get_business_data(module, "payload30")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 此函数用于当x为none时,进行空字符串替换
def func(x):
if x is None:
x = ""
return x
else:
return x
# 获取套包信息
group_code = result["data"]["list"][0]["groupCode"]
group_name = result["data"]["list"][0]["groupName"]
product_code = result["data"]["list"][0]["products"][0]["productCode"]
product_info = result["data"]["list"][0]["products"][0]["productName"]
material_code = result["data"]["list"][0]["products"][0]["materialCode"]
manufacturer_list = result["data"]["list"][0]["products"][0]["manufacturer"]
productLine_name = result["data"]["list"][0]["productLineName"]
description = result["data"]["list"][0]["products"][0]["description"]
manufacturerProduct_desc = func(result["data"]["list"][0]["products"][0]["manufacturerProductDesc"])
manufacturerProduct_no = func(result["data"]["list"][0]["products"][0]["manufacturerProductNo"])
customer_code = func(result["data"]["list"][0]["products"][0]["customerCode"])
customer_name = func(result["data"]["list"][0]["products"][0]["customerName"])
manufacturer_user_no = func(result["data"]["list"][0]["products"][0]["manufacturerUserNo"])
manufacturer_user_desc = func(result["data"]["list"][0]["products"][0]["manufacturerUserDesc"])
status = result["data"]["list"][0]["status"]
# 第三步进行查询条件验证
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url30")
request_body = commonFuc().get_business_data(module, "payload31", group_code, group_name, product_code, product_info,
material_code, manufacturer_list, productLine_name, description,
manufacturerProduct_desc,
manufacturerProduct_no, customer_code, customer_name, manufacturer_user_no,
manufacturer_user_desc, status)
"""
场景: 套包正价管理列表查询条件验证
用例名称:列表查询条件验证_套包正价管理
输出:{"groupCode":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取套包正价信息groupCode
result = {"groupCode": result["data"]["list"][0]["groupCode"]}
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict31", group_code)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_客户列表,2264,2264-55,sit,bs
主数据平台:后台运营系统客户列表查询接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_special_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token)
# 第二步客户列表获取
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "customer_list_url")
request_body = commonFuc().get_business_data(module, "customer_payload")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取客户信息
customer_code = result["data"]["list"][0]["customerCode"]
customer_name = result["data"]["list"][0]["customerName"]
# 第三步进行查询条件验证
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "customer_list_url")
request_body = commonFuc().get_business_data(module, "payload16", customer_code, customer_name)
"""
场景: 列表查询条件验证_客户列表
用例名称:列表查询条件验证_客户列表
输出:{"customerCode":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取客户信息
result = {"customerCode": result["data"]["list"][0]["customerCode"]}
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict16", customer_code)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_新老商品关系编码,2264,2264-67,sit,bs
主数据平台:运营后台管理系统新老编码组列表查询接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_special_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers2", cmdc_access_token)
# 获取新老商品关系编码列表
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url_product_code")
request_body = commonFuc().get_business_data(module, "payload_product_code")
# 发送请求
result = requests.post(url, headers=headers, json=request_body)
result = json.loads(result.content)
# 获取新老编码组信息
product_code = result["data"]["list"][0]["products"][0]["productCode"]
product_info = result["data"]["list"][0]["products"][0]["productName"]
material_code = result["data"]["list"][0]["products"][0]["materialCode"]
manufacturer_list = result["data"]["list"][0]["products"][0]["manufacturer"]
product_line_name = result["data"]["list"][0]["productLineName"]
description = result["data"]["list"][0]["products"][0]["description"]
status = result["data"]["list"][0]["status"]
# 第二步进行列表查询条件验证
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url_product_code")
request_body = commonFuc().get_business_data(module, "payload22", product_code, product_info, material_code,
manufacturer_list, product_line_name, description, status)
"""
场景:列表查询条件验证_新老商品关系编码
用例名称:列表查询条件验证_新老商品关系编码
输出:{"productCode":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
result = {"productCode": result["data"]["list"][0]["products"][0]["productCode"]}
print(result)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict22", product_code)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc列表查询条件验证_特价单品管理,2264,2264-62,sit,bs
主数据平台:后台运营系统特价单品查询接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
import requests
import json
module = "cmdc_special_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token)
# 第二步特价单品查询
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url1")
request_body = commonFuc().get_business_data(module, "payload1")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 此函数用于当x为none时,进行空字符串替换
def func(x):
if x is None:
x = ""
return x
else:
return x
# 获取特价单品信息
product_code = result["data"]["list"][0]["freseniusProduct"]["productCode"]
product_info = result["data"]["list"][0]["freseniusProduct"]["productName"]
material_code = result["data"]["list"][0]["freseniusProduct"]["materialCode"]
manufacturer_list = result["data"]["list"][0]["freseniusProduct"]["manufacturer"]
productLine_name = result["data"]["list"][0]["productLineName"]
description = result["data"]["list"][0]["freseniusProduct"]["description"]
manufacturerProduct_desc = func(result["data"]["list"][0]["freseniusProduct"]["manufacturerProductDesc"])
manufacturerProduct_no = func(result["data"]["list"][0]["freseniusProduct"]["manufacturerProductNo"])
customer_code = func(result["data"]["list"][0]["customerCode"])
customer_name = func(result["data"]["list"][0]["customerName"])
manufacturer_user_no = func(result["data"]["list"][0]["manufacturerUserNo"])
manufacturer_user_desc = func(result["data"]["list"][0]["manufacturerUserDesc"])
document_no = result["data"]["list"][0]["documentNo"]
group_price_status = result["data"]["list"][0]["groupPriceStatus"]
# 第三步进行查询条件验证
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url1")
request_body = commonFuc().get_business_data(module, "payload14", product_code, product_info,
material_code, manufacturer_list, productLine_name, description,
manufacturerProduct_desc,
manufacturerProduct_no, customer_code, customer_name, manufacturer_user_no,
manufacturer_user_desc, document_no, group_price_status)
"""
场景: 列表查询条件验证_特价单品管理
用例名称:列表查询条件验证_特价单品管理
输出:{"productCode":"%s"}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取特价单品code
result = {"productCode": result["data"]["list"][0]["freseniusProduct"]["productCode"]}
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict14", product_code)
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
# -*- encoding=utf8 -*-
__author__ = "liguangyu"
"""
case_tag:cmdc_api,cmdc删除_批量_套包正价,2264,2264-60,sit,bs
主数据平台:后台运营系统套包列表查询、套包正价导入、删除接口
"""
from common.common_func import commonFuc
from air_case.cmdc_login.后台管理系统登录.后台管理系统登录 import CmdcDoLogin
from common.handle_excel import HandleExcel
from common.db.db import mySql
import os
import requests
import json
module = "cmdc_special_fresenius_group"
# 第一步登录后台运营平台获取cmdc_access_token
# 获取登录所需账号密码
username = commonFuc().get_business_data(module, "username1")
password = commonFuc().get_business_data(module, "password1")
# 获取登录后Cmdc_access_token
cmdc_access_token = CmdcDoLogin(username, password).get_token()
headers = commonFuc().get_business_data(module, "json_headers", cmdc_access_token)
# 文件上传专用请求头
headers1 = commonFuc().get_business_data(module, "json_headers2", cmdc_access_token)
# 第二步套包正价列表获取
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url2")
request_body = commonFuc().get_business_data(module, "payload2")
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
# 获取套包正价信息
group_code = result["data"]["list"][0]["groupCode"]
group_name = result["data"]["list"][0]["groupName"]
# 获取文件
BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))))
file_path = BASE_DIR + "/data/cmdc_files/按条件删除正价套包.xlsx"
# 将商品信息写入文件中
excel = HandleExcel(file_path, "Sheet1")
excel.write_data(row=2, column=1, value=group_code)
excel.write_data(row=2, column=2, value=group_name)
# 第三步进行文件导入
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url23")
request_body = commonFuc().get_business_data(module, "payload23")
# 获取文件
file = open(file_path, "rb")
files = {"file": file}
# 发送请求
result = requests.post(url, files=files, headers=headers1, data=request_body)
result = json.loads(result.content)
# 获取freseniusPriceIds用于后续删除操作
fresenius_price_id = result["data"]["freseniusAgreementPrices"][0]["freseniusPriceId"]
# 第四步进行套包正价确认删除
url = commonFuc().get_api_url() + commonFuc().get_business_data(module, "url24")
request_body = {"freseniusPriceIds": [fresenius_price_id], "groupPriceStatus": 0, "remarks": "套包正价删除操作验证"}
"""
场景: 删除_批量_套包正价验证
用例名称:删除_批量_套包正价
输出:{"groupPriceStatus": 0}
"""
# 发送请求
result = requests.post(url, json=request_body, headers=headers)
result = json.loads(result.content)
print(result)
# 数据库操作
mysql_handle = mySql()
# 获取conf.ini文件中配置的数据库信息
host, port, user, pwd = mysql_handle.getConf(db="cmdc_db")
# 数据库查询已删除套包正价对应的状态
sql = "SELECT t.groupPriceStatus FROM `cmdc-order`.tc_fresenius_agreement_price t WHERE freseniusPriceId = {};".format(
fresenius_price_id)
result = {"groupPriceStatus": mysql_handle.selectSql(host, port, user, pwd, "cmdc-order", sql)[0][0]}
print(result)
# 获取预期结果
check_dict = commonFuc().get_business_data(module, "checkDict23")
# 断言实际结果中是否包含预期结果的内容
commonFuc().check_result(check_dict, result)
file.close()
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment