首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >颠簸变换阵列

颠簸变换阵列
EN

Stack Overflow用户
提问于 2021-12-15 06:33:56
回答 1查看 58关注 0票数 1

目前我有点卡住了,我需要使用stuck来转换JSON,但是在我的生活中,我无法让数据/结构与我一起工作。

我有需要转换的下列数据集:

代码语言:javascript
复制
{
  "policynumber": "12344",
  "registrationnumber": "TST001",
  "idnumber": "1234567890",
  "policyholder": "Tst Me",
  "policyfromdate": "2021-10-11",
  "policytodate": "2021-10-31",
  "ispolicyvalid": "Yes",
  "policyproductcode": "TST111",
  "policyproductdescription": "New Product",
  "item_parent_section": "Risk",
  "item_subsection_extension": "Risk2",
  "item_original_start_date": "2021-10-11",
  "item_status": "Active",
  "item_sum_insured": "5000",
  "item_description": "Personal Effects",
  "item_asset_no": "ALL0002"
}

预期的结果应该是这样的:

代码语言:javascript
复制
{
  "policyNumber": "12344",
  "registrationNumber": "TST001",
  "idNumber": "1234567890",
  "policyholder": "Tst Me",
  "policyFromDate": "2021-10-11",
  "policyToDate": "2021-10-31",
  "isPolicyValid": "Yes",
  "policyProductCode": "TST111",
  "policyProductDescription": "New Product",
  "riskCategories": {
    "item_parent_section": "Risk",
    "item_subsection_extension": "Risk2",
    "riskItemAllRisk": [
      {
        "item_status": "Active",
        "item_description": "Personal Effects",
        "item_sum_insured": "5000",
        "item_original_start_date": "2021-10-11",
        "item_asset_no": "ALL0002"
      }
    ]
  }
}

我可能在我想要的结果中犯了一个错误,但基本上,"riskItemAllRisk“部分需要在数组中。

我正在做的颠簸变换是:

代码语言:javascript
复制
[
  {
    "operation": "shift",
    "spec": {
      "policynumber": "policyNumber",
      "registrationnumber": "registrationNumber",
      "idnumber": "idNumber",
      "policyholder": "policyholder",
      "policyfromdate": "policyFromDate",
      "policytodate": "policyToDate",
      "ispolicyvalid": "isPolicyValid",
      "policyproductcode": "policyProductCode",
      "policyproductdescription": "policyProductDescription"
    }
  },
  {
    "operation": "default",
    "spec": {
      "riskCategories": {
        "item_parent_section": "itemparentsection",
        "item_subsection_extension": "itemsubsectionextension"
      }
    }
  },
  {
    "operation": "default",
    "spec": {
      "riskItemAllRisk[]": {
        "0": {
          "item_original_start_date": "2021-10-11",
          "item_status": "item_status",
          "item_sum_insured": "item_sum_insured",
          "item_description": "item_description",
          "item_asset_no": "item_asset_no"
        }
      }
    }
  },
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "idNumber": "=toString"
    }
  },
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "itemsuminsured": "=toString"
    }
  }
]

为可怕的代码道歉,但这对我来说是第一次。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-15 07:01:24

一次移位转换就足够了,例如

代码语言:javascript
复制
[
  {
    "operation": "shift",
    "spec": {
      "policynumber": "&",
      "registrationnumber": "&",
      "idnumber": "&",
      "policyholder": "&",
      "policyfromdate": "&",
      "policytodate": "&",
      "ispolicyvalid": "&",
      "policyproductcode": "&",
      "policyproductdescription": "&",
      "item_parent_section": "riskCategories.&",
      "item_subsection_extension": "riskCategories.&",
      "*": "riskCategories.riskItemAllRisk[0].&"
    }
  }
]

其中,item_parent_sectionitem_subsection_extension属性值首先由riskCategories限定,其余的元素由riskCategories.riskItemAllRisk[0]限定

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70359312

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档