From 6fb14149d62199cfcc0448c82eb2f51f9c5181de Mon Sep 17 00:00:00 2001
From: luliqiang <kidgrow>
Date: Thu, 31 Dec 2020 16:55:30 +0800
Subject: [PATCH] Merge branch 'dev' of http://192.168.2.240:7070/r/kidgrow-microservices-platform into parter

---
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html |  326 ++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 219 insertions(+), 107 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
index 91ddc4a..67ec24c 100644
--- 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
@@ -1,19 +1,19 @@
 <div class="layui-card">
     <div class="layui-card-header">
-        <h2 class="header-title">应用管理</h2>
+        <h2 class="header-title">数据需求</h2>
         <span class="layui-breadcrumb pull-right">
             <a href="#!home_console">首页</a>
-            <a><cite>应用管理</cite></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"> 至 <input type="text"
-                class="layui-input search-input" id="test2"> &emsp;
-            <button id="app-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
+            <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"><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>
 
         <!-- 数据表格 -->
@@ -23,65 +23,133 @@
 
 <!-- 表格操作列 -->
 <script type="text/html" id="app-table-bar">
-    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
-    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
+    <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">
+<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>
+            <label class="layui-form-label">需求类型</label>
             <div class="layui-input-block">
-                <input name="clientId" placeholder="请输入应用标识" type="text" class="layui-input" maxlength="20"
-                       lay-verify="required" required/>
+                <input name="needTypeName" id="needTypeName" placeholder="请输入应用标识" type="text" class="layui-input" maxlength="20"/>
             </div>
         </div>
         <div class="layui-form-item">
-            <label class="layui-form-label">应用名称</label>
+            <label class="layui-form-label">医生姓名</label>
             <div class="layui-input-block">
-                <input name="clientName" placeholder="请输入应用名称" type="text" class="layui-input" maxlength="20"/>
+                <input name="doctorName" placeholder="请输入应用名称" type="text" class="layui-input" maxlength="20"/>
             </div>
         </div>
         <div class="layui-form-item">
-            <label class="layui-form-label">应用密钥</label>
+            <label class="layui-form-label">医院名称</label>
             <div class="layui-input-block">
-                <input name="clientSecretStr" placeholder="请输入应用密钥" type="text" class="layui-input" maxlength="20"
+                <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>
+            <label class="layui-form-label">科室名称</label>
             <div class="layui-input-block">
-                <input name="webServerRedirectUri" placeholder="请输入回调地址" type="text" class="layui-input" maxlength="20"/>
+                <input name="departmentName"  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"  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"  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"  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"  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>
-            <button class="layui-btn" lay-filter="app-form-submit" lay-submit>保存</button>
+            <button class="layui-btn layui-btn-primary" ew-event="closeDialog" type="button">确定</button>
         </div>
     </form>
-</script> -->
+</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', 'config', 'admin'], function () {
+    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' //指定元素
+            elem: '#test1', //指定元素
+            done: function (value, date, endDate) {
+                var startDate = new Date(value).getTime();
+                var endTime = new Date($('#test2').val()).getTime();
+                if (endTime < startDate) {
+                    layer.msg('结束时间不能小于开始时间');
+                    $('#test1').val($('#test2').val());
+                } else {
+                    $('#custom_beginTime').val($("#test1").val())
+                }
+            }
         });
         laydate.render({
-            elem: '#test2' //指定元素
+            elem: '#test2', //指定元素
+            done: function (value, date, endDate) {
+                var startDate = new Date($('#test1').val()).getTime();
+                var endTime = new Date(value).getTime();
+                if (endTime < startDate) {
+                    layer.msg('结束时间不能小于开始时间');
+                    $('#test2').val($('#test1').val());
+                } else {
+                    $('#custom_endTime').val($("#test2").val())
+                }
+            }
         });
 
         // 渲染表格
@@ -93,15 +161,18 @@
             page: true,
             cols: [[
                 { type: 'numbers' },
-                { field: 'doctorName', width: 180, sort: true, title: '医生姓名' },
-                { field: 'doctorTel', width: 200, sort: true, title: '联系电话' },
-                { field: 'hospitalName', width: 180, sort: true, title: '所在医院' },
-                { field: 'needBegintime',width: 300, sort: true, title: '时间段', templet: "<div>{{layui.util.toDateString(d.needBegintime, 'yyyy年MM月dd日 HH:mm:ss')}}至{{layui.util.toDateString(d.needEndtime, 'yyyy年MM月dd日 HH:mm:ss')}}</div>" },
-                { field: 'needType', width: 250, sort: true, title: '数据类型', templet: function (d) { if (d.needType == 1) { return '筛查' } else { return '就诊' } } },// 0就诊数据 1筛查
-                { field: 'needTags', width: 250, sort: true, title: '需求标签' },
-                { field: 'enabled', width: 250, sort: true, title: '处理状态', templet: function (d) { if (d.enabled == 1) { return '已上传' } else { return '未处理' } } },
-                { field: 'downTime', width: 250, sort: true, title: '时间', templet: "<div>{{layui.util.toDateString(d.downTime, 'yyyy年MM月dd日 HH:mm:ss')}}</div>" }
-            ]]
+                { 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>" },
+                { field: 'creatTime',align:'center', width: 250, title: '创建时间', templet: "<div>{{layui.util.toDateString(d.creatTime, 'yyyy-MM-dd')}}</div>" }
+            ]],done:function(res){
+                permissionsInput(res,config);
+            }
         });
 
         // 工具条点击事件
