From daa697719eb0ddfd170f1ab94c5422a4f5b93951 Mon Sep 17 00:00:00 2001
From: zhaoxiaohao <279049017@qq.com>
Date: Fri, 18 Sep 2020 14:36:54 +0800
Subject: [PATCH] Merge branch 'dev'

---
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html |  321 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 321 insertions(+), 0 deletions(-)

diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html
new file mode 100644
index 0000000..b243578
--- /dev/null
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html
@@ -0,0 +1,321 @@
+<div class="layui-card">
+    <div class="layui-card-header">
+        <h2 class="header-title">数据需求</h2>
+        <span class="layui-breadcrumb pull-right">
+            <a href="#!home_console">首页</a>
+            <a><cite>数据需求</cite></a>
+        </span>
+    </div>
+    <div class="layui-card-body">
+        <div class="layui-form toolbar">
+            <input id="app-edit-search" class="layui-input search-input" type="text" placeholder="按医生姓名" />&emsp;
+            <input type="text" class="layui-input search-input" id="test1" placeholder="开始时间" > 至 <input type="text"
+                class="layui-input search-input" id="test2" placeholder="结束时间" > &emsp;
+            <button id="app-btn-search" class="layui-btn icon-btn permissions"  permissions="diagnostic-get"><i class="layui-icon">&#xe615;</i>搜索</button>
+            <!-- <button id="app-btn-add" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button> -->
+            <button id="app-btn-export" class="layui-btn icon-btn permissions"  permissions="dataneed-export"><i class="layui-icon">&#xe654;</i>导出</button>
+        </div>
+
+        <!-- 数据表格 -->
+        <table class="layui-table" id="app-table" lay-filter="app-table"></table>
+    </div>
+</div>
+
+<!-- 表格操作列 -->
+<script type="text/html" id="app-table-bar">
+    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看详情</a>
+</script>
+<script type="text/html" id="app-table-bar1">
+
+    {{# if (d.enabled ==0&&d.dataFile==null){}}
+    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="upload">待上传数据</a>
+    {{#  } else { }}
+    <p>已上传</p>
+    {{#}}}
+</script>
+
+<!-- 表单弹窗 -->
+<script type="text/html" id="app-model">
+    <form id="app-form" lay-filter="app-form" class="layui-form model-form">
+        <input name="id" type="hidden"/>
+        <div class="layui-form-item">
+            <label class="layui-form-label">需求类型</label>
+            <div class="layui-input-block">
+                <input name="needType" placeholder="请输入应用标识" type="text" class="layui-input" maxlength="20"
+                       lay-verify="required" required/>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">医生姓名</label>
+            <div class="layui-input-block">
+                <input name="doctorName" placeholder="请输入应用名称" type="text" class="layui-input" maxlength="20"/>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">医院名称</label>
+            <div class="layui-input-block">
+                <input name="hospitalName" placeholder="请输入应用密钥" type="text" class="layui-input" maxlength="20"
+                       lay-verify="required" required />
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">科室名称</label>
+            <div class="layui-input-block">
+                <input name="departmentName" placeholder="请输入回调地址" type="text" class="layui-input" maxlength="20"/>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">医生联系方式</label>
+            <div class="layui-input-block">
+                <input name="doctorTel" placeholder="请输入回调地址" type="text" class="layui-input" maxlength="20"/>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">需求数据的开始时间</label>
+            <div class="layui-input-block">
+                <input name="needBegintime" placeholder="请输入回调地址" type="text" class="layui-input" maxlength="20"/>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">需求数据的结束时间</label>
+            <div class="layui-input-block">
+                <input name="needEndtime" placeholder="请输入回调地址" type="text" class="layui-input" maxlength="20"/>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label">需求标签</label>
+            <div class="layui-input-block">
+                <textarea name="needTags" placeholder="请输入回调地址" class="layui-input" style="height:200px;overflow:auto" maxlength="20"> </textarea>
+            </div>
+        </div>
+        <div class="layui-form-item model-form-footer">
+            <button class="layui-btn layui-btn-primary" ew-event="closeDialog" type="button">确定</button>
+        </div>
+    </form>
+</script>
+
+<script type="text/html" id="app-upload">
+    <form id="app-form-upload" lay-filter="app-form-upload" class="layui-form model-form">
+        <input name="id" id="upload-id"  type="hidden"/>
+        <div class="layui-form-item">
+            <label class="layui-form-label">上传文件</label>
+            <div class="layui-input-block" id="demo">
+                <button type="button" class="layui-btn" id="phonto">
+                    <i class="layui-icon">&#xe67c;</i>上传文件
+                  </button>
+                <input name="dataFile" id="dataFile"  type="hidden" class="layui-input" maxlength="20"/>
+                <input name="enabled" id="enabled"  type="hidden" value="0" class="layui-input" maxlength="20"/>
+            </div>
+        </div>
+    </form>
+</script>
+
+
+<script>
+    layui.use(['form', 'table', 'laydate', 'util', 'upload', 'config', 'admin'], function () {
+        var form = layui.form;
+        var table = layui.table;
+        var config = layui.config;
+        var layer = layui.layer;
+        var util = layui.util;
+        var admin = layui.admin;
+        var upload = layui.upload;
+
+
+
+        //时间格式
+        var laydate = layui.laydate;
+        //执行一个laydate实例
+        laydate.render({
+            elem: '#test1' //指定元素
+        });
+        laydate.render({
+            elem: '#test2' //指定元素
+        });
+
+        // 渲染表格
+        table.render({
+            elem: '#app-table',
+            url: config.base_server + 'api-opration/dataneed',
+            method: 'GET',
+            headers: { 'Authorization': 'Bearer ' + config.getToken().access_token },
+            page: true,
+            cols: [[
+                { type: 'numbers' },
+                { field: 'doctorName',align:'center', width: 100, title: '医生姓名' },
+                { field: 'doctorTel',align:'center', width: 150, title: '联系电话' },
+                { field: 'hospitalName',align:'center', width: 300, title: '所在医院' },
+                { field: 'needBegintime',align:'center', width: 240, title: '时间段', templet: "<div>{{layui.util.toDateString(d.needBegintime, 'yyyy-MM-dd')}} &nbsp;&nbsp;至 &nbsp;&nbsp;{{layui.util.toDateString(d.needEndtime, 'yyyy-MM-dd')}}</div>" },
+                { field: 'needType',align:'center', width: 100, title: '数据类型', templet: function (d) { if (d.needType == 1) { return '筛查' } else { return '就诊' } } },// 0就诊数据 1筛查
+                { field: 'needTags',align:'center', width: 100, align: 'center', toolbar: '#app-table-bar', title: '需求标签' },
+                { field: 'enabled',align:'center', width: 200, toolbar: '#app-table-bar1', title: '处理状态', },
+                { field: 'downTime',align:'center', width: 250, title: '下载时间', templet: "<div>{{layui.util.toDateString(d.downTime, 'yyyy-MM-dd HH:mm')}}</div>" }
+            ]],done:function(res){
+                permissionsInput(res,config);
+            }
+        });
+
+        // 工具条点击事件
+        table.on('tool(app-table)', function (obj) {
+            var data = obj.data;
+            var layEvent = obj.event;
+
+            if (layEvent === 'detail') { // 显示详情
+                showEditModel(data);
+            } else if (layEvent === 'upload') { // 上传
+                layer.open({
+                    type: 1,
+                    title: '上传数据',
+                    area: ["500px", "150px"],
+                    content: $('#app-upload').html(),
+                    success: function () {
+                        $("#upload-id").val(data.id)
+                        var upload = layui.upload;
+                        //执行实例
+                        upload.render({
+                            elem: '#phonto',
+                            url: config.base_server + 'api-file/files-anon',
+                            accept: 'file',
+                            auto: true,
+                            headers: { "Authorization": "Bearer " + config.getToken().access_token },
+                            before: function (obj) {
+                                layer.load(); //上传loading
+                            },
+                            done: function (data) {
+                                layer.closeAll('loading');
+                                // $("#dataFile").val(data.url);
+                                updateEnabled(data.url, false);
+                            },
+                            error: function (data) {
+                                layer.closeAll('loading');
+                            }
+                        });
+                    }
+                });
+            }
+        });
+        //更新上传的状态
+        var updateEnabled = function (dataFile, enabled) {
+            admin.req('api-opration/dataneed/updateEnabled', {
+                id: $("#upload-id").val(),
+                enabled: enabled,
+                dataFile: dataFile
+            }, function (data) {
+                layer.closeAll('loading');
+                if (data.code == 0) {
+                    layer.closeAll();
+                    table.reload('app-table', { where: {} });
+                } else {
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
+                }
+            }, 'GET');
+        }
+        // 搜索按钮点击事件
+        $('#app-btn-search').click(function () {
+            var key = $('#app-edit-search').val();
+            var needBegintime = $('#test1').val();
+            var needEndtime = $('#test2').val();
+            if (needBegintime != null && needEndtime != null) {
+                var flag = compareDate(needBegintime, needEndtime);
+                if (!flag) {
+                    layer.msg('结束时间不得小于开始时间');
+                    return;
+                }
+            }
+
+            table.reload('app-table', { where: { doctorName: key, needBegintime: needBegintime, needEndtime: needEndtime } });
+        });
+        //比较日期大小
+        function compareDate(logintime, logouttime) {
+            var arys1 = new Array();
+            var arys2 = new Array();
+            if (logintime != null && logouttime != null) {
+                arys1 = logintime.split('-');
+                var logindate = new Date(arys1[0], parseInt(arys1[1] - 1), arys1[2]);
+                arys2 = logouttime.split('-');
+                var logoutdate = new Date(arys2[0], parseInt(arys2[1] - 1), arys2[2]);
+                if (logindate > logoutdate) {
+                    return false;
+                } else {
+                    return true;
+                }
+            }
+        }
+        // 导出
+        $('#app-btn-export').click(function () {
+            var key = $('#app-edit-search').val();
+            var needBegintime = $('#test1').val();
+            var needEndtime = $('#test2').val();
+            if (needBegintime != null && needEndtime != null) {
+                var flag = compareDate(needBegintime, needEndtime);
+                if (!flag) {
+                    layer.msg('结束时间不得小于开始时间');
+                    return;
+                }
+            }
+            //获取
+            var url = config.base_server + 'api-opration/dataneed/export';
+            var xhr = new XMLHttpRequest();
+            xhr.open('POST', url, true);
+            xhr.responseType = "blob";
+             var form = new FormData();
+            // Add selected file to form
+            form.append("doctor_name", key);
+            form.append('need_begintime',needBegintime);
+            form.append('need_endtime',needEndtime);
+
+            xhr.setRequestHeader("client_type", "DESKTOP_WEB");
+            xhr.setRequestHeader("Authorization", "Bearer " + config.getToken().access_token);
+            xhr.onload = function () {
+                if (this.status == 200) {
+                    var fileName = "user.xlsx";
+                    var blob = this.response;
+                    var a = document.createElement('a');
+                    a.innerHTML = fileName;
+                    // 指定生成的文件名
+                    a.download = fileName;
+                    a.href = URL.createObjectURL(blob);
+                    document.body.appendChild(a);
+                    var evt = document.createEvent("MouseEvents");
+                    evt.initEvent("click", false, false);
+                    a.dispatchEvent(evt);
+                    document.body.removeChild(a);
+                }
+            }
+            xhr.send(form);
+        });
+
+        // 显示编辑弹窗
+        var showEditModel = function (data) {
+            layer.open({
+                type: 1,
+                title: '详情',
+                area: '450px',
+                offset: '120px',
+                content: $('#app-model').html(),
+                success: function () {
+                    $('#app-form')[0].reset();
+                    $('#app-form').attr('method', 'POST');
+                    if (data) {
+                        if (data.needBegintime) {
+                            var needBegintime = layui.util.toDateString(data.needBegintime, 'yyyy年MM月dd日');
+                            data.needBegintime = needBegintime
+                        }
+                        if (data.needEndtime) {
+                            var needEndtime = layui.util.toDateString(data.needEndtime, 'yyyy年MM月dd日');
+                            data.needEndtime = needEndtime
+                        }
+                        $("input[name='clientId']").attr('disabled', true);
+                        $("input[name='clientId']").attr('class', "layui-input layui-disabled");
+                        $("input[name='webServerRedirectUri']").attr('disabled', true);
+                        $("input[name='webServerRedirectUri']").attr('class', "layui-input layui-disabled");
+                        form.val('app-form', data);
+                        $('#app-form').find('input,textarea').prop('readonly', true);
+                        $('#app-form').attr('method', 'POST');
+                    }
+                }
+            });
+        };
+
+    });
+</script>
\ No newline at end of file

--
Gitblit v1.8.0