Beispiel #1
0
    def get(self, vendor_id, task_id):
        logging.info("got vendor_id %r in uri", vendor_id)
        logging.info("got task_id %r in uri", task_id)

        ops = self.get_ops_info()

        task_dao.task_dao().delete(task_id)
        personal_task_dao.personal_task_dao().delete_by_task(task_id)

        self.redirect('/vendors/' + vendor_id + '/setup/task')
Beispiel #2
0
    def get(self, vendor_id):
        logging.info("got vendor_id %r in uri", vendor_id)

        ops = self.get_ops_info()

        categorys = category_dao.category_dao().query_by_vendor(vendor_id)
        tasks = task_dao.task_dao().query_by_vendor(vendor_id)

        for task in tasks:
            task['create_time'] = timestamp_datetime(task['create_time'])
            trip_router_id = task['triprouter']
            logging.info("got trip_router_id>>>>>>>>>> %r in uri",
                         trip_router_id)
            triprouter = trip_router_dao.trip_router_dao().query(
                trip_router_id)
            task['title'] = triprouter['title']
            task['bk_img_url'] = triprouter['bk_img_url']
            for category in categorys:
                if category['_id'] == task['category']:
                    task['category'] = category['title']
                    break

        counter = self.get_counter(vendor_id)
        self.render('vendor/task-list.html',
                    vendor_id=vendor_id,
                    ops=ops,
                    counter=counter,
                    tasks=tasks)
    def get(self, vendor_id):
        logging.info("got vendor_id %r in uri", vendor_id)
        account_id = self.get_secure_cookie("account_id")
        categorys = category_dao.category_dao().query_by_vendor(vendor_id)
        personal_tasks = personal_task_dao.personal_task_dao().query_by_vendor_account(vendor_id,account_id)

        for personal_task in personal_tasks:
            personal_task['create_time'] = timestamp_datetime(personal_task['create_time'])

            task_id = personal_task['task_id']
            task = task_dao.task_dao().query(task_id)

            trip_router_id = task['triprouter']
            triprouter = trip_router_dao.trip_router_dao().query(trip_router_id)

            personal_task['title'] = triprouter['title']
            personal_task['bk_img_url'] = triprouter['bk_img_url']
            for category in categorys:
                if category['_id'] == task['category']:
                    personal_task['category'] = category['title']
                    break

        self.render('wx/my-tasks.html',
                vendor_id=vendor_id,
                tasks=personal_tasks)
Beispiel #4
0
    def post(self, vendor_id):

        triprouters = self.get_argument("triprouters", [])
        _triprouter_ids = JSON.loads(triprouters)
        for trip_router_id in _triprouter_ids:
            trip_router = trip_router_dao.trip_router_dao().query(
                trip_router_id)
            _id = str(uuid.uuid1()).replace('-', '')
            _timestamp = time.time()
            _category = trip_router['category']
            _title = trip_router['title']
            _json = {
                "_id": _id,
                "title": _title,
                "vendor_id": vendor_id,
                "triprouter": trip_router_id,
                "category": _category,
                "create_time": _timestamp
            }
            task_dao.task_dao().create(_json)

        self.redirect('/vendors/' + vendor_id + '/setup/task')
Beispiel #5
0
    def get(self, vendor_id, task_id):
        logging.info("got vendor_id %r in uri", vendor_id)
        logging.info("got task_id %r in uri", task_id)

        ops = self.get_ops_info()

        _task = task_dao.task_dao().query(task_id)
        _task['create_time'] = timestamp_datetime(_task['create_time'])

        _customers = vendor_member_dao.vendor_member_dao().query_pagination(
            vendor_id, 0, PAGE_SIZE_LIMIT)

        # 已分配过该任务的用户剔除
        new_customers = []

        for _customer in _customers:
            _account_id = _customer['account_id']
            _personal_task = personal_task_dao.personal_task_dao(
            ).query_by_task_account(task_id, _account_id)
            if not _personal_task:
                new_customers.append(_customer)

        _customers = new_customers

        for _customer in _customers:
            _customer['create_time'] = timestamp_datetime(
                _customer['create_time'])
            try:
                _customer['account_nickname']
            except:
                _customer['account_nickname'] = ''
            try:
                _customer['account_avatar']
            except:
                _customer['account_avatar'] = ''
            try:
                _customer['rank'] = int(_customer['rank'])
            except:
                _customer['rank'] = 0
            try:
                _customer['comment']
            except:
                _customer['comment'] = ''

        counter = self.get_counter(vendor_id)
        self.render('vendor/task-allocate.html',
                    vendor_id=vendor_id,
                    ops=ops,
                    counter=counter,
                    task=_task,
                    customers=_customers)
