2
13693261870
2022-09-16 653761a31dfeb50dd3d007e892d69c90bf0cdafc
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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
<!--
功能描述:后台管理 - 资源管理 - 资源发布 - 业务图层 - 图表设置 - 模板管理 - 新增页面
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:layout="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org" layout:decorator="MasterPage/Layout.Empty">
<head>
    <meta charset="UTF-8" />
    <title>模板管理 - 新增页面</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport" />
    <link rel="stylesheet" th:href="@{${pubzyWebRoot} + 'BootStrap4/assets/css/style.css'}"/>
    <link rel="stylesheet" th:href="@{${pubzyWebRoot} + 'BootStrap4/expand/css/bootstrap-extract.css'}"/>
    <link rel="stylesheet" th:href="@{${pubzyWebRoot} + 'BootStrap4/assets/plugins/bootstrap-datepicker/old_datepaker/datepicker.css'}"/>
    <link rel="stylesheet" th:href="@{${pubzyWebRoot} + 'BootStrap4/expand/plugins/portlet/css/portlet.css'}"/>
    <script th:src="@{${pubzyWebRoot} + 'BootStrap4/expand/plugins/portlet/portlet.js'}"></script>
    <!-- 表单样式  -->
    <script th:src="@{${pubzyWebRoot} + 'BootStrap4/assets/js/jquery.min.js'}"></script>
    <script th:src="@{${pubzyWebRoot} + 'BootStrap4/expand/plugins/layer/layer.js'}"></script>
    <script th:src="@{${pubzyWebRoot} + 'BootStrap4/assets/js/tether.min.js'}"></script>
    <script th:src="@{${pubzyWebRoot} + 'BootStrap4/assets/js/bootstrap.min.js'}"></script>
    <script th:src="@{${pubzyWebRoot} + 'media/js/jquery.form-3.51.0.js'}"></script>
    <script th:src="@{${pubzyWebRoot} + 'media/js/validation/jquery.validate.min.js'}" type="text/javascript"></script>
    <script th:src="@{${pubzyWebRoot} + 'media/js/validation/messages_zh.js'}" type="text/javascript"></script>
    <script th:src="@{${pubzyWebRoot} + 'media/js/validation/additional-methods.min.js'}" type="text/javascript"></script>
    <script th:src="@{${pubzyWebRoot} + 'media/js/yanzhen.js'}" type="text/javascript"></script>
    <script src="/js/jsformat.js" type="text/javascript"></script>
    <script src="/js/base.js" type="text/javascript"></script>
    <style>
        body {
            background-color: white;
            box-sizing: border-box;
            overflow-x: hidden;
        }
 
        .form-control {
            padding: 0.3rem 0.7rem;
            height: 34px;
            display: inline-block;
        }
 
        .control-label {
            padding-top: 0 !important;
            width: 94px;
            float: left;
            line-height: 30px;
            padding-right: 1.2em;
            text-align: right;
        }
 
        .control-group {
            margin-bottom: 1em;
        }
 
        .controls {
            margin-left: 94px;
        }
 
        .row {
            margin-left: 0;
            margin-right: 0;
        }
 
        .col-sm-3,
        .col-sm-6,
        .col-sm-8,
        .col-sm-10,
        .col-sm-12 {
            padding-left: 0;
            padding-right: 0;
        }
 
        .fade {
            display: none;
        }
 
        .in.fade {
            display: block;
        }
 
        .control-group error {
            border-color: #b94a48;
        }
 
        #button {
            color: #fff !important;
            background-color: #039cfd !important;
            border-color: #039cfd !important;
        }
 
        img {
            cursor: pointer;
        }
 
        .nav-tabs > .active > a, .nav-tabs > .active > a:hover, .nav-tabs > .active > a:focus {
            color: #555;
            cursor: default;
            background-color: #fff;
            border: 1px solid #ddd;
            border-bottom-color: transparent;
        }
 
        .portlet {
            margin-bottom: 70px !important;
        }
    </style>
