From 803cd19fa2a3b8185fd64309d9ba4a159bed50e1 Mon Sep 17 00:00:00 2001
From: houruijun <411269194@kidgrow.com>
Date: Wed, 22 Jul 2020 15:31:10 +0800
Subject: [PATCH] 修改医生管理的添加医生部分的页面和功能

---
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html |  330 ++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 256 insertions(+), 74 deletions(-)

diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html
index 593a308..bf2bdfd 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html
@@ -11,7 +11,7 @@
             <div class="layui-col-sm3">
                 <label class="layui-form-label">医院简称</label>
                 <div class="layui-input-block">
-                    <input name="hospitalShortName" type="text" class="layui-input" maxlength="50"
+                    <input name="hospitalShortName" type="text" class="layui-input" maxlength="20"
                         style="width: 200px;" />
                 </div>
             </div>
@@ -23,31 +23,31 @@
                 <label class="layui-form-label">科室名称</label>
                 <div class="layui-input-block">
                     <input name="departmentName" id="departmentName" placeholder="科室名称" type="text" class="layui-input"
-                        maxlength="50" lay-verify="required" required style="width: 150px;" />
+                        maxlength="20" lay-verify="required" required style="width: 175px;" />
                     &emsp;</div>
             </div>
             <div class="layui-col-sm3">
                 <label class="layui-form-label">联系电话</label>
                 <div class="layui-input-block">
-                    <input name="hospitalTel" id="hospitalTel" type="text" class="layui-input" maxlength="50" />
+                    <input name="hospitalTel" id="hospitalTel" type="text" class="layui-input" maxlength="20" />
                 </div>
             </div>
             <div class="layui-col-sm3">
                 <label class="layui-form-label">联系人</label>
                 <div class="layui-input-block">
-                    <input name="hospitalLink" type="text" class="layui-input" maxlength="50" style="width: 200px;" />
+                    <input name="hospitalLink" type="text" class="layui-input" maxlength="20" style="width: 200px;" />
                 </div>
             </div>
         </div>
     </div>
     <div class="layui-form-item">
         <div class="layui-row">
-            <div class="layui-col-sm7">
+            <div class="layui-col-sm4">
                 <label class="layui-form-label">医院类型</label>
                 <div class="layui-input-block">
                     <input name="hospitalTypeId" id="hospitalTypeId" type="hidden" value="" />
                     <select name="hospitalTypeName" id="hospitalTypeName" lay-filter="hospitalTypeName"
-                        style="width: 300px;">
+                        style="width: 50px;">
                         <option value="">请选择</option>
                     </select>
                 </div>
@@ -60,6 +60,13 @@
                         style="width: 300px;">
                         <option value="">请选择</option>
                     </select>
+                </div>
+            </div>
+            <div class="layui-col-sm3">
+                <label class="layui-form-label">帐号数量</label>
+                <div class="layui-input-block">
+                    <input id="accountsCount" name="accountsCount" type="text" value="6" class="layui-input"
+                        maxlength="1" lay-verify="required|integer" style="width: 200px;" />
                 </div>
             </div>
         </div>
@@ -94,40 +101,69 @@
     </div>
     <div class="layui-form-item">
         <div class="layui-row">
-            <div class="layui-col-sm3">
+            <div class="layui-col-sm4">
                 <label class="layui-form-label">区号</label>
                 <div class="layui-input-block">
                     <input name="areaCode" id="areaCode" lay-verify="required" required type="text" class="layui-input"
                         maxlength="10" />
                 </div>
             </div>
-            <div class="layui-col-sm3">
+            <div class="layui-col-sm4">
                 <label class="layui-form-label">经度</label>
                 <div class="layui-input-block">
                     <input name="longitude" id="longitude" type="text" class="layui-input" maxlength="20" />
                 </div>
             </div>
-            <div class="layui-col-sm3">
+            <div class="layui-col-sm4">
                 <label class="layui-form-label">纬度</label>
                 <div class="layui-input-block">
                     <input name="latitude" id="latitude" type="text" class="layui-input" maxlength="20" />
                 </div>
             </div>
