Other causes are hypothyroidism, cervical dysplasia, cervical polyps, cervicitis (infection/inflammation of cervix), vaginitis (infection/inflammation of vagina), cervical and uterine cancer, uterine fibroids, hormonal imbalance, use of blood thinners, genital ulcers, STDs
and stress. Hypothyroidism
and hormone imbalance should be ruled out first as you also have
weight gain. As SurgiMenopause said, you can consult a endocrinologist.
Pain in joints can be due to low Vit D.