From 0928fba7cd5576d2932859b1d4942464c720d92f Mon Sep 17 00:00:00 2001
From: 侯瑞军 <411269194@kidgrow.com>
Date: Fri, 17 Apr 2020 19:03:08 +0800
Subject: [PATCH] 1.组织数据功能分离独立成模块 2.组织,医院,科室添加/修改功能 3.本周整理制作了3类JS通用插件(字典分类加载下来列表通用组件,省市区联动通用组件,文本框按输入内容自动搜索提示数据通用组件)

---
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html |  119 ++++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 93 insertions(+), 26 deletions(-)

diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
index 1a6002c..9840a14 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
@@ -35,7 +35,9 @@
             </select>
             &emsp;
             <input id="hospitalName" class="layui-input search-input" type="text" placeholder="按医院名" />&emsp;
-            <button id="hospita-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
+            <button id="hospita-btn-search" class="layui-btn icon-btn"><i
+                    class="layui-icon">&#xe615;</i>搜索</button>&emsp;
+            <button id="hospital-btn-add" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加医院</button>
         </div>
 
         <!-- 数据表格 -->
@@ -45,10 +47,16 @@
 
 <!-- 表格操作列 -->
 <script type="text/html" id="businessRecords-table-bar">
-    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看详情</a>
-    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
     <a class="layui-btn layui-btn-xs" lay-event="pay">充值</a>
