123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- // element
- import { getModel as createLines } from "../../../elements/lines/model";
- import { getModel as createLine } from "../../../elements/line/model";
- import { getModel as createText } from "../../../elements/text/model";
- import { getModel as createImage } from "../../../elements/image/model";
- import { getModel as createGrids } from "../../../elements/grids/model";
- import { getModel as createPane } from "../../../elements/pane/model";
- import { getModel as createBarcode } from "../../../elements/barcode/model";
- import { getModel as createFillNumber } from "../../../elements/fill-number/model";
- import { getModel as createFillField } from "../../../elements/fill-field/model";
- import { getModel as createFillTable } from "../../../elements/fill-table/model";
- import { getModel as createFillPane } from "../../../elements/fill-pane/model";
- import { getModel as createFillQuestion } from "./fill-question/model";
- import { getModel as createFillLine } from "./fill-line/model";
- // available infos
- export const EDITABLE_ELEMENT = [
- "LINE_HORIZONTAL",
- "LINE_VERTICAL",
- "TEXT",
- "IMAGE",
- "PANE",
- "BARCODE"
- ];
- export const EDITABLE_TOPIC = [
- "FILL_QUESTION",
- "FILL_LINE",
- "FILL_NUMBER",
- "FILL_FIELD",
- "FILL_TABLE",
- "FILL_PANE",
- "LINES",
- "GRIDS"
- ];
- export const ELEMENT_INFOS = {
- LINES: {
- name: "多横线",
- getModel: createLines,
- getDesc: element => {
- return `多横线-行数:${element.lineCount}`;
- }
- },
- LINE_HORIZONTAL: {
- name: "横线",
- getModel: () => createLine("HORIZONTAL"),
- getDesc: () => {
- return `横线`;
- }
- },
- LINE_VERTICAL: {
- name: "竖线",
- getModel: () => createLine("VERTICAL"),
- getDesc: () => {
- return `竖线`;
- }
- },
- TEXT: {
- name: "文本",
- getModel: createText,
- getDesc: element => {
- return `文本-${element.content[0].content.substr(0, 20)}`;
- }
- },
- IMAGE: {
- name: "图片",
- getModel: createImage,
- getDesc: () => {
- return `图片`;
- }
- },
- GRIDS: {
- name: "网格",
- getModel: createGrids,
- getDesc: element => {
- return `网格-${element.columnCount}×${element.rowCount}`;
- }
- },
- PANE: {
- name: "方框",
- getModel: createPane,
- getDesc: () => {
- return `方框`;
- }
- },
- BARCODE: {
- name: "条形码",
- getModel: createBarcode,
- getDesc: element => {
- const name = (element.fields[0] && element.fields[0].name) || "";
- return `条形码-${name}`;
- }
- },
- FILL_QUESTION: {
- name: "选项填涂",
- getModel: createFillQuestion,
- getDesc: element => {
- const endNumber = element.startNumber + element.questionsCount - 1;
- return `选项填涂-${element.startNumber}~${endNumber}`;
- }
- },
- FILL_LINE: {
- name: "填空",
- getModel: createFillLine,
- getDesc: element => {
- const endNumber = element.startNumber + element.questionsCount - 1;
- return `填空-${element.startNumber}~${endNumber}`;
- }
- },
- FILL_NUMBER: {
- name: "号码填涂",
- getModel: createFillNumber,
- getDesc: element => {
- return `号码填涂-${element.name}`;
- }
- },
- FILL_FIELD: {
- name: "变量",
- getModel: createFillField,
- getDesc: element => {
- const fieldNames = element.fields.map(field => field.name).join(",");
- return `变量-${fieldNames}`;
- }
- },
- FILL_TABLE: {
- name: "表格",
- getModel: createFillTable,
- getDesc: element => {
- return `表格-${element.colCount}×${element.rowCount}`;
- }
- },
- FILL_PANE: {
- name: "方格组",
- getModel: createFillPane,
- getDesc: element => {
- return `方格组-${element.paneCount}`;
- }
- }
- };
- export const ELEMENT_LIST = EDITABLE_ELEMENT.map(type => {
- return {
- ...ELEMENT_INFOS[type],
- type
- };
- });
- export const TOPIC_LIST = EDITABLE_TOPIC.map(type => {
- return {
- ...ELEMENT_INFOS[type],
- type
- };
- });
- // 获取元件默认数据结构
- export const getElementModel = type => {
- return { ...ELEMENT_INFOS[type].getModel(), zindex: 9, desc: "" };
- };
- export const getElementName = type => {
- return ELEMENT_INFOS[type].name;
- };
- export const getElementDesc = element => {
- return ELEMENT_INFOS[element.type].getDesc(element);
- };
|