| 123456789101112131415161718192021222324252627282930313233 |
- import json
- def parse_template(estimate_packet: str):
- tpl = json.loads(estimate_packet)
- return tpl["template"]
- def build_template(rows):
- result = []
- step_map = {}
- for r in rows:
- step = step_map.setdefault(r.step_id, {
- "stepId": r.step_id,
- "stepName": r.step_name,
- "properties": {}
- })
- prop = step["properties"].setdefault(r.option_key_id, {
- "keyId": r.option_key_id,
- "name": r.option_key_name,
- "values": []
- })
- prop["values"].append({
- "valueId": r.option_id,
- "valueText": r.option_name
- })
- for step in step_map.values():
- step["properties"] = list(step["properties"].values())
- result.append(step)
- return result
|