@@ -109,41 +180,70 @@
             var data = obj.data;
             var layEvent = obj.event;
 
-            if (layEvent === 'del') { // 删除
-                doDelete(obj);
-            } else if (layEvent === 'edit') { //修改
+            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 doDelete = function (obj) {
-        //     layer.confirm('确定要删除吗?', function (i) {
-        //         layer.close(i);
-        //         layer.load(2);
-        //         admin.req('api-opration/dataneed/' + obj.data.id, {}, function (data) {
-        //             layer.closeAll('loading');
-        //             layer.msg('成功', { icon: 1, time: 500 });
-        //             obj.del();
-        //         }, 'DELETE');
-        //     });
-        // };
-
+        //更新上传的状态
+        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){
+            var createTimeBegin = $('#test1').val();
+            var createTimeEnd = $('#test2').val();
+            if (createTimeBegin != null && createTimeEnd != null) {
+                var flag = compareDate(createTimeBegin, createTimeEnd);
+                if (!flag) {
                     layer.msg('结束时间不得小于开始时间');
                     return;
                 }
             }
-            
-            table.reload('app-table', { where: { doctorName: key,needBegintime:needBegintime, needEndtime:needEndtime} });
+
+            table.reload('app-table', { where: { doctorName: key, createTimeBegin: createTimeBegin, createTimeEnd: createTimeEnd },page: {curr: 1  }  });
         });
         //比较日期大小
         function compareDate(logintime, logouttime) {
@@ -161,17 +261,34 @@
                 }
             }
         }
-         // 导出
-         $('#app-btn-export').click(function () {
+        // 导出
+        $('#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() {
+            xhr.onload = function () {
                 if (this.status == 200) {
-                    var fileName = "user.xlsx";
+                    var fileName = "数据需求.xlsx";
                     var blob = this.response;
                     var a = document.createElement('a');
                     a.innerHTML = fileName;
@@ -185,52 +302,47 @@
                     document.body.removeChild(a);
                 }
             }
-            xhr.send();
+            xhr.send(form);
         });
 
-        // 添加按钮点击事件
-        // $('#app-btn-add').click(function () {
-        //     showEditModel();
-        // });
+        // 显示编辑弹窗
+        var showEditModel = function (data) {
+            layer.open({
+                type: 1,
+                title: '详情',
+                area: '700px',
+                offset: '0px',
+                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");
+                        if(data.needType===1)
+                        {
+                            $("#needTypeName").val("筛查");
+                        }
+                        else{
+                            $("#needTypeName").val("就诊");
+                        }
+                        form.val('app-form', data);
+                        $('#app-form').find('input,textarea').prop('readonly', true);
+                        $('#app-form').attr('method', 'POST');
+                    }
+                }
+            });
+        };
 
-        // // 显示编辑弹窗
-        // var showEditModel = function (data) {
-        //     layer.open({
-        //         type: 1,
-        //         title: data ? '修改应用' : '添加应用',
-        //         area: '450px',
-        //         offset: '120px',
-        //         content: $('#app-model').html(),
-        //         success: function () {
-        //             $('#app-form')[0].reset();
-        //             $('#app-form').attr('method', 'POST');
-        //             if (data) {
-        //                 $("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').attr('method', 'POST');
-        //             }
-        //         }
-        //     });
-        // };
-
-        // // 表单提交事件
-        // form.on('submit(app-form-submit)', function (data) {
-        //     layer.load(2);
-        //     admin.req('api-opration/dataneed/saveOrUpdate', JSON.stringify(data.field), function (data) {
-        //         layer.closeAll('loading');
-        //         console.log(data);
-        //         if (data.code == 0) {
-        //             layer.msg(data.msg, { icon: 1, time: 500 });
-        //             table.reload('app-table');
-        //             layer.closeAll('page');
-        //         } else {
-        //             layer.msg(data.msg, { icon: 2, time: 500 });
-        //         }
-        //     }, $('#app-form').attr('method'));
-        //     return false;
-        // });
     });
 </script>
\ No newline at end of file

--
Gitblit v1.8.0