package com.lantone.qc.trans.changx;

import com.google.common.collect.Lists;
import com.lantone.qc.pub.model.doc.AnesthesiaRelatedDoc;
import com.lantone.qc.pub.model.vo.MedrecVo;
import com.lantone.qc.pub.util.FastJsonUtils;
import com.lantone.qc.trans.ModelDocTrans;
import com.lantone.qc.trans.comsis.OrdinaryAssistant;

import java.util.List;
import java.util.Map;

/**
 * @Description:
 * @Author: HUJING
 * @Date: 2020/5/11 16:23
 */
public class ChangxAnesthesiaRelatedDocTrans extends ModelDocTrans {
    @Override
    public List<AnesthesiaRelatedDoc> extract(MedrecVo medrecVo) {
        List<AnesthesiaRelatedDoc> retList = Lists.newArrayList();
        List<String> contents = (List) medrecVo.getContent().get("content");
        contents.forEach(content -> {
            retList.add(getAnesthesiaRelatedDoc((Map) FastJsonUtils.getJsonToMap(content)));
        });
        return retList;
    }

    private AnesthesiaRelatedDoc getAnesthesiaRelatedDoc(Map<String, String> content) {
        Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(content, keyContrasts);
        AnesthesiaRelatedDoc anesthesiaRelatedDoc = new AnesthesiaRelatedDoc();
        anesthesiaRelatedDoc.setStructureMap(structureMap);
        anesthesiaRelatedDoc.setPageData((Map) content);
        return anesthesiaRelatedDoc;
    }

    private List<String> keyContrasts = Lists.newArrayList(
            "组织手术名称=手术名称"
    );
}
