From c58a42aa1acc821e0c3e748de7205e58af6c350b Mon Sep 17 00:00:00 2001
From: houruijun <411269194@kidgrow.com>
Date: Tue, 01 Sep 2020 16:44:25 +0800
Subject: [PATCH] 1.修改充值页面,可支持修改起始结束时间 2.修改添加医院/医生页面,增加自动选择当前服务/销售人员 3.调整页面部分显示细节问题

---
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html |  387 ++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 295 insertions(+), 92 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..7bc7364 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,25 +188,112 @@
         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: 2000
+                    });
+                }
+
+            }, '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) {
+                            //往下拉菜单里添加元素
+                                $('#saleUserName').append(new Option(item.nickname, item.id,
+                                    false, (!strUtil.isEmpty(selectVal) && selectVal == item.id)));
+                        });
+
+                        if (hosIdForEdit == "") {
+                            $("#saleUserTel").val(data.data[0].mobile);
+                            $('#saleUserName').val(data.data[0].id);
+                            form.render();
+                        }
+                    }
+                } else {
+                    layer.msg(data.msg, {
+                        icon: 2,
+                        time: 2000
+                    });
+                }
+            }, 'get');
+        }
         //医院资质数据
         dic.dicData("#hospitalQualifiedName", "HOSPITAL_QUALIFIED", "");
         //医院类型数据
         dic.dicData("#hospitalTypeName", "HOSPITAL_TYPE", "");
         //省份数据加载
         area.areaData("#hospitalProvince", 1, "", "");
+        //回显组织数据
+        let edithospitalData = admin.getTempData('t_hospital');
+        var hosIdForEdit = "";
+        var departmentId = "";
+        //当前登录人员的id
+        var selectVal="";
+        if (edithospitalData != null) {
+            hosIdForEdit = edithospitalData.hospitalId;
+            departmentId = edithospitalData.departmentId;
+        }
+        else{
+            //先拿到当前登录用户的信息
+            var nowUser = config.getUser();
+            if (!strUtil.isEmpty(nowUser)) {
+                selectVal = nowUser.id;
+            }
+        }
+        //装载销售人员 服务人员数据
+        loadServerUser(selectVal);
+        loadSaleUser(selectVal);
+
         //装载市区数据
         form.on("select(hospitalProvince)", function (data) {
             area.areasClear("#hospitalArea", 3);
             area.areaData("#hospitalCity", 2, data.value, "");
+            defaultValData();
         });
         //装载区县数据
         form.on("select(hospitalCity)", function (data) {
             area.areaData("#hospitalArea", 3, data.value, "");
+            defaultValData();
+        });
+        form.on("select(hospitalArea)", function (data) {
             //区号,金纬度自动赋值
-            var cityDataFor = admin.getTempData("t_city");
-            if (cityDataFor != null) {
-                cityDataFor.forEach(function (item) {
+            var areaDataFor = admin.getTempData("t_area");
+            if (areaDataFor != null) {
+                areaDataFor.forEach(function (item) {
                     if (data.value == item.id) {
                         $("#areaCode").val(item.areaCitycode);
                         $("#longitude").val(item.areaLng);
@@ -180,6 +303,7 @@
                 })
             }
         });
+
         //赋值资质数据ID
         form.on("select(hospitalQualifiedName)", function (data) {
             $("#hospitalQualifiedId").val(data.value);
@@ -193,11 +317,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 +334,66 @@
                         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
+                            orgId: '' + $("#departmentOrgId").val(),
+                            updateUserId: '' + data.data.orgId,
+                            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/'+data.data.id, 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_area", "");
+                                } 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) {
+                departmentId = "";
                 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 +401,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 +430,116 @@
                         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);
+                        if (!strUtil.isEmpty(departmentId)) {
+                            //装载科室数据
+                            admin.req('api-user/sysdepartment', {
+                                id: departmentId,
+                                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
+                                            });
+                                        }
 
-                        //装载科室数据
-                        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 });
+                                        $("#serverUserId").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();
                                     }
-                                    $("#serverUserId").val(departData[0].serverUserId);
-                                    $("#serverUserName").val(departData[0].serverUserId);
-                                    $("#departmentName").val(departData[0].departmentName);
-                                    $("#departmentId").val(departData[0].id);
-                                    $("#departmentOrgId").val(departData[0].orgId);
-                                    form.render();
+                                } else {
+                                    layer.msg(data.msg, {
+                                        icon: 2,
+                                        time: 2000
+                                    });
                                 }
-                            }
-                            else {
-                                layer.msg(data.msg, { icon: 2, time: 500 });
-                            }
-                        }, 'get');
-                        form.render();
+                            }, 'get');
+                        }
 
+                        form.render();
                     } else {
-                        layer.msg(data.msg, { icon: 2, time: 500 });
+                        layer.msg(data.msg, {
+                            icon: 2,
+                            time: 2000
+                        });
                     }
                 }, '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: 2000
+                    });
+                }
+            }, 'get')
+        }
+        //重置区号 金纬度
+        var defaultValData = function () {
+            $("#areaCode").val("");
+            $("#longitude").val("");
+            $("#latitude").val("");
         }
     });
 </script>
\ No newline at end of file

--
Gitblit v1.8.0