createdom.js
5.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
import {
gridHTML,
menuToolBar,
flow,
columnHeaderHTML,
maskHTML,
colsmenuHTML,
rightclickHTML,
inputHTML,
filtermenuHTML,
filtersubmenuHTML,
sheetconfigHTML,
} from '../controllers/constant';
import luckysheetConfigsetting from '../controllers/luckysheetConfigsetting';
import luckysheetPostil from '../controllers/postil';
import { datagridgrowth } from './getdata';
import editor from './editor';
import rhchInit from './rhchInit';
import { replaceHtml } from '../utils/util';
import Store from '../store';
import locale from '../locale/locale';
export default function luckysheetcreatedom(colwidth, rowheight, data, menu, title) {
// //最少30行
// if(rowheight < 30){
// rowheight = 30;
// }
// //最少22列
// if(colwidth < 22){
// colwidth = 22;
// }
let gh = gridHTML();
gh = replaceHtml(gh, { "logotitle": title });//设置title
gh = replaceHtml(gh, { "menu": menuToolBar() });//设置需要显示的菜单
// if (data.length == 0) {
// Store.flowdata = datagridgrowth(data, rowheight, colwidth);
// }
// else if (data.length < rowheight && data[0].length < colwidth) {
// Store.flowdata = datagridgrowth(data, rowheight - data.length, colwidth - data[0].length);
// }
// else if (data.length < rowheight) {
// Store.flowdata = datagridgrowth(data, rowheight - data.length, 0);
// }
// else if (data[0].length < colwidth) {
// Store.flowdata = datagridgrowth(data, 0, colwidth - data[0].length);
// }
// else {
// Store.flowdata = data;
// }
let flowHTML = flow;
if(Store.config == null){
Store.config = {};
}
rhchInit(rowheight, colwidth);
const _locale = locale();
const locale_info = _locale.info;
let addControll = '<button id="luckysheet-bottom-add-row" class="btn btn-default">'+locale_info.add+'</button><input id="luckysheet-bottom-add-row-input" type="text" class="luckysheet-datavisual-config-input luckysheet-mousedown-cancel" placeholder="'+(luckysheetConfigsetting.addRowCount || 100)+'"><span style="font-size: 14px;">'+ locale_info.row +'</span><span style="font-size: 14px;color: #9c9c9c;">('+locale_info.addLast+')</span>';
let backControll = ' <button id="luckysheet-bottom-bottom-top" class="btn btn-default" style="">'+ locale_info.backTop +'</button>';
// let pageControll = ' <span id="luckysheet-bottom-page-info" style="font-size: 14px;color: #f34141;">共'+ luckysheetConfigsetting.pageInfo.totalPage +'页,当前已显示'+ (luckysheetConfigsetting.pageInfo.currentPage) +'页,每页'+ luckysheetConfigsetting.pageInfo.pageSize +'条</span> <button id="luckysheet-bottom-page-next" class="btn btn-danger" style="">下一页</button>';
let pageInfo = replaceHtml(locale_info.pageInfo,{
total:luckysheetConfigsetting.total?luckysheetConfigsetting.total:"",
totalPage:luckysheetConfigsetting.pageInfo.totalPage?luckysheetConfigsetting.pageInfo.totalPage:"",
currentPage:luckysheetConfigsetting.pageInfo.currentPage?luckysheetConfigsetting.pageInfo.currentPage:"",
});
let pageControll = ' <span id="luckysheet-bottom-page-info" style="font-size: 14px;color: #f34141;">'+ pageInfo +'</span> <button id="luckysheet-bottom-page-next" class="btn btn-danger" style="">下一页</button>';
let pageControll2 = ' <span id="luckysheet-bottom-page-info" style="font-size: 14px;color: #f34141;">'+pageInfo+'</span>';
let bottomControll = "";
if(luckysheetConfigsetting.enableAddRow){
bottomControll += addControll;
}
if(luckysheetConfigsetting.enablePage){
if(parseInt(luckysheetConfigsetting.pageInfo.totalPage) == 1){
bottomControll += pageControll2;
}
else{
bottomControll += pageControll;
}
}
if(luckysheetConfigsetting.enableAddBackTop){
bottomControll += backControll;
}
let flowstr = replaceHtml('<div id="luckysheetcoltable_0" class="luckysheet-cell-flow-col"> <div id ="luckysheet-sheettable_0" class="luckysheet-cell-sheettable" style="height:${height}px;width:${width}px;"></div><div id="luckysheet-bottom-controll-row" class="luckysheet-bottom-controll-row"> '+ bottomControll +' </div> </div>', { "height": Store.rh_height, "width": Store.ch_width - 1 });
let colsheader = replaceHtml(columnHeaderHTML, { "width": Store.ch_width, "index": 0, "column": "" });
flowHTML = replaceHtml(flowHTML, { "width": Store.ch_width, "flow": flowstr, "index": 0 });
gh = replaceHtml(gh, { "flow": flowHTML, "rowHeader": "<div style='height:" + Store.rh_height + "px' id='luckysheetrowHeader_0' class='luckysheetsheetchange'></div>", "columnHeader": colsheader, "functionButton": luckysheetConfigsetting.functionButton });//设置需要显示的菜单
$("#" + Store.container).append(gh);
$("#luckysheet-scrollbar-x div").width(Store.ch_width);
$("#luckysheet-scrollbar-y div").height(Store.rh_height + Store.columnHeaderHeight - Store.cellMainSrollBarSize - 3);
//新建行菜单
$("body").first().append(maskHTML);
$("body").first().append(colsmenuHTML);
$("body").first().append(rightclickHTML());
$("body").first().append(inputHTML);
$("body").first().append(replaceHtml(filtermenuHTML(), { "menuid": "filter" }));
$("body").first().append(replaceHtml(filtersubmenuHTML(), { "menuid": "filter" }));
$("body").first().append(sheetconfigHTML());
$("#luckysheet-rows-h").width((Store.rowHeaderWidth-1.5));
$("#luckysheet-cols-h-c").height((Store.columnHeaderHeight-1.5));
$("#luckysheet-left-top").css({width:Store.rowHeaderWidth-1.5, height:Store.columnHeaderHeight-1.5});
// //批注
// luckysheetPostil.buildAllPs(Store.flowdata);
// $("#luckysheet_info_detail_input").val(luckysheetConfigsetting.title);
}