Beispiel #1
0
def set_name(session, status_code, reserv_info, reserv_id):
    if status_code == 'reservwait':
        resp = Response('이름을 입력해주세요')
        resp.next_function = set_name_confirm(reserv_id)
        session.next = resp
    elif status_code == 'reserved':
        resp = setting.get_init_response()
        resp.message = '이미 확정된 예약입니다.'
    else:
        resp = setting.get_init_response()
        resp.message = '확정할 수 없는 예약입니다.\n(시간 초과, 취소된 예약 등)'
    return resp.get_response()
    def wrapper_function(outer_user_key, response):
        p = re.compile('01{1}[016789]{1}[0-9]{7,8}')

        regrex = p.match(response)
        if regrex and regrex.end() == len(response):
            DB.user_regist(outer_user_key, response)
            resp = setting.get_init_response()
            resp.message = '정보가 등록되었습니다. 아차를 이용하는 매장에서 등록된 예약 정보를 확인 가능합니다.'
        else:
            resp = setting.get_init_response()
            resp.message = '휴대폰 번호만 정확히 입력해 주십시오.\nex)01012345678'

        return resp
Beispiel #3
0
def reserv_cancel(session, status_code, reserv_info, reserv_id):
    if status_code == 'reservwait' or status_code == 'reserved':
        resp = setting.get_init_response()
        resp.message = '정말로 아래의 예약을 취소 하시겠습니까?\n' + reserv_info
        resp.next_function = reserv_cancel_confirm(reserv_id)
        resp.buttons = ['네!', '아니요 괜찮아요!']
    elif status_code == 'usercancel' or status_code == 'storecancel':
        resp = setting.get_init_response()
        resp.message = '이미 취소된 예약입니다.'
    else:
        resp = setting.get_init_response()
        resp.message = '취소할 수 없는 예약입니다.(이미 방문처리 된 예약)'
    session.next = resp
    return resp.get_response()
    def wrapper_function(inner_user_key, response):
        if response == '동의':
            resp = Response('예약 정보 조회를 위해 휴대폰 번호를 입력하여 주세요.\n 이는 최초 1회만 실시됩니다!\n하이폰(-)은 제외하고 입력\nex)01012345678')
            resp.set_function(receive_phone_number(inner_user_key))

        else:
            resp = setting.get_init_response()
        return resp
Beispiel #5
0
 def wrapper_function(user_key, content):
     if content == '네!':
         DB.reservation_cancel(reserv_id)
         DB.push(reserv_id, 'usercancel', '고객님이 예약을 취소하였습니다.',
                 '자세한 내용은 앱에서 확인 부탁드립니다.')
         resp = setting.get_init_response()
         resp.message = '예약이 정상적으로 취소되었습니다!'
         return resp
     else:
         return setting.init_response
Beispiel #6
0
 def wrapper_func(user_key, response):
     db_res = DB.set_name(reserv_id, response)
     print(db_res)
     db_res = DB.reservation_confirm(reserv_id)
     print(db_res)
     DB.push(reserv_id, 'reserved', '고객님이 예약을 확정하였습니다.',
             '자세한 내용은 앱에서 확인 부탁드립니다.')
     resp = setting.get_init_response()
     resp.message = response + '님으로 예약이 확정 되었습니다.'
     return resp
Beispiel #7
0
 def wrapper_func(user_key, response):
     if response == '예':
         DB.reservation_cancel(reservation['reservUUID'])
         DB.push(reservation['reservUUID'], 'usercancel',
                 '고객님이 예약을 취소하였습니다.', '자세한 내용은 앱에서 확인 부탁드립니다.')
         message = reservation['button_name'] + '예약이 취소 되었습니다.'
         resp = setting.get_init_response()
         resp.message = message
         return resp
     else:
         return setting.init_response
