<!doctype html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <base th:href="${#request.getContextPath() + '/'}">
    <meta charset="utf-8">
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <link rel="stylesheet" href="assets/fonts/font-awesome/css/font-awesome.css"/>
    <link rel="stylesheet" href="assets/layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="assets/layuiadmin/style/admin.css" media="all">
    <link rel="stylesheet" type="text/css" href="assets/js/vendor/viewer/viewer.min.css">
</head>
<body>
<div class="layui-fluid layui-anim layui-anim-fadein">
    <div class="layui-card">
        <div class="layui-card-header">
            <span class="layui-breadcrumb" lay-filter="breadcrumb" style="visibility: visible;">
              <a class="close" href="javascript:void(0);">上级列表</a><span lay-separator="">/</span>
              <a href="javascript:void(0);"><cite>新增内容</cite></a>
            </span>
        </div>
        <div class="layui-card-body" style="padding: 15px;">
            <form class="layui-form layui-form-pane" lay-filter="dataForm">
                <div class="layui-form-item">
                    <label class="layui-form-label">组织名称<span style="color: red;vertical-align: middle;">*</span></label>
                    <div class="layui-input-block">
                        <input type="text" id="organizeName" name="organizeName" class="layui-input" lay-verify="required" value="" placeholder="请输入组织名称"  maxlength="100">
                    </div>
                </div>
                <div class="layui-form-item layui-row">
                    <div class="layui-col-lg6">
                        <input type="hidden" name="organizeTypeName" id="organizeTypeName" value="">
                        <input type="hidden" name="organizeTypeCode" id="organizeTypeCode" value="">
                        <label class="layui-form-label">组织类型<span style="color: red;vertical-align: middle;">*</span></label>
                        <div class="layui-input-block layui-form" id="organizeTypeSelectTemplateBox" lay-filter="organizeTypeSelectTemplateBox"></div>
                        <script id="organizeTypeSelectTemplate" type="text/html">
                            <select id="organizeType" name="organizeType" lay-filter="organizeType" lay-verify="required" lay-search>
                                <option value="">请选择组织类型</option>
                                {{# for(var i = 0, item; item = d[i++];) { }}
                                <option value="{{item.dataId}},{{item.dataSummary}}">{{item.dataName}}</option>
                                {{# } }}
                            </select>
                        </script>
                    </div>
                    <div class="layui-col-lg6">
                        <input type="hidden" name="organizeLevelName" id="organizeLevelName" value="">
                        <input type="hidden" name="organizeLevelCode" id="organizeLevelCode" value="">
                        <label class="layui-form-label">组织层级<span style="color: red;vertical-align: middle;">*</span></label>
                        <div class="layui-input-block layui-form" id="organizeLevelSelectTemplateBox" lay-filter="organizeLevelSelectTemplateBox"></div>
                        <script id="organizeLevelSelectTemplate" type="text/html">
                            <select id="organizeLevel" name="organizeLevel" lay-search lay-filter="organizeLevel" lay-verify="required">
                                <option value="">请选择组织层级</option>
                                {{# for(var i = 0, item; item = d[i++];) { }}
                                <option value="{{item.dataId}},{{item.dataSummary}}">{{item.dataName}}</option>
                                {{# } }}
                            </select>
                        </script>
                    </div>
                </div>
                <div class="layui-form-item">
                    <label class="layui-form-label" style="width: 122px;">业务指导部门<span style="color: red;vertical-align: middle;">*</span></label>
                    <div class="layui-input-block" style="margin-left: 122px;">
                        <input type="text" id="businessGuidanceDept" name="businessGuidanceDept" lay-verify="required" class="layui-input" value="" placeholder="请输入业务指导部门"  maxlength="200">
                    </div>
                </div>
                <div class="layui-form-item layui-row">
                    <div class="layui-col-lg4">
                        <label class="layui-form-label">人员数量<span style="color: red;vertical-align: middle;">*</span></label>
                        <div class="layui-input-block">
                            <input type="number" id="userCount" name="userCount" class="layui-input" value="" placeholder="请输入人员数量" lay-verify="required|integer">
                        </div>
                    </div>
                    <div class="layui-col-lg4">
                        <label class="layui-form-label">所在地<span style="color: red;vertical-align: middle;">*</span></label>
                        <input type="hidden" id="locationId" name="locationId" class="layui-input" value="" placeholder="请输入一级区域ID"  maxlength="36">
                        <input type="hidden" id="locationCode" name="locationCode" class="layui-input" value="" placeholder="请输入一级区域名称"  maxlength="255">
                        <div class="layui-input-block">
                            <input type="text" id="location" name="location" class="layui-input" value="" placeholder="点击选择所在地"  maxlength="11"lay-verify="required">
                        </div>
                    </div>
                    <div class="layui-col-lg4">
                        <label class="layui-form-label">所属网格<span style="color: red;vertical-align: middle;">*</span></label>
                        <div class="layui-input-block layui-form" id="gridSelectTemplateBox" lay-filter="gridSelectTemplateBox"></div>
                        <script id="gridSelectTemplate" type="text/html">
                            <select id="grid" name="grid" lay-filter="grid"lay-verify="required" lay-search>
                                <option value="">请选择网格</option>
                                {{# for(var i = 0, item; item = d[i++];) { }}
                                <option value="{{item.gridId}}">{{item.gridName}}</option>
                                {{# } }}
                            </select>
                        </script>
                    </div>
                </div>
                <div class="layui-form-item layui-form-text">
                    <label class="layui-form-label">主要职能<span style="color: red;vertical-align: middle;">*</span></label>
                    <div class="layui-input-block">
                        <div id="mainFunction"></div>
                    </div>
                </div>
                <div class="layui-form-item layui-layout-admin">
                    <div class="layui-input-block">
                        <div class="layui-footer" style="left: 0;">
                            <button type="button" class="layui-btn" lay-submit lay-filter="submitForm">提交新增</button>
                            <button type="button" class="layui-btn layui-btn-primary close">返回上级</button>
                        </div>
                    </div>
                </div>
            </form>
        </div>
    </div>
</div>
<script src="assets/js/vendor/wangEditor/wangEditor.min.js"></script>
<script src="assets/js/vendor/ckplayer/ckplayer/ckplayer.js"></script>
<script src="assets/js/vendor/viewer/viewer.min.js"></script>
<script src="assets/layuiadmin/layui/layui.js"></script>
<script>
    layui.config({
        base: 'assets/layuiadmin/' //静态资源所在路径
    }).extend({
        index: 'lib/index' //主入口模块
    }).use(['index', 'form', 'laydate', 'laytpl'], function(){
        var $ = layui.$;
        var form = layui.form;
        var laytpl = layui.laytpl;
        var laydate = layui.laydate;
        var wangEditor = window.wangEditor;
        var wangEditorObj = {};
        var viewerObj = {};

        // 选择所在地
        $(document).on('click', '#location', function() {
            top.dialog.open({
                title: '选择地区',
                url: top.restAjax.path('route/mongo/area/get-select?areaName={areaName}', [encodeURI($('#location').val())]),
                width: '800px',
                height: '225px',
                onClose: function () {
                    var selectedAreaArray = top.dialog.dialogData.selectedAreaArray;
                    var areaCode = '';
                    var areaName = '';
                    if (selectedAreaArray.length > 0) {
                        areaCode = selectedAreaArray[selectedAreaArray.length - 1].areaCode;
                        for (var i = 0, item; item = selectedAreaArray[i++];) {
                            if (areaName) {
                                areaName += ',';
                            }
                            areaName += item.areaName;
                        }
                        $('#locationCode').val(areaCode);
                        $('#location').val(areaName);
                    }
                    initGridSelect(areaCode);
                }
            })
        });

        // 初始化地区网格
        function initGridSelect(areaCode) {
            if(!areaCode) {
                laytpl(document.getElementById('gridSelectTemplate').innerHTML).render([], function(html) {
                    document.getElementById('gridSelectTemplateBox').innerHTML = html;
                });
                form.render('select', 'gridSelectTemplateBox');
                return;
            }
            top.restAjax.get(top.restAjax.path('api/grid/grid-list/{areaCode}', [areaCode]), {}, null, function(code, data, args) {
                laytpl(document.getElementById('gridSelectTemplate').innerHTML).render(data, function(html) {
                    document.getElementById('gridSelectTemplateBox').innerHTML = html;
                });
                form.render('select', 'gridSelectTemplateBox');
            }, function(code, data) {
                top.dialog.msg(data.msg);
            });
        }

        // 人员数量只能输入正整数
        form.verify({
            integer: [
                /^[1-9]\d*$/
                , '只能输入正整数'
            ]
        });

        // 组织类型change事件
        form.on('select(organizeType)', function(data){
            if(!data.value) {

            }else {
                var valueArr = data.value.split(',');
                if(2 == valueArr.length) {
                    var name = $('#organizeType option:selected').text();
                    $('#organizeType option:selected').val(valueArr[0]);
                    $('#organizeTypeName').val(name);
                    $('#organizeTypeCode').val(valueArr[1]);
                }
            }
            form.render("select");
        });

        // 组织层级change事件
        form.on('select(organizeLevel)', function(data){
            if(!data.value) {

            }else {
                var valueArr = data.value.split(',');
                if(2 == valueArr.length) {
                    var name = $('#organizeLevel option:selected').text();
                    $('#organizeLevel option:selected').val(valueArr[0]);
                    $('#organizeLevelName').val(name);
                    $('#organizeLevelCode').val(valueArr[1]);
                }
            }
            form.render("select");
        });

        function closeBox() {
            parent.layer.close(parent.layer.getFrameIndex(window.name));
        }

        // 初始化组织类型字典ID下拉选择
        function initOrganizeTypeSelect() {
            top.restAjax.get(top.restAjax.path('api/mongo/data/list-all/parent-id/{dataParentId}', ['f087e723-055b-48d0-9826-a1d28eb9bee9']), {}, null, function(code, data, args) {
                laytpl(document.getElementById('organizeTypeSelectTemplate').innerHTML).render(data, function(html) {
                    document.getElementById('organizeTypeSelectTemplateBox').innerHTML = html;
                });
                form.render('select', 'organizeTypeSelectTemplateBox');
            }, function(code, data) {
                top.dialog.msg(data.msg);
            });
        }

        // 初始化组织层级字典ID下拉选择
        function initOrganizeLevelSelect() {
            top.restAjax.get(top.restAjax.path('api/mongo/data/list-all/parent-id/{dataParentId}', ['2e01698d-653b-434e-8cd6-9a06d9c920d1']), {}, null, function(code, data, args) {
                laytpl(document.getElementById('organizeLevelSelectTemplate').innerHTML).render(data, function(html) {
                    document.getElementById('organizeLevelSelectTemplateBox').innerHTML = html;
                });
                form.render('select', 'organizeLevelSelectTemplateBox');
            }, function(code, data) {
                top.dialog.msg(data.msg);
            });
        }

        // 初始化备注富文本
        function initMainFunctionRichText() {
            var editor = new wangEditor('#mainFunction');
            editor.customConfig.zIndex = 0;
            editor.customConfig.uploadImgMaxSize = 5 * 1024 * 1024;
            editor.customConfig.uploadImgMaxLength = 1;
            editor.customConfig.uploadFileName = 'image';
            editor.customConfig.uploadImgServer = 'api/file/wangeditorimage';
            editor.customConfig.uploadImgHooks = {
                fail: function (xhr, editor, result) {
                    top.dialog.msg('系统错误，图片上传失败');
                },
                error: function (xhr, editor) {
                    top.dialog.msg('网络异常');
                },
                timeout: function (xhr, editor) {
                    top.dialog.msg('网络请求超时');
                }
            };
            editor.create();
            wangEditorObj['mainFunction'] = editor;
        }

        // 初始化内容
        function initData() {
            initOrganizeTypeSelect();
            initOrganizeLevelSelect();
            initMainFunctionRichText();
            initGridSelect();
        }
        initData();

        // 提交表单
        form.on('submit(submitForm)', function(formData) {
            var mainFunction = wangEditorObj['mainFunction'].txt.text().trim();
            if(mainFunction === '') {
                top.dialog.msg('主要职能必填');
                return false;
            }else {
                formData.field['mainFunction'] = wangEditorObj['mainFunction'].txt.html();
            }
            top.dialog.confirm(top.dataMessage.commit, function(index) {
                top.dialog.close(index);
                var loadLayerIndex;
                console.log(formData)
                top.restAjax.post(top.restAjax.path('api/massprevention/save', []), formData.field, null, function(code, data) {
                    var layerIndex = top.dialog.msg(top.dataMessage.commitSuccess, {
                        time: 0,
                        btn: [top.dataMessage.button.yes, top.dataMessage.button.no],
                        shade: 0.3,
                        yes: function(index) {
                            top.dialog.close(index);
                            window.location.reload();
                        },
                        btn2: function() {
                            closeBox();
                        }
                    });
                }, function(code, data) {
                    top.dialog.msg(data.msg);
                }, function() {
                    loadLayerIndex = top.dialog.msg(top.dataMessage.committing, {icon: 16, time: 0, shade: 0.3});
                }, function() {
                    top.dialog.close(loadLayerIndex);
                });
            });
            return false;
        });

        $('.close').on('click', function() {
            closeBox();
        });
    });
</script>
</body>
</html>