Beispiel #6
0
    def get(self, vendor_id):
        logging.info("got vendor_id %r in uri", vendor_id)

        ops = self.get_ops_info()

        tasks = task_dao.task_dao().query_by_vendor(vendor_id)
        trip_routers = trip_router_dao.trip_router_dao().query_by_vendor(
            vendor_id)
        # 从所有线路里分离出没被选中任务的
        for task in tasks:
            task_trip_router = task['triprouter']
            for trip_router in trip_routers:
                trip_router_id = trip_router['_id']
                if (task_trip_router == trip_router_id):
                    trip_routers.remove(trip_router)
                    break

        counter = self.get_counter(vendor_id)
        self.render('vendor/task-create.html',
                    vendor_id=vendor_id,
                    ops=ops,
                    counter=counter,
                    triprouters=trip_routers)
    def get(self, vendor_id, account_id):
        logging.info("got vendor_id %r in uri", vendor_id)
        logging.info("got account_id %r in uri", account_id)

        ops = self.get_ops_info()
        access_token = self.get_access_token()

        url = API_DOMAIN + "/api/clubs/"+vendor_id+"/users/" + account_id
        http_client = HTTPClient()
        headers = {"Authorization":"Bearer " + access_token}
        response = http_client.fetch(url, method="GET", headers=headers)
        logging.info("got response.body %r", response.body)
        data = json_decode(response.body)
        _customer_profile = data['rs']

        _contacts = contact_dao.contact_dao().query_by_account(vendor_id, account_id)

        access_token = self.get_access_token()

        params = {"filter":"account", "account_id":account_id, "page":1, "limit":20,}
        url = url_concat(API_DOMAIN + "/api/orders", params)
        http_client = HTTPClient()
        headers = {"Authorization":"Bearer " + access_token}
        response = http_client.fetch(url, method="GET", headers=headers)
        logging.info("got response.body %r", response.body)
        data = json_decode(response.body)
        rs = data['rs']
        orders = rs['data']

        for order in orders:
            # 下单时间,timestamp -> %m月%d 星期%w
            order['create_time'] = timestamp_datetime(float(order['create_time']))
            # 合计金额
            order['amount'] = float(order['amount']) / 100
            order['actual_payment'] = float(order['actual_payment']) / 100

        # 取任务
        categorys = category_dao.category_dao().query_by_vendor(vendor_id)
        personal_tasks = personal_task_dao.personal_task_dao().query_by_vendor_account(vendor_id,account_id)
        logging.info("got personal_tasks============ %r in uri", len(personal_tasks))

        for personal_task in personal_tasks:
            personal_task['create_time'] = timestamp_datetime(personal_task['create_time'])

            task_id = personal_task['task_id']
            task = task_dao.task_dao().query(task_id)

            trip_router_id = task['triprouter']
            triprouter = trip_router_dao.trip_router_dao().query(trip_router_id)

            personal_task['title'] = triprouter['title']
            personal_task['bk_img_url'] = triprouter['bk_img_url']
            for category in categorys:
                if category['_id'] == task['category']:
                    personal_task['category'] = category['title']
                    break

        counter = self.get_counter(vendor_id)
        self.render('vendor/customer-profile.html',
                access_token=access_token,
                vendor_id=vendor_id,
                ops=ops,
                account_id=account_id,
                counter=counter,
                profile=_customer_profile,
                contacts=_contacts, orders=orders, tasks =personal_tasks)