</head>
<body layout:fragment="content">
<form class="form-horizontal"  id="ShuJuYuan" method="post" xmlns:th="http://www.w3.org/1999/xhtml">
    <input type="hidden" id="uploadRootPath"  th:value="${uploadRootPath}"/>
    <div class="portlet box ltblue">
        <div class="portlet-title">
            图形设置
            <div class="caption">
                <i class="fa fa-reorder"></i>
            </div>
            <div class="tools">
                <!--<a class="collapse" onclick="portlet_body_ShowOrHide(this);"></a>-->
            </div>
        </div>
        <div class="portlet-body">
            <input type="hidden" id="echartsid" name="echartsid" th:value="${EchartsConfing.echartsid}" />
            <div class="row">
                <div class="col-sm-8">
                    <div class="control-group">
                        <label class="control-label">图表标题<span style="color: red;">*</span></label>
                        <div class="controls input-icon">
                            <input type="text" id="echartstitle" name="echartstitle" th:value="${EchartsConfing.echartstitle}" class="form-control col-sm-11" required="" maxchar="50" />
                            <span class="input-warning tooltips" data-original-title="">
                                <i class="fa-warning-sign" style="display: none;margin-left:30px;"></i>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
            <div class="row">
                <div class="col-sm-8">
                    <div class="control-group">
                        <label class="control-label">图表图片<span style="color: red;">*</span></label>
                        <div class="controls input-icon">
                            <input id="echartsUrl" name="echartsUrl" class="form-control col-sm-7 date-picker" style="width: 77%;"
                                   type="text" readonly="true" value="" required="" th:value="${EchartsConfing.echartsUrl}">
                            <input type="file" id="filepath" name="filepath" style="display: none; " onchange="uploadfile('filepath')"/>
                            <button type="button" class="btn btn-primary" style="vertical-align: top;" onclick="openDialog('filepath')">选择</button>
                            <span class="input-warning tooltips" data-original-title="">
                                <i class="fa-warning-sign" style="display: none;margin-left:30px;"></i>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
            <div class="row">
                <div class="col-sm-8">
                    <div class="control-group">
                        <label class="control-label">图表类型<span style="color: red;">*</span></label>
                        <div class="controls input-icon">
                            <select id="echartstype" name="echartstype" class="form-control col-sm-11" required="" >
                                <option value="饼状图"  th:selected="${EchartsConfing.echartstype=='饼状图'}">饼状图</option>
                                <option value="柱状图"  th:selected="${EchartsConfing.echartstype=='柱状图'}">柱状图</option>
                                <option value="折线图"  th:selected="${EchartsConfing.echartstype=='折线图'}">折线图</option>
                            </select>
                            <span class="input-warning tooltips" data-original-title="">
                                <i class="fa-warning-sign" style="display: none;margin-left:30px;"></i>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
            <div class="row">
                <div class="col-sm-10">
                    <div class="control-group">
                        <label class="control-label">图表代码<span style="color: red;">*</span></label>
                        <div class="controls input-icon">
                            <textarea id="echartsoption" name="echartsoption" th:text="${EchartsConfing.echartsoption}" class="form-control col-sm-11" style="height: 200px;" required=""></textarea>
                            <span class="input-warning tooltips" data-original-title="">
                                <i class="fa-warning-sign" style="display: none;margin-left:30px;"></i>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="form-actions navbar-fixed-bottom" style="z-index: 0;">
        <div style="float: left;">
            <button class="btn btn-primary" id="addSave" type="button">
                <i class="fa fa-check"></i> 保存
            </button>
            <button class="btn btn-warning" id="close" type="button">
                <i class="fa fa-remove"></i> 关闭
            </button>
        </div>
    </div>
</form>
 
<script>
    $(function () {
        cheackForm("ShuJuYuan");
        if ($("#echartsoption").text() != "") {
            do_js_beautify("echartsoption");
        }
    });
 
    //格式化图表样式代码
    function do_js_beautify(id) {
        js_source = document.getElementById(id).value.replace(/^\s+/, '');
        tabsize = 1;
        tabchar = '\t';
        document.getElementById(id).value = js_beautify(js_source, tabsize, tabchar);
        return false;
    }
 
    //压缩图表样式代码,格式化后直接保存会出现换行等符号
    function pack_js(base64, id) {
        var input = document.getElementById(id).value.replace(/^\s+|\s+$/g, "");
        var packer = new Packer;
        if (base64) {
            var output = packer.pack(input, 1, 0);
        } else {
            var output = packer.pack(input, 0, 0);
        }
        $("#" + id).val(output);
    }
 
    function openDialog(id){
        document.getElementById(id).click();
    }
    function uploadfile(id){
        if(document.getElementById(id).value!='') {
            var formdata = new FormData();
            var fileName = document.getElementById(id).value;
            formdata.append("json_filesNameArray", fileName);
            var files = document.getElementById(id).files;
            for(var i=0; i< files.length; i++){
                formdata.append("myFile",files[i]);   // 文件对象
            }
            $.ajax({
                url: "/res/common/uploadfile",
                type: "POST",
                data: formdata,
                cache: false,
                async: false,
                processData: false,  // 告诉jQuery不要去处理发送的数据
                contentType: false,  // 告诉jQuery不要去设置Content-Type请求头
                success: function (data) {
                    var json=eval('('+data+')');
                    if (json.result == '0') {
                        alert("上传失败");
                    }
                    else if(json.result == '3') {
                        alert("上传失败,此文件名已存在!");
                    }
                    else{
                        var names=json.Path;
                        $("#echartsUrl").val(names);
                    }
                }
            });
        }
    }
 
    //保存
    $('#addSave').on('click', function () {
        if ($('#ShuJuYuan').valid()) {
            pack_js(0, "echartsoption");
            $('#ShuJuYuan').ajaxSubmit({
                url:  "/res/common/saveChartTemplat",
                type: 'post',
                dataType: 'text',
                data: {},
                success: function (data) {
                    var json = eval('('+data+')');
                    if (json.count == "1") {
                        alert("保存成功!");
                        window.parent.location.reload(); //刷新父页面
                        var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
                        parent.layer.close(index);
                    } else {
                        alert("保存失败!");
                    }
                },
                error: function (e) {
                    alert(e.message);
                }
            });
        } else {
            // alert("您输入的信息存在错误,请更正后再提交!");
        }
    });
 
    $("#close").on("click",function () {
        var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
        parent.layer.close(index);
    })
</script>
 
</body>
</html>