def assignTask(request):
    res = {}

    if request.method == 'POST':
        info = json.loads(request.body)
        vehicle = VehicleAccess.getVehicleById(info['vehicle_id'])
        user = UserAccess.getUserById(vehicle['user_id'])
        if vehicle:
            path = getPath(info['task'])
            if path:
                task = {
                    'origin' : info['task']['origin'],
                    'dest' : info['task']['dest'],
                    'path' : path
                }

                record = {
                    'id' : uuid.uuid1().hex,
                    'vehicle_id' : vehicle['id'],
                    'user_id' : user['id'],
                    'time' : datetime.now(),
                    'task' : task
                }
                TaskRecordAccess.addTaskRecord(record)
                res['result'] = 1
                res['data'] = path

                vehicle['accept'] = 1
                vehicle['task'] = task
                if user['status'] == 2:
                    user['status'] = 3
                    vehicle['status'] = 3
                UserAccess.editUser(user)
                VehicleAccess.editVehicle(vehicle)
            else:
                res['result'] = 0
                res['message'] = 'Can not get the path from baidu map.'
        else:
            res['result'] = 0
            res['message'] = 'The vehicle does not exist!'
    else:
        res['result'] = 0
        res['message'] = 'Wrong request.'

    return HttpResponse(json.dumps(res), content_type="application/json")