-            <div class="layui-col-sm3">
+        </div>
+    </div>
+    <div class="layui-form-item">
+        <div class="layui-row">
+            <div class="layui-col-sm4">
                 <label class="layui-form-label">服务人员</label>
                 <div class="layui-input-block">
-                    <input name="serverUserId" id="serverUserId" type="hidden" value="" />
+                    <input name="serverUserId" id="serverUserId" type="hidden" value="" maxlength="20" />
                     <select lay-verify="required" required name="serverUserName" id="serverUserName"
-                        style="width: 150px;">
+                        style="width: 150px;" lay-filter="serverUserName">
                     </select>
                 </div>
+            </div>
+            <div class="layui-col-sm6">
+                <label class="layui-form-label">服务人电话</label>
+                <div class="layui-input-block">
+                    <input name="serverUserTel" id="serverUserTel" type="text" class="layui-input" maxlength="20"
+                        value="" />
+                </div>
+            </div>
+        </div>
+    </div>
+    <div class="layui-form-item">
+        <div class="layui-col-sm4">
+            <label class="layui-form-label">销售人员</label>
+            <div class="layui-input-block">
+                <input name="saleUserId" id="saleUserId" type="hidden" value="" maxlength="20" />
+                <select lay-verify="required" required name="saleUserName" id="saleUserName" style="width: 150px;"
+                    lay-filter="saleUserName">
+                </select>
+            </div>
+        </div>
+
+        <div class="layui-col-sm6">
+            <label class="layui-form-label">销售人电话</label>
+            <div class="layui-input-block">
+                <input name="saleUserTel" id="saleUserTel" type="text" class="layui-input" maxlength="20" value="" />
             </div>
         </div>
     </div>
     <div class="layui-form-item">
         <label class="layui-form-label">医院简介</label>
         <div class="layui-input-block">
-            <textarea name="hospitalAbout" class="layui-textarea" maxlength="500"></textarea>
+            <textarea name="hospitalAbout" class="layui-textarea" maxlength="300"></textarea>
         </div>
     </div>
     <div class="layui-form-item model-form-footer">
@@ -152,13 +188,91 @@
         var dic = layui.dic;
         var autocomplete = layui.autocomplete;
         var $ = layui.jquery;
+        //加载服务人员信息
+        var loadServerUser = function (selectVal) {
+            admin.req('api-user/users/getAppointUser', {
+                type: 1
+            }, function (data) {
+                layer.closeAll('loading');
+                if (0 === data.code) {
+                    if (data.data.length > 0) {
+                        $.each(data.data, function (index, item) {
+                            if (!strUtil.isEmpty(selectVal) && selectVal == item.id) {
+                                $('#serverUserName').append(new Option(item.nickname, item
+                                    .id, false, true));
+                            } else {
+                                //往下拉菜单里添加元素
+                                $('#serverUserName').append(new Option(item.nickname, item
+                                    .id, false, false));
+                            }
+                        })
+                    }
 
+                    if (hosIdForEdit == "") {
+                        $("#serverUserTel").val(data.data[0].mobile);
+                        $('#serverUserName').val(data.data[0].id);
+                        form.render();
+                    }
+                } else {
+                    layer.msg(data.msg, {
+                        icon: 2,
+                        time: 500
+                    });
+                }
+
+            }, 'get');
+        }
+
+        //加载销售人员信息
+        var loadSaleUser = function (selectVal) {
+            admin.req('api-user/users/getAppointUser', {
+                type: 0
+            }, function (data) {
+                layer.closeAll('loading');
+                if (0 === data.code) {
+                    if (data.data.length > 0) {
+                        $.each(data.data, function (index, item) {
+                            //往下拉菜单里添加元素
+                            if (!strUtil.isEmpty(selectVal) && selectVal == item.id) {
+                                $('#saleUserName').append(new Option(item.nickname, item.id,
+                                    false, true));
+                            } else {
+                                $('#saleUserName').append(new Option(item.nickname, item.id,
+                                    false, false));
+                            }
+                        });
+
+                        if (hosIdForEdit == "") {
+                            $("#saleUserTel").val(data.data[0].mobile);
+                            $('#saleUserName').val(data.data[0].id);
+                            form.render();
+                        }
+                    }
+                } else {
+                    layer.msg(data.msg, {
+                        icon: 2,
+                        time: 500
+                    });
+                }
+
+            }, 'get');
+        }
         //医院资质数据
         dic.dicData("#hospitalQualifiedName", "HOSPITAL_QUALIFIED", "");
         //医院类型数据
         dic.dicData("#hospitalTypeName", "HOSPITAL_TYPE", "");
         //省份数据加载
         area.areaData("#hospitalProvince", 1, "", "");
