def Login(tel=CONFIG.Mobile()): login_exit.Login_exit() # 初始化操作,解除绑定 url = CONFIG.Url() + '/api/small/login/checkSms.jhtml' # 判断是1还是2开头的手机号码并生成相应的验证码 # tel = CONFIG.Mobile() if str(tel[:2]) == '23' and len(str(tel)) == 11: code = str((int(tel[:1]) + int(tel[-5:])) * 201812306 )[:6] elif str(tel[0]) == '1' and len(tel) == 11: code = tel[-4:]+time.strftime('%m%d') else: return '[×] 异常记录-->登陆账号错误' params = {'tel': tel, 'code': code, 'unionId': CONFIG.Unionid()} # print(params['tel']) request_login = requests.get(url, params) if request_login.status_code == 200: if request_login.json()['msg'] == '成功': return '登陆成功', request_login.json() else: return '[×] 异常记录-->%s'%request_login.json() else: return '[×] %s登录失败' % request_login.status_code
def See_shoppingCart_8(self): login.Login() url = CONFIG.Url() + '/api/small/cart/list.jhtml' params = { 'unionId': CONFIG.Unionid(), 'supplierId': supplier.Supplier_id().Supplier_local_jiameng_shop()[0]['id'], 'shopId': '3214', 'supplierType': supplier.Supplier_id().Supplier_local_jiameng_shop()[0] ['supplierType'], 'relationId': supplier.Supplier_id().Supplier_local_jiameng_shop()[0] ['relationId'], 'types': 'local', 'supplyType': supplier.Supplier_id().Supplier_local_jiameng_shop()[0] ['supplierType'] } xx = requests.get(url, params) if xx.status_code == 200: if xx.json()['msg'] == '成功': goodsList = xx.json() return '加盟店-本地-本地供应商订单购物车获取成功', goodsList else: return '[×] 加盟店-本地-本地供应商订单购物车出现异常 %s' % xx.xx.json()['msg'] else: return '[×] 加盟店-本地-本地供应商订单购物车出现异常 %s' % xx.status_code
def Add_shop_affiliate(): # 创建加盟店 login.Login() # 初始化登陆 url = CONFIG.Url()+'/api/small/shop/add.jhtml' params = { 'unionId': CONFIG.Unionid(), # unionid 'shopType': 'affiliate', # 门店类型 affiliate,加盟;direct 直营 'name': '加盟店'+time.strftime('%Y%m%d-%H%M%S'), 'userName': '******', 'areaId': '800', 'address': 'address', 'ids': '', 'receiverTel': '13800000000', 'businessCategoryId': '42', 'startManageTime': '12:00', 'endManageTime': '12:01', 'longitude': '121', 'latitude': '31'} request_add_shop_affiliate = requests.post(url, params) if request_add_shop_affiliate.status_code != 200: return '[×] 创建加盟门店接口异常-->%s' % request_add_shop_affiliate.status_code else : if request_add_shop_affiliate.json()['code'] != '0': # 根据code确认是否创建成功,0成功,其他则失败 return '[×] %s_加盟门店创建失败,创建的门店名称:%s'%(request_add_shop_affiliate.json(), params['name']) else: shop_list = view_shop.View_shop_name()[1] # 获取门店接口,判断门店是否存在于门店列表 # params = {'name': '又乐'} # 测试数据,写死的不存在的门店名称 if params['name'] in shop_list: return '加盟门店创建成功', params['name'] else: return '[×] 加盟门店创建失败,创建的加盟门店在列表中不存在_创建的加盟店名称:%s_门店列表:%s'% (params['name'],shop_list)
def See_shoppingCart_2(self): login.Login() url = CONFIG.Url() + '/api/small/cart/list.jhtml' params = { 'unionId': CONFIG.Unionid(), 'supplierId': supplier.Supplier_id().Supplier_platform_zhiying()[0]['id'], 'shopId': '3212', 'supplierType': supplier.Supplier_id().Supplier_platform_zhiying()[0] ['supplierType'], 'relationId': supplier.Supplier_id().Supplier_platform_zhiying()[0] ['relationId'], 'types': 'platform', 'supplyType': supplier.Supplier_id().Supplier_platform_zhiying()[0] ['supplierType'] } xx = requests.get(url, params) if xx.status_code == 200: if xx.json()['msg'] == '成功': goodsList = xx.json() return '直营店-平台-直营型订单购物车获取成功', goodsList else: return '[×] 直营店-平台-直营型订单购物车出现异常 %s' % xx.xx.json()['msg'] else: return '[×] 直营店-平台-直营型订单购物车出现异常 %s' % xx.status_code
def Order_6(self): try: add_goods = shoppingCart.Add_shoppingCart().Add_shoppingCart_6() if add_goods == '本地加盟购物车货品添加成功': see_goods = shoppingCart.See_shoppingCart().See_shoppingCart_6( ) if len(see_goods[1]['data']['list']) > 0: pass else: return '[x] 加盟店-本地-三方型订单下单失败_购物车为空' else: return '[x] 加盟店-本地-三方型订单下单失败_购物车添加货品时出现异常_%s' % add_goods except Exception as error: return '[x] 加盟店-本地-三方型订单下单失败_购物车添加货品时出现异常_%s' % shoppingCart.Add_shoppingCart( ).Add_shoppingCart_1() url = CONFIG.Url() + '/api/small/order/create.jhtml' params = { 'unionId': CONFIG.Unionid(), 'supplierId': supplier.Supplier_id().Supplier_local_sanfang()[0]['id'], 'shopId': '3214', 'supplierType': supplier.Supplier_id().Supplier_local_sanfang()[0]['supplierType'], 'relationId': supplier.Supplier_id().Supplier_local_sanfang()[0]['relationId'], 'types': 'local', 'supplyType': supplier.Supplier_id().Supplier_local_sanfang()[0]['supplyType'], 'reDate': '2019-01-24 00:00', 'reEndDate': '2019-01-24 02:00', 'memo': '我是备注我是备注,自动下单就是快啊' } xx = requests.get(url, params) if xx.status_code == 200: if xx.json()['msg'] == '成功': orderid = xx.json()['data']['orderId'] orderid_list = [] try: orders = See().LocalOrder() except Exception as error: return '[x] 加盟店-本地-三方型订单下单失败_订单列表获取失败-->%s' % error for orderid_ in orders: orderid_list.append(orderid_['orderId']) if orderid in orderid_list: return '加盟店-本地-三方型订单下单成功', xx.json() else: return '[x] 加盟店-本地-三方型订单下单失败_订单列表未找到' else: return '[x] 加盟店-本地-三方型订单下单失败_msg:%s' % xx.json() else: return '[x] 加盟店-本地-三方型订单下单失败_状态码异常: %s' % xx.status_code
def LocalOrder(self): url = CONFIG.Url() + '/api/small/order/localOrderList.jhtml' params = { 'unionId': CONFIG.Unionid(), 'searchProperty': 'sn', # ?? 'searchValue': '', # 搜索时传入订单号 'status': '', # 订单状态tab 'pageNumber': 1, # 分页,可不填,默认为1 'pageSize': 20 # 分页显示的条数,可不填,默认为10 } xx = requests.get(url, params) return xx.json()['data']['orders']
def Login_exit(unionid=CONFIG.Unionid()): url = CONFIG.Url()+'/api/small/member/unBind.jhtml' params = {'unionId': unionid} request_login_exit = requests.get(url, params) if request_login_exit.status_code == 200: if request_login_exit.json()['msg'] == '成功': return '账号成功解除绑定', request_login_exit.json() elif request_login_exit.json()['msg']=='您已经解除了绑定': return '账号未登陆,无需解除绑定' else: return '[×] 异常记录-->%s', request_login_exit.json() else: return '[×] %s 你懂的' % request_login_exit.status_code
def Information(unionid=CONFIG.Unionid()): login.Login() url = CONFIG.Url() + '/api/small/member/get.jhtml' params = {'unionId': unionid} request = requests.get(url, params) if request.status_code != 200: return '[×] %s, 企业信息获取异常' % request.status_code else: if request.json()['data']['flag'] is True: return '1', request.json() # 账号已创建企业 elif request.json()['data']['flag'] is False: return '0', request.json() # 账号未创建企业 else: return '[×] %s, 企业信息获取异常' % request.json()
def Login_edit(tel, code): login_exit.Login_exit() url = CONFIG.Url() + '/api/small/login/checkSms.jhtml' params = {'tel': tel, 'code': code, 'unionId': CONFIG.Unionid()} request_login = requests.get(url, params) if request_login.status_code == 200: if request_login.json()['msg'] == '成功': return '登陆成功' else: return request_login.json() else: return '[×] %s登录失败' % request_login.status_code
def Del(cartItemId): url = CONFIG.Url() + '/api/small/cart/deleteCartItem.jhtml' params = { 'unionId': CONFIG.Unionid(), 'cartItemId': cartItemId # 购物车货品id } xx = requests.post(url, params) if xx.status_code == 200: if xx.json()['msg'] == '成功': # print('', end='') return '0', '成功' else: return '1', '[×] 加盟店-本地-三方型订单购物车清空失败_%s' % xx.json()['msg'] else: return '1', '[×] 加盟店-本地-三方型订单购物车清空失败_%s' % xx.status_code
def View_shop_name(): login.Login() url = CONFIG.Url() + '/api/small/shop/list.jhtml' params = { 'unionId': CONFIG.Unionid(), 'pageSize': '1000', 'pageNumber': '1' } request_view_shop_name = requests.get(url, params) if request_view_shop_name.status_code != 200: return '[×] %s,你懂的' % request_view_shop_name.status_code else: list = request_view_shop_name.json() shop_list = [] for list in list['data']['list']: shop_list.append(list['name']) return '门店列表所有门店获取成功', shop_list
def Goods_local_jiameng_shop(): url = CONFIG.Url() + '/api/small/supplier/getAssignGoods.jhtml' try: params = { 'supplierId': supplier.Supplier_id().Supplier_local_jiameng_shop()[0] ['id'], # 注意,此处的0只是暂时,若有多个直营关系,此处需处理 'shopId': '3214', # 加盟(接口),写死项 'supplierType': supplier.Supplier_id().Supplier_local_jiameng_shop()[0] ['supplierType'], 'relationId': supplier.Supplier_id().Supplier_local_jiameng_shop()[0] ['relationId'], 'goodsName': '', # 货品名称,空则为所有 'productCategoryId': '', # 分类id,空则为所有 'pageSize': '1000', 'pageNumber': '1', 'unionId': CONFIG.Unionid() } except Exception as error: return '[×] [本地-加盟门店-本地供应商 货品列表]-->前置参数获取异常-->门店及企业id获取异常-->%s' % error request = requests.get(url, params) if request.status_code != 200: return '[×] %s 本地-加盟门店-本地供应商获取异常' % request.status_code else: if request.json()['msg'] != '成功': return '[×] %s 本地-加盟门店-本地供应商获取异常' % request.json() else: goods_list = [] for goods in request.json()['data']['data']: goods_list.append(goods) return '本地-加盟门店-本地供应商 货品列表获取成功', { '数量': len(goods_list) }, { '货品列表': goods_list }
def Add_shoppingCart_1(self): login.Login() url = CONFIG.Url() + '/api/small/cart/add.jhtml' try: # 异常处理,添加购物车时获取供应商参数时出现异常 params = { 'unionId': CONFIG.Unionid(), 'supplierId': supplier.Supplier_id().Supplier_platform_ziyouzhiying()[0] ['id'], 'shopId': '3212', 'supplierType': supplier.Supplier_id().Supplier_platform_ziyouzhiying()[0] ['supplierType'], 'relationId': supplier.Supplier_id().Supplier_platform_ziyouzhiying()[0] ['relationId'], 'types': 'platform', 'supplyType': supplier.Supplier_id().Supplier_platform_ziyouzhiying()[0] ['supplyType'], 'quantity': random.randint(1, 30), # 在购物车中的数量 'productId': '29133', } except Exception as error: # logging.exception(error) return '[×] 平台自有直营购物车添加货品失败_供应商参数获取异常-->%s' % error xx = requests.post(url, params) if xx.status_code == 200: if xx.json()['msg'] == '成功': return '平台自有直营购物车货品添加成功' else: return '[×] 平台自有直营购物车货品添加失败-->msg: %s' % xx.json['msg'] else: return '[×] 平台自有直营购物车货品添加失败-->状态码: %s' % xx.status_code
def Goods_platform_zhiying_shop_zhiyin(): url = CONFIG.Url() + '/api/small/supplier/getAssignGoods.jhtml' try: params = { 'supplierId': supplier.Supplier_id().Supplier_platform_zhiying()[0] ['id'], # 注意,此处的0只是暂时,若有多个直营关系,此处需处理 'shopId': '3212', # 直营店(接口),写死项 'supplierType': supplier.Supplier_id().Supplier_platform_zhiying()[0] ['supplierType'], 'relationId': supplier.Supplier_id().Supplier_platform_zhiying()[0] ['relationId'], 'goodsName': '', # 货品名称,空则为所有 'productCategoryId': '', # 分类id,空则为所有 'pageSize': '1000', 'pageNumber': '1', 'unionId': CONFIG.Unionid() } except Exception as error: return '[×] [平台-直营门店-直营企业 货品列表获取异常]-->前置参数获取异常-->门店及企业id获取异常-->%s' % error request = requests.get(url, params) if request.status_code != 200: return '[×] %s 平台-直营门店-直营企业 货品列表获取异常' % request.status_code else: if request.json()['msg'] != '成功': return '[×] %s 平台-直营门店-直营企业 货品列表获取异常' % request.json() else: goods_list = [] for goods in request.json()['data']['data']: goods_list.append(goods) return '直营型货品列表获取成功', len(goods_list), goods_list
def View_shop_affiliate_1(): login.Login() url = CONFIG.Url() + '/api/small/shop/list.jhtml' params = { 'unionId': CONFIG.Unionid(), 'pageSize': '1000', 'pageNumber': '1' } request_view_shop_id = requests.get(url, params) if request_view_shop_id.status_code != 200: return '[×] %s门店信息获取失败' % request_view_shop_id.status_code else: if request_view_shop_id.json()['msg'] != '成功': return '[×] %s门店信息获取失败' % request_view_shop_id.json() else: shop = [] for s in request_view_shop_id.json()['data']['list']: if s['shopType'] == 'affiliate' and s['myself'] is True: shop.append((s['id'], s['name'])) else: continue return '门店列表加盟门店获取成功(不包托管店)', shop
def Seckill_list(): login.Login() url = CONFIG.Url() + '/api/small/messageMemberProduct/findList.jhtml' params = { 'unionId': CONFIG.Unionid(), 'shopId': '3147', # 此处当前写死 'pageNumber': '1', 'pageSize': '1000' } request = requests.get(url, params) if request.status_code != 200: return '[×] 获取秒杀列表失败, %s' % request.status_code else: # return request.json() if request.json()['msg'] != '成功': return '[×] 秒杀列表获取异常-->%s' % request.json() else: seckill_list_all = request.json()['data']['result'] # 推荐列表 seckill_list = [] # 秒杀列表,需从推荐列表作筛选处理 for list in seckill_list_all: if list['products'][0][ 'activityType'] == 'pike': # 判断货品是否满足秒杀条件 # seckill_list.append(list) seckill_list.append({ '商品名称': list['name'], '限购量': list['products'][0]['maxNumber'], '秒杀价': list['products'][0]['activityPrice'], '供应价': list['products'][0]['supplyPrice'], '供应商': list['supplierName'] }) # print(seckill_list[-1], '\n\n') else: continue return '秒杀货品列表获取成功', {'数量': len(seckill_list)}, {'列表': seckill_list}
def Add_shop_direct(): # 创建直营店 if information.Information()[0] == '1': # 判断是否存在企业,没有企业的话无法创建直营店;1存在,0不存在 login.Login() # 初始化登陆 url = CONFIG.Url()+'/api/small/shop/add.jhtml' params = { 'unionId': CONFIG.Unionid(), # unionid 'shopType': 'direct', # 门店类型 affiliate,加盟;direct 直营 'name': '直营店'+time.strftime('%Y%m%d-%H%M%S'), 'userName': '******', 'areaId': '800', 'address': 'address', 'ids': '', 'receiverTel': '13800000000', 'businessCategoryId': '42', 'startManageTime': '12:00', 'endManageTime': '12:01', 'longitude': '121', 'latitude': '31'} request_add_shop_direct = requests.post(url, params) if request_add_shop_direct.status_code != 200: return '[×] 创建直营门店接口异常-->%s'% request_add_shop_direct.status_code else : if request_add_shop_direct.json()['code'] != '0': # 根据code确认是否创建成功,0成功,其他则失败 return '[×] %s_直营门店创建失败,创建的名称:%s'%(request_add_shop_direct.json(), params['name']) else: # 获取门店接口,判断门店是否存在于门店列表 shop_list = view_shop.View_shop_name()[1] # params = {'name': '又乐'} # 测试数据,写死的不存在的门店名称 if params['name'] in shop_list: return '直营门店创建成功', params else: return '[×] 直营门店创建失败,创建的门店在列表中不存在_创建的名称:%s_门店列表:%s'%(params['name'], shop_list) # return request_add_shop.json() elif information.Information()[0] == '0': return '账号不存在企业,跳过创建直营门店', '账号未创建企业' else: return '[×] 获取企业信息异常,无法创建门店'
def Bd_shop_list(): url = CONFIG.Url() + '/api/small/shop/getShopList.jhtml' login.Login() try: params = { 'unionId': CONFIG.Unionid(), 'memberId': DATA_BASE.Member_id()[0], 'channelId': '1' # 暂定渠道ID } except Exception as error: return '[×] [BD时获取门店列表失败]-->前置参数获取异常-->unionId/memberid 获取异常-->%s' % error request = requests.get(url, params) # print(request.url) if request.status_code != 200: return '[×] BD门店列表获取失败 %s' % request.status_code else: if request.json()['msg'] == '成功': view_list = view_shop.View_shop_affiliate_1()[1] # 获取门店列表加盟店数量 if len(request.json()['data']) != len( view_list): # 判断BD门店列表的数量与加盟店数量是否一致 return '[×] BD门店列表获取成功(BD数量与门店列表数量不匹配正确)', { '门店列表加盟店数量': len(view_list) }, { 'BD门店列表数量': len(request.json()['data']) }, { 'BD门店列表': request.json()['data'] } else: return 'BD门店列表获取成功', { '门店列表加盟店(不含托管)数量': len(view_list) }, { 'BD门店列表数量': len(request.json()['data']) }, { 'BD门店列表': request.json()['data'] } else: return '[×] BD门店列表获取失败 %s' % request.json()
"""eg""" import sys sys.path.append('../') import requests import CONFIG import login login.Login('17602120657') # 门店信息对应的账号 url = CONFIG.Url() + '/api/small/shop/list.jhtml' params = {'unionId': CONFIG.Unionid(), 'pageSize': '20', 'pageNumber': '1'} a = requests.get(url, params=params) if a.status_code == 200: b = a.json()['data']['list'] for c in b: if c['myself'] == True: if c['shopType'] == 'direct': print('[直营店]%s' % c['name']) elif c['shopType'] == 'affiliate': print('[加盟店]%s' % c['name']) else: if c['shopType'] == 'direct': print('[托管店][直营店]%s' % c['name']) elif c['shopType'] == 'affiliate': print('[托管店][加盟店]%s' % c['name']) else: print(a.status_code, '门店列表获取失败')