| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /**
- * 辈分等级常量(与后端 GenerationLevel 枚举对应)
- * 家庭创建者 generation = 0
- * +n = 向上一 n 代(父母辈=+1,祖辈=+2,曾祖辈=+3)
- * -n = 向下一 n 代(子侄辈=-1,孙辈=-2,曾孙辈=-3)
- */
- var GENERATION_LEVELS = [
- { value: 'great_grandparent', label: '曾祖辈', offset: 3, icon: '👴' },
- { value: 'grandparent', label: '祖辈', offset: 2, icon: '👴' },
- { value: 'parent', label: '父辈', offset: 1, icon: '👨' },
- { value: 'peer', label: '同辈', offset: 0, icon: '👤' },
- { value: 'child', label: '子辈', offset: -1, icon: '👶' },
- { value: 'grandchild', label: '孙辈', offset: -2, icon: '👶' },
- { value: 'great_grandchild', label: '曾孙辈', offset: -3, icon: '👶' }
- ]
- /**
- * 平辈关系类型(仅 generation=peer 时使用)
- */
- var PEER_TYPES = [
- { value: 'spouse', label: '配偶' },
- { value: 'sibling', label: '兄弟姐妹' }
- ]
- /**
- * 根据 generation value 获取显示标签
- */
- function getGenerationLabel(value) {
- for (var i = 0; i < GENERATION_LEVELS.length; i++) {
- if (GENERATION_LEVELS[i].value === value) {
- return GENERATION_LEVELS[i].label
- }
- }
- return ''
- }
- /**
- * 根据 peerType value 获取显示标签
- */
- function getPeerTypeLabel(value) {
- for (var i = 0; i < PEER_TYPES.length; i++) {
- if (PEER_TYPES[i].value === value) {
- return PEER_TYPES[i].label
- }
- }
- return ''
- }
- export default {
- GENERATION_LEVELS: GENERATION_LEVELS,
- PEER_TYPES: PEER_TYPES,
- getGenerationLabel: getGenerationLabel,
- getPeerTypeLabel: getPeerTypeLabel
- }
|