{{define "content"}}

换基线

「底座」是导出 rondbackup 时铺数据的底稿:导出只覆盖我们托管的那几张实体表, 其余内容(Core Data 元数据、索引、ZRAWVISIT 原始采样点…)全部从底座原样带出来。 所以底座必须是手机导出的包;换底座不动站点里的任何数据,只换底稿。
{{if not .Dataset}}
📦
还没有导入任何数据集,先上传一份备份再说。
{{else}}

当前底座

数据集「{{trunc .Dataset.Name 40}}」(#{{.Dataset.ID}})的导出底稿
项目值
状态 {{if .Status.Exists}} 已就绪 {{size .Status.Size}} · {{dtt .Status.ModTime}} {{else}} 文件缺失 导出时会按记档自动重建;也可以点下面的「重建」。 {{end}}
来源 {{if .Status.SHA}} {{trunc .Status.Name 40}} · {{dtt .Status.At}} {{if .FromOriginal}}与数据集原始包同一份{{end}} {{else}} 数据集最初上传的那份包 {{trunc .OrigName 40}} {{end}}
{{if .Status.Exists}}
底座里有什么(换底座前后可以对着看)
{{if .CountsErr}}
{{.CountsErr}}
{{else}}
{{range .Counts}} {{end}}
表内容行数
{{.Table}} {{.Label}} {{num .N}}
{{end}} {{else}}
{{end}}
{{if .PendingSHA}}
刚上传的 {{trunc .PendingName 40}} 与当前数据集只对得上 {{num .PendingMatched}}/{{num .PendingWith}} 条带 UUID 的到访(正常应当有九成以上)。 它可能不是同一批数据的手机包——换下去会让导出包整个错位:站点每一行都在新底座里 认不出身份,于是全部按「新行」插到最大编号之后,真机上就是「这些到访全变成新的、老记录还在」。
放弃
{{end}}

换成另一份包当底座

在 rond App 里重新导出一份备份,传到这里。换完之后: 到访数、地点、备注、主题都不变;导出 rondbackup 立刻以新底座为准。 判据有两条——这份包得跟当前数据集是同一批数据(按到访 UUID 认),而且得真的能导出成功。 换之前旧底座会留档,随时可以回滚。
注意:导出的行集合以站点数据为准(另加少量「导入时进不了站点、 靠原始留档补回」的行),所以这份包里如果有站点还没导入过的到访(手机上新记录的那些), 它们不会进导出包。想让它们进包,先用后台的「分析差异」把这份备份合并进来,再来换底座。
单份上限 {{size .MaxSize}}。

旧底座留档

每次替换前都会把旧底座改名留一份(最近 3 份)。换错了就回滚。
{{if .Status.Backups}}
{{range .Status.Backups}} {{end}}
留档时间大小
{{trunc .Name 48}} {{dt .At}} {{size .Size}}
回滚后底座的「来源」记档会清空(表示它来自数据集最初那份包),导出照常可用。
{{else}}
🗂️
还没有留档——这个数据集还没换过底座。
{{end}}
{{end}}
{{end}}