## Symbolic Representation

To solve the given optimization problem, we first need to convert the natural language description into a symbolic representation.

Let's define the symbolic variables as follows:
- $x_1$ represents the number of bottles of Eucalyptus lotion.
- $x_2$ represents the number of bottles of Citrus lotion.

The objective is to maximize the total profit. The profit from $x_1$ bottles of Eucalyptus lotion is $1x_1$ and from $x_2$ bottles of Citrus lotion is $4x_2$. Therefore, the objective function can be represented as:
\[ \text{Maximize:} \quad 1x_1 + 4x_2 \]

The constraints given are:
1. No more than 1500 bottles of lotion will be sold every month: $x_1 + x_2 \leq 1500$
2. The store owner does not plan to invest more than $10000 in inventory:
\[ 6x_1 + 8x_2 \leq 10000 \]
3. Non-negativity constraints, as the number of bottles cannot be negative:
\[ x_1 \geq 0, \quad x_2 \geq 0 \]

## Symbolic Representation in JSON Format

```json
{
    'sym_variables': [('x1', 'Eucalyptus lotion'), ('x2', 'Citrus lotion')],
    'objective_function': '1*x1 + 4*x2',
    'constraints': [
        'x1 + x2 <= 1500',
        '6*x1 + 8*x2 <= 10000',
        'x1 >= 0',
        'x2 >= 0'
    ]
}
```

## Gurobi Code in Python

```python
import gurobipy as gp

# Create a new model
model = gp.Model("Lotion_Optimization")

# Define the variables
x1 = model.addVar(name="Eucalyptus", lb=0, vtype=gp.GRB.INTEGER)  # Bottles of Eucalyptus lotion
x2 = model.addVar(name="Citrus", lb=0, vtype=gp.GRB.INTEGER)     # Bottles of Citrus lotion

# Objective function: Maximize profit
model.setObjective(1*x1 + 4*x2, gp.GRB.MAXIMIZE)

# Constraints
model.addConstr(x1 + x2 <= 1500, name="Total_Bottles")          # No more than 1500 bottles
model.addConstr(6*x1 + 8*x2 <= 10000, name="Inventory_Cost")   # Inventory cost not exceeding $10000

# Solve the model
model.optimize()

# Print the results
if model.status == gp.GRB.OPTIMAL:
    print(f"Optimal solution found. Stock {x1.varValue} bottles of Eucalyptus lotion and {x2.varValue} bottles of Citrus lotion.")
    print(f"Maximum profit: ${1*x1.varValue + 4*x2.varValue}")
else:
    print("No optimal solution found.")
```