针对您提出的问题,即社保买了19年,换了公司后工作七年,公司只给5天年假是否合法,我们可以从以下几个方面进行详细分析:
首先,我们需要明确的是,年休假的天数是根据职工的累计工作年限来确定的,而不是仅仅根据在当前公司的工作年限。根据《职工带薪年休假条例》的规定,工作满1年不满10年的职工,享受5天带薪年休假;工作满10年不满20年的职工,享受10天带薪年休假;工作满20年的职工,则享受15天带薪年休假。
接下来,我们根据您的具体情况进行分析。您提到社保买了19年,这通常意味着您的累计工作年限至少达到了19年(因为社保的缴纳年限往往与工作年限相匹配,尽管可能存在一些特殊情况,如社保断缴、补缴等,但在此我们假设社保年限与工作年限一致)。既然您的累计工作年限已经超过了10年但不满20年,那么按照《职工带薪年休假条例》的规定,您应该享受10天的带薪年休假。
现在,我们来看您在新公司的情况。您提到换了公司后工作了七年,但年休假只给了5天。这里需要明确的是,无论您在哪个公司工作,只要您的累计工作年限达到了相应的标准,您就应该享受相应的年休假天数。因此,即使您在新公司只工作了七年,但由于您的累计工作年限已经超过了10年,您仍然应该享受10天的带薪年休假。
综上所述,如果公司只给您5天的年休假,而您的累计工作年限已经超过了10年,那么公司的做法是不合法的。您有权要求公司按照您的累计工作年限来安排相应的年休假天数。
最后,我建议您与公司的人力资源部门或相关负责人进行沟通,明确表达您的诉求和依据。如果公司仍然坚持只给您5天的年休假,您可以考虑向当地的劳动监察部门投诉或寻求法律援助来维护自己的合法权益。