背景
功能背景:系统页面多块区域内容存在实时联动的情况,随便新增一行或者修改一块数据整个页面的数据都可能会受到影响最后发生变化,因此这个页面采用了全量保存。
全量保存特点:1. 所有的数据都在前端增加、修改、删除,操作结束后用户需要实时触发事件来保留数据。2. 由于全量保存的特性所以后端对前端传递的数据进行分类处理。如果库中没有这条数据,则视为是前端用户新添加的数据;如果库中有这条数据,则视为用户修改了这条数据;如果库里的数据并不在用户的入参列表内,则会视为用户在页面上已经删除了这条数据;
以上便是此文记录的应用背景!
问题
能否提供一套可靠的全量保存方案?做到数据不漏,处理准确。
说明
目前的方案能够保证如下:
1. 没有入参,视为用户删除了所有数据;
2. 有入参,库里有对应的数据,视为修改;
3. 有入参,库里没有对应的数据,视为创建;
4. 有入参,与库里数据不匹配,库里有,入参列表没有,视为删除;
5. 有入参,与库里数据不匹配,库里没有,入参列表有,视为创建;
***此方案为个人业务实现,不一定通用,使用时酌情***