根据你的问题解答如下,
1、合同解除有约定解除,有法定解除,如果合同中约定了解除条件,一旦条件成就后合同就解除,如果没有约定,则按照法定解除,在以下的情况下合同可以解除:
(一)因不可抗力致使不能实现合同目的;
(二)在履行期限届满之前,当事人一方明确表示或者以自己的行为表明不履行主要债务;
(三)当事人一方迟延履行主要债务,经催告后在合理期限内仍未履行;
(四)当事人一方迟延履行债务或者有其他违约行为致使不能实现合同目的;
(五)法律规定的其他情形。
2、承揽合同除了以上可以解除的规定外,还规定了定做人的解除权,定作人可以随时解除承揽合同,造成承揽人损失的,应当赔偿损失。