Technically, the injection at t=1 is called an event. An event normally requires reconfiuration of an ODE system. More on dsolve events under ?dsolve,numeric,Events. My understanding of the event options (maybe I am wrong) is that your event (ifelse(t=1,Dose,0)) cannot be given as an option. What you could do instead is splitting the problem at the event into two problems (one before and one after the event) and then plot everything with plots,display. By doing so the event becomes an initial condition for the second problem
However, before you do so, have a look at the event. As you defined it, it does not add any dose to the system because the timespan is infinite small. You need to define an injection amount. I have done this below by introducing a time span epsilon
restart;
k12 := 0.0452821;
k21 := 0.0641682;
k1x := 0.00426118;
Dose := 484;
Inj := Heaviside(t - 1) - Heaviside(t - 1 - epsilon);
epsilon := 0.1;
ode_sys := diff(SA2(t), t) = SA1(t)*k12 - SA2(t)*k21, diff(SA1(t), t) = Inj - k1x*SA1(t);
ics := SA2(0) = 0, SA1(0) = 0;
Solution1 := dsolve({ics, ode_sys}, {SA1(t), SA2(t)}, numeric);
plots:-odeplot(Solution1, [[t, SA1(t), color = "red", thickness = 1], [t, SA2(t), color = "blue", thickness = 1]], t = 0 .. 500, labels = ["Time t", "Salicylic acid"], labeldirections = [horizontal, vertical]);