import lodash from 'lodash';
import {InputProperty} from '../entity/renderEntity';
let propObj = {
    "input":{

    }
}
// 转换旧版本数据的json，修改为符合新版本渲染的json
function converter(type,json) {
    let props = {};
    switch(type){
        case "1.0": // 根据新旧版本数据进行转换，如果是旧版本的数据就是1.0，为了兼容旧数据，我们仍然使用旧版本的数据进行渲染
            props = converter1(json);
        case "2.0": // 如果是新版本，我们的组件会进行升级，升级后使用新的组件，那么参数就使用新的对象
            props = converter2(json);
        default:
            break;
    }
    return props;
}

function converter1(json){
    let props = {};
    switch (json.controlType) {
        case "input": // 输入框
            props = new InputProperty(json);
            break;
        case "textarea": // 多行文本
            break;
        case "password": // 密码
            break;
        case "currency": // 货币
            break;
        case "select": // 下拉
            break;
        case "radio": // 单选
            break;
        case "checkbox": // 复选框
            break;
        case "time": // 时间
            break;
        case "contactParty": // 联系人
            break;
        case "enclosure": // 附件
            break;
        case "enclosureButton": // 附件按钮
            break;
        case "enclosureView": // 附件查看
            break;
        case "iframeLink": // iframe
            break;
        case "pictureSet": // 图片
            break;
        case "titleBox": // 标题框
            break;
        case "addComments": // 追加意见
            break;
        case "displayBox": // 展示框
            break;
        case "dividingLine": // 分割线
            break;
        case "group": // group分组
            break;
        case "tabs": // tabs
            break;
        case "blankLine": // 空行
            break;
        case "blankCol": // 空列
            break;
        case "hyperlink": // 超链接
            break;
        case "cascadeSelect": // 多级联组件
            break;
        case "cascadeSelectOne": // 单级联组件
            break;
        case "ejectData": // 弹出数据表
            break;
        case "mapManagement": // 打点定位
            break;
        case "regionalContour": // 区域轮廓
            break;
        case "viewList": // 查看列表
            break;
        case "editList": // 编辑列表
            break;
        case "diyButton": // 自定义按钮
            break;
        case "realTimeCount": // 实时计算
            break;
        // case "activeCount": //
        //     break;
        case "dynamicPanel": // 动态面板
            break;
        // case "textFieldSet":
        //     break;
        case "sequence": // 自增序列
            break;
        case "switchButton": // 开关
            break;
        case "chartView": // 数据图表
            break;
        case "dashBd": // 大屏
            break;
        case "userSelect": // 用户选择
            break;
        case "workFlow": // 工作流
            break;
        case "compositeView":  // 复合视图
            break;
        case "editTable": // 编辑表单
            break;
        case "viewTableForm": // 查看表单
            break;
        case "diyComponent": // 自定义组件
            break;
        case "rate": // 评分
            break;
        case "step": // 步骤条
            break;
        default:
            break;
    }
    console.log(props);
    return props;
}
function converter2(json){
    let props = {};
    switch (json.controlType) {
        case "input": // 输入框
            break;
        case "textarea": // 多行文本
            break;
        case "password": // 密码
            break;
        case "currency": // 货币
            break;
        case "select": // 下拉
            break;
        case "radio": // 单选
            break;
        case "checkbox": // 复选框
            break;
        case "time": // 时间
            break;
        case "contactParty": // 联系人
            break;
        case "enclosure": // 附件
            break;
        case "enclosureButton": // 附件按钮
            break;
        case "enclosureView": // 附件查看
            break;
        case "iframeLink": // iframe
            break;
        case "pictureSet": // 图片
            break;
        case "titleBox": // 标题框
            break;
        case "addComments": // 追加意见
            break;
        case "displayBox": // 展示框
            break;
        case "dividingLine": // 分割线
            break;
        case "group": // group分组
            break;
        case "tabs": // tabs
            break;
        case "blankLine": // 空行
            break;
        case "blankCol": // 空列
            break;
        case "hyperlink": // 超链接
            break;
        case "cascadeSelect": // 多级联组件
            break;
        case "cascadeSelectOne": // 单级联组件
            break;
        case "ejectData": // 弹出数据表
            break;
        case "mapManagement": // 打点定位
            break;
        case "regionalContour": // 区域轮廓
            break;
        case "viewList": // 查看列表
            break;
        case "editList": // 编辑列表
            break;
        case "diyButton": // 自定义按钮
            break;
        case "realTimeCount": // 实时计算
            break;
        // case "activeCount": //
        //     break;
        case "dynamicPanel": // 动态面板
            break;
        // case "textFieldSet":
        //     break;
        case "sequence": // 自增序列
            break;
        case "switchButton": // 开关
            break;
        case "chartView": // 数据图表
            break;
        case "dashBd": // 大屏
            break;
        case "userSelect": // 用户选择
            break;
        case "workFlow": // 工作流
            break;
        case "compositeView":  // 复合视图
            break;
        case "editTable": // 编辑表单
            break;
        case "viewTableForm": // 查看表单
            break;
        case "diyComponent": // 自定义组件
            break;
        case "rate": // 评分
            break;
        case "step": // 步骤条
            break;
        default:
            break;
    }
    return props;
}

export{
    converter
}