Untitled

 avatar
unknown
plain_text
a year ago
6.6 kB
4
Indexable
getDataTableColumn(columnName, type?, isTranslate?, isPillbox?, sortHeader?) {
    let name;
    switch (columnName) {
      case 'select':
        if (type) {
          name = null;
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = null;
        } else {
          name = null;
        }
        break;
      case 'name':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'full_name';
        } else {
          name = `element?.student_id ? element?.student_id?.last_name + ' ' + element?.student_id?.first_name + ' ' + this.translate.instant(element?.student_id?.civility) : ''`;
        }
        break;
      case 'title':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'rncp_title_id';
        } else {
          name = `element?.rncp_title_id?.short_name`;
        }
        break;
      case 'class':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'class_id';
        } else {
          name = `element?.class_id?.name`;
        }
        break;
      case 'school':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'school_id';
        } else {
          name = `element?.school_id?.short_name`;
        }
        break;
      case 'lastChangePR':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'platform_registration.last_change';
        } else {
          name = `this.formatDate(element?.platform_registration?.last_change)`;
        }
        break;
      case 'formerStatusPR':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'platform_registration.former_status';
        } else {
          name = `element?.platform_registration?.former_status ? this.translate.instant(element?.platform_registration?.former_status) : ''`;
        }
        break;
      case 'changesByPR':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'platform_registration.changes_by';
        } else {
          name = `element?.platform_registration?.changes_by?.last_name && element?.platform_registration?.changes_by?.first_name && element?.platform_registration?.changes_by?.civility ? element?.platform_registration?.changes_by?.last_name +
            ' ' +
            element?.platform_registration?.changes_by?.first_name +
            ' ' +
            this.translate.instant(element?.platform_registration?.changes_by.civility) : ''`;
        }
        break;
      case 'lastChangeTR':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'title_registration.last_change';
        } else {
          name = `this.formatDate(element?.title_registration?.last_change)`;
        }
        break;
      case 'formerStatusTR':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'title_registration.former_status';
        } else {
          name = `element?.title_registration?.former_status ? this.translate.instant(element?.title_registration?.former_status) : ''`;
        }
        break;
      case 'changesByTR':
        if (type) {
          name = null;
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'title_registration.changes_by';
        } else {
          name = `element?.title_registration?.changes_by?.last_name && element?.title_registration?.changes_by?.first_name && element?.title_registration?.changes_by?.civility ? element?.title_registration?.changes_by?.last_name +
            ' ' +
            element?.title_registration?.changes_by?.first_name +
            ' ' +
            this.translate.instant(element?.title_registration?.changes_by.civility) : ''`;
        }
        break;
      case 'action':
        if (type) {
          name = null;
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = null;
        } else {
          name = null;
        }
        break;
      case 'currentStatusPR':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'platform_registration.current_status';
        } else {
          name = `element?.platform_registration?.current_status ? this.translate.instant(element?.platform_registration?.current_status) : ''`;
        }
        break;
      case 'currentStatusTR':
        if (type) {
          name = 'direct';
        } else if (isTranslate) {
          name = false;
        } else if (isPillbox) {
          name = false;
        } else if (sortHeader) {
          name = 'title_registration.current_status';
        } else {
          name = `element?.title_registration?.current_status ? this.translate.instant(element?.title_registration?.current_status) : ''`;
        }
        break;
      default:
        name = '';
        break;
    }
    return name;
  }