def return_check_requests(cls, account='TIANJINOPERATION', operate_type='1', order_ids=[]): """ 退货审核 :param account: :param operate_type: 1:批准,2:二次配送 :param ids: """ print u'*' * 20 + u'退货审核' obj = obj = demjson.decode(RainbowUtil.rainbow_get_return_request(order_nos=order_ids)) n = 0 while int(obj['total']) != len(order_ids) and n < tmsBase.retry_times: print 'expect %s, actual %s' % (len(order_ids), obj['total']) sleep(1) obj = demjson.decode(RainbowUtil.rainbow_get_return_request(order_nos=order_ids)) n += 1 print 'expect %s, actual %s' % (len(order_ids), obj['total']) if int(obj['total']) != len(order_ids): print 'expect %s, actual %s' % (len(order_ids), obj['total']) raise StandardError(u'>>>>>>>>>>期望待退货审核运单,与实际可退货运单不一致') ids = list() for item in obj['rows']: ids.append(item['id']) url = tmsBase.base_url + '/tms/sort/refundOrderCheckController/updateCheckResult.do?operation=' + operate_type resp = HttpRequest.post_request(TmsLogin.get_session(account), url, data={'ids[]': ids}) check_operation_result(resp) return resp
def refund_apply(cls, account='ADMIN', order_nos=[]): """ 退款申请 :param account: :param ids: """ print u'*' * 20 + u'退款申请' # 获取运单id order_ids = [] obj = demjson.decode(RainbowUtil.rainbow_get_refund_apply_info(account=account, order_ids=order_nos)) for item in obj['rows']: order_ids.append(item['id']) # 申请退款 url = tmsBase.base_url + '/tms/sort/refundOrderController/refundApply.do' resp = HttpRequest.post_request(TmsLogin.get_session(account), url, data={'ids[]': order_ids}) # check_operation_result(resp) print resp # 获取退款申请号 obj = demjson.decode(RainbowUtil.rainbow_get_refund_apply_info(account=account, order_ids=order_nos)) refund_apply_no = obj['rows'][0]['refundApplyNo'] print u'----------退款申请号:%s' % refund_apply_no return refund_apply_no
# -*- encoding:utf-8 -*- import sys from time import sleep import os sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..\\..\\..\\')) from keywords.tms.interface.innerInvoker import InnerInvoker from keywords.tms.express.expressFlow import ExpressFlow from keywords.tms.express.expressUtil import ExpressUtil from keywords.tms.rainbow import RainbowUtil from parameters.tms import tmsBase __author__ = 'bida' if __name__ == '__main__': order_ids = InnerInvoker.create_change_and_refund_order(count=2, operate_type='3')[0] sleep(tmsBase.wait_time) ExpressFlow.express_return_return(account='AUTOEXPRESS', order_ids=order_ids) sleep(tmsBase.wait_time) ExpressUtil.express_check_order_state(order_ids=order_ids, state='退货已签收'.decode('utf-8')) RainbowUtil.rainbow_check_order_state(order_ids=order_ids, state='退货已签收'.decode('utf-8'))
obj = BaseInfo.get_subdistributor_id(subdistributor_short_name='autoexpress') delivery_dealer = obj[0] + '-' + obj[1] else: delivery_dealer = BaseInfo.get_distributor_id(account='ADMIN', distributor_short_name='autoexpress') + '-' RainbowFlow.sorting_forward_to_delivery_dealer(order_ids=order_ids, delivery_dealer=delivery_dealer, account='TIANJINSORTING') sleep(tmsBase.wait_time) ExpressFlow.express_delivery(target='2', order_ids=order_ids, feedback_result='SUCCESS', account='AUTOEXPRESS') sleep(tmsBase.wait_time) for order_id in order_ids: # 支付宝反馈配送在途 InnerInvoker.payment_zhifubao_notice(order_id=order_id, pay_status='0') sleep(tmsBase.wait_time) ExpressUtil.express_check_order_state(order_ids=order_ids, state='配送在途'.decode('utf-8')) RainbowUtil.rainbow_check_order_state(order_ids=order_ids, state='配送在途'.decode('utf-8')) sleep(tmsBase.wait_time) for order_id in order_ids: # 支付宝反馈配送成功 InnerInvoker.payment_zhifubao_notice(order_id=order_id, pay_status='1') sleep(tmsBase.wait_time) ExpressUtil.express_check_order_state(order_ids=order_ids, state='配送成功'.decode('utf-8')) RainbowUtil.rainbow_check_order_state(order_ids=order_ids, state='配送成功'.decode('utf-8'))