+        //回显组织数据
+        let edithospitalData = admin.getTempData('t_hospital');
+        var hosIdForEdit = "";
+        if (edithospitalData != null) {
+            hosIdForEdit = edithospitalData.hospitalId;
+        }
+        //装载销售人员 服务人员数据
+        loadServerUser();
+        loadSaleUser();
+
         //装载市区数据
         form.on("select(hospitalProvince)", function (data) {
             area.areasClear("#hospitalArea", 3);
@@ -180,6 +294,7 @@
                 })
             }
         });
+
         //赋值资质数据ID
         form.on("select(hospitalQualifiedName)", function (data) {
             $("#hospitalQualifiedId").val(data.value);
@@ -193,11 +308,16 @@
             layer.load(2);
             if (data.field != null) {
 
-                data.field.hospitalTypeName = $("#hospitalTypeName option:selected").text() != "请选择" ? $("#hospitalTypeName option:selected").text() : "";
-                data.field.hospitalQualifiedName = $("#hospitalQualifiedName option:selected").text() != "请选择" ? $("#hospitalQualifiedName option:selected").text() : "";
-                data.field.hospitalProvince = $("#hospitalProvince option:selected").text() != "选择省" ? $("#hospitalProvince option:selected").text() : "";
-                data.field.hospitalCity = $("#hospitalCity option:selected").text() != "选择市" ? $("#hospitalCity option:selected").text() : "";
-                data.field.hospitalArea = $("#hospitalArea option:selected").text() != "选择区县" ? $("#hospitalArea option:selected").text() : "";
+                data.field.hospitalTypeName = $("#hospitalTypeName option:selected").text() != "请选择" ?
+                    $("#hospitalTypeName option:selected").text() : "";
+                data.field.hospitalQualifiedName = $("#hospitalQualifiedName option:selected").text() !=
+                    "请选择" ? $("#hospitalQualifiedName option:selected").text() : "";
+                data.field.hospitalProvince = $("#hospitalProvince option:selected").text() != "选择省" ?
+                    $("#hospitalProvince option:selected").text() : "";
+                data.field.hospitalCity = $("#hospitalCity option:selected").text() != "选择市" ? $(
+                    "#hospitalCity option:selected").text() : "";
+                data.field.hospitalArea = $("#hospitalArea option:selected").text() != "选择区县" ? $(
+                    "#hospitalArea option:selected").text() : "";
 
                 admin.req('api-user/syshospital', JSON.stringify(data.field), function (data) {
                     if (data.code === 0) {
@@ -205,65 +325,65 @@
                         var departmentData = {
                             serverUserId: $("#serverUserName").val(),
                             serverUserName: $("#serverUserName option:selected").text(),
+                            serverUserTel: $("#serverUserTel").val(),
                             departmentName: $("#departmentName").val(),
                             id: $("#departmentId").val(),
                             orgId: $("#departmentOrgId").val(),
                             updateUserId: data.data.orgId,
-                            hospitalId: data.data.id
+                            hospitalId: data.data.id,
+                            saleUserId: $("#saleUserName").val(),
+                            saleUserName: $("#saleUserName option:selected").text(),
+                            saleUserTel: $("#saleUserTel").val(),
+                            accountsCount: $("#accountsCount").val()
                         };
-                        admin.req('api-user/sysdepartment', JSON.stringify(departmentData), function (data) {
-                            layer.closeAll('loading');
-                            if (data.code == 0) {
-                                layer.msg(data.msg, { icon: 1, time: 1000 }, function () {
-                                    admin.finishPopupCenter();
-                                });
-                                admin.putTempData("t_hospital", "");
-                                admin.putTempData("t_city", "");
-                            } else {
-                                layer.msg(data.msg, { icon: 2, time: 1000 });
-                            }
-                        }, "POST");
+                        admin.req('api-user/sysdepartment', JSON.stringify(departmentData),
+                            function (data) {
+                                layer.closeAll('loading');
+                                if (data.code == 0) {
+                                    layer.msg(data.msg, {
+                                        icon: 1,
+                                        time: 1000
+                                    }, function () {
+                                        admin.finishPopupCenter();
+                                    });
+                                    admin.putTempData("t_hospital", "");
+                                    admin.putTempData("t_city", "");
+                                } else {
+                                    layer.msg(data.msg, {
+                                        icon: 2,
+                                        time: 1000
+                                    });
+                                }
+                            }, "POST");
                     } else {
-                        layer.msg(data.msg, { icon: 2, time: 1000 });
+                        layer.msg(data.msg, {
+                            icon: 2,
+                            time: 1000
+                        });
                     }
                 }, "POST");
-            }
-            else {
-                layer.msg("数据异常!", { icon: 2, time: 1000 });
+            } else {
+                layer.msg("数据异常!", {
+                    icon: 2,
+                    time: 1000
+                });
             }
             return false;
         });
         //自动完成-医院名称
         autocomplete.render({
             elem: $('#hospitalName')[0],
-            keywordsName: 'hospitalName',//查询关键字名称
+            keywordsName: 'hospitalName', //查询关键字名称
             url: config.base_server + 'api-user/syshospital/findByName',
-            template_val: '{{d.hospitalName}}',//选择后文本框显示的数据字段
-            template_txt: "<div class='layui-table-cell'>{{d.hospitalName}}</div>",//下拉列表模板
+            template_val: '{{d.hospitalName}}', //选择后文本框显示的数据字段
+            template_txt: "<div class='layui-table-cell'>{{d.hospitalName}}</div>", //下拉列表模板
             onselect: function (resp) {
                 loadDatas(resp.id);
             }
         });
