再次修正保存逻辑，这里bug真多。。。