-    <a class="layui-btn layui-btn-xs" lay-event="del">删除</a>
+    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看详情</a>
+    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="addDepartment">添加科室</a>
+    <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>
+</script>
+<!-- 表格状态列 -->
+<script type="text/html" id="hospital-tpl-state">
+    <input type="checkbox" lay-filter="hospital-tpl-state" value="{{d.hospitalId}}" value2="{{d.departmentId}}" lay-skin="switch" lay-text="启用|禁用"
+           {{d.enabled==true?'checked':''}}/>
 </script>
 <script>
     layui.use(['form', 'table', 'laydate', 'util', 'config', 'admin', 'area'], function () {
@@ -68,35 +76,36 @@
             headers: { 'Authorization': 'Bearer ' + config.getToken().access_token },
             page: true,
             cols: [[
-                { field: 'hospitalName', width: 250, title: '医院名称' },
-                { field: 'departmentName', width: 100, title: '科室' },
+                { field: 'hospitalName', width: 250, title: '医院名称',fixed:'left'},
+                { field: 'departmentName', width: 100, title: '科室' ,fixed:'left'},
                 {
-                    field: 'hospitalArea', width: 200, title: '所在地区', templet: function (d) {
-                        return d.hospitalProvince + "-" + d.hospitalCity + "-" + hospitalArea
+                    field: 'hospitalArea', width: 250, title: '所在地区', templet: function (d) {
+                        return ((d.hospitalProvince == null) ? "" : d.hospitalProvince) + " "
+                            + ((d.hospitalCity == null) ? "" : d.hospitalCity) + " " +
+                            ((d.hospitalArea == null) ? "" : d.hospitalArea)
                     }
                 },
                 { field: 'hospitalLink', width: 100, title: '联系人' },
-                { field: 'hospitalTel', width: 150, title: '联系方式' },
+                { field: 'hospitalTel', width: 100, title: '联系方式' },
                 {
-                    field: 'enabled', width: 100, sort: true, title: '状态', templet: function (d) {
+                    field: 'enabled', width: 80, sort: true, title: '状态', templet: function (d) {
                         return d.hospitalState == 0 ? "试用" : "正式"
                     }
                 },
                 {
-                    field: 'isScreen', width: 100, sort: true, title: '筛查', templet: function (d) {
+                    field: 'isScreen', width: 80, sort: true, title: '筛查', templet: function (d) {
                         return d.isScreen ? "是" : "否"
                     }
                 },
-                // { field: 'isAnswer', width: 100, sort: true, title: '医答',templet:function (d) {
+                // { field: 'isAnswer', width: 80, sort: true, title: '医答',templet:function (d) {
                 //     return d.isScreen?"是":"否"
                 // } },
 
-                { field: 'serverUserName', width: 150, title: '服务人员' },
-                { field: 'createTime', width: 150, sort: true, title: '创建时间', templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy/MM/dd')}}</div>" },
-                { field: 'hospitalId', width: 250, align: 'center', toolbar: '#businessRecords-table-bar', sort: true, title: '操作' }
-            ]],
-            done: function () {
-            }
+                { field: 'serverUserName', width: 100, title: '服务人员' },
+                { field: 'createTime', width: 120, sort: true, title: '创建时间', templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy/MM/dd')}}</div>" },
+                { field: 'enabled', width: 100, templet: '#hospital-tpl-state', sort: true, title: '状态' },
+                { field: 'hospitalId', width: 300, align: 'center', toolbar: '#businessRecords-table-bar', title: '操作' ,fixed:'right'}
+            ]]
         });
         //省份数据加载
         area.areaData("#province", 1, "", "");
@@ -104,8 +113,39 @@
         table.on('tool(hospital-table)', function (obj) {
             var data = obj.data;
             var layEvent = obj.event;
-            if (layEvent === 'detail') { // 查看详情
-                showEditModel(data);
+            if (layEvent === 'del') {
+                layer.confirm('确定要删除吗?', function (i) {
+                    layer.load(2);
+                    var whereModel = {
+                        id: obj.data.hospitalId,
+                        departmentId: obj.data.departmentId
+                    };
+                    admin.req('api-user/syshospital/delete', whereModel, function (data) {
+                        layer.closeAll('loading');
+                        layer.msg(data.msg, { icon: 1, time: 500 }, function () {
+                            $('#hospita-btn-search').click();
+                        });
+                        obj.del();
+                    }, 'GET');
+                });
+            }
+            else if (layEvent === 'addDepartment') {
+                //添加科室
+                admin.putTempData("t_hospital", data);
+                admin.popupCenter({
+                    title: '添加科室',
+                    path: 'pages/opration/department_form.html',
+                    area: ['900px', '60%'],
+                    finish: function () {
+                        //清理缓存数据
+                        admin.putTempData("t_hospital", "");
+                    }
+                })
+            }
+            else if (layEvent === "edit") {
+                //修改
+                admin.putTempData("t_hospital", data);
+                showEditModel();
             }
         });
         // 搜索按钮点击事件
@@ -115,9 +155,9 @@
             var hospitalstate = $('#hospitalstate').val();
             var hospitalName = $('#hospitalName').val();
 
-            var hospitalProvince = $('#province').val();
-            var hospitalCity = $('#city').val();
-            var hospitalArea = $('#areas').val();
+            var hospitalProvince = ($("#province").val() != "") ? $('#province option:selected').text() : "";
+            var hospitalCity = ($("#city").val() != "") ? $('#city option:selected').text() : "";
+            var hospitalArea = ($("#areas").val() != "") ? $('#areas option:selected').text() : "";
 
             var whereModel = {
                 isScreen: isscreen,
@@ -133,20 +173,47 @@
 
         // // 显示编辑弹窗
         var showEditModel = function (data) {
+            admin.popupCenter({
+                title: '编辑医院/科室',
+                path: 'pages/opration/hospital_form_tab.html',
+                area: ['900px', '80%'],
+                finish: function () {
 
+                }
+            });
         };
 
         //装载市区数据
         form.on("select(province)", function (data) {
-            $("#city").empty();
-            $("#areas").empty();
+            area.areasClear("#areas", 3);
             area.areaData("#city", 2, data.value, "");
         });
 
         //装载区县数据
         form.on("select(city)", function (data) {
-            $("#areas").empty();
             area.areaData("#areas", 3, data.value, "");
         });
+        // 修改状态
+        form.on('switch(hospital-tpl-state)', function (obj) {
+            layer.load(2);
+            admin.req('api-user/syshospital/updateEnabled', {
+                id: obj.elem.value,
+                departmentId: obj.elem.getAttribute("value2"),
+                enabled: obj.elem.checked ? true : false
+            }, function (data) {
+                layer.closeAll('loading');
+                if (data.code == 0) {
+                    layer.msg(data.msg, { icon: 1, time: 500 });
+                } else {
+                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    $(obj.elem).prop('checked', !obj.elem.checked);
+                    form.render('checkbox');
+                }
+            }, 'GET');
+        });
+        // 添加按钮点击事件
+        $('#hospital-btn-add').click(function () {
+            showEditModel();
+        });
     });
 </script>
\ No newline at end of file

--
Gitblit v1.8.0