Beispiel #8
0
def reserv_confirm(session, status_code, reserv_info, reserv_id):
    resp = setting.get_init_response()
    if status_code == 'reservwait':
        DB.reservation_confirm(reserv_id)
        DB.push(reserv_id, 'reserved', '고객님이 예약을 확정하였습니다.',
                '자세한 내용은 앱에서 확인 부탁드립니다.')
        resp.message = '아래의 예약이 확정 되었습니다!\n' + reserv_info
    elif status_code == 'reserved':
        resp.message = '이미 확정된 예약 입니다.'
    else:
        resp.message = '확정할 수 없는 예약입니다.\n(시간 초과, 취소된 예약 등)'
    return resp.get_response()
Beispiel #9
0
def feedback_response(session, command, splited_content, phone_number_dict):
    token = splited_content[-1].split(' : ')[1]
    if command == '네':

        question = feedback_list[question_list[0]]
        if type(question) == str:
            resp = Response(question)
        else:
            resp = Response(question[0], keyboard_buttons=list(question[1]))

        resp.set_function(feedback_step(1, [], token))
        session.next = resp

        return (resp.get_response(), '피드백 참여', token)
    else:
        resp = setting.get_init_response()
        return (resp.get_response(), '피드백 불참', token)
Beispiel #10
0
def initial(user_key):
    if DB.check_regist(user_key) == 'false':
        return userInfoRegist.initial(user_key)

    reserv_list = DB.get_reservation_list(user_key)

    if reserv_list:
        reserv_list.sort(key=lambda x:x['reservTime'])

        button_list = utils.generate_button(reserv_list)

        print(button_list)
        resp = Response('아래의 예약 중 확인하고 싶은 예약을 선택하여 주십시오', keyboard_buttons=button_list)
        resp.set_function(find_reservation(user_key, reserv_list))
        return resp
    else:
        resp = setting.get_init_response()
        resp.message = '현재 예약되어 있는 내용이 없습니다.'
        return resp
Beispiel #11
0
    def wrapper_func(user_key, content):
        if step == len(question_list):
            answer_list.append(content)
            DB.save_feedback(token, question_list, answer_list)
            resp = setting.get_init_response()
            resp.message = '피드백이 완료 되었습니다!'
        else:
            #content 저장
            answer_list.append(content)
            question = feedback_list[question_list[step]]
            if type(question) == str:
                resp = Response(question)
            else:
                resp = Response(question[0],
                                keyboard_buttons=list(question[1]))

            resp.set_function(feedback_step(step + 1, answer_list, token))

        return resp
Beispiel #12
0
def initial(user_key):
    if DB.check_regist(user_key) == 'false':
        return userInfoRegist.initial(user_key)

    reserv_list = DB.get_reservation_list(user_key)

    if reserv_list:
        reserv_list.sort(key=lambda x: x['reservTime'])
        button_list = utils.generate_button(reserv_list)
        """for reserv in reserv_list:
            date = reserv['reservTime']
            button_name = '%d월 %d일 %s'%(date.month, date.day,reserv['storeName'])
            button_list.append(button_name)
            reserv['button_name'] = button_name"""
        print(button_list)
        resp = Response('아래의 예약 중 취소하고 싶은 예약을 선택하여 주십시오',
                        keyboard_buttons=button_list)
        resp.set_function(cancel(user_key, reserv_list))
        return resp
    else:
        resp = setting.get_init_response()
        resp.message = '현재 예약되어 있는 내용이 없습니다.'
        return resp
Beispiel #13
0
def initial(user_key):
    resp = setting.get_init_response()
    resp.message = '현재 아차!는 테스트중으로 무료로 서비스를 제공하고 있습니다. 관련 문의는 상담용 플러스친구(http://pf.kakao.com/_xfxbxnxhj)를 통해 문의하실 수 있습니다.'
    return resp
Beispiel #14
0
def initial(user_key):
    resp = setting.get_init_response()
    resp.message = '안녕하세요! 아차! 서비스는 고객들이 손쉽게 예약을 관리할 수 있도록 하고 매장 점주들에게는 효율적인 예약관리를 통해 매출 증대를 함께 고민하는 서비스 입니다.'
    return resp