kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IBusinessRecordsService.java
@@ -32,8 +32,8 @@ /** * 写入系统业务日志 * @param recordTitle * @param recordNote * @param recordTitle 日志标题 * @param recordNote 日志内容 * @return */ boolean recordBusinessData(String recordTitle, String recordNote); kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java
@@ -36,7 +36,6 @@ /** * 组织Id */ @NotNull(message = "组织Id不能为空") private Long orgId; /** * 医院Id @@ -53,10 +52,6 @@ */ @NotEmpty(message = "销售代表的名字不能为空") private String serverUserName; /** * 科室/部门简介 */ private String departmentAbout; /** * 状态,1启用,0停用 */ kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysHospital.java
@@ -1,14 +1,14 @@ package com.kidgrow.usercenter.model; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.kidgrow.common.model.SuperModel; import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import org.hibernate.validator.constraints.NotEmpty; import javax.validation.constraints.NotNull; /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> @@ -35,7 +35,7 @@ /** * 组织ID- */ @NotNull(message = "组织ID不能为空") @JsonSerialize(using = ToStringSerializer.class) private Long orgId; /** * 医院简称 @@ -58,6 +58,10 @@ */ private String hospitalTel; /** * 医院联系人 */ private String hospitalLink; /** * 医院所在省 */ private String hospitalProvince; kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/vo/HospitalListVo.java
@@ -1,6 +1,8 @@ package com.kidgrow.usercenter.vo; import com.baomidou.mybatisplus.extension.activerecord.Model; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -23,6 +25,7 @@ /** * 医院id */ @JsonSerialize(using = ToStringSerializer.class) private Long hospitalId; /** * 医院名称 同组织名字 @@ -31,11 +34,16 @@ /** * 组织ID */ @JsonSerialize(using = ToStringSerializer.class) private Long orgId; /** * 区号 * 医院编码 */ private String hospitalCode; /** * 医院区号 */ private String areaCode; /** * 医院电话 */ @@ -59,6 +67,7 @@ /** * 负责的销售代表 */ @JsonSerialize(using = ToStringSerializer.class) private Long serverUserId; /** * 销售代表的名字 @@ -67,6 +76,7 @@ /** * 科室id */ @JsonSerialize(using = ToStringSerializer.class) private Long departmentId; /** * 科室/部门名称 同组织名称 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysHospitalMapper.java
@@ -27,6 +27,12 @@ List<SysHospital> findList(Page<SysHospital> page, @Param("p") Map<String, Object> params); /** * 根据医院名称模糊查询医院数据列表 * @param hospitalName * @return */ List<SysHospital> findByName(@Param("hospitalName") String hospitalName); /** * 医院信息列表 * @param page * @param params kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDepartmentService.java
@@ -1,9 +1,9 @@ package com.kidgrow.usercenter.service; import com.kidgrow.common.model.ResultBody; import com.kidgrow.usercenter.model.SysDepartment; import com.kidgrow.common.model.PageResult; import com.kidgrow.common.model.ResultBody; import com.kidgrow.common.service.ISuperService; import com.kidgrow.usercenter.model.SysDepartment; import java.util.Map; @@ -22,7 +22,6 @@ * @return */ PageResult<SysDepartment> findList(Map<String, Object> params); /** * 根据SysDepartment对象当做查询条件进行查询 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysHospitalService.java
@@ -1,9 +1,9 @@ package com.kidgrow.usercenter.service; import com.kidgrow.common.model.ResultBody; import com.kidgrow.usercenter.model.SysHospital; import com.kidgrow.common.model.PageResult; import com.kidgrow.common.model.ResultBody; import com.kidgrow.common.service.ISuperService; import com.kidgrow.usercenter.model.SysHospital; import com.kidgrow.usercenter.vo.HospitalListVo; import java.util.Map; @@ -35,6 +35,12 @@ * @return SysHospital对象 */ SysHospital findByObject(SysHospital sysHospital); /** * 根据医院名称模糊查询医院数据列表 * @param hospitalName * @return */ ResultBody<SysHospital> findByName(String hospitalName); ResultBody<SysHospital> findAll(Map<String, Object> params); kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDepartmentServiceImpl.java
@@ -1,30 +1,27 @@ package com.kidgrow.usercenter.service.impl; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.kidgrow.common.model.PageResult; import com.kidgrow.common.model.ResultBody; import com.kidgrow.common.model.SysOrganization; import com.kidgrow.common.service.impl.SuperServiceImpl; import com.kidgrow.usercenter.mapper.SysDepartmentMapper; import com.kidgrow.usercenter.model.SysDepartment; import com.kidgrow.usercenter.model.SysHospital; import com.kidgrow.usercenter.service.ISysDepartmentService; import com.kidgrow.usercenter.service.ISysHospitalService; import com.kidgrow.usercenter.service.ISysOrganizationService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.MapUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.kidgrow.common.model.PageResult; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.kidgrow.common.service.impl.SuperServiceImpl; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; import org.apache.commons.collections4.MapUtils; import lombok.extern.slf4j.Slf4j; import com.kidgrow.usercenter.model.SysDepartment; import com.kidgrow.usercenter.mapper.SysDepartmentMapper; import com.kidgrow.usercenter.service.ISysDepartmentService; /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java
@@ -72,6 +72,14 @@ return ResultBody.ok().data(sysHospitals).msg("查询成功"); } /** * 根据医院名称模糊查询医院数据列表 * @param hospitalName * @return */ public ResultBody<SysHospital> findByName(String hospitalName){ return ResultBody.ok().data(baseMapper.findByName(hospitalName)).msg("查询成功"); } /** * 根据id和启用禁用值更新数据 * @param params * @return ResultBody kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysHospitalMapper.xml
@@ -16,7 +16,7 @@ and id = #{p.id} </if> <if test="p.hospitalName != null and p.hospitalName !=''"> and hospital_name = #{p.hospitalName} and hospital_name =#{p.hospitalName}% </if> <if test="p.orgId != null and p.orgId !=''"> and org_id = #{p.orgId} @@ -174,9 +174,11 @@ HOS.hospital_tel, HOS.hospital_state, HOS.hospital_link, HOS.org_id hospital_org_id, HOS.is_screen, HOS.is_answer, HOS.tenant_id, HOS.area_code, HOS.create_time FROM sys_department DEP @@ -184,4 +186,11 @@ <include refid="whereList"/> order by create_time desc </select> <select id="findByName" resultType="com.kidgrow.usercenter.model.SysHospital"> select id, hospital_name from sys_hospital where hospital_name LIKE concat('%',#{hospitalName},'%') order by hospital_name desc </select> </mapper> kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
@@ -3,8 +3,10 @@ import com.kidgrow.common.controller.BaseController; import com.kidgrow.common.model.PageResult; import com.kidgrow.common.model.ResultBody; import com.kidgrow.common.model.SysOrganization; import com.kidgrow.usercenter.model.SysDepartment; import com.kidgrow.usercenter.service.ISysDepartmentService; import com.kidgrow.usercenter.service.ISysOrganizationService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -17,12 +19,14 @@ import javax.validation.Valid; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> * * @Description: 科室表 * @Project: 用户中心 * @CreateDate: Created in 2020-04-02 18:32:36 <br> @@ -33,9 +37,11 @@ @RestController @RequestMapping("/sysdepartment") @Api(tags = "科室表") public class SysDepartmentController extends BaseController{ public class SysDepartmentController extends BaseController { @Autowired private ISysDepartmentService sysDepartmentService; @Autowired private ISysOrganizationService sysOrganizationService; /** * 列表 @@ -47,9 +53,9 @@ }) @GetMapping public ResultBody<PageResult> list(@RequestParam Map<String, Object> params) { if(params.size()==0){ params.put("page",1); params.put("limit",10); if (params.size() == 0) { params.put("page", 1); params.put("limit", 10); } return ResultBody.ok().data(sysDepartmentService.findList(params)); } @@ -75,31 +81,71 @@ } /** * 检查科室名是否存在 */ @ApiOperation(value = "检查科室名是否存在") @GetMapping("/checkName") public ResultBody checkDepName(@RequestParam Map<String, Object> params) { params.put("page", 1); params.put("limit", 1); if (sysDepartmentService.findList(params).getData().size()>0) { return ResultBody.failed().msg(String.format("该医院下已经存在科室 %s", params.get("departmentName"))); } return ResultBody.ok().msg(""); } /** * 新增or更新 */ @ApiOperation(value = "保存") @PostMapping public ResultBody save(@Valid @RequestBody SysDepartment sysDepartment, BindingResult bindingResult) { List<String> errMsg= new ArrayList<>(); List<String> errMsg = new ArrayList<>(); if (bindingResult.hasErrors()) { for (ObjectError error : bindingResult.getAllErrors()) { errMsg.add(error.getDefaultMessage()); } return ResultBody.failed().msg(errMsg.toString()); } else { //先检查该医院下的该科室名是否已经存在? SysDepartment sysDepartmentTemp=new SysDepartment(); sysDepartmentTemp.setHospitalId(sysDepartment.getHospitalId()); sysDepartmentTemp.setDepartmentName(sysDepartment.getDepartmentName().trim()); sysDepartmentTemp=sysDepartmentService.findByObject(sysDepartmentTemp); if (sysDepartmentTemp!=null) { return ResultBody.failed().msg(String.format("该医院下已经存在 %s",sysDepartment.getDepartmentName())); //先检查该医院该科室是否已经存在 Map<String, Object> checkDepartment=new HashMap<String,Object>(); checkDepartment.put("page", 1); checkDepartment.put("limit", 1); checkDepartment.put("hospitalId",sysDepartment.getHospitalId()); checkDepartment.put("departmentName",sysDepartment.getDepartmentName()); if (sysDepartmentService.findList(checkDepartment).getData().size()>0) { return ResultBody.failed().msg(String.format("该医院下已经存在科室 %s", sysDepartment.getDepartmentName())); } boolean v= sysDepartmentService.saveOrUpdate(sysDepartment); if(v) { //先检查是否存在组织信息 SysOrganization sysOrganization=new SysOrganization(); if(sysDepartment.getOrgId()!=null){ sysOrganization.setId(sysDepartment.getOrgId());} else{ sysOrganization.setOrgName(sysDepartment.getDepartmentName()); //临时暂用其它字段承载数据 sysOrganization.setOrgParentId(sysDepartment.getUpdateUserId()); } sysOrganization=sysOrganizationService.findByObject(sysOrganization); if(sysOrganization==null) { //创建一个组织 sysOrganization=new SysOrganization(); sysOrganization.setOrgName(sysDepartment.getDepartmentName()); sysOrganization.setOrgAttr(2); sysOrganization.setOrgLevel(2); //临时暂用其它字段承载数据 sysOrganization.setOrgParentId(sysDepartment.getUpdateUserId()); } else { sysOrganization.setOrgName(sysDepartment.getDepartmentName()); } boolean org=sysOrganizationService.saveOrUpdate(sysOrganization); sysDepartment.setOrgId(sysOrganization.getId()); boolean v = sysDepartmentService.saveOrUpdate(sysDepartment); if (v) { return ResultBody.ok().data(sysDepartment).msg("保存成功"); } else { } else { return ResultBody.failed().msg("保存失败"); } } @@ -111,17 +157,17 @@ @ApiOperation(value = "删除") @DeleteMapping("/{id}") public ResultBody delete(@PathVariable Long id) { boolean v= sysDepartmentService.removeById(id); if(v) { boolean v = sysDepartmentService.removeById(id); if (v) { return ResultBody.ok().msg("删除成功"); } else { } else { return ResultBody.failed().msg("删除失败"); } } /** * 根据医院获取 组织,通过组织,获取科室; * * @param params * @return */ kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java
@@ -1,10 +1,14 @@ package com.kidgrow.usercenter.controller; import com.kidgrow.common.constant.DictionariesConstants; import com.kidgrow.common.controller.BaseController; import com.kidgrow.common.model.PageResult; import com.kidgrow.common.model.ResultBody; import com.kidgrow.common.model.SysOrganization; import com.kidgrow.usercenter.model.SysHospital; import com.kidgrow.usercenter.service.ISysDepartmentService; import com.kidgrow.usercenter.service.ISysHospitalService; import com.kidgrow.usercenter.service.ISysOrganizationService; import com.kidgrow.usercenter.vo.HospitalListVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -24,6 +28,7 @@ /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> * * @Description: 医院基础信息表 * @Project: 用户中心 * @CreateDate: Created in 2020-04-02 18:32:36 <br> @@ -34,9 +39,13 @@ @RestController @RequestMapping("/syshospital") @Api(tags = "医院基础信息表") public class SysHospitalController extends BaseController{ public class SysHospitalController extends BaseController { @Autowired private ISysHospitalService sysHospitalService; @Autowired private ISysDepartmentService departmentService; @Autowired private ISysOrganizationService organizationService; /** * 列表 @@ -48,12 +57,13 @@ }) @GetMapping("/findOne") public PageResult<SysHospital> listOne(@RequestParam Map<String, Object> params) { if(params.size()==0){ params.put("page",1); params.put("limit",10); if (params.size() == 0) { params.put("page", 1); params.put("limit", 10); } return sysHospitalService.findList(params); } /** * 列表 */ @@ -64,17 +74,23 @@ }) @GetMapping public PageResult<HospitalListVo> list(@RequestParam Map<String, Object> params) { if(params.size()==0){ params.put("page",1); params.put("limit",10); if (params.size() == 0) { params.put("page", 1); params.put("limit", 10); } return sysHospitalService.findHospitalList(params); } @PostMapping("findAll") @ApiOperation(value = "查询所有列表") public ResultBody<SysHospital> findAll(@RequestBody Map<String, Object> params) { return sysHospitalService.findAll(params); if (params.get("hospitalName") != null) { return sysHospitalService.findAll(params); } else { return ResultBody.ok().data(null); } } /** * 查询 */ @@ -84,7 +100,18 @@ SysHospital model = sysHospitalService.getById(id); return ResultBody.ok().data(model).msg("查询成功"); } /** * 查询 */ @ApiOperation(value = "查询") @GetMapping("/findByName") public ResultBody findByName(@RequestParam String hospitalName) { if (!hospitalName.isEmpty()) { return ResultBody.ok().data(sysHospitalService.findByName(hospitalName).getData()).msg("查询成功"); } else { return ResultBody.ok().data(null).msg(""); } } /** * 根据SysHospital当做查询条件进行查询 */ @@ -101,18 +128,41 @@ @ApiOperation(value = "保存") @PostMapping public ResultBody save(@Valid @RequestBody SysHospital sysHospital, BindingResult bindingResult) { List<String> errMsg= new ArrayList<>(); List<String> errMsg = new ArrayList<>(); if (bindingResult.hasErrors()) { for (ObjectError error : bindingResult.getAllErrors()) { errMsg.add(error.getDefaultMessage()); } return ResultBody.failed().msg(errMsg.toString()); } else { boolean v= sysHospitalService.saveOrUpdate(sysHospital); if(v) { return ResultBody.ok().data(sysHospital).msg("保存成功"); //先检查该医院是否存在组织信息 SysOrganization sysOrganization=new SysOrganization(); if(sysHospital.getOrgId()!=null){ sysOrganization.setId(sysHospital.getOrgId());} else{ sysOrganization.setOrgName(sysHospital.getHospitalName()); sysOrganization.setOrgParentId(DictionariesConstants.ORG_PARENT_ID); } else { sysOrganization=organizationService.findByObject(sysOrganization); if(sysOrganization==null) { //创建一个组织 sysOrganization=new SysOrganization(); sysOrganization.setOrgName(sysHospital.getHospitalName()); sysOrganization.setOrgAttr(1); sysOrganization.setOrgLevel(1); sysOrganization.setOrgParentId(DictionariesConstants.ORG_PARENT_ID); } else { sysOrganization.setOrgName(sysHospital.getHospitalName()); } boolean org=organizationService.saveOrUpdate(sysOrganization); sysHospital.setOrgId(sysOrganization.getId()); boolean v = sysHospitalService.saveOrUpdate(sysHospital); if (v) { return ResultBody.ok().data(sysHospital).msg("保存成功"); } else { return ResultBody.failed().msg("保存失败"); } } @@ -128,12 +178,12 @@ @ApiImplicitParam(name = "departmentId", value = "departmentId", required = true, dataType = "Integer") }) public ResultBody delete(@RequestParam Map<String, Object> params) { if (params.size()==0) { if (params.size() == 0) { return ResultBody.failed().msg("参数异常!"); } return sysHospitalService.delete(params); } /** * 修改状态 * @@ -148,8 +198,7 @@ @ApiImplicitParam(name = "enabled", value = "是否启用", required = true, dataType = "Boolean") }) public ResultBody updateEnabled(@RequestParam Map<String, Object> params) { if (params.size()==0) { if (params.size() == 0) { return ResultBody.failed().msg("参数异常!"); } return sysHospitalService.updateEnabled(params); kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysOrganizationController.java
@@ -67,7 +67,13 @@ params.put("page",1); params.put("limit",10); } return ResultBody.ok().data(sysOrganizationService.findList(params).getData()); if (params.get("orgName")!=null) { return ResultBody.ok().data(sysOrganizationService.findList(params).getData()); } else { return ResultBody.ok().data(null); } } @ApiOperation(value = "查询列表by MAP") @GetMapping("getListByMap") @@ -119,7 +125,7 @@ } return ResultBody.failed().msg(errMsg.toString()); } else { boolean v= sysOrganizationService.saveOrUpdateSer(sysOrganization); boolean v= sysOrganizationService.saveOrUpdate(sysOrganization); if(v) { return ResultBody.ok().data(sysOrganization).msg("保存成功"); } kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/DictionariesConstants.java
@@ -21,4 +21,8 @@ * 医生职称 */ String DOCTOR_RANK = "DOCTOR_RANK"; /** * 最高组织ID */ Long ORG_PARENT_ID=1L; } kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/js/common.js
@@ -202,7 +202,7 @@ * @returns {} */ isEmpty:function(str){ if(str != '' && str != undefined && str != null && str.length > 0){ if(str != '' && str != undefined && str != null){ return false; }else{ return true; @@ -259,3 +259,17 @@ return true; } }; //从当前页面的url地址中获取参数数据 function getRequest() { debugger var url = location.search; //获取url中"?"符后的字串 var theRequest = new Object(); if(url.indexOf("?") != -1) { var str = url.substr(1); strs = str.split("&"); for(var i = 0; i < strs.length; i++) { theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]); } } return theRequest; } kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/area.js
@@ -33,6 +33,10 @@ clientsAll = data.data; if (clientsAll.length > 0) { area.areasClear(domId,levelType); if(clientsAll[0].areaLeveltype==2) { admin.putTempData("t_city",clientsAll); } $.each(clientsAll, function (index, item) { if (selectValue == item.areaName) { selected = "selected='selected'"; } else { kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
@@ -34,7 +34,7 @@ <option value="1">正式</option> </select>   <input id="hospitalName" class="layui-input search-input" type="text" placeholder="按医院名" />  <input id="hosName" class="layui-input search-input" type="text" placeholder="按医院名" />  <button id="hospita-btn-search" class="layui-btn icon-btn"><i class="layui-icon"></i>搜索</button>  <button id="hospital-btn-add" class="layui-btn icon-btn"><i class="layui-icon"></i>添加医院</button> @@ -48,8 +48,7 @@ <!-- 表格操作列 --> <script type="text/html" id="businessRecords-table-bar"> <a class="layui-btn layui-btn-xs" lay-event="pay">充值</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="detail">查看详情</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> @@ -59,7 +58,7 @@ {{d.enabled==true?'checked':''}}/> </script> <script> layui.use(['form', 'table', 'laydate', 'util', 'config', 'admin', 'area'], function () { layui.use(['form', 'table', 'laydate', 'util', 'config', 'admin', 'autocomplete', 'area'], function () { var form = layui.form; var table = layui.table; var config = layui.config; @@ -67,7 +66,7 @@ var util = layui.util; var admin = layui.admin; var area = layui.area; // 渲染表格 table.render({ elem: '#hospital-table', @@ -76,8 +75,8 @@ headers: { 'Authorization': 'Bearer ' + config.getToken().access_token }, page: true, cols: [[ { field: 'hospitalName', width: 250, title: '医院名称',fixed:'left'}, { field: 'departmentName', width: 100, title: '科室' ,fixed:'left'}, { field: 'hospitalName', width: 250, title: '医院名称', fixed: 'left' }, { field: 'departmentName', width: 100, title: '科室', fixed: 'left' }, { field: 'hospitalArea', width: 250, title: '所在地区', templet: function (d) { return ((d.hospitalProvince == null) ? "" : d.hospitalProvince) + " " @@ -104,7 +103,7 @@ { 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'} { field: 'hospitalId', width: 300, align: 'center', toolbar: '#businessRecords-table-bar', title: '操作', fixed: 'right' } ]] }); //省份数据加载 @@ -129,23 +128,10 @@ }, '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(); showEditModel("edit"); } }); // 搜索按钮点击事件 @@ -153,7 +139,7 @@ var isscreen = $('#isscreen').val(); var isanswer = $('#isanswer').val(); var hospitalstate = $('#hospitalstate').val(); var hospitalName = $('#hospitalName').val(); var hospitalName = $('#hosName').val(); var hospitalProvince = ($("#province").val() != "") ? $('#province option:selected').text() : ""; var hospitalCity = ($("#city").val() != "") ? $('#city option:selected').text() : ""; @@ -174,11 +160,11 @@ // // 显示编辑弹窗 var showEditModel = function (data) { admin.popupCenter({ title: '编辑医院/科室', path: 'pages/opration/hospital_form_tab.html', area: ['900px', '80%'], title: (strUtil.isEmpty(data))?'添加医院':'编辑医院', path: 'pages/opration/hospital_form_base.html', area: '900px', finish: function () { $('#hospita-btn-search').click(); } }); }; @@ -213,6 +199,7 @@ }); // 添加按钮点击事件 $('#hospital-btn-add').click(function () { admin.putTempData("t_hospital",""); showEditModel(); }); }); kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html
@@ -5,7 +5,7 @@ <label class="layui-form-label">医院名称</label> <div class="layui-input-block"> <input name="hospitalName" id="hospitalName" placeholder="请输入医院名称" type="text" class="layui-input" maxlength="50" lay-verify="required" required autocomplete="on" style="width: 390px;" /> maxlength="50" lay-verify="required" required style="width: 390px;" /> </div> </div> <div class="layui-col-sm3"> @@ -19,11 +19,17 @@ </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="departmentName" id="departmentName" placeholder="科室名称" type="text" class="layui-input" maxlength="50" lay-verify="required" required style="width: 150px;" />  </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" style="width: 390px;" /> <input name="hospitalTel" id="hospitalTel" type="text" class="layui-input" maxlength="50" /> </div> </div> <div class="layui-col-sm3"> @@ -39,7 +45,7 @@ <div class="layui-col-sm7"> <label class="layui-form-label">医院类型</label> <div class="layui-input-block"> <input name="hospitalTypeId" id="hospitalTypeId" type="hidden" value=""/> <input name="hospitalTypeId" id="hospitalTypeId" type="hidden" value="" /> <select name="hospitalTypeName" id="hospitalTypeName" lay-filter="hospitalTypeName" style="width: 300px;"> <option value="">请选择</option> @@ -49,7 +55,7 @@ <div class="layui-col-sm3"> <label class="layui-form-label">医院资质</label> <div class="layui-input-block"> <input name="hospitalQualifiedId" id="hospitalQualifiedId" type="hidden" value=""/> <input name="hospitalQualifiedId" id="hospitalQualifiedId" type="hidden" value="" /> <select name="hospitalQualifiedName" id="hospitalQualifiedName" lay-filter="hospitalQualifiedName" style="width: 300px;"> <option value="">请选择</option> @@ -63,14 +69,17 @@ <label class="layui-form-label">所在地区</label> <div class="layui-input-block"> <div class="layui-col-sm4"> <select id="hospitalProvince" placeholder="省份" lay-filter="hospitalProvince" style="width: 400px;"> <select lay-verify="required" required id="hospitalProvince" placeholder="省份" lay-filter="hospitalProvince" style="width: 400px;"> </select></div> <div class="layui-col-sm4"> <select id="hospitalCity" placeholder="市" lay-filter="hospitalCity" style="width: 350px;"> <select id="hospitalCity" lay-verify="required" required placeholder="市" lay-filter="hospitalCity" style="width: 350px;"> <option value="">选择市</option> </select></div> <div class="layui-col-sm4"> <select id="hospitalArea" placeholder="区县" lay-filter="hospitalArea" style="width: 350px;"> <select id="hospitalArea" lay-verify="required" required placeholder="区县" lay-filter="hospitalArea" style="width: 350px;"> <option value="">选择区县</option> </select> </div> @@ -88,23 +97,32 @@ <div class="layui-col-sm3"> <label class="layui-form-label">区号</label> <div class="layui-input-block"> <input name="areaCode" type="text" class="layui-input" maxlength="10" /> <input name="areaCode" id="areaCode" lay-verify="required" required type="text" class="layui-input" maxlength="10" /> </div> </div> <div class="layui-col-sm3"> <label class="layui-form-label">经度</label> <div class="layui-input-block"> <input name="longitude" type="text" class="layui-input" maxlength="20" /> <input name="longitude" id="longitude" 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="latitude" type="text" class="layui-input" maxlength="20" /> <input name="latitude" id="latitude" 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="serverUserId" id="serverUserId" type="hidden" value="" /> <select lay-verify="required" required name="serverUserName" id="serverUserName" style="width: 150px;"> </select> </div> </div> </div> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">医院简介</label> @@ -116,34 +134,25 @@ <button class="layui-btn layui-btn-primary" ew-event="closeDialog" type="button">取消</button> <button class="layui-btn" lay-filter="hospital-form-submit" lay-submit>保存</button> </div> <input type="hidden" id="orgId" name="orgId" value=""/> <input type="hidden" name="departmentId" id="departmentId" value="" /> <input type="hidden" name="orgId" id="orgId" value="" /> <input type="hidden" name="departmentOrgId" id="departmentOrgId" value="" /> <input type="hidden" name="id" id="id" value="" /> </form> <script> parent.layui.use(['form', 'table','util', 'config', 'admin', 'area', 'formSelects', 'dic', 'autocomplete'], function () { var form = parent.layui.form; var table = parent.layui.table; var config = parent.layui.config; var layer = parent.layui.layer; var util = parent.layui.util; var admin = parent.layui.admin; var area = parent.layui.area; var dic = parent.layui.dic; var formSelects = parent.layui.formSelects; var autocomplete = parent.layui.autocomplete; var $ = parent.layui.jquery; layui.use(['form', 'table', 'util', 'config', 'admin', 'area', 'dic', 'autocomplete'], 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 area = layui.area; var dic = layui.dic; var autocomplete = layui.autocomplete; var $ = layui.jquery; autocomplete.render({ elem: $('#hospitalName'), cache: true, url: config.base_server + 'api-user/syshospital', response: { code: 'code', data: 'data' }, template_val: '{{d.hospitalName}}', template_txt: '{{d.hospitalName}} <span class=\'layui-badge layui-bg-gray\'>{{d.id}}</span>', onselect: function (resp) { //$('#content1').html("NEW RENDER: " + JSON.stringify(resp)); } }) //医院资质数据 dic.dicData("#hospitalQualifiedName", "HOSPITAL_QUALIFIED", ""); //医院类型数据 @@ -158,6 +167,18 @@ //装载区县数据 form.on("select(hospitalCity)", function (data) { area.areaData("#hospitalArea", 3, data.value, ""); //区号,金纬度自动赋值 let cityData = admin.getTempData("t_city"); if (cityData != null) { cityData.forEach(function (item) { if (data.value == item.id) { $("#areaCode").val(item.areaCitycode); $("#longitude").val(item.areaLng); $("#latitude").val(item.areaLat); break; } }) } }); //赋值资质数据ID form.on("select(hospitalQualifiedName)", function (data) { @@ -167,42 +188,156 @@ form.on("select(hospitalTypeName)", function (data) { $("#hospitalTypeId").val(data.value); }); // 回显组织数据 let orgs = admin.getTempData('t_org'); if (orgs != null) { $('input[name="hospitalName"]').val(orgs.orgName); $('input[name="orgId"]').val(orgs.id); form.render(); } // 表单提交事件 form.on('submit(hospital-form-submit)', function (data) { layer.load(2); if(data.field!=null){ data.field.hospitalTypeName=$("#hospitalTypeName option:selected").text(); data.field.hospitalQualifiedName=$("#hospitalQualifiedName option:selected").text(); data.field.hospitalProvince=$("#hospitalProvince option:selected").text(); data.field.hospitalCity=$("#hospitalCity option:selected").text(); data.field.hospitalArea=$("#hospitalArea option:selected").text(); if (data.field != null) { admin.req('api-user/syshospital', JSON.stringify(data.field), function (data) { layer.closeAll('loading'); if (data.code == 0) { //将医院数据存入本地 admin.putTempData('t_hospital', data.data); layer.msg(data.msg, { icon: 1, time: 1000 }, function () { //清理组织数据 admin.putTempData('t_org',''); }); } else { layer.msg(data.msg, { icon: 2, time: 1000 }); } }, "POST");} else{ layer.msg("数据异常!", { icon: 2, time: 1000 }); 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) { layer.closeAll('loading'); if (data.code === 0) { //存储科室数据 var departmentData = { serverUserId: $("#serverUserName").val(), serverUserName: $("#serverUserName option:selected").text(), departmentName: $("#departmentName").val(), id: $("#departmentId").val(), orgId: $("#departmentOrgId").val(), updateUserId: data.data.orgId, hospitalId: data.data.id }; 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 }); } }, "POST"); } else { layer.msg("数据异常!", { icon: 2, time: 1000 }); } return false; }); //自动完成-医院名称 autocomplete.render({ elem: $('#hospitalName')[0], keywordsName: 'hospitalName',//查询关键字名称 url: config.base_server + 'api-user/syshospital/findByName', 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; } } 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) { layer.closeAll('loading'); if (0 != data.code) { layer.msg(data.msg, { icon: 2, time: 1000 }); return false; } }, 'get'); } }) //按照ID装载数据 var loadDatas = function (hosId) { if (!strUtil.isEmpty(hosId)) { //用ID获取实体 admin.req('api-user/syshospital/' + hosId, {}, function (data) { layer.closeAll('loading'); if (0 === data.code) { //装载基本数据 let hosData = data.data; form.val("hospital-form", hosData); //装载省市区数据 if (!strUtil.isEmpty(hosData.hospitalProvince)) area.areaData("#hospitalProvince", 1, "", hosData.hospitalProvince); if (!strUtil.isEmpty(hosData.hospitalCity)) area.areaData("#hospitalCity", 2, $("#hospitalProvince").val(), hosData.hospitalCity); if (!strUtil.isEmpty(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) { 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); form.render(); } } else { layer.msg(data.msg, { icon: 2, time: 500 }); } }, 'get'); form.render(); } else { 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); } }); </script>