scDiffusion: conditional generation of high-quality single-cell data using diffusion model