-        //加载当前所在部门的在职员工
-        admin.req('api-user/users/getThisUserOrganizationUser', {}, function (data) {
-            layer.closeAll('loading');
-            if (0 === data.code) {
-                if (data.data.length > 0) {
-                    $.each(data.data, function (index, item) {
-                        //往下拉菜单里添加元素
-                        $('#serverUserName').append(new Option(item.nickname, item.id, false, false));
-                    })
-                    $('#serverUserName').val(config.getUser().id);
-                    $('#serverUserId').val(config.getUser().id);
-                    form.render('select');
-                }
-            } else {
-                layer.msg(data.msg, { icon: 2, time: 500 });
-            }
-        }, 'get');
+
         //检查科室名是否存在
         $("#departmentName").blur(function () {
-            debugger
             if (edithospitalData != null) {
                 if (edithospitalData.departmentName == $("#departmentName").val()) {
                     return false;
@@ -271,10 +391,16 @@
             }
             let hosIdForDep = $("#id").val();
             if (!strUtil.isEmpty($("#departmentName").val()) && !strUtil.isEmpty(hosIdForDep)) {
-                admin.req('api-user/sysdepartment/checkName', { hospitalId: hosIdForDep, departmentName: $("#departmentName").val() }, function (data) {
+                admin.req('api-user/sysdepartment/checkName', {
+                    hospitalId: hosIdForDep,
+                    departmentName: $("#departmentName").val()
+                }, function (data) {
                     layer.closeAll('loading');
                     if (0 != data.code) {
-                        layer.msg(data.msg, { icon: 2, time: 1000 });
+                        layer.msg(data.msg, {
+                            icon: 2,
+                            time: 1000
+                        });
                         return false;
                     }
                 }, 'get');
@@ -294,49 +420,105 @@
                         if (!strUtil.isEmpty(hosData.hospitalProvince))
                             area.areaData("#hospitalProvince", 1, "", hosData.hospitalProvince);
                         if (!strUtil.isEmpty(hosData.hospitalCity))
-                            area.areaData("#hospitalCity", 2, $("#hospitalProvince").val(), hosData.hospitalCity);
+                            area.areaData("#hospitalCity", 2, $("#hospitalProvince").val(), hosData
+                                .hospitalCity);
 
                         if (!strUtil.isEmpty(hosData.hospitalArea))
-                            area.areaData("#hospitalArea", 3, $("#hospitalCity").val(), hosData.hospitalArea);
+                            area.areaData("#hospitalArea", 3, $("#hospitalCity").val(), hosData
+                                .hospitalArea);
                         //装载资质 类型  
                         $("#hospitalQualifiedName").val(hosData.hospitalQualifiedId);
                         $("#hospitalTypeName").val(hosData.hospitalTypeId);
 
                         //装载科室数据
-                        admin.req('api-user/sysdepartment', { hospitalId: hosId, isDel: 0, page: 1, limit: 20 }, function (data) {
+                        admin.req('api-user/sysdepartment', {
+                            hospitalId: hosId,
+                            isDel: 0,
+                            page: 1,
+                            limit: 20
+                        }, function (data) {
                             if (data.code == 0) {
                                 let departData = data.data.data;
                                 if (departData.length > 0) {
                                     if (departData.length > 1) {
-                                        layer.msg("该医院下有多个科室,默认显示第一个", { icon: 1, time: 2000 });
+                                        layer.msg("该医院下有多个科室,默认显示第一个", {
+                                            icon: 1,
+                                            time: 2000
+                                        });
                                     }
+
                                     $("#serverUserId").val(departData[0].serverUserId);
-                                    $("#serverUserName").val(departData[0].serverUserId);
+                                    $('#serverUserName').val(departData[0].serverUserId);
+
                                     $("#departmentName").val(departData[0].departmentName);
                                     $("#departmentId").val(departData[0].id);
                                     $("#departmentOrgId").val(departData[0].orgId);
+                                    $("#saleUserId").val(departData[0].saleUserId);
+                                    $("#accountsCount").val(departData[0].accountsCount);
+                                    $('#saleUserName').val(departData[0].saleUserId);
+
+                                    if (hosIdForEdit != "") {
+                                        $("#serverUserTel").val(departData[0]
+                                            .serverUserTel);
+                                        $("#saleUserTel").val(departData[0].saleUserTel);
+                                    }
                                     form.render();
                                 }
-                            }
-                            else {
-                                layer.msg(data.msg, { icon: 2, time: 500 });
+                            } else {
+                                layer.msg(data.msg, {
+                                    icon: 2,
+                                    time: 500
+                                }); 
                             }
                         }, 'get');
                         form.render();
 
                     } else {
-                        layer.msg(data.msg, { icon: 2, time: 500 });
+                        layer.msg(data.msg, {
+                            icon: 2,
+                            time: 500
+                        });
                     }
                 }, 'get');
             }
         }
-        //回显组织数据
-        let edithospitalData = admin.getTempData('t_hospital');
-        var hosIdForEdit = "";
-        if (edithospitalData != null) {
-            hosIdForEdit = edithospitalData.hospitalId;
-            if (!strUtil.isEmpty(hosIdForEdit))
-                loadDatas(hosIdForEdit);
+
+        //装载基本数据
+        if (!strUtil.isEmpty(hosIdForEdit)) {
+            loadDatas(hosIdForEdit);
+        }
+
+        layui.use('form', function () {
+            var $ = layui.$,
+                layer = layui.layer,
+                form = layui.form
+
+            form.verify({
+                integer: [
+                    /^[1-9]\d*$/, '只能输入正整数'
+                ]
+            });
+        });
+
+        form.on("select(serverUserName)", function (data) {
+            loadUserMobile('serverUserTel', data.value);
+        });
+
+        form.on("select(saleUserName)", function (data) {
+            loadUserMobile('saleUserTel', data.value);
+        });
+
+        var loadUserMobile = function (id, userId) {
+            admin.req('api-user/users/' + userId, {}, function (data) {
+                if (data != null) {
+                    $("#" + id).val(data.mobile);
+                } else {
+                    layer.msg(data.msg, {
+                        icon: 2,
+                        time: 500
+                    });
+                }
+            }, 'get')
         }
     });
 </script>
\ No newline at end of file

--
Gitblit v1.8.0